From cb137132bf95391481eb3607c187597271c2a26b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tobias=20B=C3=BClte?= Date: Mon, 28 Mar 2022 09:50:43 +0200 Subject: [PATCH 1/2] Update integration test for copying with index-nr --- .../copy_fieldToArrayOfStringsWithIndex/expected.json | 4 +++- .../toJson/copy_fieldToArrayOfStringsWithIndex/input.json | 4 +++- .../toJson/copy_fieldToArrayOfStringsWithIndex/test.fix | 2 ++ .../expected.json | 6 ++++++ .../input.json | 4 +++- .../copy_fieldToSubfieldOfArrayOfObjectsWithIndex/test.fix | 2 ++ 6 files changed, 19 insertions(+), 3 deletions(-) diff --git a/metafix/src/test/resources/org/metafacture/metafix/integration/record/fromJson/toJson/copy_fieldToArrayOfStringsWithIndex/expected.json b/metafix/src/test/resources/org/metafacture/metafix/integration/record/fromJson/toJson/copy_fieldToArrayOfStringsWithIndex/expected.json index 1e8aa962..93ba278e 100644 --- a/metafix/src/test/resources/org/metafacture/metafix/integration/record/fromJson/toJson/copy_fieldToArrayOfStringsWithIndex/expected.json +++ b/metafix/src/test/resources/org/metafacture/metafix/integration/record/fromJson/toJson/copy_fieldToArrayOfStringsWithIndex/expected.json @@ -1,4 +1,6 @@ { "key" : "value", - "test" : [ "value" ] + "key_2" : "value_2", + "key_3" : "value_3", + "test" : [ "value", "value_2", "value_3" ] } diff --git a/metafix/src/test/resources/org/metafacture/metafix/integration/record/fromJson/toJson/copy_fieldToArrayOfStringsWithIndex/input.json b/metafix/src/test/resources/org/metafacture/metafix/integration/record/fromJson/toJson/copy_fieldToArrayOfStringsWithIndex/input.json index d7a7e3b1..ca2b3953 100644 --- a/metafix/src/test/resources/org/metafacture/metafix/integration/record/fromJson/toJson/copy_fieldToArrayOfStringsWithIndex/input.json +++ b/metafix/src/test/resources/org/metafacture/metafix/integration/record/fromJson/toJson/copy_fieldToArrayOfStringsWithIndex/input.json @@ -1,3 +1,5 @@ { - "key" : "value" + "key" : "value", + "key_2" : "value_2", + "key_3" : "value_3" } diff --git a/metafix/src/test/resources/org/metafacture/metafix/integration/record/fromJson/toJson/copy_fieldToArrayOfStringsWithIndex/test.fix b/metafix/src/test/resources/org/metafacture/metafix/integration/record/fromJson/toJson/copy_fieldToArrayOfStringsWithIndex/test.fix index 00bc8dfc..42ce081d 100644 --- a/metafix/src/test/resources/org/metafacture/metafix/integration/record/fromJson/toJson/copy_fieldToArrayOfStringsWithIndex/test.fix +++ b/metafix/src/test/resources/org/metafacture/metafix/integration/record/fromJson/toJson/copy_fieldToArrayOfStringsWithIndex/test.fix @@ -1,2 +1,4 @@ set_array("test[]") copy_field("key", "test[].1") +copy_field("key_2", "test[].2") +copy_field("key_3", "test[].3") diff --git a/metafix/src/test/resources/org/metafacture/metafix/integration/record/fromJson/toJson/copy_fieldToSubfieldOfArrayOfObjectsWithIndex/expected.json b/metafix/src/test/resources/org/metafacture/metafix/integration/record/fromJson/toJson/copy_fieldToSubfieldOfArrayOfObjectsWithIndex/expected.json index 7c6d42d7..d3b27a92 100644 --- a/metafix/src/test/resources/org/metafacture/metafix/integration/record/fromJson/toJson/copy_fieldToSubfieldOfArrayOfObjectsWithIndex/expected.json +++ b/metafix/src/test/resources/org/metafacture/metafix/integration/record/fromJson/toJson/copy_fieldToSubfieldOfArrayOfObjectsWithIndex/expected.json @@ -1,6 +1,12 @@ { "key" : "value", + "key_2" : "value_2", + "key_3" : "value_3", "test" : [ { "field" : "value" + }, { + "field" : "value_2" + }, { + "field" : "value_3" } ] } diff --git a/metafix/src/test/resources/org/metafacture/metafix/integration/record/fromJson/toJson/copy_fieldToSubfieldOfArrayOfObjectsWithIndex/input.json b/metafix/src/test/resources/org/metafacture/metafix/integration/record/fromJson/toJson/copy_fieldToSubfieldOfArrayOfObjectsWithIndex/input.json index d7a7e3b1..ca2b3953 100644 --- a/metafix/src/test/resources/org/metafacture/metafix/integration/record/fromJson/toJson/copy_fieldToSubfieldOfArrayOfObjectsWithIndex/input.json +++ b/metafix/src/test/resources/org/metafacture/metafix/integration/record/fromJson/toJson/copy_fieldToSubfieldOfArrayOfObjectsWithIndex/input.json @@ -1,3 +1,5 @@ { - "key" : "value" + "key" : "value", + "key_2" : "value_2", + "key_3" : "value_3" } diff --git a/metafix/src/test/resources/org/metafacture/metafix/integration/record/fromJson/toJson/copy_fieldToSubfieldOfArrayOfObjectsWithIndex/test.fix b/metafix/src/test/resources/org/metafacture/metafix/integration/record/fromJson/toJson/copy_fieldToSubfieldOfArrayOfObjectsWithIndex/test.fix index 98d0c78c..bfb4c066 100644 --- a/metafix/src/test/resources/org/metafacture/metafix/integration/record/fromJson/toJson/copy_fieldToSubfieldOfArrayOfObjectsWithIndex/test.fix +++ b/metafix/src/test/resources/org/metafacture/metafix/integration/record/fromJson/toJson/copy_fieldToSubfieldOfArrayOfObjectsWithIndex/test.fix @@ -1,2 +1,4 @@ set_array("test[]") copy_field("key", "test[].1.field") +copy_field("key_2", "test[].2.field") +copy_field("key_3", "test[].3.field") From 8cc88424911cd869f34bc08de008edb0d18eac91 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tobias=20B=C3=BClte?= Date: Mon, 28 Mar 2022 10:21:06 +0200 Subject: [PATCH 2/2] Change name and add new index integration test Used in OERSI https://gitlab.com/oersi/oersi-etl/-/blob/master/data/production/orca_educast/orca_educast.fix#L40 --- .../expected.json | 3 +++ .../input.json | 9 ++++++++- .../test.fix | 1 - .../expected.json | 12 ++++++++++++ .../input.json | 5 +++++ .../test.fix | 4 ++++ .../test.flux | 8 ++++++++ 7 files changed, 40 insertions(+), 2 deletions(-) create mode 100644 metafix/src/test/resources/org/metafacture/metafix/integration/record/fromJson/toJson/copy_fieldToSubfieldOfArrayOfObjectsWithIndexGeneratingNewObject/expected.json create mode 100644 metafix/src/test/resources/org/metafacture/metafix/integration/record/fromJson/toJson/copy_fieldToSubfieldOfArrayOfObjectsWithIndexGeneratingNewObject/input.json create mode 100644 metafix/src/test/resources/org/metafacture/metafix/integration/record/fromJson/toJson/copy_fieldToSubfieldOfArrayOfObjectsWithIndexGeneratingNewObject/test.fix create mode 100644 metafix/src/test/resources/org/metafacture/metafix/integration/record/fromJson/toJson/copy_fieldToSubfieldOfArrayOfObjectsWithIndexGeneratingNewObject/test.flux diff --git a/metafix/src/test/resources/org/metafacture/metafix/integration/record/fromJson/toJson/copy_fieldToSubfieldOfArrayOfObjectsWithIndex/expected.json b/metafix/src/test/resources/org/metafacture/metafix/integration/record/fromJson/toJson/copy_fieldToSubfieldOfArrayOfObjectsWithIndex/expected.json index d3b27a92..42f3da51 100644 --- a/metafix/src/test/resources/org/metafacture/metafix/integration/record/fromJson/toJson/copy_fieldToSubfieldOfArrayOfObjectsWithIndex/expected.json +++ b/metafix/src/test/resources/org/metafacture/metafix/integration/record/fromJson/toJson/copy_fieldToSubfieldOfArrayOfObjectsWithIndex/expected.json @@ -3,10 +3,13 @@ "key_2" : "value_2", "key_3" : "value_3", "test" : [ { + "test" : "case", "field" : "value" }, { + "test" : "case_2", "field" : "value_2" }, { + "test" : "case_3", "field" : "value_3" } ] } diff --git a/metafix/src/test/resources/org/metafacture/metafix/integration/record/fromJson/toJson/copy_fieldToSubfieldOfArrayOfObjectsWithIndex/input.json b/metafix/src/test/resources/org/metafacture/metafix/integration/record/fromJson/toJson/copy_fieldToSubfieldOfArrayOfObjectsWithIndex/input.json index ca2b3953..b6bf98ff 100644 --- a/metafix/src/test/resources/org/metafacture/metafix/integration/record/fromJson/toJson/copy_fieldToSubfieldOfArrayOfObjectsWithIndex/input.json +++ b/metafix/src/test/resources/org/metafacture/metafix/integration/record/fromJson/toJson/copy_fieldToSubfieldOfArrayOfObjectsWithIndex/input.json @@ -1,5 +1,12 @@ { "key" : "value", "key_2" : "value_2", - "key_3" : "value_3" + "key_3" : "value_3", + "test" : [ { + "test" : "case" + }, { + "test" : "case_2" + }, { + "test" : "case_3" + } ] } diff --git a/metafix/src/test/resources/org/metafacture/metafix/integration/record/fromJson/toJson/copy_fieldToSubfieldOfArrayOfObjectsWithIndex/test.fix b/metafix/src/test/resources/org/metafacture/metafix/integration/record/fromJson/toJson/copy_fieldToSubfieldOfArrayOfObjectsWithIndex/test.fix index bfb4c066..a514f14d 100644 --- a/metafix/src/test/resources/org/metafacture/metafix/integration/record/fromJson/toJson/copy_fieldToSubfieldOfArrayOfObjectsWithIndex/test.fix +++ b/metafix/src/test/resources/org/metafacture/metafix/integration/record/fromJson/toJson/copy_fieldToSubfieldOfArrayOfObjectsWithIndex/test.fix @@ -1,4 +1,3 @@ -set_array("test[]") copy_field("key", "test[].1.field") copy_field("key_2", "test[].2.field") copy_field("key_3", "test[].3.field") diff --git a/metafix/src/test/resources/org/metafacture/metafix/integration/record/fromJson/toJson/copy_fieldToSubfieldOfArrayOfObjectsWithIndexGeneratingNewObject/expected.json b/metafix/src/test/resources/org/metafacture/metafix/integration/record/fromJson/toJson/copy_fieldToSubfieldOfArrayOfObjectsWithIndexGeneratingNewObject/expected.json new file mode 100644 index 00000000..d3b27a92 --- /dev/null +++ b/metafix/src/test/resources/org/metafacture/metafix/integration/record/fromJson/toJson/copy_fieldToSubfieldOfArrayOfObjectsWithIndexGeneratingNewObject/expected.json @@ -0,0 +1,12 @@ +{ + "key" : "value", + "key_2" : "value_2", + "key_3" : "value_3", + "test" : [ { + "field" : "value" + }, { + "field" : "value_2" + }, { + "field" : "value_3" + } ] +} diff --git a/metafix/src/test/resources/org/metafacture/metafix/integration/record/fromJson/toJson/copy_fieldToSubfieldOfArrayOfObjectsWithIndexGeneratingNewObject/input.json b/metafix/src/test/resources/org/metafacture/metafix/integration/record/fromJson/toJson/copy_fieldToSubfieldOfArrayOfObjectsWithIndexGeneratingNewObject/input.json new file mode 100644 index 00000000..ca2b3953 --- /dev/null +++ b/metafix/src/test/resources/org/metafacture/metafix/integration/record/fromJson/toJson/copy_fieldToSubfieldOfArrayOfObjectsWithIndexGeneratingNewObject/input.json @@ -0,0 +1,5 @@ +{ + "key" : "value", + "key_2" : "value_2", + "key_3" : "value_3" +} diff --git a/metafix/src/test/resources/org/metafacture/metafix/integration/record/fromJson/toJson/copy_fieldToSubfieldOfArrayOfObjectsWithIndexGeneratingNewObject/test.fix b/metafix/src/test/resources/org/metafacture/metafix/integration/record/fromJson/toJson/copy_fieldToSubfieldOfArrayOfObjectsWithIndexGeneratingNewObject/test.fix new file mode 100644 index 00000000..bfb4c066 --- /dev/null +++ b/metafix/src/test/resources/org/metafacture/metafix/integration/record/fromJson/toJson/copy_fieldToSubfieldOfArrayOfObjectsWithIndexGeneratingNewObject/test.fix @@ -0,0 +1,4 @@ +set_array("test[]") +copy_field("key", "test[].1.field") +copy_field("key_2", "test[].2.field") +copy_field("key_3", "test[].3.field") diff --git a/metafix/src/test/resources/org/metafacture/metafix/integration/record/fromJson/toJson/copy_fieldToSubfieldOfArrayOfObjectsWithIndexGeneratingNewObject/test.flux b/metafix/src/test/resources/org/metafacture/metafix/integration/record/fromJson/toJson/copy_fieldToSubfieldOfArrayOfObjectsWithIndexGeneratingNewObject/test.flux new file mode 100644 index 00000000..7c3575fa --- /dev/null +++ b/metafix/src/test/resources/org/metafacture/metafix/integration/record/fromJson/toJson/copy_fieldToSubfieldOfArrayOfObjectsWithIndexGeneratingNewObject/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") +;