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.BeforeClass;
29 import org.junit.Test;
31 import org.openecomp.aai.exceptions.AAIException;
32 import org.openecomp.aai.serialization.db.exceptions.NoEdgeRuleFoundException;
34 public class EdgeRulesTest {
37 public static void setup() {
38 System.setProperty("AJSC_HOME", ".");
39 System.setProperty("BUNDLECONFIG_DIR", "src/test/resources/bundleconfig-local");
44 public void verifyOutDirection() throws AAIException, NoEdgeRuleFoundException {
45 EdgeRules rules = EdgeRules.getInstance();
46 EdgeRule rule = rules.getEdgeRule(EdgeType.TREE, "cloud-region", "flavor");
48 assertEquals("out direction", rule.getDirection(), Direction.OUT);
52 public void verifyOutFlippedDirection() throws AAIException, NoEdgeRuleFoundException {
53 EdgeRules rules = EdgeRules.getInstance();
54 EdgeRule rule = rules.getEdgeRule(EdgeType.TREE, "flavor", "cloud-region");
56 assertEquals("in direction", rule.getDirection(), Direction.IN);
60 public void verifyInDirection() throws AAIException, NoEdgeRuleFoundException {
61 EdgeRules rules = EdgeRules.getInstance();
62 EdgeRule rule = rules.getEdgeRule(EdgeType.COUSIN, "model-ver", "model-element");
64 assertEquals("in direction", rule.getDirection(), Direction.IN);
68 public void verifyInFlippedDirection() throws AAIException, NoEdgeRuleFoundException {
69 EdgeRules rules = EdgeRules.getInstance();
70 EdgeRule rule = rules.getEdgeRule(EdgeType.COUSIN, "model-element", "model-ver");
72 assertEquals("out direction", rule.getDirection(), Direction.OUT);
75 public void verifyMultipleGet() throws AAIException {
76 EdgeRules rules = EdgeRules.getInstance();
77 Map<String, EdgeRule> ruleMap = rules.getEdgeRules("model-element", "model-ver");
78 assertEquals("has isA rule", "isA", ruleMap.get("isA").getLabel());
79 assertEquals("has startsWith rule", "startsWith", ruleMap.get("startsWith").getLabel());
83 public void verifyMultipleGetSingleRule() throws AAIException {
84 EdgeRules rules = EdgeRules.getInstance();
85 Map<String, EdgeRule> ruleMap = rules.getEdgeRules("availability-zone", "complex");
86 assertEquals("has groupsResourcesIn rule", "groupsResourcesIn", ruleMap.get("groupsResourcesIn").getLabel());