refactoring CsarUtilsTest
Issue-ID: SDC-1795
Signed-off-by: Bartosz Gardziejewski <bartosz.gardziejewski@nokia.com>
Change-Id: Ia25a7b4fa8837c5c06e29cfa46386347f3af0c80
diff --git a/catalog-be/src/test/java/org/openecomp/sdc/be/tosca/CsarUtilsTest.java b/catalog-be/src/test/java/org/openecomp/sdc/be/tosca/CsarUtilsTest.java
index 5b84066..7301773 100644
--- a/catalog-be/src/test/java/org/openecomp/sdc/be/tosca/CsarUtilsTest.java
+++ b/catalog-be/src/test/java/org/openecomp/sdc/be/tosca/CsarUtilsTest.java
@@ -20,7 +20,6 @@
package org.openecomp.sdc.be.tosca;
-import static org.junit.Assert.assertTrue;
import java.io.IOException;
import java.util.ArrayList;
@@ -72,6 +71,12 @@
import fj.data.Either;
import mockit.Deencapsulation;
+import static junit.framework.Assert.assertFalse;
+import static junit.framework.Assert.assertNotNull;
+import static junit.framework.TestCase.assertEquals;
+import static junit.framework.TestCase.assertSame;
+import static junit.framework.TestCase.assertTrue;
+
public class CsarUtilsTest extends BeConfDependentTest {
@InjectMocks
@@ -123,7 +128,10 @@
Mockito.when(componentsUtils.convertFromStorageResponse(Mockito.any(StorageOperationStatus.class)))
.thenReturn(ActionStatus.GENERAL_ERROR);
- testSubject.createCsar(component, true, true);
+ Either<byte[], ResponseFormat> csar = testSubject.createCsar(component, true, true);
+
+ assertNotNull(csar);
+ assertTrue(csar.isRight());
}
@Test
@@ -165,7 +173,10 @@
sdcSchemaFilesCassandraDao.getSpecificSchemaFiles(Mockito.any(String.class), Mockito.any(String.class)))
.thenReturn(Either.left(filesData));
- testSubject.createCsar(component, false, true);
+ Either<byte[], ResponseFormat> csar = testSubject.createCsar(component, false, true);
+
+ assertNotNull(csar);
+ assertTrue(csar.isLeft());
}
@Test
@@ -175,7 +186,7 @@
}
@Test
- public void testPopulateZipWhenGetDependenciesIsRight() {
+ public void testPopulateZipWhenGetDependenciesIsRight() throws IOException {
Component component = new Service();
boolean getFromCS = false;
@@ -205,15 +216,16 @@
Mockito.when(toscaExportUtils.getDependencies(Mockito.any(Component.class)))
.thenReturn(Either.right(ToscaError.GENERAL_ERROR));
- try (ByteArrayOutputStream out = new ByteArrayOutputStream(); ZipOutputStream zip = new ZipOutputStream(out);) {
- Deencapsulation.invoke(testSubject, "populateZip", component, getFromCS, zip, false);
- } catch (Exception e) {
- e.printStackTrace();
+ try (ByteArrayOutputStream out = new ByteArrayOutputStream(); ZipOutputStream zip = new ZipOutputStream(out)) {
+ Either<ZipOutputStream, ResponseFormat> output = Deencapsulation.invoke(testSubject, "populateZip", component, getFromCS, zip, false);
+
+ assertNotNull(output);
+ assertTrue(output.isRight());
}
}
@Test
- public void testPopulateZipWhenExportComponentIsRight() {
+ public void testPopulateZipWhenExportComponentIsRight() throws IOException {
Component component = new Resource();
boolean getFromCS = false;
@@ -236,15 +248,16 @@
Mockito.when(toscaExportUtils.exportComponent(Mockito.any(Component.class)))
.thenReturn(Either.right(ToscaError.GENERAL_ERROR));
- try (ByteArrayOutputStream out = new ByteArrayOutputStream(); ZipOutputStream zip = new ZipOutputStream(out);) {
- Deencapsulation.invoke(testSubject, "populateZip", component, getFromCS, zip, false);
- } catch (Exception e) {
- e.printStackTrace();
+ try (ByteArrayOutputStream out = new ByteArrayOutputStream(); ZipOutputStream zip = new ZipOutputStream(out)) {
+ Either<ZipOutputStream, ResponseFormat> output = Deencapsulation.invoke(testSubject, "populateZip", component, getFromCS, zip, false);
+
+ assertNotNull(output);
+ assertTrue(output.isRight());
}
}
@Test
- public void testPopulateZipWhenComponentIsServiceAndCollectComponentCsarDefinitionIsRight() {
+ public void testPopulateZipWhenComponentIsServiceAndCollectComponentCsarDefinitionIsRight() throws IOException {
Component component = new Service();
boolean getFromCS = false;
@@ -308,15 +321,16 @@
Mockito.any(Boolean.class), Mockito.any(Boolean.class), Mockito.any(Boolean.class)))
.thenReturn(Either.left(Mockito.any(Either.class)));
- try (ByteArrayOutputStream out = new ByteArrayOutputStream(); ZipOutputStream zip = new ZipOutputStream(out);) {
- Deencapsulation.invoke(testSubject, "populateZip", component, getFromCS, zip, true);
- } catch (Exception e) {
- e.printStackTrace();
+ try (ByteArrayOutputStream out = new ByteArrayOutputStream(); ZipOutputStream zip = new ZipOutputStream(out)) {
+ Either<ZipOutputStream, ResponseFormat> output = Deencapsulation.invoke(testSubject, "populateZip", component, getFromCS, zip, true);
+
+ assertNotNull(output);
+ assertTrue(output.isRight());
}
}
@Test
- public void testPopulateZipWhenGetEntryDataIsRight() {
+ public void testPopulateZipWhenGetEntryDataIsRight() throws IOException {
Component component = new Service();
boolean getFromCS = true;
@@ -356,15 +370,16 @@
Mockito.when(toscaExportUtils.getDependencies(Mockito.any(Component.class)))
.thenReturn(Either.left(toscaTemplate));
- try (ByteArrayOutputStream out = new ByteArrayOutputStream(); ZipOutputStream zip = new ZipOutputStream(out);) {
- Deencapsulation.invoke(testSubject, "populateZip", component, getFromCS, zip, true);
- } catch (Exception e) {
- e.printStackTrace();
+ try (ByteArrayOutputStream out = new ByteArrayOutputStream(); ZipOutputStream zip = new ZipOutputStream(out)) {
+ Either<ZipOutputStream, ResponseFormat> output = Deencapsulation.invoke(testSubject, "populateZip", component, getFromCS, zip, true);
+
+ assertNotNull(output);
+ assertTrue(output.isRight());
}
}
@Test
- public void testPopulateZipWhenGetEntryDataOfInnerComponentIsRight() {
+ public void testPopulateZipWhenGetEntryDataOfInnerComponentIsRight() throws IOException {
Component component = new Service();
boolean getFromCS = false;
@@ -407,15 +422,16 @@
Mockito.when(toscaExportUtils.getDependencies(Mockito.any(Component.class)))
.thenReturn(Either.left(toscaTemplate));
- try (ByteArrayOutputStream out = new ByteArrayOutputStream(); ZipOutputStream zip = new ZipOutputStream(out);) {
- Deencapsulation.invoke(testSubject, "populateZip", component, getFromCS, zip, true);
- } catch (Exception e) {
- e.printStackTrace();
+ try (ByteArrayOutputStream out = new ByteArrayOutputStream(); ZipOutputStream zip = new ZipOutputStream(out)) {
+ Either<ZipOutputStream, ResponseFormat> output = Deencapsulation.invoke(testSubject, "populateZip", component, getFromCS, zip, true);
+
+ assertNotNull(output);
+ assertTrue(output.isRight());
}
}
@Test
- public void testPopulateZipWhenLatestSchemaFilesFromCassandraIsRight() {
+ public void testPopulateZipWhenLatestSchemaFilesFromCassandraIsRight() throws IOException {
Component component = new Service();
boolean getFromCS = false;
@@ -461,15 +477,16 @@
sdcSchemaFilesCassandraDao.getSpecificSchemaFiles(Mockito.any(String.class), Mockito.any(String.class)))
.thenReturn(Either.right(CassandraOperationStatus.GENERAL_ERROR));
- try (ByteArrayOutputStream out = new ByteArrayOutputStream(); ZipOutputStream zip = new ZipOutputStream(out);) {
- Deencapsulation.invoke(testSubject, "populateZip", component, getFromCS, zip, true);
- } catch (Exception e) {
- e.printStackTrace();
+ try (ByteArrayOutputStream out = new ByteArrayOutputStream(); ZipOutputStream zip = new ZipOutputStream(out)) {
+ Either<ZipOutputStream, ResponseFormat> output = Deencapsulation.invoke(testSubject, "populateZip", component, getFromCS, zip, true);
+
+ assertNotNull(output);
+ assertTrue(output.isRight());
}
}
@Test
- public void testPopulateZipWhenAddSchemaFilesFromCassandraIsRight() {
+ public void testPopulateZipWhenAddSchemaFilesFromCassandraIsRight() throws IOException {
Component component = new Service();
boolean getFromCS = false;
@@ -520,15 +537,16 @@
sdcSchemaFilesCassandraDao.getSpecificSchemaFiles(Mockito.any(String.class), Mockito.any(String.class)))
.thenReturn(Either.left(schemaList));
- try (ByteArrayOutputStream out = new ByteArrayOutputStream(); ZipOutputStream zip = new ZipOutputStream(out);) {
- Deencapsulation.invoke(testSubject, "populateZip", component, getFromCS, zip, true);
- } catch (Exception e) {
- e.printStackTrace();
+ try (ByteArrayOutputStream out = new ByteArrayOutputStream(); ZipOutputStream zip = new ZipOutputStream(out)) {
+ Either<ZipOutputStream, ResponseFormat> output = Deencapsulation.invoke(testSubject, "populateZip", component, getFromCS, zip, true);
+
+ assertNotNull(output);
+ assertTrue(output.isRight());
}
}
@Test
- public void testPopulateZipWhenHandleAllAAIArtifactsInDataModelIsRight() {
+ public void testPopulateZipWhenHandleAllAAIArtifactsInDataModelIsRight() throws IOException {
Component component = new Service();
boolean getFromCS = false;
@@ -568,6 +586,8 @@
schemaData.setPayloadAsArray(data);
schemaList.add(schemaData);
+ Mockito.when(toscaOperationFacade.getToscaElement(Mockito.any(String.class))).thenReturn(Either.right(StorageOperationStatus.ARTIFACT_NOT_FOUND));
+
Mockito.when(artifactCassandraDao.getArtifact(Mockito.any(String.class))).thenReturn(Either.left(artifactData));
Mockito.when(toscaExportUtils.exportComponent(Mockito.any(Component.class))).thenReturn(Either.left(tosca));
@@ -582,15 +602,17 @@
Mockito.when(artifactsBusinessLogic.validateUserExists(Mockito.any(String.class), Mockito.any(String.class),
Mockito.any(Boolean.class))).thenReturn(new User());
- try (ByteArrayOutputStream out = new ByteArrayOutputStream(); ZipOutputStream zip = new ZipOutputStream(out);) {
- Deencapsulation.invoke(testSubject, "populateZip", component, getFromCS, zip, true);
- } catch (Exception e) {
- e.printStackTrace();
+
+ try (ByteArrayOutputStream out = new ByteArrayOutputStream(); ZipOutputStream zip = new ZipOutputStream(out)) {
+ Either<ZipOutputStream, ResponseFormat> output = Deencapsulation.invoke(testSubject, "populateZip", component, getFromCS, zip, true);
+
+ assertNotNull(output);
+ assertTrue(output.isRight());
}
}
@Test
- public void testAddSchemaFilesFromCassandra() {
+ public void testAddSchemaFilesFromCassandra() throws IOException {
try (ByteArrayOutputStream out = new ByteArrayOutputStream();
ZipOutputStream zip = new ZipOutputStream(out);
ByteArrayOutputStream outMockStream = new ByteArrayOutputStream();
@@ -602,9 +624,10 @@
outMock.write(new byte[3]);
outMock.close();
byte[] byteArray = outMockStream.toByteArray();
- Deencapsulation.invoke(testSubject, "addSchemaFilesFromCassandra", zip, byteArray);
- } catch (Exception e) {
- e.printStackTrace();
+ Either<ZipOutputStream, ResponseFormat> output = Deencapsulation.invoke(testSubject, "addSchemaFilesFromCassandra", zip, byteArray);
+
+ assertNotNull(output);
+ assertTrue(output.isLeft());
}
}
@@ -637,6 +660,8 @@
.thenReturn(Either.left(componentRI));
Deencapsulation.invoke(testSubject, "addInnerComponentsToCache", componentCache, childComponent);
+
+ assertTrue(componentCache.containsValue(ImmutableTriple.of("esId","artifactName",componentRI)));
}
@Test
@@ -668,6 +693,8 @@
.thenReturn(Either.right(StorageOperationStatus.BAD_REQUEST));
Deencapsulation.invoke(testSubject, "addInnerComponentsToCache", componentCache, childComponent);
+
+ assertTrue(componentCache.isEmpty());
}
@Test
@@ -685,10 +712,14 @@
componentCache.put("key", new ImmutableTriple<String, String, Component>(id, fileName, cachedComponent));
Deencapsulation.invoke(testSubject, "addComponentToCache", componentCache, id, fileName, component);
+
+ assertSame("id", componentCache.get("key").left);
+ assertSame("fileName", componentCache.get("key").middle);
+ assertSame(componentCache.get("key").right, component);
}
@Test
- public void testWriteComponentInterface() {
+ public void testWriteComponentInterface() throws IOException {
String fileName = "name.hello";
ToscaRepresentation tosca = new ToscaRepresentation();
tosca.setMainYaml("value");
@@ -696,12 +727,13 @@
Mockito.when(toscaExportUtils.exportComponentInterface(Mockito.any(Component.class), Mockito.any(Boolean.class)))
.thenReturn(Either.left(tosca));
- try (ByteArrayOutputStream out = new ByteArrayOutputStream(); ZipOutputStream zip = new ZipOutputStream(out);) {
- Deencapsulation.invoke(testSubject, "writeComponentInterface", new Resource(), zip, fileName, false);
- } catch (IOException e) {
- e.printStackTrace();
- }
+ try (ByteArrayOutputStream out = new ByteArrayOutputStream(); ZipOutputStream zip = new ZipOutputStream(out)) {
+ Either<ZipOutputStream, ResponseFormat> output = Deencapsulation.invoke(testSubject, "writeComponentInterface", new Resource(), zip, fileName, false);
+
+ assertNotNull(output);
+ assertTrue(output.isLeft());
+ }
}
@Test
@@ -712,7 +744,10 @@
Mockito.when(artifactCassandraDao.getArtifact(Mockito.any(String.class)))
.thenReturn(Either.right(CassandraOperationStatus.GENERAL_ERROR));
- Deencapsulation.invoke(testSubject, "getEntryData", cassandraId, childComponent);
+ Either<byte[], ActionStatus> output = Deencapsulation.invoke(testSubject, "getEntryData", cassandraId, childComponent);
+
+ assertNotNull(output);
+ assertTrue(output.isRight());
}
@Test
@@ -722,18 +757,26 @@
Mockito.when(
sdcSchemaFilesCassandraDao.getSpecificSchemaFiles(Mockito.any(String.class), Mockito.any(String.class)))
.thenReturn(Either.left(filesData));
- Deencapsulation.invoke(testSubject, "getLatestSchemaFilesFromCassandra");
+
+ Either<byte[], ResponseFormat> output = Deencapsulation.invoke(testSubject, "getLatestSchemaFilesFromCassandra");
+
+ assertNotNull(output);
+ assertTrue(output.isRight());
}
@Test
public void testExtractVfcsArtifactsFromCsar() {
- String key = "Artifacts/org.openecomp.resource.some/path/to/resource";
+ String key = "Artifacts/org.openecomp.resource.some/Deployment/to/resource";
byte[] data = "value".getBytes();
Map<String, byte[]> csar = new HashMap<>();
csar.put(key, data);
- CsarUtils.extractVfcsArtifactsFromCsar(csar);
+ Map<String, List<ArtifactDefinition>> output = CsarUtils.extractVfcsArtifactsFromCsar(csar);
+
+ assertNotNull(output);
+ assertTrue(output.containsKey("org.openecomp.resource.some"));
+ assertEquals(1, output.get("org.openecomp.resource.some").size());
}
@Test
@@ -744,6 +787,8 @@
artifacts.put("key", new ArrayList<>());
Deencapsulation.invoke(testSubject, "addExtractedVfcArtifact", extractedVfcArtifact, artifacts);
+
+ assertEquals(1, artifacts.get("key").size());
}
@Test
@@ -754,6 +799,10 @@
artifacts.put("key1", new ArrayList<>());
Deencapsulation.invoke(testSubject, "addExtractedVfcArtifact", extractedVfcArtifact, artifacts);
+
+ assertEquals(0, artifacts.get("key1").size());
+ assertEquals(1, artifacts.get("key").size());
+ assertEquals(2, artifacts.size());
}
@Test
@@ -763,12 +812,19 @@
map.put(path, "value".getBytes());
Entry<String, byte[]> entry = map.entrySet().iterator().next();
- Deencapsulation.invoke(testSubject, "extractVfcArtifact", entry, new HashMap<>());
+ ImmutablePair<String, ArtifactDefinition> output = Deencapsulation.invoke(testSubject, "extractVfcArtifact", entry, new HashMap<>());
+
+ assertNotNull(output);
+ assertEquals("to",output.left);
}
@Test
public void testDetectArtifactGroupTypeWithExceptionBeingCaught() {
- Deencapsulation.invoke(testSubject, "detectArtifactGroupType", "type", Map.class);
+ Either<ArtifactGroupTypeEnum, Boolean> output = Deencapsulation.invoke(testSubject, "detectArtifactGroupType", "type", Map.class);
+
+ assertNotNull(output);
+ assertTrue(output.isRight());
+ assertFalse(output.right().value());
}
@Test
@@ -776,7 +832,11 @@
Map<String, Set<List<String>>> collectedWarningMessages = new HashMap<>();
collectedWarningMessages.put("Warning - unrecognized artifact group type {} was received.", new HashSet<>());
- Deencapsulation.invoke(testSubject, "detectArtifactGroupType", "type", collectedWarningMessages);
+ Either<ArtifactGroupTypeEnum, Boolean> output = Deencapsulation.invoke(testSubject, "detectArtifactGroupType", "type", collectedWarningMessages);
+
+ assertNotNull(output);
+ assertTrue(output.isRight());
+ assertFalse(output.right().value());
}
@Test
@@ -867,7 +927,7 @@
}
@Test
- public void testWriteArtifactDefinition() {
+ public void testWriteArtifactDefinition() throws IOException {
Component component = new Service();
List<ArtifactDefinition> artifactDefinitionList = new ArrayList<>();
String artifactPathAndFolder = "";
@@ -877,10 +937,10 @@
artifactDefinitionList.add(artifact);
try (ByteArrayOutputStream out = new ByteArrayOutputStream(); ZipOutputStream zip = new ZipOutputStream(out);) {
- Deencapsulation.invoke(testSubject, "writeArtifactDefinition", component, zip, artifactDefinitionList,
- artifactPathAndFolder, false);
- } catch (Exception e) {
- e.printStackTrace();
+ Either<ZipOutputStream, ResponseFormat> output = Deencapsulation.invoke(testSubject, "writeArtifactDefinition", component, zip, artifactDefinitionList, artifactPathAndFolder, false);
+
+ assertNotNull(output);
+ assertTrue(output.isLeft());
}
}
@@ -910,8 +970,10 @@
Mockito.when(toscaOperationFacade.getToscaElement(Mockito.any(String.class))).thenReturn(Either.left(component),
Either.right(StorageOperationStatus.BAD_REQUEST));
- Deencapsulation.invoke(testSubject, "collectComponentCsarDefinition", component);
+ Either<Object, ResponseFormat> output = Deencapsulation.invoke(testSubject, "collectComponentCsarDefinition", component);
+ assertNotNull(output);
+ assertTrue(output.isRight());
}
@Test
@@ -946,7 +1008,10 @@
Mockito.when(toscaOperationFacade.getToscaElement(Mockito.any(String.class))).thenReturn(Either.left(component),
Either.left(fetchedComponent), Either.right(StorageOperationStatus.BAD_REQUEST));
- Deencapsulation.invoke(testSubject, "collectComponentCsarDefinition", component);
+ Either<Object, ResponseFormat> output = Deencapsulation.invoke(testSubject, "collectComponentCsarDefinition", component);
+
+ assertNotNull(output);
+ assertTrue(output.isRight());
}
@Test
@@ -983,7 +1048,10 @@
Mockito.when(toscaOperationFacade.getToscaElement(Mockito.any(String.class))).thenReturn(Either.left(component),
Either.left(fetchedComponent));
- Deencapsulation.invoke(testSubject, "collectComponentCsarDefinition", component);
+ Either<Object, ResponseFormat> output = Deencapsulation.invoke(testSubject, "collectComponentCsarDefinition", component);
+
+ assertNotNull(output);
+ assertTrue(output.isLeft());
}
@Test