Skip to content

Commit e88fab8

Browse files
authored
fix: templating while concatenating arrays (#42)
1 parent b191ec7 commit e88fab8

File tree

2 files changed

+15
-12
lines changed

2 files changed

+15
-12
lines changed

tzatziki-core/src/main/java/com/decathlon/tzatziki/steps/ObjectSteps.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -105,11 +105,11 @@ public class ObjectSteps {
105105
if (arrayToConcat instanceof Collection<?> array) {
106106
return array;
107107
} else {
108-
return Mapper.<List<?>>read(arrayToConcat.toString(), List.class);
108+
return Mapper.<Collection<?>>read(arrayToConcat.toString(), List.class);
109109
}
110110
}).toList();
111111

112-
return collectionsToConcat.stream().flatMap(Collection::stream).collect(Collectors.toList());
112+
return options.fn(collectionsToConcat.stream().flatMap(Collection::stream).collect(Collectors.toList()));
113113
});
114114

115115
static {

tzatziki-core/src/test/resources/com/decathlon/tzatziki/steps/objects.feature

Lines changed: 13 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -621,28 +621,31 @@ Feature: to interact with objects in the context
621621
Scenario: concatenate multiple arrays using handlebars helper
622622
Given that myFirstArray is:
623623
"""
624-
- firstItem
625-
- secondItem
624+
array:
625+
- payload: firstItem
626+
- payload: secondItem
626627
"""
627628
And that mySecondArray is:
628629
"""
629-
- thirdItem
630-
- fourthItem
630+
- payload: thirdItem
631+
- payload: fourthItem
631632
"""
632633
And that myThirdArray is:
633634
"""
634-
- fifthItem
635-
- sixthItem
635+
- payload: fifthItem
636+
- payload: sixthItem
636637
"""
637638

638639
When resultArray is:
639640
"""
640-
{{#concat myFirstArray mySecondArray myThirdArray}}
641-
{{this}}
642-
{{/concat}}
641+
{
642+
{{#concat [myFirstArray.array] mySecondArray myThirdArray}}
643+
"myArray": {{this}}
644+
{{/concat}}
645+
}
643646
"""
644647

645648
Then resultArray is equal to:
646649
"""
647-
[firstItem, secondItem, thirdItem, fourthItem, fifthItem, sixthItem]
650+
{"myArray": [{"payload":"firstItem"},{"payload":"secondItem"},{"payload":"thirdItem"},{"payload":"fourthItem"},{"payload":"fifthItem"},{"payload":"sixthItem"}]}
648651
"""

0 commit comments

Comments
 (0)