51 case "tzNameTest":
52 tzNameTest(args[1]);
53 break;
54
55 case "bug8001440Test":
56 bug8001440Test();
57 break;
58
59 case "bug8010666Test":
60 bug8010666Test();
61 break;
62
63 case "bug8013086Test":
64 bug8013086Test(args[1], args[2]);
65 break;
66
67 case "bug8013903Test":
68 bug8013903Test();
69 break;
70
71 default:
72 throw new RuntimeException("Test method '"+methodName+"' not found.");
73 }
74 }
75
76 static void getPlatformLocale(Locale.Category cat) {
77 Locale defloc = Locale.getDefault(cat);
78 System.out.printf("%s,%s\n", defloc.getLanguage(), defloc.getCountry());
79 }
80
81 static void adapterTest(String expected, String lang, String ctry) {
82 Locale testLocale = new Locale(lang, ctry);
83 LocaleProviderAdapter ldaExpected =
84 LocaleProviderAdapter.forType(LocaleProviderAdapter.Type.valueOf(expected));
85 if (!ldaExpected.getDateFormatProvider().isSupportedLocale(testLocale)) {
86 System.out.println("test locale: "+testLocale+" is not supported by the expected provider: "+ldaExpected+". Ignoring the test.");
87 return;
88 }
89 String preference = System.getProperty("java.locale.providers", "");
90 LocaleProviderAdapter lda = LocaleProviderAdapter.getAdapter(DateFormatProvider.class, testLocale);
215 SimpleDateFormat sdf = new SimpleDateFormat("GGGG yyyy.MMM.dd '('E')' a hh:mm:ss", l);
216 sdf.setTimeZone(TimeZone.getTimeZone("America/Los_Angeles"));
217 String result = sdf.format(sampleDate);
218 System.out.println(result);
219 if (LocaleProviderAdapter.getAdapterPreference()
220 .contains(LocaleProviderAdapter.Type.JRE)) {
221 if (!jreResult.equals(result)) {
222 throw new RuntimeException("Format failed. result: \"" +
223 result + "\", expected: \"" + jreResult);
224 }
225 } else {
226 // should be FALLBACK, as Windows HOST does not return
227 // display names
228 if (!fallbackResult.equals(result)) {
229 throw new RuntimeException("Format failed. result: \"" +
230 result + "\", expected: \"" + fallbackResult);
231 }
232 }
233 }
234 }
235 }
|
51 case "tzNameTest":
52 tzNameTest(args[1]);
53 break;
54
55 case "bug8001440Test":
56 bug8001440Test();
57 break;
58
59 case "bug8010666Test":
60 bug8010666Test();
61 break;
62
63 case "bug8013086Test":
64 bug8013086Test(args[1], args[2]);
65 break;
66
67 case "bug8013903Test":
68 bug8013903Test();
69 break;
70
71 case "bug8027289Test":
72 bug8027289Test(args[1]);
73 break;
74
75 default:
76 throw new RuntimeException("Test method '"+methodName+"' not found.");
77 }
78 }
79
80 static void getPlatformLocale(Locale.Category cat) {
81 Locale defloc = Locale.getDefault(cat);
82 System.out.printf("%s,%s\n", defloc.getLanguage(), defloc.getCountry());
83 }
84
85 static void adapterTest(String expected, String lang, String ctry) {
86 Locale testLocale = new Locale(lang, ctry);
87 LocaleProviderAdapter ldaExpected =
88 LocaleProviderAdapter.forType(LocaleProviderAdapter.Type.valueOf(expected));
89 if (!ldaExpected.getDateFormatProvider().isSupportedLocale(testLocale)) {
90 System.out.println("test locale: "+testLocale+" is not supported by the expected provider: "+ldaExpected+". Ignoring the test.");
91 return;
92 }
93 String preference = System.getProperty("java.locale.providers", "");
94 LocaleProviderAdapter lda = LocaleProviderAdapter.getAdapter(DateFormatProvider.class, testLocale);
219 SimpleDateFormat sdf = new SimpleDateFormat("GGGG yyyy.MMM.dd '('E')' a hh:mm:ss", l);
220 sdf.setTimeZone(TimeZone.getTimeZone("America/Los_Angeles"));
221 String result = sdf.format(sampleDate);
222 System.out.println(result);
223 if (LocaleProviderAdapter.getAdapterPreference()
224 .contains(LocaleProviderAdapter.Type.JRE)) {
225 if (!jreResult.equals(result)) {
226 throw new RuntimeException("Format failed. result: \"" +
227 result + "\", expected: \"" + jreResult);
228 }
229 } else {
230 // should be FALLBACK, as Windows HOST does not return
231 // display names
232 if (!fallbackResult.equals(result)) {
233 throw new RuntimeException("Format failed. result: \"" +
234 result + "\", expected: \"" + fallbackResult);
235 }
236 }
237 }
238 }
239
240 static void bug8027289Test(String expectedCodePoint) {
241 char[] expectedSymbol = Character.toChars(Integer.valueOf(expectedCodePoint, 16));
242 NumberFormat nf = NumberFormat.getCurrencyInstance(Locale.CHINA);
243 char formatted = nf.format(7000).charAt(0);
244 System.out.println("returned: " + formatted + ", expected: " + expectedSymbol[0]);
245 if (formatted != expectedSymbol[0]) {
246 throw new RuntimeException("Unexpected Chinese currency symbol. returned: " + formatted + ", expected: " + expectedSymbol[0]);
247 }
248 }
249 }
|