This is an automated email from the ASF dual-hosted git repository.
exceptionfactory 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 09c1c8b2b3 NIFI-12042 Refactored Groovy test to Java in
nifi-mock-record-utils
09c1c8b2b3 is described below
commit 09c1c8b2b39c37954b195a6b2d7ce09c502d1dec
Author: dan-s1 <[email protected]>
AuthorDate: Mon Sep 11 21:56:57 2023 +0000
NIFI-12042 Refactored Groovy test to Java in nifi-mock-record-utils
This closes #7681
Signed-off-by: David Handermann <[email protected]>
---
.../nifi-mock-record-utils/pom.xml | 6 ---
.../serialization/record/MockSchemaRegistry.java | 2 +-
.../record/TestMockSchemaRegistry.groovy | 48 ------------------
.../record/TestMockSchemaRegistry.java | 59 ++++++++++++++++++++++
4 files changed, 60 insertions(+), 55 deletions(-)
diff --git
a/nifi-nar-bundles/nifi-extension-utils/nifi-record-utils/nifi-mock-record-utils/pom.xml
b/nifi-nar-bundles/nifi-extension-utils/nifi-record-utils/nifi-mock-record-utils/pom.xml
index 4d45464a94..353e909d09 100644
---
a/nifi-nar-bundles/nifi-extension-utils/nifi-record-utils/nifi-mock-record-utils/pom.xml
+++
b/nifi-nar-bundles/nifi-extension-utils/nifi-record-utils/nifi-mock-record-utils/pom.xml
@@ -52,12 +52,6 @@
<version>2.0.0-SNAPSHOT</version>
<scope>test</scope>
</dependency>
- <dependency>
- <groupId>org.codehaus.groovy</groupId>
- <artifactId>groovy-json</artifactId>
- <version>${nifi.groovy.version}</version>
- <scope>test</scope>
- </dependency>
</dependencies>
<build>
diff --git
a/nifi-nar-bundles/nifi-extension-utils/nifi-record-utils/nifi-mock-record-utils/src/main/java/org/apache/nifi/serialization/record/MockSchemaRegistry.java
b/nifi-nar-bundles/nifi-extension-utils/nifi-record-utils/nifi-mock-record-utils/src/main/java/org/apache/nifi/serialization/record/MockSchemaRegistry.java
index 4d4ffe5f20..972044b973 100644
---
a/nifi-nar-bundles/nifi-extension-utils/nifi-record-utils/nifi-mock-record-utils/src/main/java/org/apache/nifi/serialization/record/MockSchemaRegistry.java
+++
b/nifi-nar-bundles/nifi-extension-utils/nifi-record-utils/nifi-mock-record-utils/src/main/java/org/apache/nifi/serialization/record/MockSchemaRegistry.java
@@ -40,7 +40,7 @@ public class MockSchemaRegistry extends
AbstractControllerService implements Sch
schemaNameMap.put(name, schema);
}
- private RecordSchema retrieveSchemaByName(final SchemaIdentifier
schemaIdentifier) throws IOException, SchemaNotFoundException {
+ RecordSchema retrieveSchemaByName(final SchemaIdentifier schemaIdentifier)
throws IOException, SchemaNotFoundException {
final Optional<String> schemaName = schemaIdentifier.getName();
if (!schemaName.isPresent()) {
throw new
org.apache.nifi.schema.access.SchemaNotFoundException("Cannot retrieve schema
because Schema Name is not present");
diff --git
a/nifi-nar-bundles/nifi-extension-utils/nifi-record-utils/nifi-mock-record-utils/src/test/groovy/org/apache/nifi/serialization/record/TestMockSchemaRegistry.groovy
b/nifi-nar-bundles/nifi-extension-utils/nifi-record-utils/nifi-mock-record-utils/src/test/groovy/org/apache/nifi/serialization/record/TestMockSchemaRegistry.groovy
deleted file mode 100644
index f6e0dc9afe..0000000000
---
a/nifi-nar-bundles/nifi-extension-utils/nifi-record-utils/nifi-mock-record-utils/src/test/groovy/org/apache/nifi/serialization/record/TestMockSchemaRegistry.groovy
+++ /dev/null
@@ -1,48 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.nifi.serialization.record
-
-import org.apache.avro.Schema
-import org.apache.nifi.avro.AvroTypeUtil
-import org.junit.jupiter.api.Test
-
-import static groovy.json.JsonOutput.*
-import static org.junit.jupiter.api.Assertions.assertEquals
-import static org.junit.jupiter.api.Assertions.assertNotNull
-
-class TestMockSchemaRegistry {
- @Test
- void testGetSchemaByName() {
- def registry = new MockSchemaRegistry()
- def schema = prettyPrint(toJson([
- name: "TestSchema",
- type: "record",
- fields: [
- [ name: "msg", type: "string" ]
- ]
- ]))
- def recordSchema = AvroTypeUtil.createSchema(new
Schema.Parser().parse(schema))
- registry.addSchema("simple", recordSchema)
-
- def identifier = SchemaIdentifier.builder().name("simple").build()
- def result = registry.retrieveSchemaByName(identifier)
-
- assertNotNull(result, "Failed to load schema.")
- assertEquals(result.fieldNames, recordSchema.fieldNames)
- }
-}
diff --git
a/nifi-nar-bundles/nifi-extension-utils/nifi-record-utils/nifi-mock-record-utils/src/test/java/org/apache/nifi/serialization/record/TestMockSchemaRegistry.java
b/nifi-nar-bundles/nifi-extension-utils/nifi-record-utils/nifi-mock-record-utils/src/test/java/org/apache/nifi/serialization/record/TestMockSchemaRegistry.java
new file mode 100644
index 0000000000..c07869a036
--- /dev/null
+++
b/nifi-nar-bundles/nifi-extension-utils/nifi-record-utils/nifi-mock-record-utils/src/test/java/org/apache/nifi/serialization/record/TestMockSchemaRegistry.java
@@ -0,0 +1,59 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.nifi.serialization.record;
+
+import com.fasterxml.jackson.databind.ObjectMapper;
+import com.fasterxml.jackson.databind.SerializationFeature;
+import org.apache.avro.Schema;
+import org.apache.nifi.avro.AvroTypeUtil;
+import org.apache.nifi.schema.access.SchemaNotFoundException;
+import org.junit.jupiter.api.Test;
+
+import java.io.IOException;
+import java.io.Serializable;
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.LinkedHashMap;
+import java.util.Map;
+
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertNotNull;
+
+class TestMockSchemaRegistry {
+ @Test
+ void testGetSchemaByName() throws IOException, SchemaNotFoundException {
+ final ObjectMapper mapper = new
ObjectMapper().enable(SerializationFeature.INDENT_OUTPUT);
+ final MockSchemaRegistry registry = new MockSchemaRegistry();
+ final Map<String, Serializable> map = new LinkedHashMap<>(3);
+ map.put("name", "TestSchema");
+ map.put("type", "record");
+ final Map<String, String> map1 = new LinkedHashMap<>(2);
+ map1.put("name", "msg");
+ map1.put("type", "string");
+ map.put("fields", new ArrayList<>(Collections.singletonList(map1)));
+ final String schema = mapper.writeValueAsString(map);
+ final RecordSchema recordSchema = AvroTypeUtil.createSchema(new
Schema.Parser().parse(schema));
+ registry.addSchema("simple", recordSchema);
+
+ final SchemaIdentifier identifier =
SchemaIdentifier.builder().name("simple").build();
+ final RecordSchema result = registry.retrieveSchemaByName(identifier);
+
+ assertNotNull(result, "Failed to load schema.");
+ assertEquals(result.getFieldNames(), recordSchema.getFieldNames());
+ }
+}