You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@nifi.apache.org by ma...@apache.org on 2022/12/09 06:03:24 UTC

[nifi] branch main updated: NIFI-10967 Corrected TestWriteJsonResult mixed arrays

This is an automated email from the ASF dual-hosted git repository.

mattyb149 pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/nifi.git


The following commit(s) were added to refs/heads/main by this push:
     new b0ab364f61 NIFI-10967 Corrected TestWriteJsonResult mixed arrays
b0ab364f61 is described below

commit b0ab364f61612b48d7ccddad010be97b759379c2
Author: exceptionfactory <ex...@apache.org>
AuthorDate: Thu Dec 8 22:15:55 2022 -0600

    NIFI-10967 Corrected TestWriteJsonResult mixed arrays
    
    Signed-off-by: Matthew Burgess <ma...@apache.org>
    
    This closes #6773
---
 .../java/org/apache/nifi/json/TestWriteJsonResult.java     | 14 ++++++++------
 .../json/choice-of-array-string-or-array-record.json       |  9 ---------
 2 files changed, 8 insertions(+), 15 deletions(-)

diff --git a/nifi-nar-bundles/nifi-standard-services/nifi-record-serialization-services-bundle/nifi-record-serialization-services/src/test/java/org/apache/nifi/json/TestWriteJsonResult.java b/nifi-nar-bundles/nifi-standard-services/nifi-record-serialization-services-bundle/nifi-record-serialization-services/src/test/java/org/apache/nifi/json/TestWriteJsonResult.java
index 3929070e64..1cb0133b7d 100644
--- a/nifi-nar-bundles/nifi-standard-services/nifi-record-serialization-services-bundle/nifi-record-serialization-services/src/test/java/org/apache/nifi/json/TestWriteJsonResult.java
+++ b/nifi-nar-bundles/nifi-standard-services/nifi-record-serialization-services-bundle/nifi-record-serialization-services/src/test/java/org/apache/nifi/json/TestWriteJsonResult.java
@@ -34,8 +34,8 @@ import org.apache.nifi.serialization.record.SerializedForm;
 import org.junit.jupiter.api.Test;
 import org.mockito.Mockito;
 
+import java.io.ByteArrayInputStream;
 import java.io.ByteArrayOutputStream;
-import java.io.FileInputStream;
 import java.io.IOException;
 import java.math.BigDecimal;
 import java.math.BigInteger;
@@ -513,9 +513,12 @@ class TestWriteJsonResult {
 
     @Test
     void testChoiceArrayOfStringsOrArrayOfRecords() throws IOException {
-        final String FILE_LOCATION = "src/test/resources/json/choice-of-array-string-or-array-record.json";
+        final String jsonFirstItem = "{\"itemData\":[\"test\"]}";
+        final String jsonSecondItem = "{\"itemData\":[{\"quantity\":10}]}";
+        final String json = String.format("[{\"items\":[%s,%s]}]", jsonFirstItem, jsonSecondItem);
+
         final JsonSchemaInference jsonSchemaInference = new JsonSchemaInference(new TimeValueInference(null, null, null));
-        final RecordSchema schema = jsonSchemaInference.inferSchema(new JsonRecordSource(new FileInputStream(FILE_LOCATION)));
+        final RecordSchema schema = jsonSchemaInference.inferSchema(new JsonRecordSource(new ByteArrayInputStream(json.getBytes(StandardCharsets.UTF_8))));
 
         final Map<String, Object> itemData1 = new HashMap<>();
         itemData1.put("itemData", new String[]{"test"});
@@ -539,7 +542,7 @@ class TestWriteJsonResult {
         Record topLevelRecord = new MapRecord(schema, values);
 
         final ByteArrayOutputStream baos = new ByteArrayOutputStream();
-        try (final WriteJsonResult writer = new WriteJsonResult(Mockito.mock(ComponentLog.class), schema, new SchemaNameAsAttribute(), baos, true,
+        try (final WriteJsonResult writer = new WriteJsonResult(Mockito.mock(ComponentLog.class), schema, new SchemaNameAsAttribute(), baos, false,
                 NullSuppression.NEVER_SUPPRESS, OutputGrouping.OUTPUT_ARRAY, null, null, null)) {
             writer.beginRecordSet();
             writer.writeRecord(topLevelRecord);
@@ -548,8 +551,7 @@ class TestWriteJsonResult {
 
         final byte[] data = baos.toByteArray();
 
-        final String expected = new String(Files.readAllBytes(Paths.get(FILE_LOCATION)), StandardCharsets.UTF_8);
         final String output = new String(data, StandardCharsets.UTF_8);
-        assertEquals(expected, output);
+        assertEquals(json, output);
     }
 }
diff --git a/nifi-nar-bundles/nifi-standard-services/nifi-record-serialization-services-bundle/nifi-record-serialization-services/src/test/resources/json/choice-of-array-string-or-array-record.json b/nifi-nar-bundles/nifi-standard-services/nifi-record-serialization-services-bundle/nifi-record-serialization-services/src/test/resources/json/choice-of-array-string-or-array-record.json
deleted file mode 100644
index 3e48dd0204..0000000000
--- a/nifi-nar-bundles/nifi-standard-services/nifi-record-serialization-services-bundle/nifi-record-serialization-services/src/test/resources/json/choice-of-array-string-or-array-record.json
+++ /dev/null
@@ -1,9 +0,0 @@
-[ {
-  "items" : [ {
-    "itemData" : [ "test" ]
-  }, {
-    "itemData" : [ {
-      "quantity" : 10
-    } ]
-  } ]
-} ]
\ No newline at end of file