summaryrefslogtreecommitdiffstats
path: root/src/test/java
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/java')
-rw-r--r--src/test/java/org/onap/aai/entity/OxmEntityDescriptorTest.java63
-rw-r--r--src/test/java/org/onap/aai/schema/OxmModelLoaderTest.java68
-rw-r--r--src/test/java/org/onap/aai/util/CrossEntityReferenceTest.java46
3 files changed, 177 insertions, 0 deletions
diff --git a/src/test/java/org/onap/aai/entity/OxmEntityDescriptorTest.java b/src/test/java/org/onap/aai/entity/OxmEntityDescriptorTest.java
new file mode 100644
index 0000000..e39b0b3
--- /dev/null
+++ b/src/test/java/org/onap/aai/entity/OxmEntityDescriptorTest.java
@@ -0,0 +1,63 @@
+/**
+ * ============LICENSE_START=======================================================
+ * org.onap.aai
+ * ================================================================================
+ * Copyright © 2017-2018 AT&T Intellectual Property. All rights reserved.
+ * Copyright © 2017-2018 Amdocs
+ * ================================================================================
+ * 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.entity;
+
+import org.junit.Assert;
+import org.junit.Test;
+import org.onap.aai.util.CrossEntityReference;
+
+import java.io.IOException;
+import java.security.NoSuchAlgorithmException;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+public class OxmEntityDescriptorTest {
+
+ @Test
+ public void testOxmEntityDescriptor(){
+ OxmEntityDescriptor descriptor = new OxmEntityDescriptor();
+ descriptor.setEntityName("entity-1");
+ Assert.assertEquals(descriptor.getEntityName(), "entity-1");
+
+ descriptor.setPrimaryKeyAttributeName(new ArrayList<String>());
+ Assert.assertTrue(descriptor.getPrimaryKeyAttributeName().size()==0);
+
+ Assert.assertFalse(descriptor.hasSearchableAttributes());
+
+ List<String> searchableAttr = new ArrayList<String>();
+ searchableAttr.add("search");
+ descriptor.setSearchableAttributes(searchableAttr);
+ Assert.assertTrue(descriptor.getSearchableAttributes().size()==1);
+
+ Assert.assertTrue(descriptor.hasSearchableAttributes());
+
+ CrossEntityReference ref = new CrossEntityReference();
+ descriptor.setCrossEntityReference(ref);
+ Assert.assertEquals(descriptor.getCrossEntityReference(), ref);
+
+ descriptor.setSuggestableEntity(true);
+ Assert.assertTrue(descriptor.isSuggestableEntity());
+
+ Assert.assertNotNull(descriptor.toString());
+ }
+}
diff --git a/src/test/java/org/onap/aai/schema/OxmModelLoaderTest.java b/src/test/java/org/onap/aai/schema/OxmModelLoaderTest.java
new file mode 100644
index 0000000..060e5ed
--- /dev/null
+++ b/src/test/java/org/onap/aai/schema/OxmModelLoaderTest.java
@@ -0,0 +1,68 @@
+/**
+ * ============LICENSE_START=======================================================
+ * org.onap.aai
+ * ================================================================================
+ * Copyright © 2017-2018 AT&T Intellectual Property. All rights reserved.
+ * Copyright © 2017-2018 Amdocs
+ * ================================================================================
+ * 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.schema;
+
+import static org.junit.Assert.assertNotNull;
+import static org.junit.Assert.assertTrue;
+import java.util.ArrayList;
+import org.eclipse.persistence.dynamic.DynamicType;
+import org.eclipse.persistence.internal.helper.DatabaseField;
+import org.eclipse.persistence.jaxb.dynamic.DynamicJAXBContext;
+import org.eclipse.persistence.mappings.DatabaseMapping;
+import org.junit.Test;
+import org.onap.aai.schema.OxmModelLoader;
+import org.onap.aai.util.EntityOxmReferenceHelper;
+import org.onap.aai.util.ExternalOxmModelProcessor;
+import org.onap.aai.setup.Version;
+
+public class OxmModelLoaderTest {
+
+ @Test
+ public void testLoadingMultipleOxmFiles() {
+ ArrayList<ExternalOxmModelProcessor> externalOxmModelProcessors = new ArrayList<ExternalOxmModelProcessor>();
+ externalOxmModelProcessors.add(EntityOxmReferenceHelper.getInstance());
+ OxmModelLoader.registerExternalOxmModelProcessors(externalOxmModelProcessors);
+ OxmModelLoader.loadModels();
+
+ DynamicJAXBContext jaxbContext = OxmModelLoader.getContextForVersion(Version.getLatest().toString());
+
+ DynamicType pserver = jaxbContext.getDynamicType("Pserver");
+ DynamicType genericVnf = jaxbContext.getDynamicType("GenericVnf");
+
+ assertNotNull(pserver);
+ assertNotNull(genericVnf);
+
+ DatabaseMapping mapping = pserver.getDescriptor().getMappings().firstElement();
+ if (mapping.isAbstractDirectMapping()) {
+ DatabaseField f = mapping.getField();
+ String keyName = f.getName().substring(0, f.getName().indexOf("/"));
+ assertTrue(keyName.equals("hostname"));
+ }
+
+ mapping = genericVnf.getDescriptor().getMappings().firstElement();
+ if (mapping.isAbstractDirectMapping()) {
+ DatabaseField f = mapping.getField();
+ String keyName = f.getName().substring(0, f.getName().indexOf("/"));
+ assertTrue(keyName.equals("vnf-id"));
+ }
+
+ }
+}
diff --git a/src/test/java/org/onap/aai/util/CrossEntityReferenceTest.java b/src/test/java/org/onap/aai/util/CrossEntityReferenceTest.java
new file mode 100644
index 0000000..a9d9105
--- /dev/null
+++ b/src/test/java/org/onap/aai/util/CrossEntityReferenceTest.java
@@ -0,0 +1,46 @@
+/**
+ * ============LICENSE_START=======================================================
+ * org.onap.aai
+ * ================================================================================
+ * Copyright © 2017-2018 AT&T Intellectual Property. All rights reserved.
+ * Copyright © 2017-2018 Amdocs
+ * ================================================================================
+ * 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.util;
+
+import org.junit.Assert;
+import org.junit.Test;
+
+import java.util.ArrayList;
+
+public class CrossEntityReferenceTest {
+
+ @Test
+ public void testCrossEntityReference() {
+
+ CrossEntityReference reference = new CrossEntityReference();
+
+ reference.setTargetEntityType("entity-type");
+ Assert.assertEquals(reference.getTargetEntityType(),"entity-type");
+
+ reference.setAttributeNames(new ArrayList<String>());
+ Assert.assertTrue(reference.getAttributeNames().size()==0);
+
+ reference.addAttributeName("attribute");
+ Assert.assertEquals(reference.getAttributeNames().get(0),"attribute");
+ }
+
+
+} \ No newline at end of file