@Override
    public String getMediumFormat(final long milliseconds, boolean natural) {
        synchronized(mediumDateFormatter) {
            if(-1 == milliseconds) {
                return LocaleFactory.localizedString("Unknown");
            }
            mediumDateNaturalFormatter.setTimeZone(NSTimeZone.timeZoneWithName(timezone));
            if(natural) {
                return mediumDateNaturalFormatter.stringFromDate(toDate(milliseconds));
            }
            return mediumDateFormatter.stringFromDate(toDate(milliseconds));
        }
    }
@Test
    public void testGetMediumFormat() {
        final UserDateFormatter f = new UserDefaultsDateFormatter(TimeZone.getDefault().getID());
        assertNotNull(f.getMediumFormat(System.currentTimeMillis(), false));
        assertNotNull(f.getMediumFormat(System.currentTimeMillis(), true));
    }