Update the license for 2017-2018 license
[aai/traversal.git] / aai-traversal / src / test / java / org / onap / aai / rest / search / VserverFromVnfQueryTest.java
1 /**
2  * ============LICENSE_START=======================================================
3  * org.onap.aai
4  * ================================================================================
5  * Copyright © 2017-2018 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
10  *
11  *    http://www.apache.org/licenses/LICENSE-2.0
12  *
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=========================================================
19  */
20 package org.onap.aai.rest.search;
21
22 import static org.junit.Assert.*;
23
24 import java.util.Map;
25
26 import org.apache.tinkerpop.gremlin.process.traversal.dsl.graph.GraphTraversal;
27 import org.apache.tinkerpop.gremlin.process.traversal.dsl.graph.GraphTraversalSource;
28 import org.apache.tinkerpop.gremlin.structure.T;
29 import org.apache.tinkerpop.gremlin.structure.Vertex;
30 import org.junit.Test;
31 import org.onap.aai.exceptions.AAIException;
32 import org.onap.aai.serialization.db.exceptions.NoEdgeRuleFoundException;
33
34 public class VserverFromVnfQueryTest extends QueryTest {
35
36         public VserverFromVnfQueryTest() throws AAIException, NoEdgeRuleFoundException {
37                 super();
38         }
39
40         @Test
41         public void run() {
42                 super.run();
43         }
44
45         @Override
46         protected void createGraph() throws AAIException, NoEdgeRuleFoundException {
47                 Vertex gv = graph.addVertex(T.id, "00", "aai-node-type", "generic-vnf", "vnf-id", "gvId", "vnf-name", "gvName", "vnf-type", "some-type");
48                 Vertex vnfc = graph.addVertex(T.id, "10", "aai-node-type", "vnfc", 
49                                                 "vnfc-name", "vnfcName1", "nfc-naming-code", "blue", "nfc-function", "correct-function");
50                 Vertex vserv = graph.addVertex(T.id, "20", "aai-node-type", "vserver",
51                                                 "vserver-id", "vservId", "vserver-name", "vservName", "vserver-selflink", "me/self");
52                 Vertex lint = graph.addVertex(T.id, "30", "aai-node-type", "l-interface", "interface-name", "lintName");
53                 Vertex ipv4 = graph.addVertex(T.id, "40", "aai-node-type", "l3-interface-ipv4-address-list", "l3-interface-ipv4-address", "0.0.0.0");
54                 Vertex ipv6 = graph.addVertex(T.id, "50", "aai-node-type", "l3-interface-ipv6-address-list", "l3-interface-ipv6-address", "0.0.0.0");
55                 
56                 GraphTraversalSource g = graph.traversal();
57                 rules.addEdge(g, gv, vnfc);
58                 rules.addEdge(g, vserv, vnfc);
59                 rules.addTreeEdge(g, vserv, lint);
60                 rules.addTreeEdge(g, lint, ipv4);
61                 rules.addTreeEdge(g, lint, ipv6);
62                 
63                 expectedResult.add(vserv);
64                 expectedResult.add(lint);
65                 expectedResult.add(ipv4);
66                 expectedResult.add(ipv6);
67                 expectedResult.add(vnfc);
68         }
69
70         @Override
71         protected String getQueryName() {
72                 return "vserver-fromVnf";
73         }
74
75         @Override
76         protected void addStartNode(GraphTraversal<Vertex, Vertex> g) {
77                 g.has("aai-node-type", "generic-vnf").has("vnf-id", "gvId");
78         }
79
80         @Override
81         protected void addParam(Map<String, Object> params) {
82                 params.put("nfcFunction", "correct-function");
83         }
84
85         
86 }