From 25c2c7b4b29bda163592eeac857bba83bbeadd67 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tobias=20B=C3=BClte?= Date: Thu, 24 Mar 2022 09:52:30 +0100 Subject: [PATCH] Add integration test for add_field with $last wildcard #102 Behaviour seems to have changed #102 breaks and master ingores if there is no object in the array and you use to `add_field` with $last wildcard --- .../expected.json | 13 +++++++++++++ .../input.json | 15 +++++++++++++++ .../test.fix | 1 + .../test.flux | 8 ++++++++ 4 files changed, 37 insertions(+) create mode 100644 metafix/src/test/resources/org/metafacture/metafix/integration/record/fromJson/toJson/add_fieldkIntoArrayOfObjectsWithLastWildcard/expected.json create mode 100644 metafix/src/test/resources/org/metafacture/metafix/integration/record/fromJson/toJson/add_fieldkIntoArrayOfObjectsWithLastWildcard/input.json create mode 100644 metafix/src/test/resources/org/metafacture/metafix/integration/record/fromJson/toJson/add_fieldkIntoArrayOfObjectsWithLastWildcard/test.fix create mode 100644 metafix/src/test/resources/org/metafacture/metafix/integration/record/fromJson/toJson/add_fieldkIntoArrayOfObjectsWithLastWildcard/test.flux diff --git a/metafix/src/test/resources/org/metafacture/metafix/integration/record/fromJson/toJson/add_fieldkIntoArrayOfObjectsWithLastWildcard/expected.json b/metafix/src/test/resources/org/metafacture/metafix/integration/record/fromJson/toJson/add_fieldkIntoArrayOfObjectsWithLastWildcard/expected.json new file mode 100644 index 00000000..5f01a495 --- /dev/null +++ b/metafix/src/test/resources/org/metafacture/metafix/integration/record/fromJson/toJson/add_fieldkIntoArrayOfObjectsWithLastWildcard/expected.json @@ -0,0 +1,13 @@ +{ + "animals" : [ { + "name" : "Jake", + "type" : "dog" + }, { + "name" : "Blacky", + "type" : "bird", + "key" : "value" + } ] +} +{ + "animals" : [ ] +} diff --git a/metafix/src/test/resources/org/metafacture/metafix/integration/record/fromJson/toJson/add_fieldkIntoArrayOfObjectsWithLastWildcard/input.json b/metafix/src/test/resources/org/metafacture/metafix/integration/record/fromJson/toJson/add_fieldkIntoArrayOfObjectsWithLastWildcard/input.json new file mode 100644 index 00000000..df67bd6c --- /dev/null +++ b/metafix/src/test/resources/org/metafacture/metafix/integration/record/fromJson/toJson/add_fieldkIntoArrayOfObjectsWithLastWildcard/input.json @@ -0,0 +1,15 @@ +{ + "animals" : [ + { + "name": "Jake", + "type": "dog" + }, + { + "name": "Blacky", + "type": "bird" + } + ] +} +{ + "animals" : [ ] +} diff --git a/metafix/src/test/resources/org/metafacture/metafix/integration/record/fromJson/toJson/add_fieldkIntoArrayOfObjectsWithLastWildcard/test.fix b/metafix/src/test/resources/org/metafacture/metafix/integration/record/fromJson/toJson/add_fieldkIntoArrayOfObjectsWithLastWildcard/test.fix new file mode 100644 index 00000000..ca7943f9 --- /dev/null +++ b/metafix/src/test/resources/org/metafacture/metafix/integration/record/fromJson/toJson/add_fieldkIntoArrayOfObjectsWithLastWildcard/test.fix @@ -0,0 +1 @@ +add_field("animals[].$last.key", "value") diff --git a/metafix/src/test/resources/org/metafacture/metafix/integration/record/fromJson/toJson/add_fieldkIntoArrayOfObjectsWithLastWildcard/test.flux b/metafix/src/test/resources/org/metafacture/metafix/integration/record/fromJson/toJson/add_fieldkIntoArrayOfObjectsWithLastWildcard/test.flux new file mode 100644 index 00000000..7c3575fa --- /dev/null +++ b/metafix/src/test/resources/org/metafacture/metafix/integration/record/fromJson/toJson/add_fieldkIntoArrayOfObjectsWithLastWildcard/test.flux @@ -0,0 +1,8 @@ +FLUX_DIR + "input.json" +|open-file +|as-records +|decode-json +|fix(FLUX_DIR + "test.fix") +|encode-json(prettyPrinting="true") +|write(FLUX_DIR + "output-metafix.json") +;