1 package org.openecomp.sdc.asdctool.migration.tasks.mig1806;
5 import org.junit.runner.RunWith;
6 import org.mockito.Mock;
7 import org.mockito.junit.MockitoJUnitRunner;
8 import org.openecomp.sdc.asdctool.migration.core.task.MigrationResult;
9 import org.openecomp.sdc.asdctool.migration.core.task.MigrationResult.MigrationStatus;
10 import org.openecomp.sdc.be.dao.janusgraph.JanusGraphOperationStatus;
11 import org.openecomp.sdc.be.dao.jsongraph.GraphVertex;
12 import org.openecomp.sdc.be.dao.jsongraph.JanusGraphDao;
13 import org.openecomp.sdc.be.datatypes.elements.ComponentInstanceDataDefinition;
14 import org.openecomp.sdc.be.datatypes.elements.CompositionDataDefinition;
15 import org.openecomp.sdc.be.datatypes.enums.ComponentTypeEnum;
16 import org.openecomp.sdc.be.model.jsonjanusgraph.enums.JsonConstantKeysEnum;
17 import org.openecomp.sdc.be.model.jsonjanusgraph.operations.NodeTemplateOperation;
18 import org.openecomp.sdc.be.model.operations.api.StorageOperationStatus;
20 import java.util.ArrayList;
21 import java.util.HashMap;
22 import java.util.List;
25 import static org.junit.Assert.assertEquals;
26 import static org.mockito.ArgumentMatchers.any;
27 import static org.mockito.Mockito.when;
29 @RunWith(MockitoJUnitRunner.class)
30 public class SDCInstancesMigrationTest{
32 private JanusGraphDao janusGraphDao;
34 private NodeTemplateOperation nodeTemplateOperation;
38 public void testFailedMigration(){
39 SDCInstancesMigration instancesMigration = new SDCInstancesMigration(janusGraphDao, nodeTemplateOperation);
40 when(janusGraphDao.getByCriteria(any(), any(), any(), any() )).thenReturn(Either.right(
41 JanusGraphOperationStatus.GENERAL_ERROR));
43 MigrationResult migrate = instancesMigration.migrate();
44 MigrationStatus migrationStatus = migrate.getMigrationStatus();
45 assertEquals(MigrationStatus.FAILED, migrationStatus);
48 public void testSuccessMigration(){
49 SDCInstancesMigration instancesMigration = new SDCInstancesMigration(janusGraphDao, nodeTemplateOperation);
50 List<GraphVertex> list = new ArrayList<>();
51 GraphVertex vertexOrig = new GraphVertex();
52 Map<String, CompositionDataDefinition> jsonComposition = new HashMap<>();
53 CompositionDataDefinition composition = new CompositionDataDefinition();
54 Map<String, ComponentInstanceDataDefinition> componentInstances = new HashMap<>();
55 ComponentInstanceDataDefinition instance = new ComponentInstanceDataDefinition();
56 componentInstances.put("instanceId", instance);
57 composition.setComponentInstances(componentInstances);
58 jsonComposition.put(JsonConstantKeysEnum.COMPOSITION.getValue(), composition);
59 vertexOrig.setJson(jsonComposition);
60 vertexOrig.setType(ComponentTypeEnum.SERVICE);
63 when(janusGraphDao.getByCriteria(any(), any(), any(), any() )).thenReturn(Either.left(list));
64 when(nodeTemplateOperation.createInstanceEdge(vertexOrig, instance)).thenReturn(StorageOperationStatus.OK);
66 MigrationResult migrate = instancesMigration.migrate();
67 MigrationStatus migrationStatus = migrate.getMigrationStatus();
68 assertEquals(MigrationStatus.COMPLETED, migrationStatus);