Environment independence of tests: DecimalFormat symbols

Project: http://git-wip-us.apache.org/repos/asf/incubator-freemarker/repo
Commit: 
http://git-wip-us.apache.org/repos/asf/incubator-freemarker/commit/98fd94e5
Tree: http://git-wip-us.apache.org/repos/asf/incubator-freemarker/tree/98fd94e5
Diff: http://git-wip-us.apache.org/repos/asf/incubator-freemarker/diff/98fd94e5

Branch: refs/heads/3
Commit: 98fd94e5737ef204df6c85a0d32840d828708b4b
Parents: 2ed315e
Author: ddekany <[email protected]>
Authored: Tue Mar 14 15:26:36 2017 +0100
Committer: ddekany <[email protected]>
Committed: Tue Mar 14 15:26:36 2017 +0100

----------------------------------------------------------------------
 .../impl/ExtendedDecimalFormatTest.java         | 36 +++++++++++---------
 1 file changed, 20 insertions(+), 16 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-freemarker/blob/98fd94e5/src/test/java/org/apache/freemarker/core/valueformat/impl/ExtendedDecimalFormatTest.java
----------------------------------------------------------------------
diff --git 
a/src/test/java/org/apache/freemarker/core/valueformat/impl/ExtendedDecimalFormatTest.java
 
b/src/test/java/org/apache/freemarker/core/valueformat/impl/ExtendedDecimalFormatTest.java
index 1146676..9625a5e 100644
--- 
a/src/test/java/org/apache/freemarker/core/valueformat/impl/ExtendedDecimalFormatTest.java
+++ 
b/src/test/java/org/apache/freemarker/core/valueformat/impl/ExtendedDecimalFormatTest.java
@@ -24,6 +24,7 @@ import static org.junit.Assert.*;
 
 import java.io.IOException;
 import java.text.DecimalFormat;
+import java.text.DecimalFormatSymbols;
 import java.text.ParseException;
 import java.util.Locale;
 
@@ -35,12 +36,13 @@ import org.junit.Test;
 public class ExtendedDecimalFormatTest extends TemplateTest {
     
     private static final Locale LOC = Locale.US;
-    
+    private static final DecimalFormatSymbols SYMS = 
DecimalFormatSymbols.getInstance(LOC);
+
     @Test
     public void testNonExtended() throws ParseException {
         for (String fStr : new String[] { "0.00", "0.###", "#,#0.###", 
"#0.####", "0.0;m", "0.0;",
                 "0'x'", "0'x';'m'", "0';'", "0';';m", "0';';'#'m';'", "0';;'", 
"" }) {
-            assertFormatsEquivalent(new DecimalFormat(fStr), 
ExtendedDecimalFormatParser.parse(fStr, LOC));
+            assertFormatsEquivalent(new DecimalFormat(fStr, SYMS), 
ExtendedDecimalFormatParser.parse(fStr, LOC));
         }
         
         try {
@@ -58,18 +60,20 @@ public class ExtendedDecimalFormatTest extends TemplateTest 
{
 
     @Test
     public void testNonExtended2() throws ParseException {
-        assertFormatsEquivalent(new DecimalFormat("0.0"), 
ExtendedDecimalFormatParser.parse("0.0;", LOC));
-        assertFormatsEquivalent(new DecimalFormat("0.0"), 
ExtendedDecimalFormatParser.parse("0.0;;", LOC));
-        assertFormatsEquivalent(new DecimalFormat("0.0;m"), 
ExtendedDecimalFormatParser.parse("0.0;m;", LOC));
-        assertFormatsEquivalent(new DecimalFormat(""), 
ExtendedDecimalFormatParser.parse(";;", LOC));
-        assertFormatsEquivalent(new DecimalFormat("0'x'"), 
ExtendedDecimalFormatParser.parse("0'x';;", LOC));
-        assertFormatsEquivalent(new DecimalFormat("0'x';'m'"), 
ExtendedDecimalFormatParser.parse("0'x';'m';", LOC));
-        assertFormatsEquivalent(new DecimalFormat("0';'"), 
ExtendedDecimalFormatParser.parse("0';';;", LOC));
-        assertFormatsEquivalent(new DecimalFormat("0';';m"), 
ExtendedDecimalFormatParser.parse("0';';m;", LOC));
-        assertFormatsEquivalent(new DecimalFormat("0';';'#'m';'"), 
ExtendedDecimalFormatParser.parse("0';';'#'m';';",
-                LOC));
-        assertFormatsEquivalent(new DecimalFormat("0';;'"), 
ExtendedDecimalFormatParser.parse("0';;';;", LOC));
-        
+        assertFormatsEquivalent(new DecimalFormat("0.0", SYMS), 
ExtendedDecimalFormatParser.parse("0.0;", LOC));
+        assertFormatsEquivalent(new DecimalFormat("0.0", SYMS), 
ExtendedDecimalFormatParser.parse("0.0;;", LOC));
+        assertFormatsEquivalent(new DecimalFormat("0.0;m", SYMS), 
ExtendedDecimalFormatParser.parse("0.0;m;", LOC));
+        assertFormatsEquivalent(new DecimalFormat("", SYMS), 
ExtendedDecimalFormatParser.parse(";;", LOC));
+        assertFormatsEquivalent(new DecimalFormat("0'x'", SYMS), 
ExtendedDecimalFormatParser.parse("0'x';;", LOC));
+        assertFormatsEquivalent(new DecimalFormat("0'x';'m'", SYMS),
+                ExtendedDecimalFormatParser.parse("0'x';'m';", LOC));
+        assertFormatsEquivalent(new DecimalFormat("0';'", SYMS), 
ExtendedDecimalFormatParser.parse("0';';;", LOC));
+        assertFormatsEquivalent(new DecimalFormat("0';';m", SYMS), 
ExtendedDecimalFormatParser.parse("0';';m;", LOC));
+        assertFormatsEquivalent(new DecimalFormat("0';';'#'m';'", SYMS),
+                ExtendedDecimalFormatParser.parse("0';';'#'m';';", LOC));
+        assertFormatsEquivalent(new DecimalFormat("0';;'", SYMS),
+                ExtendedDecimalFormatParser.parse("0';;';;", LOC));
+
         try {
             new DecimalFormat(";m");
             fail();
@@ -320,11 +324,11 @@ public class ExtendedDecimalFormatTest extends 
TemplateTest {
     
     private void assertFormatsEquivalent(DecimalFormat dfExpected, 
DecimalFormat dfActual) {
         for (int signum : new int[] { 1, -1 }) {
-            assertFormatsEquivalent(dfExpected, dfActual, signum * 0);
+            assertFormatsEquivalent(dfExpected, dfActual, 0);
             assertFormatsEquivalent(dfExpected, dfActual, signum * 0.5);
             assertFormatsEquivalent(dfExpected, dfActual, signum * 0.25);
             assertFormatsEquivalent(dfExpected, dfActual, signum * 0.125);
-            assertFormatsEquivalent(dfExpected, dfActual, signum * 1);
+            assertFormatsEquivalent(dfExpected, dfActual, signum);
             assertFormatsEquivalent(dfExpected, dfActual, signum * 10);
             assertFormatsEquivalent(dfExpected, dfActual, signum * 100);
             assertFormatsEquivalent(dfExpected, dfActual, signum * 1000);

Reply via email to