Fix: Listing archived catalog resources fails randomly
[sdc.git] / catalog-model / src / test / java / org / openecomp / sdc / be / model / jsonjanusgraph / operations / ToscaElementOperationCatalogTest.java
index 29fbd75..571a6d4 100644 (file)
@@ -25,6 +25,7 @@ import org.apache.tinkerpop.gremlin.structure.Direction;
 import org.apache.tinkerpop.gremlin.structure.Edge;
 import org.apache.tinkerpop.gremlin.structure.Vertex;
 import org.apache.tinkerpop.gremlin.structure.VertexProperty;
+import org.apache.tinkerpop.gremlin.structure.util.empty.EmptyVertexProperty;
 import org.junit.Before;
 import org.junit.Test;
 import org.junit.runner.RunWith;
@@ -34,7 +35,6 @@ import org.mockito.junit.MockitoJUnitRunner;
 import org.openecomp.sdc.be.dao.janusgraph.JanusGraphOperationStatus;
 import org.openecomp.sdc.be.dao.janusgraph.JanusGraphDao;
 import org.openecomp.sdc.be.dao.jsongraph.types.EdgeLabelEnum;
-import org.openecomp.sdc.be.dao.jsongraph.types.JsonParseFlagEnum;
 import org.openecomp.sdc.be.dao.neo4j.GraphPropertiesDictionary;
 import org.openecomp.sdc.be.model.catalog.CatalogComponent;
 
@@ -52,20 +52,13 @@ public class ToscaElementOperationCatalogTest {
     private static final String UPDATER_ID = "m08740";
     private ArrayList<Vertex> vertexList = new ArrayList<>();
 
-    @Mock
-    Vertex vertex;
-    @Mock
-    Edge edge;
-    @Mock
-    Vertex outVertex;
-    @Mock
-    Iterator<Edge> edges;
-    @Mock
-    JanusGraphDao janusGraphDao;
-    @Mock
-    VertexProperty<Object> property;
-    @Mock
-    VertexProperty<Object> updaterProperty;
+    @Mock Edge edge;
+    @Mock Vertex vertex;
+    @Mock Vertex outVertex;
+    @Mock Iterator<Edge> edges;
+    @Mock JanusGraphDao janusGraphDao;
+    @Mock VertexProperty<Object> property;
+    @Mock VertexProperty<Object> updaterProperty;
 
     @InjectMocks
     private ToscaElementOperation toscaOperation = new TopologyTemplateOperation();
@@ -73,8 +66,8 @@ public class ToscaElementOperationCatalogTest {
     @Before
     public void setUp() {
         vertexList.add(vertex);
-        when(janusGraphDao.getCatalogOrArchiveVerticies(true)).thenReturn(Either.left(vertexList.iterator()));
-        when(janusGraphDao.getChildVertex(vertex, EdgeLabelEnum.CATEGORY, JsonParseFlagEnum.NoParse))
+        when(janusGraphDao.getCatalogOrArchiveVertices(true)).thenReturn(Either.left(vertexList.iterator()));
+        when(janusGraphDao.getChildVertex(vertex, EdgeLabelEnum.CATEGORY))
                 .thenReturn(Either.right(JanusGraphOperationStatus.NOT_FOUND));
         when(vertex.property(GraphPropertiesDictionary.METADATA.getProperty())).thenReturn(property);
     }
@@ -120,4 +113,13 @@ public class ToscaElementOperationCatalogTest {
         assertEquals(UPDATER_ID, componentList.get(0).getLastUpdaterUserId());
     }
 
+    @Test
+    public void thatVertexIsSkippedIfItHasNoMetadataProperty() {
+        VertexProperty<Object> emptyVertexProperty = new EmptyVertexProperty<>();
+        when(vertex.property(GraphPropertiesDictionary.METADATA.getProperty())).thenReturn(emptyVertexProperty);
+
+        List<CatalogComponent> componentList = toscaOperation.getElementCatalogData(true, null).left().value();
+        assertEquals(0, componentList.size());
+    }
+
 }