private static void checkImmutableList(List<String> list) { try { list.add("hello"); error("%s is mutable%n", list); } catch (UnsupportedOperationException e) { } }
private static void testGetCandidateLocales() { Map<Locale, Locale[]> candidateData = new HashMap<Locale, Locale[]>(); candidateData.put( new Locale("ja", "JP", "YOK"), new Locale[] { new Locale("ja", "JP", "YOK"), new Locale("ja", "JP"), new Locale("ja"), new Locale("") }); candidateData.put( new Locale("ja", "JP"), new Locale[] {new Locale("ja", "JP"), new Locale("ja"), new Locale("")}); candidateData.put(new Locale("ja"), new Locale[] {new Locale("ja"), new Locale("")}); candidateData.put( new Locale("ja", "", "YOK"), new Locale[] {new Locale("ja", "", "YOK"), new Locale("ja"), new Locale("")}); candidateData.put( new Locale("", "JP", "YOK"), new Locale[] {new Locale("", "JP", "YOK"), new Locale("", "JP"), new Locale("")}); candidateData.put( new Locale("", "", "YOK"), new Locale[] {new Locale("", "", "YOK"), new Locale("")}); candidateData.put(new Locale("", "JP"), new Locale[] {new Locale("", "JP"), new Locale("")}); candidateData.put(new Locale(""), new Locale[] {new Locale("")}); for (Locale locale : candidateData.keySet()) { List<Locale> candidates = CONTROL.getCandidateLocales("any", locale); List<Locale> expected = Arrays.asList(candidateData.get(locale)); if (!candidates.equals(expected)) { error( "Wrong candidates for %s: got %s, expected %s%n", toString(locale), candidates, expected); } } final int NARGS = 2; for (int mask = 0; mask < (1 << NARGS) - 1; mask++) { Object[] data = getNpeArgs(NARGS, mask); try { List<Locale> candidates = CONTROL.getCandidateLocales((String) data[0], (Locale) data[1]); error( "getCandidateLocales(%s, %s) doesn't throw NPE.%n", data[0], toString((Locale) data[1])); } catch (NullPointerException e) { } } }