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