]> granicus.if.org Git - icu/commitdiff
ICU-11648 Re-add test for DecimalFormat::toPattern
authorCraig Cornelius <ccornelius@google.com>
Mon, 7 May 2018 23:29:05 +0000 (23:29 +0000)
committerCraig Cornelius <ccornelius@google.com>
Mon, 7 May 2018 23:29:05 +0000 (23:29 +0000)
X-SVN-Rev: 41346

icu4c/source/test/intltest/numfmtst.cpp
icu4c/source/test/intltest/numfmtst.h

index 7e54a189929ebd6038b736bc44d39457182ab731..1a047e42990dac7395b37b77d5d173573795aa27 100644 (file)
@@ -672,6 +672,7 @@ void NumberFormatTest::runIndexedTest( int32_t index, UBool exec, const char* &n
   TESTCASE_AUTO(Test11645_ApplyPatternEquality);
   TESTCASE_AUTO(Test12567);
   TESTCASE_AUTO(Test13056_GroupingSize);
+  TESTCASE_AUTO(Test11648_ExpDecFormatMalPattern);
   TESTCASE_AUTO_END;
 }
 
@@ -9396,4 +9397,17 @@ void NumberFormatTest::Test13056_GroupingSize() {
     assertEquals("Secondary should remember explicit setting and return 3", 3, df.getSecondaryGroupingSize());
 }
 
+void NumberFormatTest::Test11648_ExpDecFormatMalPattern() {
+    UErrorCode status = U_ZERO_ERROR;
+
+    DecimalFormat fmt("0.00", status);
+    fmt.setScientificNotation(TRUE);
+    UnicodeString pattern;
+
+    assertEquals("", "0.00E0", fmt.toPattern(pattern));
+
+    DecimalFormat fmt2(pattern, status);
+    assertSuccess("", status);
+}
+
 #endif /* #if !UCONFIG_NO_FORMATTING */
index 925a1c3d222c789bf03707a7199c8ef2a9d96405..d675d1461b46094db406438f54882e84a76d6180 100644 (file)
@@ -237,6 +237,7 @@ class NumberFormatTest: public CalendarTimeZoneTest {
     void Test11645_ApplyPatternEquality();
     void Test12567();
     void Test13056_GroupingSize();
+    void Test11648_ExpDecFormatMalPattern();
 
  private:
     UBool testFormattableAsUFormattable(const char *file, int line, Formattable &f);