4b1dc8036902f808383462085371c361527c8bb3
[sdc.git] /
1 package org.openecomp.sdc.be.components.path;
2
3 import java.util.Arrays;
4 import java.util.HashMap;
5 import java.util.List;
6 import java.util.Map;
7
8 import org.junit.Before;
9 import org.openecomp.sdc.be.components.merge.instance.DataForMergeHolder;
10 import org.openecomp.sdc.be.datatypes.elements.ForwardingPathDataDefinition;
11 import org.openecomp.sdc.be.datatypes.elements.ForwardingPathElementDataDefinition;
12 import org.openecomp.sdc.be.datatypes.elements.ListDataDefinition;
13 import org.openecomp.sdc.be.impl.ForwardingPathUtils;
14 import org.openecomp.sdc.be.model.CapabilityDefinition;
15 import org.openecomp.sdc.be.model.Component;
16 import org.openecomp.sdc.be.model.ComponentInstance;
17 import org.openecomp.sdc.be.model.Resource;
18 import org.openecomp.sdc.be.model.Service;
19
20 import com.google.common.collect.Lists;
21
22 public abstract class BaseForwardingPathVersionChangeTest {
23     protected Service service;
24     protected ComponentInstance nodeACI;
25     protected ComponentInstance newNodeACI;
26     protected Component newNodeAC;
27     protected Component newNodeWithoutCapability;
28     protected DataForMergeHolder dataHolder;
29     protected static final String nodeA = "nodeA";
30     protected static final String NODE_A_FORWARDER_CAPABILITY = "nodeA_FORWARDER_CAPABILITY";
31     protected static final String nodeB = "nodeB";
32     protected static final String newNodeA = "newNodeA";
33     protected static final String fpName = "fpName";
34     protected static final String FPId = "1122";
35
36
37     @Before
38     public void initService() {
39         service = new Service();
40         ForwardingPathDataDefinition forwardingPath = new ForwardingPathDataDefinition(fpName);
41         String protocol = "protocol";
42         forwardingPath.setProtocol(protocol);
43         forwardingPath.setDestinationPortNumber("DestinationPortNumber");
44         ListDataDefinition<ForwardingPathElementDataDefinition> forwardingPathElementListDataDefinition
45             = new ListDataDefinition<>();
46
47         forwardingPathElementListDataDefinition.add(
48             new ForwardingPathElementDataDefinition(nodeA, nodeB, NODE_A_FORWARDER_CAPABILITY, "nodeBcpType" , "nodeDcpName",
49                 "nodeBcpName"));
50         forwardingPath.setPathElements(forwardingPathElementListDataDefinition);
51         Map<String, ForwardingPathDataDefinition> forwardingPaths = new HashMap<>();
52         forwardingPaths.put(FPId, forwardingPath);
53         service.setForwardingPaths(forwardingPaths);
54         nodeACI = new ComponentInstance();
55         initComponentInstance(nodeACI, nodeA);
56         newNodeACI = new ComponentInstance();
57         initComponentInstance(newNodeACI, newNodeA);
58         newNodeAC = new Resource();
59         newNodeWithoutCapability=new Resource();
60         initComponent(newNodeAC, newNodeA);
61         service.setComponentInstances(Lists.newArrayList(newNodeACI));
62         initComponentWithoutForwarder(newNodeWithoutCapability,"newNodeC");
63         service.setComponentInstances(Lists.newArrayList(nodeACI));
64
65         dataHolder = new DataForMergeHolder();
66         dataHolder.setOrigComponentInstId(nodeA);
67     }
68
69     private void initComponent(Component component, String uniqueId) {
70         component.setUniqueId(uniqueId);
71         HashMap<String, List<CapabilityDefinition>> capabilities = initCapabilites();
72         component.setCapabilities(capabilities);
73     }
74
75     private void initComponentWithoutForwarder(Component component, String uniqueId) {
76         component.setUniqueId(uniqueId);
77         HashMap<String, List<CapabilityDefinition>> capabilities = initCapabilitesWithoutForwarder();
78         component.setCapabilities(capabilities);
79     }
80
81     private HashMap<String, List<CapabilityDefinition>> initCapabilites() {
82         HashMap<String, List<CapabilityDefinition>> capabilities = new HashMap<>();
83         CapabilityDefinition forwarder = new CapabilityDefinition();
84         forwarder.setType(ForwardingPathUtils.FORWARDER_CAPABILITY);
85         forwarder.setUniqueId(NODE_A_FORWARDER_CAPABILITY);
86         capabilities.put("bla bla", Arrays.asList(forwarder));
87         return capabilities;
88     }
89
90     private HashMap<String, List<CapabilityDefinition>> initCapabilitesWithoutForwarder() {
91         HashMap<String, List<CapabilityDefinition>> capabilities = new HashMap<>();
92         CapabilityDefinition capabilityDefinition = new CapabilityDefinition();
93         capabilityDefinition.setType("tosca.capabilities.Node");
94         capabilityDefinition.setUniqueId("tosca capability");
95         capabilities.put("bla bla", Arrays.asList(capabilityDefinition));
96         return capabilities;
97     }
98
99     private void initComponentInstance(ComponentInstance component, String uniqueId) {
100         component.setUniqueId(uniqueId);
101         HashMap<String, List<CapabilityDefinition>> capabilities = initCapabilites();
102         component.setCapabilities(capabilities);
103     }
104
105 }