< prev index next >

test/java/time/test/java/time/chrono/TestJapaneseChronology.java

Print this page

        

@@ -32,10 +32,11 @@
 import java.util.Locale;
 
 import org.testng.annotations.DataProvider;
 import org.testng.annotations.Test;
 import static org.testng.Assert.assertEquals;
+import static org.testng.Assert.assertTrue;
 
 /**
  * Tests for the Japanese chronology
  */
 @Test

@@ -57,11 +58,11 @@
             { JapaneseEra.TAISHO,    15, 12, 24, 1926 },
             { JapaneseEra.SHOWA,      1, 12, 25, 1926 },
             { JapaneseEra.SHOWA,     64,  1,  7, 1989 },
             { JapaneseEra.HEISEI,     1,  1,  8, 1989 },
             { JapaneseEra.HEISEI,    31,  4, 30, 2019 },
-            { JapaneseEra.of(3),      1,  5,  1, 2019 }, // NEWERA
+            { JapaneseEra.of(3),      1,  5,  1, 2019 },
         };
     }
 
     @DataProvider(name="day_year_data")
     Object[][] dayYearData() {

@@ -75,11 +76,11 @@
             { JapaneseEra.SHOWA,   2,    8,  1,  8 },
             { JapaneseEra.SHOWA,  64,    7,  1,  7 },
             { JapaneseEra.HEISEI,  1,    1,  1,  8 },
             { JapaneseEra.HEISEI,  2,    8,  1,  8 },
             { JapaneseEra.HEISEI, 31,  120,  4, 30 },
-            { JapaneseEra.of(3),   1,    1,  5,  1 }, // NEWERA
+            { JapaneseEra.of(3),   1,    1,  5,  1 },
         };
     }
 
     @DataProvider(name="range_data")
     Object[][] rangeData() {

@@ -108,12 +109,12 @@
             { JapaneseEra.SHOWA,     64,  1,  8 },
             { JapaneseEra.SHOWA,     65,  1,  1 },
             { JapaneseEra.HEISEI,     1,  1,  7 },
             { JapaneseEra.HEISEI,     1,  2, 29 },
             { JapaneseEra.HEISEI,    31,  5,  1 },
-            { JapaneseEra.of(3),      1,  4, 30 }, // NEWERA
-            { JapaneseEra.of(3), Year.MAX_VALUE,  12, 31 }, // NEWERA
+            { JapaneseEra.of(3),      1,  4, 30 },
+            { JapaneseEra.of(3), Year.MAX_VALUE,  12, 31 },
         };
     }
 
     @DataProvider(name="invalid_eraYear")
     Object[][] invalidEraYearData() {

@@ -129,13 +130,13 @@
             { JapaneseEra.SHOWA,      0 },
             { JapaneseEra.SHOWA,     65 },
             { JapaneseEra.HEISEI,    -1 },
             { JapaneseEra.HEISEI,     0 },
             { JapaneseEra.HEISEI,    32 },
-            { JapaneseEra.of(3),     -1 }, // NEWERA
-            { JapaneseEra.of(3),      0 }, // NEWERA
-            { JapaneseEra.of(3), Year.MAX_VALUE }, // NEWERA
+            { JapaneseEra.of(3),     -1 },
+            { JapaneseEra.of(3),      0 },
+            { JapaneseEra.of(3), Year.MAX_VALUE },
         };
     }
 
     @DataProvider(name="invalid_day_year_data")
     Object[][] invalidDayYearData() {

@@ -149,12 +150,25 @@
             { JapaneseEra.SHOWA,   2, 366 },
             { JapaneseEra.SHOWA,  64,   8 },
             { JapaneseEra.HEISEI,  1, 360 },
             { JapaneseEra.HEISEI,  2, 366 },
             { JapaneseEra.HEISEI, 31, 121 },
-            { JapaneseEra.of(3),   1, 246 }, // NEWERA
-            { JapaneseEra.of(3),   2, 367 }, // NEWERA
+            { JapaneseEra.of(3),   1, 246 },
+            { JapaneseEra.of(3),   2, 367 },
+        };
+    }
+
+    @DataProvider
+    Object[][] eraNameData() {
+        return new Object[][] {
+            // Japanese era, name, exception
+            { "Meiji",  JapaneseEra.MEIJI,      null },
+            { "Taisho", JapaneseEra.TAISHO,     null },
+            { "Showa",  JapaneseEra.SHOWA,      null },
+            { "Heisei", JapaneseEra.HEISEI,     null },
+            { "Reiwa",  JapaneseEra.of(3),      null },
+            { "NewEra", null,                   IllegalArgumentException.class},
         };
     }
 
     @Test
     public void test_ofLocale() {

@@ -202,6 +216,15 @@
     @Test(dataProvider="invalid_day_year_data", expectedExceptions=DateTimeException.class)
     public void test_invalidDayYear(JapaneseEra era, int yearOfEra, int dayOfYear) {
         JapaneseDate date = JAPANESE.dateYearDay(era, yearOfEra, dayOfYear);
         System.out.printf("No DateTimeException with era=%s, year=%d, dayOfYear=%d%n", era, yearOfEra, dayOfYear);
     }
+
+    @Test(dataProvider="eraNameData")
+    public void test_eraName(String eraName, JapaneseEra era, Class expectedEx) {
+        try {
+            assertEquals(JapaneseEra.valueOf(eraName), era);
+        } catch (Exception ex) {
+            assertTrue(expectedEx.isInstance(ex));
+        }
+    }
 }
< prev index next >