aboutsummaryrefslogtreecommitdiffstats
path: root/src/test/java/org/onap/aai/champ/core/ChampRelationshipTest.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/java/org/onap/aai/champ/core/ChampRelationshipTest.java')
-rw-r--r--src/test/java/org/onap/aai/champ/core/ChampRelationshipTest.java261
1 files changed, 0 insertions, 261 deletions
diff --git a/src/test/java/org/onap/aai/champ/core/ChampRelationshipTest.java b/src/test/java/org/onap/aai/champ/core/ChampRelationshipTest.java
deleted file mode 100644
index 3d95268..0000000
--- a/src/test/java/org/onap/aai/champ/core/ChampRelationshipTest.java
+++ /dev/null
@@ -1,261 +0,0 @@
-/**
- * ============LICENSE_START==========================================
- * org.onap.aai
- * ===================================================================
- * Copyright © 2017 AT&T Intellectual Property. All rights reserved.
- * Copyright © 2017 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============================================
- * ECOMP is a trademark and service mark of AT&T Intellectual Property.
- */
-package org.onap.aai.champ.core;
-
-import static org.junit.Assert.assertTrue;
-
-import java.util.Collections;
-import java.util.Optional;
-import java.util.stream.Collectors;
-
-import org.junit.Test;
-import org.onap.aai.champ.ChampAPI;
-import org.onap.aai.champ.ChampGraph;
-import org.onap.aai.champ.exceptions.ChampMarshallingException;
-import org.onap.aai.champ.exceptions.ChampObjectNotExistsException;
-import org.onap.aai.champ.exceptions.ChampRelationshipNotExistsException;
-import org.onap.aai.champ.exceptions.ChampSchemaViolationException;
-import org.onap.aai.champ.exceptions.ChampUnmarshallingException;
-import org.onap.aai.champ.model.ChampObject;
-import org.onap.aai.champ.model.ChampRelationship;
-import org.onap.aai.champ.model.ChampRelationship.ReservedPropertyKeys;
-import org.onap.aai.champ.model.ChampRelationship.ReservedTypes;
-
-public class ChampRelationshipTest extends BaseChampAPITest {
-
- @Test
- public void runTest() {
- for (ChampGraph.Type apiType : ChampGraph.Type.values()) {
- final String graphName = ChampRelationshipTest.class.getSimpleName();
-
- switch (apiType) {
- case IN_MEMORY:
- break;
- case TITAN:
- cleanUp(graphName);
- break;
- default:
- break;
- }
-
- final ChampAPI api = ChampAPI.Factory.newInstance(apiType);
- ChampRelationshipTest.testChampRelationshipCrud(api.getGraph(graphName));
- api.shutdown();
- }
- }
-
- public static void testChampRelationshipCrud(ChampGraph graph) {
- final ChampObject source = ChampObject.create()
- .ofType("foo")
- .withoutKey()
- .withProperty("property1", "value1")
- .build();
-
- final ChampObject target = ChampObject.create()
- .ofType("foo")
- .withoutKey()
- .build();
-
- try {
- final ChampObject storedSource = graph.storeObject(source);
- final ChampObject storedTarget = graph.storeObject(target);
-
- final ChampRelationship relationship = new ChampRelationship.Builder(storedSource, storedTarget, "relationship")
- .property("property-1", "value-1")
- .property("property-2", 3)
- .build();
-
- final ChampRelationship storedRelationship = graph.storeRelationship(relationship);
- final Optional<ChampRelationship> retrievedRelationship = graph.retrieveRelationship(storedRelationship.getKey().get());
-
- if (!retrievedRelationship.isPresent()) throw new AssertionError("Failed to retrieve stored relationship " + storedRelationship);
- if (!storedRelationship.equals(retrievedRelationship.get())) throw new AssertionError("Retrieved relationship does not equal stored object");
-
- assertTrue(retrievedRelationship.get().getProperty("property-1").get().equals("value-1"));
- assertTrue(retrievedRelationship.get().getProperty("property-2").get().equals(3));
-
- if (!graph.retrieveRelationships(storedRelationship.getSource()).collect(Collectors.toList()).contains(storedRelationship))
- throw new AssertionError("Failed to retrieve relationships for source object");
-
- final ChampRelationship updatedRelationship = ChampRelationship.create()
- .from(retrievedRelationship.get())
- .withKey(retrievedRelationship.get().getKey().get())
- .withProperty("property-2", 4)
- .build();
-
- final ChampRelationship storedUpdRel = graph.storeRelationship(updatedRelationship);
- final Optional<ChampRelationship> retrievedUpdRel = graph.retrieveRelationship(storedUpdRel.getKey().get());
-
- assertTrue(retrievedUpdRel.isPresent());
- assertTrue(retrievedUpdRel.get().equals(storedUpdRel));
- assertTrue(retrievedUpdRel.get().getProperty("property-1").get().equals("value-1"));
- assertTrue(retrievedUpdRel.get().getProperty("property-2").get().equals(4));
-
-
- // validate the replaceRelationship method
- final ChampRelationship replacedRelationship = new ChampRelationship.Builder(storedSource, storedTarget, "relationship")
- .key(retrievedRelationship.get().getKey().get())
- .property("property-2", 4)
- .build();
-
- final ChampRelationship replacedRel = graph.replaceRelationship(replacedRelationship);
- final Optional<ChampRelationship> retrievedReplacedRel = graph
- .retrieveRelationship(replacedRel.getKey().get());
-
- assertTrue(replacedRel.getProperties().size()==1);
- assertTrue(replacedRel.getProperty("property-2").get().equals(4));
-
- assertTrue(retrievedReplacedRel.get().getProperties().size()==1);
- assertTrue(retrievedReplacedRel.get().getProperty("property-2").get().equals(4));
-
- if (!retrievedReplacedRel.isPresent()) throw new AssertionError("Failed to retrieve stored relationship " + replacedRel);
- if (!replacedRel.equals(retrievedReplacedRel.get())) throw new AssertionError("Retrieved relationship does not equal stored object");
-
-
- graph.deleteRelationship(retrievedRelationship.get());
-
- if (graph.retrieveRelationship(relationship.getKey()).isPresent()) throw new AssertionError("Relationship not successfully deleted");
-
- try {
- graph.deleteRelationship(retrievedRelationship.get());
- throw new AssertionError("Failed to throw exception for missing relationship");
- } catch (ChampRelationshipNotExistsException e) {
- //Expected
- }
-
- assertTrue(graph.queryRelationships(Collections.emptyMap()).count() == 0);
- assertTrue(graph.queryObjects(Collections.emptyMap()).count() == 2);
- } catch (ChampSchemaViolationException e) {
- throw new AssertionError("Schema mismatch while storing object", e);
- } catch (ChampMarshallingException e) {
- throw new AssertionError("Marshalling exception while storing object", e);
- } catch (ChampUnmarshallingException e) {
- throw new AssertionError("Unmarshalling exception while retrieving relationship", e);
- } catch (ChampRelationshipNotExistsException e) {
- throw new AssertionError("Attempted to delete non-existent relationship", e);
- } catch (ChampObjectNotExistsException e) {
- throw new AssertionError("Object does not exist after storing it", e);
- }
-
- try {
- graph.retrieveRelationships(ChampObject.create().ofType("").withoutKey().build());
- throw new AssertionError("Failed to handle missing object while retrieving relationships");
- } catch (ChampUnmarshallingException e) {
- throw new AssertionError(e);
- } catch (ChampObjectNotExistsException e) {
- //Expected
- }
- //Negative test cases for replace relationship
-
- try{
- graph.replaceRelationship(new ChampRelationship.Builder(ChampObject.create()
- .ofType("foo")
- .withoutKey()
- .build(), ChampObject.create()
- .ofType("foo")
- .withoutKey()
- .build(), "relationship")
- .key("1234")
- .property("property-2", 4)
- .build());
- }
- catch (ChampUnmarshallingException e) {
- throw new AssertionError(e);
- } catch (ChampMarshallingException e) {
- throw new AssertionError(e);
- } catch (ChampSchemaViolationException e) {
- throw new AssertionError(e);
- } catch (ChampRelationshipNotExistsException e) {
- throw new AssertionError(e);
- } catch(IllegalArgumentException e){
- //expected
- }
-
- try{
- graph.replaceRelationship(new ChampRelationship.Builder(ChampObject.create()
- .ofType("foo")
- .withKey("123")
- .build(), ChampObject.create()
- .ofType("foo")
- .withKey("456")
- .build(), "relationship")
- .property("property-2", 4)
- .build());
- }
- catch (ChampUnmarshallingException e) {
- throw new AssertionError(e);
- } catch (ChampMarshallingException e) {
- throw new AssertionError(e);
- } catch (ChampSchemaViolationException e) {
- throw new AssertionError(e);
- } catch (ChampRelationshipNotExistsException e) {
- //expected
- } catch(IllegalArgumentException e){
- throw new AssertionError(e);
- }
-
-
- }
-
- @Test
- public void testFluentRelationshipCreation() {
- final Object value1 = new Object();
- final String value2 = "value2";
- final float value3 = 0.0f;
-
- final ChampRelationship champRelationship = ChampRelationship.create()
- .ofType("foo")
- .withoutKey()
- .withSource()
- .ofType("bar")
- .withoutKey()
- .build()
- .withTarget()
- .ofType("baz")
- .withKey(1)
- .build()
- .withProperty("key1", value1)
- .withProperty("key2", value2)
- .withProperty("key3", value3)
- .build();
-
- assertTrue(champRelationship.getKey().equals(Optional.empty()));
- assertTrue(champRelationship.getType().equals("foo"));
- assertTrue(champRelationship.getProperty("key1").get() instanceof Object);
- assertTrue(champRelationship.getProperty("key1").get().equals(value1));
- assertTrue(champRelationship.getProperty("key2").get() instanceof String);
- assertTrue(champRelationship.getProperty("key2").get().equals(value2));
- assertTrue(champRelationship.getProperty("key3").get() instanceof Float);
- assertTrue(champRelationship.getProperty("key3").get().equals(value3));
- }
-
- @Test
- public void testChampRelationshipEnums() {
- for (ReservedPropertyKeys key : ChampRelationship.ReservedPropertyKeys.values()) {
- assertTrue(ChampRelationship.ReservedPropertyKeys.valueOf(key.name()) == key);
- }
-
- for (ReservedTypes type : ChampRelationship.ReservedTypes.values()) {
- assertTrue(ChampRelationship.ReservedTypes.valueOf(type.name()) == type);
- }
- }
-}