summaryrefslogtreecommitdiffstats
path: root/aai-schema-abstraction
diff options
context:
space:
mode:
Diffstat (limited to 'aai-schema-abstraction')
-rw-r--r--aai-schema-abstraction/src/main/java/org/onap/aai/schemaif/json/JsonSchemaProvider.java62
-rw-r--r--aai-schema-abstraction/src/test/java/org/onap/aai/schemaif/json/JsonSchemaProviderTest.java385
-rw-r--r--aai-schema-abstraction/src/test/java/org/onap/aai/schemaif/oxm/OxmSchemaServiceSetup.java3
3 files changed, 246 insertions, 204 deletions
diff --git a/aai-schema-abstraction/src/main/java/org/onap/aai/schemaif/json/JsonSchemaProvider.java b/aai-schema-abstraction/src/main/java/org/onap/aai/schemaif/json/JsonSchemaProvider.java
index 47cb2727..e7ee4b47 100644
--- a/aai-schema-abstraction/src/main/java/org/onap/aai/schemaif/json/JsonSchemaProvider.java
+++ b/aai-schema-abstraction/src/main/java/org/onap/aai/schemaif/json/JsonSchemaProvider.java
@@ -20,8 +20,9 @@
*/
package org.onap.aai.schemaif.json;
+import java.io.BufferedOutputStream;
import java.io.ByteArrayInputStream;
-import java.io.IOException;
+import java.io.ByteArrayOutputStream;
import java.io.PrintWriter;
import java.io.StringWriter;
import java.util.Arrays;
@@ -32,7 +33,6 @@ import java.util.Set;
import java.util.concurrent.ConcurrentHashMap;
import java.util.zip.ZipEntry;
import java.util.zip.ZipInputStream;
-
import org.onap.aai.cl.api.Logger;
import org.onap.aai.cl.eelf.LoggerFactory;
import org.onap.aai.schemaif.SchemaProvider;
@@ -162,7 +162,7 @@ public class JsonSchemaProvider implements SchemaProvider {
}
try {
- SchemaServiceResponse resp = SchemaServiceResponse.fromJson(unzipAndGetJSONString(response));
+ SchemaServiceResponse resp = SchemaServiceResponse.fromJson(unzipAndGetJSONString(response.getBody()));
loadSchema(resp.getData().toJson(), version);
}
catch (Exception ex) {
@@ -178,34 +178,42 @@ public class JsonSchemaProvider implements SchemaProvider {
logger.info(SchemaProviderMsgs.LOADED_SCHEMA_FILE, version);
}
- private String unzipAndGetJSONString(ResponseEntity<byte[]> response) throws IOException {
- StringBuffer sb = new StringBuffer("");
-
- ZipInputStream zipStream = null;
- try {
-
- zipStream = new ZipInputStream(new ByteArrayInputStream(response.getBody()));
- ZipEntry entry = null;
- while ((entry = zipStream.getNextEntry()) != null) {
- Scanner sc = new Scanner(zipStream);
- while (sc.hasNextLine()) {
- sb.append(sc.nextLine());
+ static final int BUFFER = 512;
+ static final long TOOBIG = 0x6400000; // Max size of unzipped data, 100MB
+ static final int TOOMANY = 1024; // Max number of files
+
+ protected String unzipAndGetJSONString(byte[] inputData) throws java.io.IOException {
+ ZipEntry entry;
+ String result = "";
+ int entries = 0;
+ long total = 0;
+ try (ByteArrayInputStream bis = new ByteArrayInputStream(inputData); ZipInputStream zis = new ZipInputStream(bis)) {
+ while ((entry = zis.getNextEntry()) != null) {
+ int count;
+ byte[] data = new byte[BUFFER];
+ if (entry.isDirectory()) {
+ continue;
}
-
- }
- } finally {
- try {
- if (zipStream != null) {
- zipStream.closeEntry();
- zipStream.close();
+ ByteArrayOutputStream fos = new ByteArrayOutputStream();
+ BufferedOutputStream dest = new BufferedOutputStream(fos, BUFFER);
+ while (total + BUFFER <= TOOBIG && (count = zis.read(data, 0, BUFFER)) != -1) {
+ dest.write(data, 0, count);
+ total += count;
+ }
+ dest.flush();
+ result = fos.toString();
+ dest.close();
+ zis.closeEntry();
+ entries++;
+ if (entries > TOOMANY) {
+ throw new IllegalStateException("Too many files to unzip.");
+ }
+ if (total + BUFFER > TOOBIG) {
+ throw new IllegalStateException("File being unzipped is too big.");
}
- } catch (Exception e) {
- logger.warn(SchemaProviderMsgs.SCHEMA_LOAD_ERROR, e.toString());
-
}
}
-
- return sb.toString();
+ return result;
}
private SchemaInstance getSchemaVersion(String version) throws SchemaProviderException {
diff --git a/aai-schema-abstraction/src/test/java/org/onap/aai/schemaif/json/JsonSchemaProviderTest.java b/aai-schema-abstraction/src/test/java/org/onap/aai/schemaif/json/JsonSchemaProviderTest.java
index 83ba9e33..332d6672 100644
--- a/aai-schema-abstraction/src/test/java/org/onap/aai/schemaif/json/JsonSchemaProviderTest.java
+++ b/aai-schema-abstraction/src/test/java/org/onap/aai/schemaif/json/JsonSchemaProviderTest.java
@@ -1,5 +1,5 @@
/**
- * ============LICENSE_START=======================================================
+ * ============LICENSE_START=======================================================
* org.onap.aai
* ================================================================================
* Copyright © 2019 AT&T Intellectual Property. All rights reserved.
@@ -21,8 +21,14 @@
package org.onap.aai.schemaif.json;
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.assertNotNull;
+import static org.junit.Assert.assertNull;
import static org.junit.Assert.assertTrue;
+import static org.junit.Assert.fail;
+import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.io.PrintWriter;
import java.io.StringWriter;
@@ -30,7 +36,8 @@ import java.nio.file.Files;
import java.nio.file.Paths;
import java.util.List;
import java.util.Set;
-
+import java.util.zip.ZipEntry;
+import java.util.zip.ZipOutputStream;
import org.junit.Before;
import org.junit.Test;
import org.onap.aai.schemaif.SchemaProviderException;
@@ -53,7 +60,7 @@ public class JsonSchemaProviderTest {
JsonSchemaProviderConfig config = new JsonSchemaProviderConfig();
@Before
- public void init() throws Exception {
+ public void init() {
config.setSchemaServiceBaseUrl("https://testurl.com:8443");
config.setSchemaServiceCertFile("/c/certfile");
config.setSchemaServiceCertPwd("my-password");
@@ -61,6 +68,26 @@ public class JsonSchemaProviderTest {
}
@Test
+ public void testReadZipJson() throws IOException, SchemaProviderException {
+ JsonSchemaProvider jsonSchemaProvider = new JsonSchemaProvider(config);
+
+ ByteArrayOutputStream fos = new ByteArrayOutputStream();
+ ZipOutputStream zos = new ZipOutputStream(fos);
+ zos.putNextEntry(new ZipEntry("schemaServiceResponse.json"));
+ byte[] fileData = Files.readAllBytes(Paths.get("src/test/resources/json/schemaServiceResponse.json"));
+ zos.write(fileData, 0, fileData.length);
+ zos.closeEntry();
+ zos.close();
+
+ String testSchema = readFile("src/test/resources/json/schemaServiceResponse.json");
+ SchemaServiceResponse resp = SchemaServiceResponse.fromJson(testSchema);
+
+ String result = jsonSchemaProvider.unzipAndGetJSONString(fos.toByteArray());
+ SchemaServiceResponse resp2 = SchemaServiceResponse.fromJson(result);
+ assertEquals(resp.toJson(), resp2.toJson());
+ }
+
+ @Test
public void testJsonSchemaLoad() {
try {
String testSchema = readFile("src/test/resources/json/jsonSchema.json");
@@ -69,14 +96,15 @@ public class JsonSchemaProviderTest {
// Test Edge Schema
JsonEdgeSchema edgeSchema = null;
for (JsonEdgeSchema edge : jsonSchema.getRelationshipTypes()) {
- if ( (edge.getFrom().equals("onap.nodes.sdwan.uCPE"))
+ if ( (edge.getFrom().equals("onap.nodes.sdwan.uCPE"))
&& (edge.getTo().equals("onap.nodes.sdwan.service.SubscriberService")) ) {
edgeSchema = edge;
break;
}
}
- assertTrue(edgeSchema.getLabel().equals("onap.relationships.sdwan.BelongsTo"));
+ assertNotNull(edgeSchema);
+ assertEquals("onap.relationships.sdwan.BelongsTo", edgeSchema.getLabel());
// Test Node Schema
JsonVertexSchema vertexSchema = null;
@@ -87,7 +115,8 @@ public class JsonSchemaProviderTest {
}
}
- assertTrue(vertexSchema.getProperties().size() == 2);
+ assertNotNull(vertexSchema);
+ assertEquals(2, vertexSchema.getProperties().size());
JsonPropertySchema propSchema = null;
for (JsonPropertySchema p : vertexSchema.getProperties()) {
@@ -97,11 +126,12 @@ public class JsonSchemaProviderTest {
}
}
- assertTrue(propSchema.getRequired() == false);
- assertTrue(propSchema.getUnique() == false);
- assertTrue(propSchema.getDataType().equals("org.onap.datatypes.RuleList"));
- assertTrue(propSchema.getDefaultValue().equals(""));
- assertTrue(propSchema.getAnnotations().size() == 4);
+ assertNotNull(propSchema);
+ assertEquals(false, propSchema.getRequired());
+ assertEquals(false, propSchema.getUnique());
+ assertEquals("org.onap.datatypes.RuleList", propSchema.getDataType());
+ assertEquals("", propSchema.getDefaultValue());
+ assertEquals(4, propSchema.getAnnotations().size());
// Test DataType Schema
DataTypeDefinition dataType = null;
@@ -112,8 +142,9 @@ public class JsonSchemaProviderTest {
}
}
- assertTrue(dataType.getName().equals("org.onap.datatypes.network.VlanRequirements"));
- assertTrue(dataType.getProperties().size() == 4);
+ assertNotNull(dataType);
+ assertEquals("org.onap.datatypes.network.VlanRequirements", dataType.getName());
+ assertEquals(4, dataType.getProperties().size());
propSchema = null;
for (JsonPropertySchema p : dataType.getProperties()) {
@@ -123,16 +154,17 @@ public class JsonSchemaProviderTest {
}
}
- assertTrue(propSchema.getRequired() == false);
- assertTrue(propSchema.getDataType().equals("string"));
- assertTrue(propSchema.getDefaultValue().equals(""));
+ assertNotNull(propSchema);
+ assertEquals(false, propSchema.getRequired());
+ assertEquals("string", propSchema.getDataType());
+ assertEquals("", propSchema.getDefaultValue());
}
catch (Exception ex) {
StringWriter writer = new StringWriter();
PrintWriter printWriter = new PrintWriter(writer);
ex.printStackTrace(printWriter);
- System.out.println(writer.toString());
- assertTrue(false);
+ System.out.println(writer);
+ fail();
}
}
@@ -143,42 +175,42 @@ public class JsonSchemaProviderTest {
JsonSchemaProvider schemaProvider = new JsonSchemaProvider(config);
schemaProvider.loadSchema(testSchema, schemaProvider.getLatestSchemaVersion());
- VertexSchema vertSchema =
- schemaProvider.getVertexSchema("tosca.nodes.objectstorage",
+ VertexSchema vertSchema =
+ schemaProvider.getVertexSchema("tosca.nodes.objectstorage",
schemaProvider.getLatestSchemaVersion());
System.out.println(vertSchema.toString());
// Validate vertex schema
- assertTrue(vertSchema.getName().equals("tosca.nodes.ObjectStorage"));
- assertTrue(vertSchema.getAnnotationValue("searchable").equals("size,name"));
- assertTrue(vertSchema.getAnnotationValue("indexedProps").equals("aai-uuid,name"));
+ assertEquals("tosca.nodes.ObjectStorage", vertSchema.getName());
+ assertEquals("size,name", vertSchema.getAnnotationValue("searchable"));
+ assertEquals("aai-uuid,name", vertSchema.getAnnotationValue("indexedProps"));
PropertySchema propSchema = vertSchema.getPropertySchema("Name");
- assertTrue(propSchema.getName().equals("name"));
- assertTrue(propSchema.getDefaultValue().equals(""));
+ assertEquals("name", propSchema.getName());
+ assertEquals("", propSchema.getDefaultValue());
assertTrue(propSchema.isRequired());
- assertTrue(!propSchema.isKey());
- assertTrue(!propSchema.isReserved());
- assertTrue(propSchema.getDataType().getType().compareTo(Type.STRING) == 0);
- assertTrue(propSchema.getAnnotationValue("Source_of_truth_type").equals("AAI"));
+ assertFalse(propSchema.isKey());
+ assertFalse(propSchema.isReserved());
+ assertEquals(0, propSchema.getDataType().getType().compareTo(Type.STRING));
+ assertEquals("AAI", propSchema.getAnnotationValue("Source_of_truth_type"));
propSchema = vertSchema.getPropertySchema("Size");
- assertTrue(propSchema.getName().equals("size"));
- assertTrue(propSchema.getDefaultValue().equals("50"));
- assertTrue(propSchema.getDataType().getType().compareTo(Type.INT) == 0);
-
+ assertEquals("size", propSchema.getName());
+ assertEquals("50", propSchema.getDefaultValue());
+ assertEquals(0, propSchema.getDataType().getType().compareTo(Type.INT));
+
propSchema = vertSchema.getPropertySchema("source-of-truth");
- assertTrue(propSchema.getName().equals("source-of-truth"));
- assertTrue(!propSchema.isRequired());
+ assertEquals("source-of-truth", propSchema.getName());
+ assertFalse(propSchema.isRequired());
assertTrue(propSchema.isReserved());
- assertTrue(propSchema.getDataType().getType().compareTo(Type.STRING) == 0);
+ assertEquals(0, propSchema.getDataType().getType().compareTo(Type.STRING));
}
catch (Exception ex) {
StringWriter writer = new StringWriter();
PrintWriter printWriter = new PrintWriter(writer);
ex.printStackTrace(printWriter);
- System.out.println(writer.toString());
- assertTrue(false);
+ System.out.println(writer);
+ fail();
}
}
@@ -189,17 +221,17 @@ public class JsonSchemaProviderTest {
JsonSchemaProvider schemaProvider = new JsonSchemaProvider(config);
schemaProvider.loadSchema(testSchema, schemaProvider.getLatestSchemaVersion());
- EdgeSchema edgeSchema = schemaProvider.getEdgeSchema("tosca.relationships.hostedOn",
- "tosca.nodes.Softwarecomponent", "tosca.nodes.compute",
+ EdgeSchema edgeSchema = schemaProvider.getEdgeSchema("tosca.relationships.hostedOn",
+ "tosca.nodes.Softwarecomponent", "tosca.nodes.compute",
schemaProvider.getLatestSchemaVersion());
System.out.println(edgeSchema.toString());
// Validate edge schema
- assertTrue(edgeSchema.getName().equals("tosca.relationships.HostedOn"));
- assertTrue(edgeSchema.getSource().equals("tosca.nodes.SoftwareComponent"));
- assertTrue(edgeSchema.getTarget().equals("tosca.nodes.Compute"));
- assertTrue(edgeSchema.getMultiplicity().equals(EdgeSchema.Multiplicity.MANY_2_MANY));
- assertTrue(edgeSchema.getAnnotationValue("contains-other-v").equals("NONE"));
+ assertEquals("tosca.relationships.HostedOn", edgeSchema.getName());
+ assertEquals("tosca.nodes.SoftwareComponent", edgeSchema.getSource());
+ assertEquals("tosca.nodes.Compute", edgeSchema.getTarget());
+ assertEquals(edgeSchema.getMultiplicity(), EdgeSchema.Multiplicity.MANY_2_MANY);
+ assertEquals("NONE", edgeSchema.getAnnotationValue("contains-other-v"));
}
@@ -207,8 +239,8 @@ public class JsonSchemaProviderTest {
StringWriter writer = new StringWriter();
PrintWriter printWriter = new PrintWriter(writer);
ex.printStackTrace(printWriter);
- System.out.println(writer.toString());
- assertTrue(false);
+ System.out.println(writer);
+ fail();
}
}
@@ -219,32 +251,30 @@ public class JsonSchemaProviderTest {
JsonSchemaProvider schemaProvider = new JsonSchemaProvider(config);
schemaProvider.loadSchema(testSchema, schemaProvider.getLatestSchemaVersion());
- Set<EdgeSchema> edgeSchemaList =
- schemaProvider.getAdjacentEdgeSchema("tosca.nodes.Database",
+ Set<EdgeSchema> edgeSchemaList =
+ schemaProvider.getAdjacentEdgeSchema("tosca.nodes.Database",
schemaProvider.getLatestSchemaVersion());
// Validate edge schema
- assertTrue(edgeSchemaList.size() == 3);
+ assertEquals(3, edgeSchemaList.size());
for (EdgeSchema es : edgeSchemaList) {
System.out.println(es.toString());
- if (es.getName().equals("tosca.relationships.HostedOn")) {
- assertTrue(es.getSource().equals("tosca.nodes.Database"));
- assertTrue(es.getTarget().equals("tosca.nodes.DBMS"));
- assertTrue(es.getMultiplicity().equals(EdgeSchema.Multiplicity.MANY_2_MANY));
- }
- else if (es.getName().equals("tosca.relationships.RoutesTo")) {
- assertTrue(es.getSource().equals("tosca.nodes.LoadBalancer"));
- assertTrue(es.getTarget().equals("tosca.nodes.Database"));
- assertTrue(es.getMultiplicity().equals(EdgeSchema.Multiplicity.MANY_2_MANY));
- }
- else if (es.getName().equals("tosca.relationships.Uses")) {
- assertTrue(es.getSource().equals("tosca.nodes.LoadBalancer"));
- assertTrue(es.getTarget().equals("tosca.nodes.Database"));
- assertTrue(es.getMultiplicity().equals(EdgeSchema.Multiplicity.MANY_2_MANY));
- }
- else {
- assertTrue(false);
+ switch (es.getName()) {
+ case "tosca.relationships.HostedOn":
+ assertEquals("tosca.nodes.Database", es.getSource());
+ assertEquals("tosca.nodes.DBMS", es.getTarget());
+ assertEquals(es.getMultiplicity(), EdgeSchema.Multiplicity.MANY_2_MANY);
+ break;
+ case "tosca.relationships.RoutesTo":
+ case "tosca.relationships.Uses":
+ assertEquals("tosca.nodes.LoadBalancer", es.getSource());
+ assertEquals("tosca.nodes.Database", es.getTarget());
+ assertEquals(es.getMultiplicity(), EdgeSchema.Multiplicity.MANY_2_MANY);
+ break;
+ default:
+ fail();
+ break;
}
}
}
@@ -252,8 +282,8 @@ public class JsonSchemaProviderTest {
StringWriter writer = new StringWriter();
PrintWriter printWriter = new PrintWriter(writer);
ex.printStackTrace(printWriter);
- System.out.println(writer.toString());
- assertTrue(false);
+ System.out.println(writer);
+ fail();
}
}
@@ -264,28 +294,28 @@ public class JsonSchemaProviderTest {
JsonSchemaProvider schemaProvider = new JsonSchemaProvider(config);
schemaProvider.loadSchema(testSchema, schemaProvider.getLatestSchemaVersion());
- Set<EdgeSchema> edgeSchemaList =
- schemaProvider.getEdgeSchemaForSourceTarget("tosca.nodes.LoadBalancer",
- "tosca.nodes.Database",
+ Set<EdgeSchema> edgeSchemaList =
+ schemaProvider.getEdgeSchemaForSourceTarget("tosca.nodes.LoadBalancer",
+ "tosca.nodes.Database",
schemaProvider.getLatestSchemaVersion());
// Validate edge schema
- assertTrue(edgeSchemaList.size() == 2);
+ assertEquals(2, edgeSchemaList.size());
for (EdgeSchema es : edgeSchemaList) {
System.out.println(es.toString());
if (es.getName().equals("tosca.relationships.Uses")) {
- assertTrue(es.getSource().equals("tosca.nodes.LoadBalancer"));
- assertTrue(es.getTarget().equals("tosca.nodes.Database"));
- assertTrue(es.getMultiplicity().equals(EdgeSchema.Multiplicity.MANY_2_MANY));
+ assertEquals("tosca.nodes.LoadBalancer", es.getSource());
+ assertEquals("tosca.nodes.Database", es.getTarget());
+ assertEquals(es.getMultiplicity(), EdgeSchema.Multiplicity.MANY_2_MANY);
}
else if (es.getName().equals("tosca.relationships.RoutesTo")) {
- assertTrue(es.getSource().equals("tosca.nodes.LoadBalancer"));
- assertTrue(es.getTarget().equals("tosca.nodes.Database"));
- assertTrue(es.getMultiplicity().equals(EdgeSchema.Multiplicity.MANY_2_MANY));
+ assertEquals("tosca.nodes.LoadBalancer", es.getSource());
+ assertEquals("tosca.nodes.Database", es.getTarget());
+ assertEquals(es.getMultiplicity(), EdgeSchema.Multiplicity.MANY_2_MANY);
}
else {
- assertTrue(false);
+ fail();
}
}
}
@@ -293,8 +323,8 @@ public class JsonSchemaProviderTest {
StringWriter writer = new StringWriter();
PrintWriter printWriter = new PrintWriter(writer);
ex.printStackTrace(printWriter);
- System.out.println(writer.toString());
- assertTrue(false);
+ System.out.println(writer);
+ fail();
}
}
@@ -305,81 +335,81 @@ public class JsonSchemaProviderTest {
JsonSchemaProvider schemaProvider = new JsonSchemaProvider(config);
schemaProvider.loadSchema(testSchema, schemaProvider.getLatestSchemaVersion());
- EdgeSchema edgeSchema =
- schemaProvider.getEdgeSchema("amdocs.linkedTo", "service-instance",
+ EdgeSchema edgeSchema =
+ schemaProvider.getEdgeSchema("amdocs.linkedTo", "service-instance",
"onap.nodes.sdwan.ManagementDomain", schemaProvider.getLatestSchemaVersion());
- assertTrue(edgeSchema.getName().equals("amdocs.linkedTo"));
- assertTrue(edgeSchema.getSource().equals("service-instance"));
- assertTrue(edgeSchema.getTarget().equals("onap.nodes.sdwan.ManagementDomain"));
+ assertEquals("amdocs.linkedTo", edgeSchema.getName());
+ assertEquals("service-instance", edgeSchema.getSource());
+ assertEquals("onap.nodes.sdwan.ManagementDomain", edgeSchema.getTarget());
- edgeSchema = schemaProvider.getEdgeSchema("amdocs.linkedTo", "onap.nodes.sdwan.ManagementDomain",
+ edgeSchema = schemaProvider.getEdgeSchema("amdocs.linkedTo", "onap.nodes.sdwan.ManagementDomain",
"service-instance", schemaProvider.getLatestSchemaVersion());
- assertTrue(edgeSchema == null);
-
-
- edgeSchema =
- schemaProvider.getEdgeSchema("amdocs.unknownRelationship", "unknown",
+ assertNull(edgeSchema);
+
+
+ edgeSchema =
+ schemaProvider.getEdgeSchema("amdocs.unknownRelationship", "unknown",
"onap.nodes.sdwan.ManagementDomain", schemaProvider.getLatestSchemaVersion());
-
- assertTrue(edgeSchema.getName().equals("amdocs.unknownRelationship"));
- assertTrue(edgeSchema.getSource().equals("unknown"));
- assertTrue(edgeSchema.getTarget().equals("onap.nodes.sdwan.ManagementDomain"));
-
- edgeSchema =
- schemaProvider.getEdgeSchema("amdocs.unknownRelationship", "onap.nodes.sdwan.ManagementDomain",
+
+ assertEquals("amdocs.unknownRelationship", edgeSchema.getName());
+ assertEquals("unknown", edgeSchema.getSource());
+ assertEquals("onap.nodes.sdwan.ManagementDomain", edgeSchema.getTarget());
+
+ edgeSchema =
+ schemaProvider.getEdgeSchema("amdocs.unknownRelationship", "onap.nodes.sdwan.ManagementDomain",
"unknown", schemaProvider.getLatestSchemaVersion());
-
- assertTrue(edgeSchema.getName().equals("amdocs.unknownRelationship"));
- assertTrue(edgeSchema.getSource().equals("onap.nodes.sdwan.ManagementDomain"));
- assertTrue(edgeSchema.getTarget().equals("unknown"));
-
- Set<EdgeSchema> edgeSchemaList =
- schemaProvider.getEdgeSchemaForSourceTarget("service-instance",
- "onap.nodes.sdwan.ManagementDomain",
+
+ assertEquals("amdocs.unknownRelationship", edgeSchema.getName());
+ assertEquals("onap.nodes.sdwan.ManagementDomain", edgeSchema.getSource());
+ assertEquals("unknown", edgeSchema.getTarget());
+
+ Set<EdgeSchema> edgeSchemaList =
+ schemaProvider.getEdgeSchemaForSourceTarget("service-instance",
+ "onap.nodes.sdwan.ManagementDomain",
schemaProvider.getLatestSchemaVersion());
- assertTrue(edgeSchemaList.size() == 1);
-
- edgeSchemaList = schemaProvider.getEdgeSchemaForSourceTarget("unknown", "unknown",
+ assertEquals(1, edgeSchemaList.size());
+
+ edgeSchemaList = schemaProvider.getEdgeSchemaForSourceTarget("unknown", "unknown",
schemaProvider.getLatestSchemaVersion());
- assertTrue(edgeSchemaList.size() == 1);
-
- edgeSchemaList = schemaProvider.getEdgeSchemaForSourceTarget("service-instance", "service-instance",
+ assertEquals(1, edgeSchemaList.size());
+
+ edgeSchemaList = schemaProvider.getEdgeSchemaForSourceTarget("service-instance", "service-instance",
schemaProvider.getLatestSchemaVersion());
- assertTrue(edgeSchemaList.size() == 1);
-
-
+ assertEquals(1, edgeSchemaList.size());
+
+
edgeSchemaList = schemaProvider.getAdjacentEdgeSchema("service-instance", schemaProvider.getLatestSchemaVersion());
System.out.println("EDGE LIST: \n\n" + edgeSchemaList);
- assertTrue(edgeSchemaList.size() == 8);
+ assertEquals(8, edgeSchemaList.size());
}
catch (Exception ex) {
StringWriter writer = new StringWriter();
PrintWriter printWriter = new PrintWriter(writer);
ex.printStackTrace(printWriter);
- System.out.println(writer.toString());
- assertTrue(false);
+ System.out.println(writer);
+ fail();
}
}
-
+
@Test
- public void testInvalidVertexOrEdge() throws SchemaProviderException {
+ public void testInvalidVertexOrEdge() {
try {
String testSchema = readFile("src/test/resources/json/jsonSchema.json");
JsonSchemaProvider schemaProvider = new JsonSchemaProvider(config);
schemaProvider.loadSchema(testSchema, schemaProvider.getLatestSchemaVersion());
- VertexSchema vertSchema =
+ VertexSchema vertSchema =
schemaProvider.getVertexSchema("bad-node", schemaProvider.getLatestSchemaVersion());
- assertTrue(vertSchema == null);
+ assertNull(vertSchema);
- EdgeSchema edgeSchema = schemaProvider.getEdgeSchema("org.onap.relationships.inventory.LocatedIn",
+ EdgeSchema edgeSchema = schemaProvider.getEdgeSchema("org.onap.relationships.inventory.LocatedIn",
"cloud-region", "bad-node", schemaProvider.getLatestSchemaVersion());
- assertTrue(edgeSchema == null);
+ assertNull(edgeSchema);
- Set<EdgeSchema> edgeSchemaList =
- schemaProvider.getAdjacentEdgeSchema("org.onap.nodes.bad-node",
+ Set<EdgeSchema> edgeSchemaList =
+ schemaProvider.getAdjacentEdgeSchema("org.onap.nodes.bad-node",
schemaProvider.getLatestSchemaVersion());
assertTrue(edgeSchemaList.isEmpty());
}
@@ -387,8 +417,8 @@ public class JsonSchemaProviderTest {
StringWriter writer = new StringWriter();
PrintWriter printWriter = new PrintWriter(writer);
ex.printStackTrace(printWriter);
- System.out.println(writer.toString());
- assertTrue(false);
+ System.out.println(writer);
+ fail();
}
}
@@ -399,23 +429,23 @@ public class JsonSchemaProviderTest {
JsonSchemaProvider schemaProvider = new JsonSchemaProvider(config);
schemaProvider.loadSchema(testSchema, schemaProvider.getLatestSchemaVersion());
- VertexSchema vertSchema =
- schemaProvider.getVertexSchema("onap.nodes.sdwan.ManagementDomain",
+ VertexSchema vertSchema =
+ schemaProvider.getVertexSchema("onap.nodes.sdwan.ManagementDomain",
schemaProvider.getLatestSchemaVersion());
System.out.println(vertSchema.toString());
- // Validate schema
+ // Validate schema
PropertySchema propSchema = vertSchema.getPropertySchema("controllers");
- assertTrue(propSchema.getDataType().getType().compareTo(Type.LIST) == 0);
+ assertEquals(0, propSchema.getDataType().getType().compareTo(Type.LIST));
ListDataType listType = (ListDataType)propSchema.getDataType();
- assertTrue(listType.getListType().getType().compareTo(Type.STRING) == 0);
+ assertEquals(0, listType.getListType().getType().compareTo(Type.STRING));
}
catch (Exception ex) {
StringWriter writer = new StringWriter();
PrintWriter printWriter = new PrintWriter(writer);
ex.printStackTrace(printWriter);
- System.out.println(writer.toString());
- assertTrue(false);
+ System.out.println(writer);
+ fail();
}
}
@@ -426,26 +456,26 @@ public class JsonSchemaProviderTest {
JsonSchemaProvider schemaProvider = new JsonSchemaProvider(config);
schemaProvider.loadSchema(testSchema, schemaProvider.getLatestSchemaVersion());
- VertexSchema vertSchema =
- schemaProvider.getVertexSchema("onap.nodes.sdwan.ManagementDomain",
+ VertexSchema vertSchema =
+ schemaProvider.getVertexSchema("onap.nodes.sdwan.ManagementDomain",
schemaProvider.getLatestSchemaVersion());
System.out.println(vertSchema.toString());
- // Validate schema
+ // Validate schema
PropertySchema propSchema = vertSchema.getPropertySchema("analyticClusters");
- assertTrue(propSchema.getDataType().getType().compareTo(Type.MAP) == 0);
+ assertEquals(0, propSchema.getDataType().getType().compareTo(Type.MAP));
MapDataType mapType = (MapDataType)propSchema.getDataType();
- assertTrue(mapType.getMapType().getType().compareTo(Type.STRING) == 0);
+ assertEquals(0, mapType.getMapType().getType().compareTo(Type.STRING));
}
catch (Exception ex) {
StringWriter writer = new StringWriter();
PrintWriter printWriter = new PrintWriter(writer);
ex.printStackTrace(printWriter);
- System.out.println(writer.toString());
- assertTrue(false);
+ System.out.println(writer);
+ fail();
}
}
-
+
@Test
public void testJsonSchemaComplexAttribute() {
try {
@@ -453,21 +483,21 @@ public class JsonSchemaProviderTest {
JsonSchemaProvider schemaProvider = new JsonSchemaProvider(config);
schemaProvider.loadSchema(testSchema, schemaProvider.getLatestSchemaVersion());
- VertexSchema vertSchema =
- schemaProvider.getVertexSchema("org.onap.resource.extContrailCP",
+ VertexSchema vertSchema =
+ schemaProvider.getVertexSchema("org.onap.resource.extContrailCP",
schemaProvider.getLatestSchemaVersion());
System.out.println(vertSchema.toString());
System.out.println("\n\nSize: " + vertSchema.getPropertySchemaList().size());
System.out.println(vertSchema.getPropertySchemaList());
- assertTrue(vertSchema.getPropertySchemaList().size() == 22);
+ assertEquals(22, vertSchema.getPropertySchemaList().size());
- // Validate property schema
+ // Validate property schema
PropertySchema propSchema = vertSchema.getPropertySchema("exCP_naming");
- assertTrue(propSchema.getDataType().getType().compareTo(Type.COMPLEX) == 0);
+ assertEquals(0, propSchema.getDataType().getType().compareTo(Type.COMPLEX));
ComplexDataType complexType = (ComplexDataType)propSchema.getDataType();
List<PropertySchema> complexProps = complexType.getSubProperties();
- assertTrue(complexProps.size() == 4);
+ assertEquals(4, complexProps.size());
PropertySchema subProp = null;
for (PropertySchema p : complexProps) {
@@ -476,15 +506,16 @@ public class JsonSchemaProviderTest {
}
}
- assertTrue(!subProp.isRequired());
- assertTrue(subProp.getDataType().getType().compareTo(Type.STRING) == 0);
+ assertNotNull(subProp);
+ assertFalse(subProp.isRequired());
+ assertEquals(0, subProp.getDataType().getType().compareTo(Type.STRING));
}
catch (Exception ex) {
StringWriter writer = new StringWriter();
PrintWriter printWriter = new PrintWriter(writer);
ex.printStackTrace(printWriter);
- System.out.println(writer.toString());
- assertTrue(false);
+ System.out.println(writer);
+ fail();
}
}
@@ -495,22 +526,22 @@ public class JsonSchemaProviderTest {
SchemaServiceResponse resp = SchemaServiceResponse.fromJson(testSchema);
System.out.println(resp.toJson());
- assertTrue(resp.getVersion().equals("v1"));
+ assertEquals("v1", resp.getVersion());
JsonSchema jsonSchema = resp.getData();
System.out.println(jsonSchema.toJson());
- assertTrue(jsonSchema.getDataTypes().size() == 1);
+ assertEquals(1, jsonSchema.getDataTypes().size());
}
catch (Exception ex) {
StringWriter writer = new StringWriter();
PrintWriter printWriter = new PrintWriter(writer);
ex.printStackTrace(printWriter);
- System.out.println(writer.toString());
- assertTrue(false);
+ System.out.println(writer);
+ fail();
}
}
-
+
@Test
public void testSchemaValidateSuccess() {
try {
@@ -522,75 +553,75 @@ public class JsonSchemaProviderTest {
StringWriter writer = new StringWriter();
PrintWriter printWriter = new PrintWriter(writer);
ex.printStackTrace(printWriter);
- System.out.println(writer.toString());
- assertTrue(false);
+ System.out.println(writer);
+ fail();
}
- }
+ }
@Test(expected = SchemaProviderException.class)
public void testSchemaValidateBadEdge() throws SchemaProviderException {
- SchemaServiceResponse schema;
+ SchemaServiceResponse schema;
try {
String testSchema = readFile("src/test/resources/json/badEdgeSchema.json");
schema = SchemaServiceResponse.fromJson(testSchema);
}
catch (Exception ex) {
- assertTrue(false);
+ fail();
return;
}
schema.getData().validate();
}
-
+
@Test(expected = SchemaProviderException.class)
public void testSchemaValidateBadVertex() throws SchemaProviderException {
- SchemaServiceResponse schema;
+ SchemaServiceResponse schema;
try {
String testSchema = readFile("src/test/resources/json/badVertexSchema.json");
schema = SchemaServiceResponse.fromJson(testSchema);
}
catch (Exception ex) {
- assertTrue(false);
+ fail();
return;
}
System.out.println("Validate");
- schema.getData().validate();
+ schema.getData().validate();
System.out.println("Validate done");
}
-
+
@Test(expected = SchemaProviderException.class)
public void testSchemaValidateBadType() throws SchemaProviderException {
- SchemaServiceResponse schema;
+ SchemaServiceResponse schema;
try {
String testSchema = readFile("src/test/resources/json/badTypeSchema.json");
schema = SchemaServiceResponse.fromJson(testSchema);
}
catch (Exception ex) {
- assertTrue(false);
+ fail();
return;
}
- schema.getData().validate();
+ schema.getData().validate();
}
-
+
@Test(expected = SchemaProviderException.class)
public void testSchemaValidateBadProp() throws SchemaProviderException {
- SchemaServiceResponse schema;
+ SchemaServiceResponse schema;
try {
String testSchema = readFile("src/test/resources/json/badPropSchema.json");
schema = SchemaServiceResponse.fromJson(testSchema);
}
catch (Exception ex) {
- assertTrue(false);
+ fail();
return;
}
- schema.getData().validate();
+ schema.getData().validate();
}
static String readFile(String path) throws IOException {
diff --git a/aai-schema-abstraction/src/test/java/org/onap/aai/schemaif/oxm/OxmSchemaServiceSetup.java b/aai-schema-abstraction/src/test/java/org/onap/aai/schemaif/oxm/OxmSchemaServiceSetup.java
index b4c1ca2e..b0b76a21 100644
--- a/aai-schema-abstraction/src/test/java/org/onap/aai/schemaif/oxm/OxmSchemaServiceSetup.java
+++ b/aai-schema-abstraction/src/test/java/org/onap/aai/schemaif/oxm/OxmSchemaServiceSetup.java
@@ -27,8 +27,10 @@ import java.util.HashSet;
import java.util.List;
import java.util.Set;
import org.junit.Before;
+import org.junit.runner.RunWith;
import org.mockito.Mock;
import org.mockito.Mockito;
+import org.mockito.runners.MockitoJUnitRunner;
import org.onap.aai.edges.EdgeIngestor;
import org.onap.aai.nodes.NodeIngestor;
import org.onap.aai.setup.AAIConfigTranslator;
@@ -37,6 +39,7 @@ import org.onap.aai.setup.SchemaVersion;
import org.onap.aai.setup.SchemaConfigVersions;
import org.onap.aai.setup.Translator;
+@RunWith(MockitoJUnitRunner.class)
public class OxmSchemaServiceSetup {
@Mock