You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by da...@apache.org on 2023/04/14 16:28:11 UTC
[camel] 02/02: CAMEL-18904: Add functions to simple language to create empty map/list/string
This is an automated email from the ASF dual-hosted git repository.
davsclaus pushed a commit to branch camel-3.x
in repository https://gitbox.apache.org/repos/asf/camel.git
commit 2ea79b97a9cb2073958409b34e122f962e3a9e35
Author: Claus Ibsen <cl...@gmail.com>
AuthorDate: Fri Apr 14 18:27:45 2023 +0200
CAMEL-18904: Add functions to simple language to create empty map/list/string
---
.../camel/language/simple/SimpleExpressionBuilder.java | 11 +++++------
.../src/test/java/org/apache/camel/LanguageTestSupport.java | 12 ------------
.../java/org/apache/camel/language/simple/SimpleTest.java | 3 +--
3 files changed, 6 insertions(+), 20 deletions(-)
diff --git a/core/camel-core-languages/src/main/java/org/apache/camel/language/simple/SimpleExpressionBuilder.java b/core/camel-core-languages/src/main/java/org/apache/camel/language/simple/SimpleExpressionBuilder.java
index 2bee28b0db7..8cbcc48153a 100644
--- a/core/camel-core-languages/src/main/java/org/apache/camel/language/simple/SimpleExpressionBuilder.java
+++ b/core/camel-core-languages/src/main/java/org/apache/camel/language/simple/SimpleExpressionBuilder.java
@@ -19,9 +19,8 @@ package org.apache.camel.language.simple;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
-import java.util.HashMap;
-import java.util.HashSet;
import java.util.Iterator;
+import java.util.LinkedHashMap;
import java.util.List;
import java.util.Random;
import java.util.TimeZone;
@@ -248,24 +247,24 @@ public final class SimpleExpressionBuilder {
/**
* Returns a new empty object of the given type
*/
- public static Expression newEmptyExpression(String type) {
+ public static Expression newEmptyExpression(final String type) {
return new ExpressionAdapter() {
@Override
public Object evaluate(Exchange exchange) {
if ("map".equalsIgnoreCase(type)) {
- return new HashMap<>();
+ return new LinkedHashMap<>();
} else if ("string".equalsIgnoreCase(type)) {
return "";
} else if ("list".equalsIgnoreCase(type)) {
return new ArrayList<>();
}
- throw new IllegalArgumentException("function empty(%s) has unknown type.".formatted(type));
+ throw new IllegalArgumentException(String.format("Function empty(%s) has unknown type", type));
}
@Override
public String toString() {
- return "empty(%s)".formatted(type);
+ return "empty(" + type + ")";
}
};
}
diff --git a/core/camel-core/src/test/java/org/apache/camel/LanguageTestSupport.java b/core/camel-core/src/test/java/org/apache/camel/LanguageTestSupport.java
index ab1bb9377fe..1164071a65c 100644
--- a/core/camel-core/src/test/java/org/apache/camel/LanguageTestSupport.java
+++ b/core/camel-core/src/test/java/org/apache/camel/LanguageTestSupport.java
@@ -16,8 +16,6 @@
*/
package org.apache.camel;
-import java.util.function.Predicate;
-
import org.apache.camel.spi.Language;
import static org.junit.jupiter.api.Assertions.assertNotNull;
@@ -65,16 +63,6 @@ public abstract class LanguageTestSupport extends ExchangeTestSupport {
assertExpression(exchange, getLanguageName(), expressionText, expectedValue);
}
- /**
- * Asserts that this language expression evaluates in a way that the handed over predicate is true
- */
- protected void assertExpression(String expressionText, Predicate<Object> assertion) {
-
- Object value = evaluateExpression(expressionText, null);
-
- assertTrue(assertion.test(value));
- }
-
/**
* Asserts that this language expression evaluates to the given value on the current exchange
*/
diff --git a/core/camel-core/src/test/java/org/apache/camel/language/simple/SimpleTest.java b/core/camel-core/src/test/java/org/apache/camel/language/simple/SimpleTest.java
index 48631240d84..9807bb4aa7f 100644
--- a/core/camel-core/src/test/java/org/apache/camel/language/simple/SimpleTest.java
+++ b/core/camel-core/src/test/java/org/apache/camel/language/simple/SimpleTest.java
@@ -57,7 +57,6 @@ import static org.junit.jupiter.api.Assertions.assertSame;
import static org.junit.jupiter.api.Assertions.assertThrows;
import static org.junit.jupiter.api.Assertions.assertTrue;
import static org.junit.jupiter.api.Assertions.fail;
->>>>>>> 7ca0064683f (CAMEL-18904: Add functions to simple language to create empty map/li… (#9770))
public class SimpleTest extends LanguageTestSupport {
@@ -2071,7 +2070,7 @@ public class SimpleTest extends LanguageTestSupport {
private void assertExpressionCreateNewEmpty(
String type, Class<?> expectedClass, java.util.function.Predicate<Object> isEmptyAssertion) {
- Object value = evaluateExpression("${empty(%s)}".formatted(type), null);
+ Object value = evaluateExpression("${empty(" + type + ")}", null);
assertNotNull(value);
assertIsInstanceOf(expectedClass, value);
assertTrue(isEmptyAssertion.test(value));