aboutsummaryrefslogtreecommitdiffstats
path: root/aai-resources/src/test/java/org/onap/aai/migration/v12/MigrateServiceInstanceToConfigurationTest.java
diff options
context:
space:
mode:
Diffstat (limited to 'aai-resources/src/test/java/org/onap/aai/migration/v12/MigrateServiceInstanceToConfigurationTest.java')
-rw-r--r--aai-resources/src/test/java/org/onap/aai/migration/v12/MigrateServiceInstanceToConfigurationTest.java410
1 files changed, 0 insertions, 410 deletions
diff --git a/aai-resources/src/test/java/org/onap/aai/migration/v12/MigrateServiceInstanceToConfigurationTest.java b/aai-resources/src/test/java/org/onap/aai/migration/v12/MigrateServiceInstanceToConfigurationTest.java
deleted file mode 100644
index b07c728..0000000
--- a/aai-resources/src/test/java/org/onap/aai/migration/v12/MigrateServiceInstanceToConfigurationTest.java
+++ /dev/null
@@ -1,410 +0,0 @@
-/**
- * ============LICENSE_START=======================================================
- * org.onap.aai
- * ================================================================================
- * Copyright © 2017-2018 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Licensed 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.
- * ============LICENSE_END=========================================================
- */
-package org.onap.aai.migration.v12;
-
-import static org.junit.Assert.assertArrayEquals;
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertNotNull;
-import static org.mockito.Mockito.spy;
-import static org.mockito.Mockito.when;
-
-import java.util.Optional;
-
-import org.apache.tinkerpop.gremlin.process.traversal.dsl.graph.GraphTraversalSource;
-import org.apache.tinkerpop.gremlin.process.traversal.strategy.verification.ReadOnlyStrategy;
-import org.apache.tinkerpop.gremlin.structure.Vertex;
-import org.junit.AfterClass;
-import org.junit.BeforeClass;
-import org.junit.Test;
-import org.onap.aai.AAISetup;
-import org.onap.aai.dbmap.DBConnectionType;
-import org.onap.aai.introspection.Loader;
-import org.onap.aai.introspection.LoaderFactory;
-import org.onap.aai.introspection.ModelType;
-import org.onap.aai.introspection.Version;
-import org.onap.aai.serialization.db.EdgeRules;
-import org.onap.aai.serialization.engines.QueryStyle;
-import org.onap.aai.serialization.engines.JanusGraphDBEngine;
-import org.onap.aai.serialization.engines.TransactionalGraphEngine;
-
-import org.janusgraph.core.JanusGraphFactory;
-import org.janusgraph.core.JanusGraph;
-import org.janusgraph.core.JanusGraphTransaction;
-
-public class MigrateServiceInstanceToConfigurationTest extends AAISetup {
-
- private final static Version version = Version.v12;
- private final static ModelType introspectorFactoryType = ModelType.MOXY;
- private final static QueryStyle queryStyle = QueryStyle.TRAVERSAL;
- private final static DBConnectionType type = DBConnectionType.REALTIME;
-
- private static Loader loader;
- private static TransactionalGraphEngine dbEngine;
- private static JanusGraph graph;
- private static MigrateServiceInstanceToConfiguration migration;
- private static JanusGraphTransaction tx;
- private static GraphTraversalSource g;
- private static EdgeRules rules;
-
- @BeforeClass
- public static void setUp() throws Exception {
- graph = JanusGraphFactory.build().set("storage.backend","inmemory").open();
- tx = graph.newTransaction();
- g = tx.traversal();
- loader = LoaderFactory.createLoaderForVersion(introspectorFactoryType, version);
- dbEngine = new JanusGraphDBEngine(
- queryStyle,
- type,
- loader);
- rules = EdgeRules.getInstance();
-
- Vertex customer1 = g.addV()
- .property("aai-node-type", "customer")
- .property("global-customer-id", "customer-id-1")
- .property("subscriber-type", "CUST")
- .next();
-
- Vertex customer2 = g.addV()
- .property("aai-node-type", "customer")
- .property("global-customer-id", "customer-id-2")
- .property("subscriber-type", "CUST")
- .next();
-
- Vertex customer3 = g.addV()
- .property("aai-node-type", "customer")
- .property("global-customer-id", "customer-id-3")
- .property("subscriber-type", "CUST")
- .next();
-
- Vertex customer4 = g.addV()
- .property("aai-node-type", "customer")
- .property("global-customer-id", "customer-id-4")
- .property("subscriber-type", "CUST")
- .next();
-
- Vertex servSub1 = g.addV()
- .property("aai-node-type", "service-subscription")
- .property("service-type", "DHV")
- .next();
-
- Vertex servSub2 = g.addV()
- .property("aai-node-type", "service-subscription")
- .property("service-type", "OTHER")
- .next();
-
- Vertex servSub3 = g.addV()
- .property("aai-node-type", "service-subscription")
- .property("service-type", "DHV")
- .next();
-
- Vertex servSub4 = g.addV()
- .property("aai-node-type", "service-subscription")
- .property("service-type", "DHV")
- .next();
-
- Vertex servSub5 = g.addV()
- .property("aai-node-type", "service-subscription")
- .property("service-type", "DHV")
- .next();
-
- Vertex servInstance1 = g.addV()
- .property("aai-node-type", "service-instance")
- .property("service-instance-id", "service-inst-1")
- .property("operational-status", "activated")
- .property("bandwidth-total", "5")
- .next();
-
- Vertex servInstance2 = g.addV()
- .property("aai-node-type", "service-instance")
- .property("service-instance-id", "service-inst-2")
- .property("operational-status", "activated")
- .property("bandwidth-total", "8")
- .next();
-
- Vertex servInstance3 = g.addV()
- .property("aai-node-type", "service-instance")
- .property("service-instance-id", "service-inst-3")
- .property("operational-status", "activated")
- .property("bandwidth-total", "10")
- .next();
-
- Vertex servInstance4 = g.addV()
- .property("aai-node-type", "service-instance")
- .property("service-instance-id", "service-inst-4")
- .property("operational-status", "activated")
- .property("bandwidth-total", "15")
- .next();
-
- Vertex config1 = g.addV()
- .property("aai-node-type", "configuration")
- .property("configuration-id", "configuration-1")
- .property("configuration-type", "DHV")
- .property("tunnel-bandwidth", "7")
- .next();
-
- Vertex config2 = g.addV()
- .property("aai-node-type", "configuration")
- .property("configuration-id", "configuration-2")
- .property("configuration-type", "OTHER")
- .property("tunnel-bandwidth", "3")
- .next();
-
- Vertex config3 = g.addV()
- .property("aai-node-type", "configuration")
- .property("configuration-id", "configuration-3")
- .property("configuration-type", "OTHER")
- .property("tunnel-bandwidth", "2")
- .next();
-
- Vertex config4 = g.addV()
- .property("aai-node-type", "configuration")
- .property("configuration-id", "configuration-4")
- .property("configuration-type", "OTHER")
- .property("tunnel-bandwidth", "4")
- .next();
-
- // graph 1
- rules.addTreeEdge(g, customer1, servSub1);
- rules.addTreeEdge(g, customer1, servSub2);
- rules.addTreeEdge(g, servSub1, servInstance1);
- rules.addTreeEdge(g, servSub2, servInstance2);
-
- // graph 2
- rules.addTreeEdge(g, customer2, servSub3);
-
- // graph 3
- rules.addTreeEdge(g, customer3, servSub4);
- rules.addTreeEdge(g, servSub4, servInstance3);
- rules.addEdge(g, servInstance3, config1);
- rules.addEdge(g, servInstance3, config2);
-
- // graph 4
- rules.addTreeEdge(g, customer4, servSub5);
- rules.addTreeEdge(g, servSub5, servInstance4);
- rules.addEdge(g, servInstance4, config3);
- rules.addEdge(g, servInstance4, config4);
-
- TransactionalGraphEngine spy = spy(dbEngine);
- TransactionalGraphEngine.Admin adminSpy = spy(dbEngine.asAdmin());
-
- GraphTraversalSource traversal = g;
- GraphTraversalSource readOnly = tx.traversal(GraphTraversalSource.build().with(ReadOnlyStrategy.instance()));
- when (spy.tx()).thenReturn(tx);
- when(spy.asAdmin()).thenReturn(adminSpy);
- when(adminSpy.getTraversalSource()).thenReturn(traversal);
- when(adminSpy.getReadOnlyTraversalSource()).thenReturn(readOnly);
-
- migration = new MigrateServiceInstanceToConfiguration(spy);
- migration.run();
- }
-
- @AfterClass
- public static void cleanUp() {
- tx.tx().rollback();
- graph.close();
- }
-
- @Test
- public void testRun_createConfigNode() throws Exception {
- // check if graph nodes exist
- assertEquals("customer node exists", true,
- g.V().has("global-customer-id", "customer-id-1")
- .hasNext());
-
- assertEquals("service subscription node, service-type=DHV", true,
- g.V().has("global-customer-id", "customer-id-1")
- .in("org.onap.relationships.inventory.BelongsTo").has("service-type", "DHV")
- .hasNext());
-
- assertEquals("service instance node, bandwidth-total=5", true,
- g.V().has("global-customer-id", "customer-id-1")
- .in("org.onap.relationships.inventory.BelongsTo").has("service-type", "DHV")
- .in("org.onap.relationships.inventory.BelongsTo").has("service-instance-id", "service-inst-1").has("bandwidth-total", "5")
- .hasNext());
-
- // check if configuration node gets created
- assertEquals("configuration node exists", true,
- g.V().has("global-customer-id", "customer-id-1")
- .in("org.onap.relationships.inventory.BelongsTo").has("service-type", "DHV")
- .in("org.onap.relationships.inventory.BelongsTo").has("service-instance-id", "service-inst-1")
- .out("org.onap.relationships.inventory.Uses").has("aai-node-type", "configuration")
- .hasNext());
-
- // check configuration type
- assertEquals("configuration node, configuration-type=DHV", true,
- g.V().has("global-customer-id", "customer-id-1")
- .in("org.onap.relationships.inventory.BelongsTo").has("service-type", "DHV")
- .in("org.onap.relationships.inventory.BelongsTo").has("service-instance-id", "service-inst-1")
- .out("org.onap.relationships.inventory.Uses").has("aai-node-type", "configuration").has("configuration-type", "DHV")
- .hasNext());
-
- // check configuration tunnel-bandwidth
- assertEquals("configuration node, tunnel-bandwidth=5", true,
- g.V().has("global-customer-id", "customer-id-1")
- .in("org.onap.relationships.inventory.BelongsTo").has("service-type", "DHV")
- .in("org.onap.relationships.inventory.BelongsTo").has("service-instance-id", "service-inst-1")
- .out("org.onap.relationships.inventory.Uses").has("aai-node-type", "configuration").has("tunnel-bandwidth", "5")
- .hasNext());
- }
-
- @Test
- public void testRun_configNodeNotCreated() throws Exception {
- // check if graph nodes exist
- assertEquals("customer node exists", true,
- g.V().has("global-customer-id", "customer-id-1")
- .hasNext());
-
- assertEquals("service subscription node, service-type=OTHER", true,
- g.V().has("global-customer-id", "customer-id-1")
- .in("org.onap.relationships.inventory.BelongsTo").has("service-type", "OTHER")
- .hasNext());
-
- assertEquals("service instance node, bandwidth-total=8", true,
- g.V().has("global-customer-id", "customer-id-1")
- .in("org.onap.relationships.inventory.BelongsTo").has("service-type", "OTHER")
- .in("org.onap.relationships.inventory.BelongsTo").has("service-instance-id", "service-inst-2").has("bandwidth-total", "8")
- .hasNext());
-
- // configuration node should not be created
- assertEquals("configuration node does not exist", false,
- g.V().has("global-customer-id", "customer-id-1")
- .in("org.onap.relationships.inventory.BelongsTo").has("service-type", "OTHER")
- .in("org.onap.relationships.inventory.BelongsTo").has("service-instance-id", "service-inst-2")
- .out("org.onap.relationships.inventory.Uses").has("aai-node-type", "configuration")
- .hasNext());
-
- // edge between service instance and configuration should not be created
- assertEquals("configuration node does not exist", false,
- g.V().has("global-customer-id", "customer-id-1")
- .in("org.onap.relationships.inventory.BelongsTo").has("service-type", "OTHER")
- .in("org.onap.relationships.inventory.BelongsTo").has("service-instance-id", "service-inst-2")
- .out("org.onap.relationships.inventory.Uses").hasNext());
- }
-
- @Test
- public void testRun_noServiceInstance() throws Exception {
- // check if graph nodes exist
- assertEquals("customer node exists", true,
- g.V().has("global-customer-id", "customer-id-2")
- .hasNext());
-
- assertEquals("service subscription node, service-type=DHV", true,
- g.V().has("global-customer-id", "customer-id-2")
- .in("org.onap.relationships.inventory.BelongsTo").has("service-type", "DHV")
- .hasNext());
-
- // no service instance nodes
- assertEquals("no service instance nodes", false,
- g.V().has("global-customer-id", "customer-id-2")
- .in("org.onap.relationships.inventory.BelongsTo").has("service-type", "DHV")
- .in("org.onap.relationships.inventory.BelongsTo").has("aai-node-type", "service-instance")
- .hasNext());
- }
-
- @Test
- public void testRun_existingConfig() throws Exception {
- // check if graph nodes exist
- assertEquals("customer node exists", true,
- g.V().has("global-customer-id", "customer-id-3")
- .hasNext());
-
- assertEquals("service subscription node, service-type=DHV", true,
- g.V().has("global-customer-id", "customer-id-3")
- .in("org.onap.relationships.inventory.BelongsTo").has("service-type", "DHV")
- .hasNext());
-
- assertEquals("service instance node, bandwidth-total=10", true,
- g.V().has("global-customer-id", "customer-id-3")
- .in("org.onap.relationships.inventory.BelongsTo").has("service-type", "DHV")
- .in("org.onap.relationships.inventory.BelongsTo").has("service-instance-id", "service-inst-3").has("bandwidth-total", "10")
- .hasNext());
-
- assertEquals("configuration node with type DHV, tunnel-bandwidth changed to 10", true,
- g.V().has("global-customer-id", "customer-id-3")
- .in("org.onap.relationships.inventory.BelongsTo").has("service-type", "DHV")
- .in("org.onap.relationships.inventory.BelongsTo").has("service-instance-id", "service-inst-3")
- .out("org.onap.relationships.inventory.Uses").has("aai-node-type", "configuration").has("tunnel-bandwidth", "10")
- .hasNext());
-
- assertEquals("configuration node with type OTHER, tunnel-bandwidth remains same", true,
- g.V().has("global-customer-id", "customer-id-3")
- .in("org.onap.relationships.inventory.BelongsTo").has("service-type", "DHV")
- .in("org.onap.relationships.inventory.BelongsTo").has("service-instance-id", "service-inst-3")
- .out("org.onap.relationships.inventory.Uses").has("aai-node-type", "configuration").has("tunnel-bandwidth", "3")
- .hasNext());
- }
-
- @Test
- public void testRun_existingConfigNotDHV() throws Exception {
- // check if graph nodes exist
- assertEquals("customer node exists", true,
- g.V().has("global-customer-id", "customer-id-4")
- .hasNext());
-
- assertEquals("service subscription node, service-type=DHV", true,
- g.V().has("global-customer-id", "customer-id-4")
- .in("org.onap.relationships.inventory.BelongsTo").has("service-type", "DHV")
- .hasNext());
-
- assertEquals("service instance node, bandwidth-total=15", true,
- g.V().has("global-customer-id", "customer-id-4")
- .in("org.onap.relationships.inventory.BelongsTo").has("service-type", "DHV")
- .in("org.onap.relationships.inventory.BelongsTo").has("service-instance-id", "service-inst-4").has("bandwidth-total", "15")
- .hasNext());
-
- assertEquals("first configuration node with type OTHER, tunnel-bandwidth remains same", true,
- g.V().has("global-customer-id", "customer-id-4")
- .in("org.onap.relationships.inventory.BelongsTo").has("service-type", "DHV")
- .in("org.onap.relationships.inventory.BelongsTo").has("service-instance-id", "service-inst-4")
- .out("org.onap.relationships.inventory.Uses").has("aai-node-type", "configuration").has("tunnel-bandwidth", "2")
- .hasNext());
-
- assertEquals("second configuration node with type OTHER, tunnel-bandwidth remains same", true,
- g.V().has("global-customer-id", "customer-id-4")
- .in("org.onap.relationships.inventory.BelongsTo").has("service-type", "DHV")
- .in("org.onap.relationships.inventory.BelongsTo").has("service-instance-id", "service-inst-4")
- .out("org.onap.relationships.inventory.Uses").has("aai-node-type", "configuration").has("tunnel-bandwidth", "4")
- .hasNext());
-
- assertEquals("new configuration node created with type DHV, tunnel-bandwidth=15", true,
- g.V().has("global-customer-id", "customer-id-4")
- .in("org.onap.relationships.inventory.BelongsTo").has("service-type", "DHV")
- .in("org.onap.relationships.inventory.BelongsTo").has("service-instance-id", "service-inst-4")
- .out("org.onap.relationships.inventory.Uses").has("aai-node-type", "configuration").has("tunnel-bandwidth", "15")
- .hasNext());
- }
-
- @Test
- public void testGetAffectedNodeTypes() {
- Optional<String[]> types = migration.getAffectedNodeTypes();
- Optional<String[]> expected = Optional.of(new String[]{"service-instance"});
-
- assertNotNull(types);
- assertArrayEquals(expected.get(), types.get());
- }
-
- @Test
- public void testGetMigrationName() {
- String migrationName = migration.getMigrationName();
-
- assertNotNull(migrationName);
- assertEquals("service-instance-to-configuration", migrationName);
- }
-}