AAI-1523 Batch reformat aai-core
[aai/aai-common.git] / aai-core / src / test / java / org / onap / aai / introspection / sideeffect / DataCopyTest.java
index f991129..7959735 100644 (file)
  * limitations under the License.
  * ============LICENSE_END=========================================================
  */
+
 package org.onap.aai.introspection.sideeffect;
 
-import org.janusgraph.core.JanusGraphFactory;
-import org.janusgraph.core.JanusGraph;
+import static org.junit.Assert.assertEquals;
+import static org.mockito.Mockito.spy;
+import static org.mockito.Mockito.when;
+
+import java.io.FileInputStream;
+import java.io.IOException;
+import java.io.UnsupportedEncodingException;
+import java.lang.reflect.InvocationTargetException;
+import java.net.MalformedURLException;
+import java.net.URISyntaxException;
+import java.util.Arrays;
+import java.util.Collection;
+
 import org.apache.commons.io.IOUtils;
 import org.apache.tinkerpop.gremlin.process.traversal.dsl.graph.GraphTraversalSource;
 import org.apache.tinkerpop.gremlin.structure.Graph;
 import org.apache.tinkerpop.gremlin.structure.Vertex;
 import org.apache.tinkerpop.gremlin.structure.VertexProperty;
+import org.janusgraph.core.JanusGraph;
+import org.janusgraph.core.JanusGraphFactory;
 import org.junit.*;
 import org.junit.rules.ExpectedException;
 import org.junit.runner.RunWith;
@@ -35,95 +49,85 @@ import org.mockito.MockitoAnnotations;
 import org.onap.aai.AAISetup;
 import org.onap.aai.db.props.AAIProperties;
 import org.onap.aai.dbmap.DBConnectionType;
+import org.onap.aai.edges.enums.EdgeProperty;
 import org.onap.aai.exceptions.AAIException;
 import org.onap.aai.introspection.*;
-
 import org.onap.aai.introspection.sideeffect.exceptions.AAIMissingRequiredPropertyException;
 import org.onap.aai.parsers.query.QueryParser;
 import org.onap.aai.serialization.db.DBSerializer;
-import org.onap.aai.edges.enums.EdgeProperty;
-import org.onap.aai.serialization.engines.QueryStyle;
 import org.onap.aai.serialization.engines.JanusGraphDBEngine;
+import org.onap.aai.serialization.engines.QueryStyle;
 import org.onap.aai.serialization.engines.TransactionalGraphEngine;
 
-import java.io.FileInputStream;
-import java.io.IOException;
-import java.io.UnsupportedEncodingException;
-import java.lang.reflect.InvocationTargetException;
-import java.net.MalformedURLException;
-import java.net.URISyntaxException;
-import java.util.Arrays;
-import java.util.Collection;
-
-import static org.junit.Assert.assertEquals;
-import static org.mockito.Mockito.spy;
-import static org.mockito.Mockito.when;
-
 @RunWith(value = Parameterized.class)
 
-public class DataCopyTest extends AAISetup{
+public class DataCopyTest extends AAISetup {
 
-    
-    
     private static JanusGraph graph;
     private final static ModelType introspectorFactoryType = ModelType.MOXY;
     private final static DBConnectionType type = DBConnectionType.REALTIME;
     private static Loader loader;
     private static TransactionalGraphEngine dbEngine;
-    @Mock private Vertex self;
-    @Mock private VertexProperty<String> prop;
-    @Mock private QueryParser uriQuery;
-    @Rule public ExpectedException thrown = ExpectedException.none();
+    @Mock
+    private Vertex self;
+    @Mock
+    private VertexProperty<String> prop;
+    @Mock
+    private QueryParser uriQuery;
+    @Rule
+    public ExpectedException thrown = ExpectedException.none();
 
-    
-    
     @Parameterized.Parameter(value = 0)
     public QueryStyle queryStyle;
 
     @Parameterized.Parameters(name = "QueryStyle.{0}")
     public static Collection<Object[]> data() {
-        return Arrays.asList(new Object[][]{
-                {QueryStyle.TRAVERSAL},
-                {QueryStyle.TRAVERSAL_URI}
-        });
+        return Arrays.asList(new Object[][] {{QueryStyle.TRAVERSAL}, {QueryStyle.TRAVERSAL_URI}});
     }
-    
-    
+
     @BeforeClass
     public static void setup() throws NoSuchFieldException, SecurityException, Exception {
-        graph = JanusGraphFactory.build().set("storage.backend","inmemory").open();
+        graph = JanusGraphFactory.build().set("storage.backend", "inmemory").open();
         System.setProperty("AJSC_HOME", ".");
         System.setProperty("BUNDLECONFIG_DIR", "src/test/resources/bundleconfig-local");
-        
-        graph.traversal().addV("aai-node-type", "model", "model-invariant-id", "key1", AAIProperties.AAI_URI, "/service-design-and-creation/models/model/key1").as("v1")
-        .addV("aai-node-type", "model-ver", "model-ver", "myValue", "model-version-id", "key2", "model-version", "testValue", AAIProperties.AAI_URI, "/service-design-and-creation/models/model/key1/model-vers/model-ver/key2")
+
+        graph.traversal()
+                .addV("aai-node-type", "model", "model-invariant-id", "key1", AAIProperties.AAI_URI,
+                        "/service-design-and-creation/models/model/key1")
+                .as("v1")
+                .addV("aai-node-type", "model-ver", "model-ver", "myValue", "model-version-id", "key2", "model-version",
+                        "testValue", AAIProperties.AAI_URI,
+                        "/service-design-and-creation/models/model/key1/model-vers/model-ver/key2")
                 .addOutE("org.onap.relationships.inventory.BelongsTo", "v1", EdgeProperty.CONTAINS.toString(), true)
-        .addV("aai-node-type", "model", "model-invariant-id", "key3", AAIProperties.AAI_URI, "/service-design-and-creation/models/model/key3").as("v2")
-        .addV("aai-node-type", "model-ver", "model-ver", "myValue", "model-version-id", "key4", AAIProperties.AAI_URI, "/service-design-and-creation/models/model/key3/model-vers/model-ver/key4")
+                .addV("aai-node-type", "model", "model-invariant-id", "key3", AAIProperties.AAI_URI,
+                        "/service-design-and-creation/models/model/key3")
+                .as("v2")
+                .addV("aai-node-type", "model-ver", "model-ver", "myValue", "model-version-id", "key4",
+                        AAIProperties.AAI_URI,
+                        "/service-design-and-creation/models/model/key3/model-vers/model-ver/key4")
                 .addOutE("org.onap.relationships.inventory.BelongsTo", "v2", EdgeProperty.CONTAINS.toString(), true)
-        .next();
+                .next();
         graph.tx().commit();
     }
-    
+
     @AfterClass
     public static void tearDown() {
         graph.tx().rollback();
         graph.close();
     }
-    
+
     @Before
     public void initMock() {
         loader = loaderFactory.createLoaderForVersion(introspectorFactoryType, schemaVersions.getDefaultVersion());
         MockitoAnnotations.initMocks(this);
-        dbEngine = new JanusGraphDBEngine(
-                queryStyle,
-                type,
-                loader);
+        dbEngine = new JanusGraphDBEngine(queryStyle, type, loader);
     }
-    
+
     @Test
-    public void runPopulatePersonaModelVer() throws URISyntaxException, AAIException, UnsupportedEncodingException, IllegalAccessException, IllegalArgumentException, InvocationTargetException, SecurityException, InstantiationException, NoSuchMethodException, MalformedURLException {
-        
+    public void runPopulatePersonaModelVer() throws URISyntaxException, AAIException, UnsupportedEncodingException,
+            IllegalAccessException, IllegalArgumentException, InvocationTargetException, SecurityException,
+            InstantiationException, NoSuchMethodException, MalformedURLException {
+
         final Loader loader = loaderFactory.createLoaderForVersion(ModelType.MOXY, schemaVersions.getDefaultVersion());
         final Introspector obj = loader.introspectorFromName("generic-vnf");
         obj.setValue("vnf-id", "myId");
@@ -137,25 +141,26 @@ public class DataCopyTest extends AAISetup{
         when(adminSpy.getTraversalSource()).thenReturn(traversal);
         when(self.<String>property(AAIProperties.AAI_URI)).thenReturn(prop);
         when(prop.orElse(null)).thenReturn(obj.getURI());
-        DBSerializer serializer = new DBSerializer(schemaVersions.getDefaultVersion(), spy, introspectorFactoryType, "AAI_TEST");
-        SideEffectRunner runner = new SideEffectRunner
-                .Builder(spy, serializer).addSideEffect(DataCopy.class).build();
-        
+        DBSerializer serializer =
+                new DBSerializer(schemaVersions.getDefaultVersion(), spy, introspectorFactoryType, "AAI_TEST");
+        SideEffectRunner runner = new SideEffectRunner.Builder(spy, serializer).addSideEffect(DataCopy.class).build();
+
         runner.execute(obj, self);
 
         assertEquals("value populated", "testValue", obj.getValue("persona-model-version"));
-        
+
         g.tx().rollback();
-        
-        
+
     }
-    
+
     @Test
-    public void verifyNestedSideEffect() throws URISyntaxException, AAIException, IllegalAccessException, IllegalArgumentException, InvocationTargetException, SecurityException, InstantiationException, NoSuchMethodException, IOException {
-        
+    public void verifyNestedSideEffect()
+            throws URISyntaxException, AAIException, IllegalAccessException, IllegalArgumentException,
+            InvocationTargetException, SecurityException, InstantiationException, NoSuchMethodException, IOException {
+
         final Loader loader = loaderFactory.createLoaderForVersion(ModelType.MOXY, schemaVersions.getDefaultVersion());
         final Introspector obj = loader.unmarshal("customer", this.getJsonString("nested-case.json"));
-        //System.out.println(obj.marshal(true));
+        // System.out.println(obj.marshal(true));
         TransactionalGraphEngine spy = spy(dbEngine);
         TransactionalGraphEngine.Admin adminSpy = spy(dbEngine.asAdmin());
         Graph g = graph.newTransaction();
@@ -166,19 +171,21 @@ public class DataCopyTest extends AAISetup{
         when(self.<String>property(AAIProperties.AAI_URI)).thenReturn(prop);
         when(prop.orElse(null)).thenReturn(obj.getURI());
         when(uriQuery.isDependent()).thenReturn(false);
-        DBSerializer serializer = new DBSerializer(schemaVersions.getDefaultVersion(), spy, introspectorFactoryType, "AAI_TEST");
-        Vertex v= serializer.createNewVertex(obj);
+        DBSerializer serializer =
+                new DBSerializer(schemaVersions.getDefaultVersion(), spy, introspectorFactoryType, "AAI_TEST");
+        Vertex v = serializer.createNewVertex(obj);
         serializer.serializeToDb(obj, v, uriQuery, obj.getURI(), "test");
-        
-        assertEquals("nested value populated", "testValue", g.traversal().V().has("service-instance-id", "nested-instance-key").next().property("persona-model-version").orElse(""));
+
+        assertEquals("nested value populated", "testValue", g.traversal().V()
+                .has("service-instance-id", "nested-instance-key").next().property("persona-model-version").orElse(""));
 
         g.tx().rollback();
 
     }
-    
+
     @Test
     public void expectedMissingPropertyExceptionInURI() throws AAIException, UnsupportedEncodingException {
-        
+
         final Loader loader = loaderFactory.createLoaderForVersion(ModelType.MOXY, schemaVersions.getDefaultVersion());
         final Introspector obj = loader.introspectorFromName("generic-vnf");
         obj.setValue("vnf-id", "myId");
@@ -192,14 +199,14 @@ public class DataCopyTest extends AAISetup{
         when(adminSpy.getTraversalSource()).thenReturn(traversal);
         when(self.<String>property(AAIProperties.AAI_URI)).thenReturn(prop);
         when(prop.orElse(null)).thenReturn(obj.getURI());
-        DBSerializer serializer = new DBSerializer(schemaVersions.getDefaultVersion(), spy, introspectorFactoryType, "AAI_TEST");
-        SideEffectRunner runner = new SideEffectRunner
-                .Builder(spy, serializer).addSideEffect(DataCopy.class).build();
-        
+        DBSerializer serializer =
+                new DBSerializer(schemaVersions.getDefaultVersion(), spy, introspectorFactoryType, "AAI_TEST");
+        SideEffectRunner runner = new SideEffectRunner.Builder(spy, serializer).addSideEffect(DataCopy.class).build();
+
         thrown.expect(AAIMissingRequiredPropertyException.class);
         runner.execute(obj, self);
     }
-    
+
     @Test
     public void expectedMissingPropertyExceptionForResultingObject() throws AAIException, UnsupportedEncodingException {
         final Loader loader = loaderFactory.createLoaderForVersion(ModelType.MOXY, schemaVersions.getDefaultVersion());
@@ -216,14 +223,14 @@ public class DataCopyTest extends AAISetup{
         when(adminSpy.getTraversalSource()).thenReturn(traversal);
         when(self.<String>property(AAIProperties.AAI_URI)).thenReturn(prop);
         when(prop.orElse(null)).thenReturn(obj.getURI());
-        DBSerializer serializer = new DBSerializer(schemaVersions.getDefaultVersion(), spy, introspectorFactoryType, "AAI_TEST");
-        SideEffectRunner runner = new SideEffectRunner
-                .Builder(spy, serializer).addSideEffect(DataCopy.class).build();
-        
+        DBSerializer serializer =
+                new DBSerializer(schemaVersions.getDefaultVersion(), spy, introspectorFactoryType, "AAI_TEST");
+        SideEffectRunner runner = new SideEffectRunner.Builder(spy, serializer).addSideEffect(DataCopy.class).build();
+
         thrown.expect(AAIMissingRequiredPropertyException.class);
         runner.execute(obj, self);
     }
-    
+
     @Test
     public void expectNoProcessingWithNoProperties() throws AAIException, UnsupportedEncodingException {
         final Loader loader = loaderFactory.createLoaderForVersion(ModelType.MOXY, schemaVersions.getDefaultVersion());
@@ -238,24 +245,23 @@ public class DataCopyTest extends AAISetup{
         when(adminSpy.getTraversalSource()).thenReturn(traversal);
         when(self.<String>property(AAIProperties.AAI_URI)).thenReturn(prop);
         when(prop.orElse(null)).thenReturn(obj.getURI());
-        DBSerializer serializer = new DBSerializer(schemaVersions.getDefaultVersion(), spy, introspectorFactoryType, "AAI_TEST");
-        SideEffectRunner runner = new SideEffectRunner
-                .Builder(spy, serializer).addSideEffect(DataCopy.class).build();
-        
+        DBSerializer serializer =
+                new DBSerializer(schemaVersions.getDefaultVersion(), spy, introspectorFactoryType, "AAI_TEST");
+        SideEffectRunner runner = new SideEffectRunner.Builder(spy, serializer).addSideEffect(DataCopy.class).build();
+
         runner.execute(obj, self);
-        
+
         assertEquals("no model-version-id", true, obj.getValue("model-version-id") == null);
         assertEquals("no model-invariant-id", true, obj.getValue("model-invariant-id") == null);
-        
+
     }
-    
+
     private String getJsonString(String filename) throws IOException {
-        
-        
+
         FileInputStream is = new FileInputStream("src/test/resources/oxm/sideeffect/" + filename);
-        String s =  IOUtils.toString(is, "UTF-8"); 
+        String s = IOUtils.toString(is, "UTF-8");
         IOUtils.closeQuietly(is);
-        
+
         return s;
     }
 }