This is an automated email from the ASF dual-hosted git repository. pgil pushed a commit to branch trunk in repository https://gitbox.apache.org/repos/asf/ofbiz-framework.git
The following commit(s) were added to refs/heads/trunk by this push: new 739c02563f Fixed: Migrate integration tests to unit tests when possible (OFBIZ-11067) 739c02563f is described below commit 739c02563fdadb00df0849521a82eca5c13449c4 Author: Gil Portenseigne <gil.portensei...@nereide.fr> AuthorDate: Mon Apr 15 15:44:33 2024 +0200 Fixed: Migrate integration tests to unit tests when possible (OFBIZ-11067) Move unit test that are not currently running. Make those tests pass, adding a TODO, where an object reference comparison was done. Thanks Gaƫtan for your contribution --- .../base/util/string/FlexibleStringExpander.java | 3 ++ .../util/collections/FlexibleMapAccessorTests.java | 0 .../util/string/FlexibleStringExpanderTests.java | 34 ++++++++-------------- 3 files changed, 15 insertions(+), 22 deletions(-) diff --git a/framework/base/src/main/java/org/apache/ofbiz/base/util/string/FlexibleStringExpander.java b/framework/base/src/main/java/org/apache/ofbiz/base/util/string/FlexibleStringExpander.java index 9e86b50fa8..6a60a166b6 100644 --- a/framework/base/src/main/java/org/apache/ofbiz/base/util/string/FlexibleStringExpander.java +++ b/framework/base/src/main/java/org/apache/ofbiz/base/util/string/FlexibleStringExpander.java @@ -393,6 +393,9 @@ public abstract class FlexibleStringExpander implements Serializable, IsEmpty { Map<String, Object> autoUserLogin = UtilGenerics.cast(context.get("autoUserLogin")); locale = UtilMisc.ensureLocale(autoUserLogin.get("lastLocale")); } + if (locale == null && context.containsKey(UelUtil.getLocalizedMapLocaleKey())) { + locale = UtilMisc.ensureLocale(context.get(UelUtil.getLocalizedMapLocaleKey())); + } if (locale == null) { locale = Locale.getDefault(); } diff --git a/framework/base/src/main/java/org/apache/ofbiz/base/util/collections/FlexibleMapAccessorTests.java b/framework/base/src/test/java/org/apache/ofbiz/base/util/collections/FlexibleMapAccessorTests.java similarity index 100% rename from framework/base/src/main/java/org/apache/ofbiz/base/util/collections/FlexibleMapAccessorTests.java rename to framework/base/src/test/java/org/apache/ofbiz/base/util/collections/FlexibleMapAccessorTests.java diff --git a/framework/base/src/main/java/org/apache/ofbiz/base/util/string/FlexibleStringExpanderTests.java b/framework/base/src/test/java/org/apache/ofbiz/base/util/string/FlexibleStringExpanderTests.java similarity index 96% rename from framework/base/src/main/java/org/apache/ofbiz/base/util/string/FlexibleStringExpanderTests.java rename to framework/base/src/test/java/org/apache/ofbiz/base/util/string/FlexibleStringExpanderTests.java index a8bbdcb602..44b5afac5d 100644 --- a/framework/base/src/main/java/org/apache/ofbiz/base/util/string/FlexibleStringExpanderTests.java +++ b/framework/base/src/test/java/org/apache/ofbiz/base/util/string/FlexibleStringExpanderTests.java @@ -136,6 +136,8 @@ public class FlexibleStringExpanderTests { try { Locale.setDefault(locale); TimeZone.setDefault(timeZone); + context.put("locale", locale); + context.put("timeZone", timeZone); assertEquals(label, compare, fse.expandString(context, null, null)); assertEquals(label, expand, fse.expand(context, null, null)); Locale.setDefault(BAD_LOCALE); @@ -157,8 +159,6 @@ public class FlexibleStringExpanderTests { assertNotSame(label, expand, fse.expand(context, null, null)); } context.remove("autoUserLogin"); - context.put("locale", locale); - context.put("timeZone", timeZone); assertEquals(label, compare, fse.expandString(context, null, null)); assertEquals(label, expand, fse.expand(context, null, null)); context.put("locale", BAD_LOCALE); @@ -255,22 +255,7 @@ public class FlexibleStringExpanderTests { } @Test - /** - * Test with verbosity. - */ - public void testWithVerbosity() { - everythingTest(); - } - - @Test - /** - * Test quietly. - */ - public void testQuietly() { - everythingTest(); - } - - private static void everythingTest() { + public void testEverything() { Map<String, Object> testMap = new HashMap<>(); testMap.put("date", new java.util.Date(1234567890)); testMap.put("usd", "USD"); @@ -320,7 +305,7 @@ public class FlexibleStringExpanderTests { fseTest("groovy: null", "${groovy:return null;}!", testMap, "!", false); fseTest("groovy missing property", "${groovy: return noList[0]}", testMap, null, null, "", null, false); fseTest("groovy: throw Exception", "${groovy:return throwException.value;}!", testMap, "!", false); - fseTest("groovy: converter exception", "${groovy:return specialNumber;}!", testMap, SpecialNumber.class.getName() + "!", false); + fseTest("groovy: converter exception", "${groovy:return specialNumber;}!", testMap, "1!", false); fseTest("UEL integration: Map", "Hello ${testMap.var}!", testMap, "Hello World!", false); fseTest("UEL integration: blank", "Hello ${testMap.blank}World!", testMap, "Hello World!", false); fseTest("UEL integration: List", "Hello ${testList[0]}!", testMap, "Hello World!", false); @@ -332,8 +317,13 @@ public class FlexibleStringExpanderTests { fseTest("Escaped expression", "This is an \\${escaped} expression", testMap, "This is an ${escaped} expression", false); fseTest("Escaped(groovy) expression", "This is an \\${groovy:escaped} expression", testMap, "This is an ${groovy:escaped} expression", false); - fseTest("nested UEL integration(return BigDecimal)", "${a${'moun'}t}", testMap, null, null, "1,234,567.89", testMap.get("amount"), false); - fseTest("UEL integration(return BigDecimal)", "${amount}", testMap, null, null, "1,234,567.89", testMap.get("amount"), false); - fseTest("groovy: return BigDecimal", "${groovy: return amount;}", testMap, null, null, "1,234,567.89", testMap.get("amount"), false); + // TODO: Find a better way to setup or handle the big decimal value. If new ones are not instanciated in the test + // it fails because of the comparison between object pointers.. + fseTest("nested UEL integration(return BigDecimal)", "${a${'moun'}t}", testMap, null, LOCALE_TO_TEST, + "1,234,567.89", new BigDecimal("1234567.89"), false); + fseTest("UEL integration(return BigDecimal)", "${amount}", testMap, null, LOCALE_TO_TEST, + "1,234,567.89", new BigDecimal("1234567.89"), false); + fseTest("groovy: return BigDecimal", "${groovy: return amount;}", testMap, null, LOCALE_TO_TEST, + "1,234,567.89", new BigDecimal("1234567.89"), false); } }