Repository: nifi Updated Branches: refs/heads/master 41ad03215 -> f1d0a6b36
http://git-wip-us.apache.org/repos/asf/nifi/blob/8d082d1a/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-utils/src/test/java/org/apache/nifi/processors/standard/util/TestTransformFactory.java ---------------------------------------------------------------------- diff --git a/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-utils/src/test/java/org/apache/nifi/processors/standard/util/TestTransformFactory.java b/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-utils/src/test/java/org/apache/nifi/processors/standard/util/TestTransformFactory.java index 01e9238..afc1a4b 100644 --- a/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-utils/src/test/java/org/apache/nifi/processors/standard/util/TestTransformFactory.java +++ b/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-utils/src/test/java/org/apache/nifi/processors/standard/util/TestTransformFactory.java @@ -23,16 +23,18 @@ import java.nio.file.Files; import java.nio.file.Path; import java.nio.file.Paths; +import org.apache.nifi.processors.standard.util.jolt.TransformFactory; import org.junit.Test; import com.bazaarvoice.jolt.CardinalityTransform; import com.bazaarvoice.jolt.Chainr; import com.bazaarvoice.jolt.Defaultr; +import com.bazaarvoice.jolt.JoltTransform; import com.bazaarvoice.jolt.JsonUtils; +import com.bazaarvoice.jolt.Modifier; import com.bazaarvoice.jolt.Removr; import com.bazaarvoice.jolt.Shiftr; import com.bazaarvoice.jolt.Sortr; -import com.bazaarvoice.jolt.Transform; import static org.junit.Assert.assertTrue; @@ -42,45 +44,66 @@ public class TestTransformFactory { @Test public void testGetChainTransform() throws Exception{ final String chainrSpec = new String(Files.readAllBytes(Paths.get("src/test/resources/TestTransformFactory/chainrSpec.json"))); - Transform transform = TransformFactory.getTransform(getClass().getClassLoader(), "jolt-transform-chain",JsonUtils.jsonToObject(chainrSpec)); + JoltTransform transform = TransformFactory.getTransform(getClass().getClassLoader(), "jolt-transform-chain",JsonUtils.jsonToObject(chainrSpec)); assertTrue(transform instanceof Chainr); } @Test public void testGetDefaultTransform() throws Exception{ final String defaultrSpec = new String(Files.readAllBytes(Paths.get("src/test/resources/TestTransformFactory/defaultrSpec.json"))); - Transform transform = TransformFactory.getTransform(getClass().getClassLoader(), "jolt-transform-default",JsonUtils.jsonToObject(defaultrSpec)); + JoltTransform transform = TransformFactory.getTransform(getClass().getClassLoader(), "jolt-transform-default",JsonUtils.jsonToObject(defaultrSpec)); assertTrue(transform instanceof Defaultr); } @Test public void testGetSortTransform() throws Exception{ - Transform transform = TransformFactory.getTransform(getClass().getClassLoader(), "jolt-transform-sort",null); + JoltTransform transform = TransformFactory.getTransform(getClass().getClassLoader(), "jolt-transform-sort",null); assertTrue(transform instanceof Sortr); } @Test public void testGetShiftTransform() throws Exception{ final String shiftrSpec = new String(Files.readAllBytes(Paths.get("src/test/resources/TestTransformFactory/shiftrSpec.json"))); - Transform transform = TransformFactory.getTransform(getClass().getClassLoader(), "jolt-transform-shift",JsonUtils.jsonToObject(shiftrSpec)); + JoltTransform transform = TransformFactory.getTransform(getClass().getClassLoader(), "jolt-transform-shift",JsonUtils.jsonToObject(shiftrSpec)); assertTrue(transform instanceof Shiftr); } @Test public void testGetRemoveTransform() throws Exception{ final String removrSpec = new String(Files.readAllBytes(Paths.get("src/test/resources/TestTransformFactory/removrSpec.json"))); - Transform transform = TransformFactory.getTransform(getClass().getClassLoader(), "jolt-transform-remove",JsonUtils.jsonToObject(removrSpec)); + JoltTransform transform = TransformFactory.getTransform(getClass().getClassLoader(), "jolt-transform-remove",JsonUtils.jsonToObject(removrSpec)); assertTrue(transform instanceof Removr); } @Test public void testGetCardinalityTransform() throws Exception{ final String cardrSpec = new String(Files.readAllBytes(Paths.get("src/test/resources/TestTransformFactory/cardrSpec.json"))); - Transform transform = TransformFactory.getTransform(getClass().getClassLoader(), "jolt-transform-card",JsonUtils.jsonToObject(cardrSpec)); + JoltTransform transform = TransformFactory.getTransform(getClass().getClassLoader(), "jolt-transform-card",JsonUtils.jsonToObject(cardrSpec)); assertTrue(transform instanceof CardinalityTransform); } @Test + public void testGetModifierDefaultTransform() throws Exception{ + final String cardrSpec = new String(Files.readAllBytes(Paths.get("src/test/resources/TestTransformFactory/modifierDefaultSpec.json"))); + JoltTransform transform = TransformFactory.getTransform(getClass().getClassLoader(), "jolt-transform-modify-default",JsonUtils.jsonToObject(cardrSpec)); + assertTrue(transform instanceof Modifier.Defaultr); + } + + @Test + public void testGetModifierDefineTransform() throws Exception{ + final String cardrSpec = new String(Files.readAllBytes(Paths.get("src/test/resources/TestTransformFactory/modifierDefineSpec.json"))); + JoltTransform transform = TransformFactory.getTransform(getClass().getClassLoader(), "jolt-transform-modify-define",JsonUtils.jsonToObject(cardrSpec)); + assertTrue(transform instanceof Modifier.Definr); + } + + @Test + public void testGetModifierOverwriteTransform() throws Exception{ + final String cardrSpec = new String(Files.readAllBytes(Paths.get("src/test/resources/TestTransformFactory/modifierOverwriteSpec.json"))); + JoltTransform transform = TransformFactory.getTransform(getClass().getClassLoader(), "jolt-transform-modify-overwrite",JsonUtils.jsonToObject(cardrSpec)); + assertTrue(transform instanceof Modifier.Overwritr); + } + + @Test public void testGetInvalidTransformWithNoSpec() { try{ TransformFactory.getTransform(getClass().getClassLoader(), "jolt-transform-chain",null); @@ -96,7 +119,7 @@ public class TestTransformFactory { URL[] urlPaths = new URL[1]; urlPaths[0] = jarFilePath.toUri().toURL(); ClassLoader customClassLoader = new URLClassLoader(urlPaths,this.getClass().getClassLoader()); - Transform transform = TransformFactory.getCustomTransform(customClassLoader,"TestCustomJoltTransform",JsonUtils.jsonToObject(chainrSpec)); + JoltTransform transform = TransformFactory.getCustomTransform(customClassLoader,"TestCustomJoltTransform",JsonUtils.jsonToObject(chainrSpec)); assertTrue(transform != null); assertTrue(transform.getClass().getName().equals("TestCustomJoltTransform")); } http://git-wip-us.apache.org/repos/asf/nifi/blob/8d082d1a/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-utils/src/test/resources/TestTransformFactory/modifierDefaultSpec.json ---------------------------------------------------------------------- diff --git a/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-utils/src/test/resources/TestTransformFactory/modifierDefaultSpec.json b/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-utils/src/test/resources/TestTransformFactory/modifierDefaultSpec.json new file mode 100644 index 0000000..a351a98 --- /dev/null +++ b/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-utils/src/test/resources/TestTransformFactory/modifierDefaultSpec.json @@ -0,0 +1,7 @@ +{ + "rating": { + "primary?": { + "+value": 0 + } + } +} \ No newline at end of file http://git-wip-us.apache.org/repos/asf/nifi/blob/8d082d1a/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-utils/src/test/resources/TestTransformFactory/modifierDefineSpec.json ---------------------------------------------------------------------- diff --git a/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-utils/src/test/resources/TestTransformFactory/modifierDefineSpec.json b/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-utils/src/test/resources/TestTransformFactory/modifierDefineSpec.json new file mode 100644 index 0000000..e4d9ec8 --- /dev/null +++ b/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-utils/src/test/resources/TestTransformFactory/modifierDefineSpec.json @@ -0,0 +1,7 @@ +{ + "rating": { + "question": { + "value": 0 + } + } +} \ No newline at end of file http://git-wip-us.apache.org/repos/asf/nifi/blob/8d082d1a/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-utils/src/test/resources/TestTransformFactory/modifierOverwriteSpec.json ---------------------------------------------------------------------- diff --git a/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-utils/src/test/resources/TestTransformFactory/modifierOverwriteSpec.json b/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-utils/src/test/resources/TestTransformFactory/modifierOverwriteSpec.json new file mode 100644 index 0000000..33b5e2a --- /dev/null +++ b/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-utils/src/test/resources/TestTransformFactory/modifierOverwriteSpec.json @@ -0,0 +1,7 @@ +{ + "rating": { + "series": { + "series_first": "=firstElement(@(1,value))" + } + } +}
