2 * ============LICENSE_START=======================================================
4 * ================================================================================
5 * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
6 * ================================================================================
7 * Licensed under the Apache License, Version 2.0 (the "License");
8 * you may not use this file except in compliance with the License.
9 * You may obtain a copy of the License at
11 * http://www.apache.org/licenses/LICENSE-2.0
13 * Unless required by applicable law or agreed to in writing, software
14 * distributed under the License is distributed on an "AS IS" BASIS,
15 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16 * See the License for the specific language governing permissions and
17 * limitations under the License.
18 * ============LICENSE_END=========================================================
21 package org.openecomp.aai.serialization.db;
23 import static org.junit.Assert.assertEquals;
27 import org.apache.tinkerpop.gremlin.structure.Direction;
28 import org.junit.Test;
30 import org.openecomp.aai.exceptions.AAIException;
31 import org.openecomp.aai.serialization.db.exceptions.NoEdgeRuleFoundException;
33 public class EdgeRulesTest {
39 public void verifyOutDirection() throws AAIException, NoEdgeRuleFoundException {
40 EdgeRules rules = EdgeRules.getInstance();
41 EdgeRule rule = rules.getEdgeRule(EdgeType.TREE, "cloud-region", "flavor");
43 assertEquals("out direction", rule.getDirection(), Direction.OUT);
47 public void verifyOutFlippedDirection() throws AAIException, NoEdgeRuleFoundException {
48 EdgeRules rules = EdgeRules.getInstance();
49 EdgeRule rule = rules.getEdgeRule(EdgeType.TREE, "flavor", "cloud-region");
51 assertEquals("in direction", rule.getDirection(), Direction.IN);
55 public void verifyInDirection() throws AAIException, NoEdgeRuleFoundException {
56 EdgeRules rules = EdgeRules.getInstance();
57 EdgeRule rule = rules.getEdgeRule(EdgeType.COUSIN, "model-ver", "model-element");
59 assertEquals("in direction", rule.getDirection(), Direction.IN);
63 public void verifyInFlippedDirection() throws AAIException, NoEdgeRuleFoundException {
64 EdgeRules rules = EdgeRules.getInstance();
65 EdgeRule rule = rules.getEdgeRule(EdgeType.COUSIN, "model-element", "model-ver");
67 assertEquals("out direction", rule.getDirection(), Direction.OUT);
70 public void verifyMultipleGet() throws AAIException {
71 EdgeRules rules = EdgeRules.getInstance();
72 Map<String, EdgeRule> ruleMap = rules.getEdgeRules("model-element", "model-ver");
73 assertEquals("has isA rule", "isA", ruleMap.get("isA").getLabel());
74 assertEquals("has startsWith rule", "startsWith", ruleMap.get("startsWith").getLabel());
78 public void verifyMultipleGetSingleRule() throws AAIException {
79 EdgeRules rules = EdgeRules.getInstance();
80 Map<String, EdgeRule> ruleMap = rules.getEdgeRules("availability-zone", "complex");
81 assertEquals("has groupsResourcesIn rule", "groupsResourcesIn", ruleMap.get("groupsResourcesIn").getLabel());