17935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert/* 27935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert ******************************************************************************* 37935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert * Copyright (C) 2008-2014, International Business Machines Corporation and * 47935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert * others. All Rights Reserved. * 57935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert ******************************************************************************* 67935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert */ 77935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubertpackage com.ibm.icu.dev.test.localespi; 87935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert 97935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubertimport java.text.DecimalFormatSymbols; 107935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubertimport java.util.Currency; 117935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubertimport java.util.Locale; 127935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert 137935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubertimport com.ibm.icu.dev.test.TestFmwk; 147935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubertimport com.ibm.icu.util.ULocale; 157935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert 167935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubertpublic class DecimalFormatSymbolsTest extends TestFmwk { 177935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert public static void main(String[] args) throws Exception { 187935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert new DecimalFormatSymbolsTest().run(args); 197935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert } 207935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert 217935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert /* 227935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert * Check if getInstance returns the ICU implementation. 237935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert */ 247935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert public void TestGetInstance() { 257935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert for (Locale loc : DecimalFormatSymbols.getAvailableLocales()) { 267935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert if (TestUtil.isProblematicIBMLocale(loc)) { 277935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert logln("Skipped " + loc); 287935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert continue; 297935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert } 307935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert 317935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert DecimalFormatSymbols decfs = DecimalFormatSymbols.getInstance(loc); 327935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert 337935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert boolean isIcuImpl = (decfs instanceof com.ibm.icu.impl.jdkadapter.DecimalFormatSymbolsICU); 347935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert 357935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert if (TestUtil.isICUExtendedLocale(loc)) { 367935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert if (!isIcuImpl) { 377935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert errln("FAIL: getInstance returned JDK DecimalFormatSymbols for locale " + loc); 387935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert } 397935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert } else { 407935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert if (isIcuImpl) { 417935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert logln("INFO: getInstance returned ICU DecimalFormatSymbols for locale " + loc); 427935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert } 437935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert Locale iculoc = TestUtil.toICUExtendedLocale(loc); 447935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert DecimalFormatSymbols decfsIcu = DecimalFormatSymbols.getInstance(iculoc); 457935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert if (isIcuImpl) { 467935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert if (!decfs.equals(decfsIcu)) { 477935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert errln("FAIL: getInstance returned ICU DecimalFormatSymbols for locale " + loc 487935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert + ", but different from the one for locale " + iculoc); 497935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert } 507935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert } else { 517935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert if (!(decfsIcu instanceof com.ibm.icu.impl.jdkadapter.DecimalFormatSymbolsICU)) { 527935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert errln("FAIL: getInstance returned JDK DecimalFormatSymbols for locale " + iculoc); 537935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert } 547935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert } 557935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert } 567935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert } 577935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert } 587935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert 597935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert /* 607935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert * Testing the contents of DecimalFormatSymbols between ICU instance and its 617935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert * equivalent created via the Locale SPI framework. 627935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert */ 637935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert public void TestICUEquivalent() { 647935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert Locale[] TEST_LOCALES = { 657935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert new Locale("en", "US"), 667935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert new Locale("pt", "BR"), 677935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert new Locale("ko", "KR"), 687935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert }; 697935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert 707935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert for (Locale loc : TEST_LOCALES) { 717935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert Locale iculoc = TestUtil.toICUExtendedLocale(loc); 727935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert DecimalFormatSymbols jdkDecfs = DecimalFormatSymbols.getInstance(iculoc); 737935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert com.ibm.icu.text.DecimalFormatSymbols icuDecfs = com.ibm.icu.text.DecimalFormatSymbols.getInstance(loc); 747935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert 757935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert Currency jdkCur = jdkDecfs.getCurrency(); 767935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert com.ibm.icu.util.Currency icuCur = icuDecfs.getCurrency(); 777935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert if ((jdkCur != null && icuCur == null) 787935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert || (jdkCur == null && icuCur != null) 797935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert || !jdkCur.getCurrencyCode().equals(icuCur.getCurrencyCode())) { 807935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert errln("FAIL: Different results returned by getCurrency for locale " + loc); 817935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert } 827935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert 837935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert checkEquivalence(jdkDecfs.getCurrencySymbol(), icuDecfs.getCurrencySymbol(), loc, "getCurrencySymbol"); 847935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert checkEquivalence(jdkDecfs.getDecimalSeparator(), icuDecfs.getDecimalSeparator(), loc, "getDecimalSeparator"); 857935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert checkEquivalence(jdkDecfs.getDigit(), icuDecfs.getDigit(), loc, "getDigit"); 867935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert checkEquivalence(jdkDecfs.getExponentSeparator(), icuDecfs.getExponentSeparator(), loc, "getExponentSeparator"); 877935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert checkEquivalence(jdkDecfs.getGroupingSeparator(), icuDecfs.getGroupingSeparator(), loc, "getGroupingSeparator"); 887935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert checkEquivalence(jdkDecfs.getInfinity(), icuDecfs.getInfinity(), loc, "getInfinity"); 897935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert checkEquivalence(jdkDecfs.getInternationalCurrencySymbol(), icuDecfs.getInternationalCurrencySymbol(), loc, "getInternationalCurrencySymbol"); 907935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert checkEquivalence(jdkDecfs.getMinusSign(), icuDecfs.getMinusSign(), loc, "getMinusSign"); 917935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert checkEquivalence(jdkDecfs.getMonetaryDecimalSeparator(), icuDecfs.getMonetaryDecimalSeparator(), loc, "getMonetaryDecimalSeparator"); 927935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert checkEquivalence(jdkDecfs.getNaN(), icuDecfs.getNaN(), loc, "getNaN"); 937935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert checkEquivalence(jdkDecfs.getPatternSeparator(), icuDecfs.getPatternSeparator(), loc, "getPatternSeparator"); 947935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert checkEquivalence(jdkDecfs.getPercent(), icuDecfs.getPercent(), loc, "getPercent"); 957935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert checkEquivalence(jdkDecfs.getPerMill(), icuDecfs.getPerMill(), loc, "getPerMill"); 967935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert checkEquivalence(jdkDecfs.getZeroDigit(), icuDecfs.getZeroDigit(), loc, "getZeroDigit"); 977935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert } 987935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert } 997935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert 1007935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert private void checkEquivalence(Object jo, Object io, Locale loc, String method) { 1017935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert if (!jo.equals(io)) { 1027935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert errln("FAIL: Different results returned by " + method + " for locale " 1037935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert + loc + " (jdk=" + jo + ",icu=" + io + ")"); 1047935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert } 1057935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert } 1067935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert 1077935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert /* 1087935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert * Testing setters 1097935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert */ 1107935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert public void TestSetSymbols() { 1117935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert // ICU's JDK DecimalFormatSymbols implementation for de_DE locale 1127935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert DecimalFormatSymbols decfs = DecimalFormatSymbols.getInstance(TestUtil.toICUExtendedLocale(new Locale("de", "DE"))); 1137935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert 1147935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert // en_US is supported by JDK, so this is the JDK's own DecimalFormatSymbols 1157935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert Locale loc = new Locale("en", "US"); 1167935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert DecimalFormatSymbols decfsEnUS = DecimalFormatSymbols.getInstance(loc); 1177935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert 1187935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert // Copying over all symbols 1197935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert decfs.setCurrency(decfsEnUS.getCurrency()); 1207935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert 1217935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert decfs.setCurrencySymbol(decfsEnUS.getCurrencySymbol()); 1227935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert decfs.setDecimalSeparator(decfsEnUS.getDecimalSeparator()); 1237935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert decfs.setDigit(decfsEnUS.getDigit()); 1247935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert decfs.setExponentSeparator(decfsEnUS.getExponentSeparator()); 1257935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert decfs.setGroupingSeparator(decfsEnUS.getGroupingSeparator()); 1267935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert decfs.setInfinity(decfsEnUS.getInfinity()); 1277935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert decfs.setInternationalCurrencySymbol(decfsEnUS.getInternationalCurrencySymbol()); 1287935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert decfs.setMinusSign(decfsEnUS.getMinusSign()); 1297935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert decfs.setMonetaryDecimalSeparator(decfsEnUS.getMonetaryDecimalSeparator()); 1307935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert decfs.setNaN(decfsEnUS.getNaN()); 1317935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert decfs.setPatternSeparator(decfsEnUS.getPatternSeparator()); 1327935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert decfs.setPercent(decfsEnUS.getPercent()); 1337935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert decfs.setPerMill(decfsEnUS.getPerMill()); 1347935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert decfs.setZeroDigit(decfsEnUS.getZeroDigit()); 1357935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert 1367935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert // Check 1377935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert Currency cur = decfs.getCurrency(); 1387935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert Currency curEnUS = decfsEnUS.getCurrency(); 1397935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert if ((cur != null && curEnUS == null) 1407935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert || (cur == null && curEnUS != null) 1417935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert || !cur.equals(curEnUS)) { 1427935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert errln("FAIL: Different results returned by getCurrency"); 1437935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert } 1447935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert 1457935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert checkEquivalence(decfs.getCurrencySymbol(), decfsEnUS.getCurrencySymbol(), loc, "getCurrencySymbol"); 1467935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert checkEquivalence(decfs.getDecimalSeparator(), decfsEnUS.getDecimalSeparator(), loc, "getDecimalSeparator"); 1477935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert checkEquivalence(decfs.getDigit(), decfsEnUS.getDigit(), loc, "getDigit"); 1487935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert checkEquivalence(decfs.getExponentSeparator(), decfsEnUS.getExponentSeparator(), loc, "getExponentSeparator"); 1497935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert checkEquivalence(decfs.getGroupingSeparator(), decfsEnUS.getGroupingSeparator(), loc, "getGroupingSeparator"); 1507935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert checkEquivalence(decfs.getInfinity(), decfsEnUS.getInfinity(), loc, "getInfinity"); 1517935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert checkEquivalence(decfs.getInternationalCurrencySymbol(), decfsEnUS.getInternationalCurrencySymbol(), loc, "getInternationalCurrencySymbol"); 1527935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert checkEquivalence(decfs.getMinusSign(), decfsEnUS.getMinusSign(), loc, "getMinusSign"); 1537935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert checkEquivalence(decfs.getMonetaryDecimalSeparator(), decfsEnUS.getMonetaryDecimalSeparator(), loc, "getMonetaryDecimalSeparator"); 1547935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert checkEquivalence(decfs.getNaN(), decfsEnUS.getNaN(), loc, "getNaN"); 1557935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert checkEquivalence(decfs.getPatternSeparator(), decfsEnUS.getPatternSeparator(), loc, "getPatternSeparator"); 1567935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert checkEquivalence(decfs.getPercent(), decfsEnUS.getPercent(), loc, "getPercent"); 1577935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert checkEquivalence(decfs.getPerMill(), decfsEnUS.getPerMill(), loc, "getPerMill"); 1587935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert checkEquivalence(decfs.getZeroDigit(), decfsEnUS.getZeroDigit(), loc, "getZeroDigit"); 1597935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert } 1607935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert 1617935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert public void TestKeywords() { 1627935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert // ICU provider variant is appended 1637935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert ULocale uloc0 = new ULocale("en_US_" + TestUtil.ICU_VARIANT + "@numbers=Arab;currency=EUR"); 1647935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert Locale loc = uloc0.toLocale(); 1657935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert // On Java 7+, locale extension is preserved 1667935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert ULocale uloc = ULocale.forLocale(loc); 1677935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert String nsType = uloc.getKeywordValue("numbers"); 1687935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert if (nsType == null) { 1697935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert // Java 6 - skip this test 1707935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert return; 1717935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert } 1727935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert 1737935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert DecimalFormatSymbols jdkDecfs = DecimalFormatSymbols.getInstance(loc); 1747935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert com.ibm.icu.text.DecimalFormatSymbols icuDecfs = com.ibm.icu.text.DecimalFormatSymbols.getInstance(uloc); 1757935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert // Check digit 0 1767935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert if (jdkDecfs.getDigit() != icuDecfs.getDigit()) { 1777935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert errln("FAIL: Different decimal digit - via JDK: " + jdkDecfs.getDigit() + ", with ICU: " + icuDecfs.getDigit()); 1787935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert } 1797935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert 1807935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert String jdkCurrencyCode = jdkDecfs.getCurrency().getCurrencyCode(); 1817935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert String icuCurrencyCode = icuDecfs.getCurrency().getCurrencyCode(); 1827935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert if (!jdkCurrencyCode.equals(icuCurrencyCode)) { 1837935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert errln("FAIL: Different currency code - via JDK: " + jdkCurrencyCode + ", with ICU: " + icuCurrencyCode); 1847935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert } 1857935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert } 1867935b1839a081ed19ae0d33029ad3c09632a2caaFredrik Roubert} 187