diff --git a/src/main/java/com/dashjoin/jsonata/Jsonata.java b/src/main/java/com/dashjoin/jsonata/Jsonata.java index 8c05661..b3c77f0 100644 --- a/src/main/java/com/dashjoin/jsonata/Jsonata.java +++ b/src/main/java/com/dashjoin/jsonata/Jsonata.java @@ -723,9 +723,6 @@ Object evaluateWildcard(Symbol expr, Object input) { if((value instanceof List)) { value = flatten(value, null); results = (List)Functions.append(results, value); - } else if (value instanceof Map) { - // Call recursively do decompose the map - results.addAll((List)evaluateWildcard(expr, value)); } else { results.add(value); } diff --git a/src/main/java/com/dashjoin/jsonata/Utils.java b/src/main/java/com/dashjoin/jsonata/Utils.java index 60bd81c..5818f8d 100644 --- a/src/main/java/com/dashjoin/jsonata/Utils.java +++ b/src/main/java/com/dashjoin/jsonata/Utils.java @@ -79,11 +79,7 @@ public static List createSequence(Object el) { JList sequence = new JList<>(); sequence.sequence = true; if (el!=NONE) { - if (el instanceof List && ((List)el).size()==1) - sequence.add(((List)el).get(0)); - else - // This case does NOT exist in Javascript! Why? - sequence.add(el); + sequence.add(el); } return sequence; } diff --git a/src/test/java/com/dashjoin/jsonata/ArrayTest.java b/src/test/java/com/dashjoin/jsonata/ArrayTest.java index 2df319b..b5c8749 100644 --- a/src/test/java/com/dashjoin/jsonata/ArrayTest.java +++ b/src/test/java/com/dashjoin/jsonata/ArrayTest.java @@ -49,14 +49,12 @@ public void testSortNull() { Assertions.assertEquals(Arrays.asList(Map.of("x", 2), Map.of("x", 1)), expr.evaluate(null)); } - @Disabled @Test public void testWildcard() { Jsonata expr = jsonata("*"); Assertions.assertEquals(Map.of("x", 1), expr.evaluate(List.of(Map.of("x", 1)))); } - @Disabled @Test public void testWildcardFilter() { Object value1 = Map.of("value", Map.of("Name", "Cell1", "Product", "Product1"));