]> granicus.if.org Git - icu/commitdiff
ICU-13735 Adding tests for DecimalFormat grouping getters
authorElango Cheran <elango@google.com>
Wed, 18 Sep 2019 22:34:07 +0000 (15:34 -0700)
committerElango <elango.cheran@gmail.com>
Fri, 27 Sep 2019 18:05:32 +0000 (11:05 -0700)
icu4c/source/test/intltest/numfmtst.cpp
icu4c/source/test/intltest/numfmtst.h
icu4j/main/tests/core/src/com/ibm/icu/dev/test/format/NumberFormatTest.java

index bc9fc7fcb8ae2a8c7e4bd5cc982cea9d2b03225d..484f16bee71b847713f3dc390e16ae49c5d72b36 100644 (file)
@@ -241,6 +241,7 @@ void NumberFormatTest::runIndexedTest( int32_t index, UBool exec, const char* &n
   TESTCASE_AUTO(Test20358_GroupingInPattern);
   TESTCASE_AUTO(Test13731_DefaultCurrency);
   TESTCASE_AUTO(Test20499_CurrencyVisibleDigitsPlural);
+  TESTCASE_AUTO(Test13735_GroupingSizeGetter);
   TESTCASE_AUTO_END;
 }
 
@@ -9705,4 +9706,24 @@ void NumberFormatTest::Test20499_CurrencyVisibleDigitsPlural() {
     }
 }
 
+void NumberFormatTest::Test13735_GroupingSizeGetter() {
+    IcuTestErrorCode status(*this, "Test13735_GroupingSizeGetter");
+    {
+        DecimalFormat df("0", {"en", status}, status);
+        assertEquals("pat 0: ", 0, df.getGroupingSize());
+        df.setGroupingUsed(false);
+        assertEquals("pat 0 then disabled: ", 0, df.getGroupingSize());
+        df.setGroupingUsed(true);
+        assertEquals("pat 0 then enabled: ", 0, df.getGroupingSize());
+    }
+    {
+        DecimalFormat df("#,##0", {"en", status}, status);
+        assertEquals("pat #,##0: ", 3, df.getGroupingSize());
+        df.setGroupingUsed(false);
+        assertEquals("pat #,##0 then disabled: ", 3, df.getGroupingSize());
+        df.setGroupingUsed(true);
+        assertEquals("pat #,##0 then enabled: ", 3, df.getGroupingSize());
+    }
+}
+
 #endif /* #if !UCONFIG_NO_FORMATTING */
index 66c4b2d9c737374667afe99989558a83e0775dc1..78bdf645409e86a279293defd0d082ae4142286d 100644 (file)
@@ -297,6 +297,7 @@ class NumberFormatTest: public CalendarTimeZoneTest {
     void Test20358_GroupingInPattern();
     void Test13731_DefaultCurrency();
     void Test20499_CurrencyVisibleDigitsPlural();
+    void Test13735_GroupingSizeGetter();
 
  private:
     UBool testFormattableAsUFormattable(const char *file, int line, Formattable &f);
index 9f2adec42446d2cf098bf6940e7c9311554df6f6..2b5c2f2c1e26cfc2d98055e0ea5a80f116b23d74 100644 (file)
@@ -6669,4 +6669,25 @@ public class NumberFormatTest extends TestFmwk {
             assertEquals("iteration " + i, expected, actual);
         }
     }
+
+    @Test
+    public void test13735_GroupingSizeGetter() {
+        DecimalFormatSymbols EN = DecimalFormatSymbols.getInstance(ULocale.ENGLISH);
+        {
+            DecimalFormat df = new DecimalFormat("0", EN);
+            assertEquals("pat 0: ", 0, df.getGroupingSize());
+            df.setGroupingUsed(false);
+            assertEquals("pat 0 then disabled: ", 0, df.getGroupingSize());
+            df.setGroupingUsed(true);
+            assertEquals("pat 0 then enabled: ", 0, df.getGroupingSize());
+        }
+        {
+            DecimalFormat df = new DecimalFormat("#,##0", EN);
+            assertEquals("pat #,##0: ", 3, df.getGroupingSize());
+            df.setGroupingUsed(false);
+            assertEquals("pat #,##0 then disabled: ", 3, df.getGroupingSize());
+            df.setGroupingUsed(true);
+            assertEquals("pat #,##0 then enabled: ", 3, df.getGroupingSize());
+        }
+    }
 }