Ticket #13047: patch-test-date-utils.patch

File patch-test-date-utils.patch, 2.7 KB (added by michael2402, 8 years ago)
  • src/org/openstreetmap/josm/tools/date/DateUtils.java

    diff --git a/src/org/openstreetmap/josm/tools/date/DateUtils.java b/src/org/openstreetmap/josm/tools/date/DateUtils.java
    index 3cbb811..c148194 100644
    a b public final class DateUtils {  
    133133        } else {
    134134            // example date format "18-AUG-08 13:33:03"
    135135            SimpleDateFormat f = new SimpleDateFormat("dd-MMM-yy HH:mm:ss");
     136            f.setTimeZone(calendarLocale.getTimeZone());
    136137            Date d = f.parse(str, new ParsePosition(0));
    137138            if (d != null)
    138139                return d.getTime();
  • test/unit/org/openstreetmap/josm/tools/date/DateUtilsTest.java

    diff --git a/test/unit/org/openstreetmap/josm/tools/date/DateUtilsTest.java b/test/unit/org/openstreetmap/josm/tools/date/DateUtilsTest.java
    index 43f6fff..90440ec 100644
    a b import java.text.DateFormat;  
    99import java.util.Date;
    1010import java.util.TimeZone;
    1111
    12 import org.junit.BeforeClass;
     12import org.junit.Rule;
    1313import org.junit.Test;
    14 import org.openstreetmap.josm.JOSMFixture;
     14import org.openstreetmap.josm.testutils.JOSMTestRules;
    1515import org.openstreetmap.josm.tools.UncheckedParseException;
    1616
    1717import edu.umd.cs.findbugs.annotations.SuppressFBWarnings;
    import edu.umd.cs.findbugs.annotations.SuppressFBWarnings;  
    2222public class DateUtilsTest {
    2323
    2424    /**
    25      * Setup test.
     25     * Set the timezone and timeout.
    2626     */
    27     @BeforeClass
    28     public static void setUp() {
    29         JOSMFixture.createUnitTestFixture().init();
    30     }
     27    @Rule
     28    @SuppressFBWarnings(value = "URF_UNREAD_PUBLIC_OR_PROTECTED_FIELD")
     29    public JOSMTestRules test = new JOSMTestRules().i18n().preferences();
    3130
    3231    /**
    3332     * Allows to override the timezone used in {@link DateUtils} for unit tests.
    public class DateUtilsTest {  
    116115     */
    117116    @Test
    118117    public void testFormatTime() {
    119         assertEquals("1:00 AM", DateUtils.formatTime(new Date(123), DateFormat.SHORT));
    120         assertEquals("1:00:00 AM CET", DateUtils.formatTime(new Date(123), DateFormat.LONG));
     118        assertEquals("12:00 AM", DateUtils.formatTime(new Date(0), DateFormat.SHORT));
     119        assertEquals("1:00 AM", DateUtils.formatTime(new Date(60 * 60 * 1000), DateFormat.SHORT));
     120        assertEquals("12:00 AM", DateUtils.formatTime(new Date(999), DateFormat.SHORT));
     121        // ignore seconds
     122        assertEquals("12:00 AM", DateUtils.formatTime(new Date(5999), DateFormat.SHORT));
     123
     124        TimeZone.setDefault(TimeZone.getTimeZone("Europe/Berlin"));
     125        assertEquals("1:00:00 AM CET", DateUtils.formatTime(new Date(0), DateFormat.LONG));
    121126    }
    122127
    123128    /**