Merge 'origin/casablanca' into master
[so.git] / bpmn / MSOCommonBPMN / src / test / java / org / onap / so / bpmn / common / resource / ResourceRequestBuilderTest.java
1 /*-
2  * ============LICENSE_START=======================================================
3  * ONAP - SO
4  * ================================================================================
5  * Copyright (C) 2018 Huawei 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.so.bpmn.common.resource;
21
22 import static org.junit.Assert.assertEquals;
23 import static org.mockito.ArgumentMatchers.eq;
24 import static org.mockito.Mockito.mock;
25 import static org.mockito.Mockito.when;
26
27 import java.util.HashMap;
28 import java.util.List;
29 import java.util.Map;
30
31 import org.junit.Rule;
32 import org.junit.Test;
33 import org.mockito.Mock;
34 import org.onap.so.BaseTest;
35 import org.onap.so.bpmn.core.UrnPropertiesReader;
36 import org.springframework.core.env.Environment;
37
38 import static com.github.tomakehurst.wiremock.client.WireMock.*;
39
40
41 public class ResourceRequestBuilderTest extends BaseTest {
42
43     @Test
44     public void getResourceInputTest() throws Exception {
45
46
47
48         stubFor(get(urlEqualTo("/ecomp/mso/catalog/v2/serviceResources?serviceModelUuid=c3954379-4efe-431c-8258-f84905b158e5"))
49                 .willReturn(ok("{ \"serviceResources\"    : {\n" +
50                         "\t\"modelInfo\"       : {\n" +
51                         "\t\t\"modelName\"          : \"demoVFWCL\",\n" +
52                         "\t\t\"modelUuid\"          : \"c3954379-4efe-431c-8258-f84905b158e5\",\n" +
53                         "\t\t\"modelInvariantUuid\" : \"0cbff61e-3b0a-4eed-97ce-b1b4faa03493\",\n" +
54                         "\t\t\"modelVersion\"       : \"1.0\"\n" +
55                         "\t},\n" +
56                         "\t\"serviceType\"        : \"\",\n" +
57                         "\t\"serviceRole\"        : \"\",\n" +
58                         "\t\"environmentContext\" : null,\n" +
59                         "\t\"resourceOrder\"       : \"res1,res2\",\n" +
60                         "\t\"workloadContext\"    : \"Production\",\n" +
61                         "\t\"serviceVnfs\": [\n" +
62                         "\t\n" +
63                         "\t\t{ \"modelInfo\"                    : {\n" +
64                         "\t\t\t\"modelName\"              : \"15968a6e-2fe5-41bf-a481\",\n" +
65                         "\t\t\t\"modelUuid\"              : \"808abda3-2023-4105-92d2-e62644b61d53\",\n" +
66                         "\t\t\t\"modelInvariantUuid\"     : \"6e4ffc7c-497e-4a77-970d-af966e642d31\",\n" +
67                         "\t\t\t\"modelVersion\"           : \"1.0\",\n" +
68                         "\t\t\t\"modelCustomizationUuid\" : \"a00404d5-d7eb-4c46-b6b6-9cf2d087e545\",\n" +
69                         "\t\t\t\"modelInstanceName\"      : \"15968a6e-2fe5-41bf-a481 0\"\n" +
70                         "\t\t\t},\n" +
71                         "\t\t\"toscaNodeType\"            : \"org.openecomp.resource.vf.15968a6e2fe541bfA481\",\n" +
72                         "\t\t\"nfFunction\"           \t: null,\n" +
73                         "\"resourceInput\":\"{\\\"a\\\":\\\"b\\\"}\"," +
74                         "\t\t\"nfType\"              \t\t: null,\n" +
75                         "\t\t\"nfRole\"              \t\t: null,\n" +
76                         "\t\t\"nfNamingCode\"         \t: null,\n" +
77                         "\t\t\"multiStageDesign\"         : \"false\",\n" +
78                         "\t\t\t\"vfModules\": [\n" +
79                         "\t\t\t\t{\n" +
80                         "\t\t\t\t\t\"modelInfo\"               : { \n" +
81                         "\t\t\t\t\t\t\"modelName\"              : \"15968a6e2fe541bfA481..base_vfw..module-0\",\n" +
82                         "\t\t\t\t\t\t\"modelUuid\"              : \"ec7fadde-1e5a-42f7-8255-cb19e475ff45\",\n" +
83                         "\t\t\t\t\t\t\"modelInvariantUuid\"     : \"61ab8b64-a014-4cf3-8a5a-b5ef388f8819\",\n" +
84                         "\t\t\t\t\t\t\"modelVersion\"           : \"1\",\n" +
85                         "\t\t\t\t\t\t\"modelCustomizationUuid\" : \"123aff6b-854f-4026-ae1e-cc74a3924576\"\n" +
86                         "\t\t\t\t\t},\t\t\"isBase\"                 : true,\n" +
87                         "\t\t\t\t\t\"vfModuleLabel\"          : \"base_vfw\",\n" +
88                         "\t\t\t\t\t\"initialCount\"           : 1,\n" +
89                         "\t\t\t\t\t\"hasVolumeGroup\"           : true\n" +
90                         "\t\t\t\t}\n" +
91                         "\t\t\t]\n" +
92                         "\t\t},\n" +
93                         "\t\n" +
94                         "\t\t{ \"modelInfo\"                    : {\n" +
95                         "\t\t\t\"modelName\"              : \"f971106a-248f-4202-9d1f\",\n" +
96                         "\t\t\t\"modelUuid\"              : \"4fbc08a4-35ed-4a59-9e47-79975e4add7e\",\n" +
97                         "\t\t\t\"modelInvariantUuid\"     : \"c669799e-adf1-46ae-8c70-48b326fe89f3\",\n" +
98                         "\t\t\t\"modelVersion\"           : \"1.0\",\n" +
99                         "\t\t\t\"modelCustomizationUuid\" : \"e776449e-2b10-45c5-9217-2775c88ca1a0\",\n" +
100                         "\t\t\t\"modelInstanceName\"      : \"f971106a-248f-4202-9d1f 0\"\n" +
101                         "\t\t\t},\n" +
102                         "\t\t\"toscaNodeType\"            : \"org.openecomp.resource.vf.F971106a248f42029d1f\",\n" +
103                         "\t\t\"nfFunction\"           \t: null,\n" +
104                         "\t\t\"nfType\"              \t\t: null,\n" +
105                         "\t\t\"nfRole\"              \t\t: null,\n" +
106                         "\"resourceInput\":\"{\\\"a\\\":\\\"key|default_value\\\"}\"," +
107                         "\t\t\"nfNamingCode\"         \t: null,\n" +
108                         "\t\t\"multiStageDesign\"         : \"false\",\n" +
109                         "\t\t\t\"vfModules\": [\n" +
110                         "\t\t\t\t{\n" +
111                         "\t\t\t\t\t\"modelInfo\"               : { \n" +
112                         "\t\t\t\t\t\t\"modelName\"              : \"F971106a248f42029d1f..base_vpkg..module-0\",\n" +
113                         "\t\t\t\t\t\t\"modelUuid\"              : \"47d5273a-7456-4786-9035-b3911944cc35\",\n" +
114                         "\t\t\t\t\t\t\"modelInvariantUuid\"     : \"0ea3e57e-ac7a-425a-928b-b4aee8806c15\",\n" +
115                         "\t\t\t\t\t\t\"modelVersion\"           : \"1\",\n" +
116                         "\t\t\t\t\t\t\"modelCustomizationUuid\" : \"9ed9fef6-d3f8-4433-9807-7e23393a16bc\"\n" +
117                         "\t\t\t\t\t},\t\t\"isBase\"                 : true,\n" +
118                         "\t\t\t\t\t\"vfModuleLabel\"          : \"base_vpkg\",\n" +
119                         "\t\t\t\t\t\"initialCount\"           : 1,\n" +
120                         "\t\t\t\t\t\"hasVolumeGroup\"           : true\n" +
121                         "\t\t\t\t}\n" +
122                         "\t\t\t]\n" +
123                         "\t\t}\n" +
124                         "\t],\n" +
125                         "\t\"serviceNetworks\": [],\n" +
126                         "\t\"serviceAllottedResources\": []\n" +
127                         "\t}}")));
128
129 //        when(UrnPropertiesReader.getVariable(anyString())).thenReturn("http://localhost:8080");
130         HashMap serviceInput = new HashMap();
131         serviceInput.put("key", "value");
132         Map<String, Object> stringObjectMap = ResourceRequestBuilder.buildResouceRequest("c3954379-4efe-431c-8258-f84905b158e5",
133                 "e776449e-2b10-45c5-9217-2775c88ca1a0", serviceInput);
134         assertEquals(stringObjectMap.get("a"), "value");
135     }
136
137     @Test
138     public void getResourceInputDefaultValueTest() throws Exception {
139
140         stubFor(get(urlEqualTo("/ecomp/mso/catalog/v2/serviceResources?serviceModelUuid=c3954379-4efe-431c-8258-f84905b158e5"))
141                 .willReturn(ok("{ \"serviceResources\"    : {\n" +
142                         "\t\"modelInfo\"       : {\n" +
143                         "\t\t\"modelName\"          : \"demoVFWCL\",\n" +
144                         "\t\t\"modelUuid\"          : \"c3954379-4efe-431c-8258-f84905b158e5\",\n" +
145                         "\t\t\"modelInvariantUuid\" : \"0cbff61e-3b0a-4eed-97ce-b1b4faa03493\",\n" +
146                         "\t\t\"modelVersion\"       : \"1.0\"\n" +
147                         "\t},\n" +
148                         "\t\"serviceType\"        : \"\",\n" +
149                         "\t\"serviceRole\"        : \"\",\n" +
150                         "\t\"environmentContext\" : null,\n" +
151                         "\t\"workloadContext\"    : \"Production\",\n" +
152                         "\t\"serviceVnfs\": [\n" +
153                         "\t\n" +
154                         "\t\t{ \"modelInfo\"                    : {\n" +
155                         "\t\t\t\"modelName\"              : \"15968a6e-2fe5-41bf-a481\",\n" +
156                         "\t\t\t\"modelUuid\"              : \"808abda3-2023-4105-92d2-e62644b61d53\",\n" +
157                         "\t\t\t\"modelInvariantUuid\"     : \"6e4ffc7c-497e-4a77-970d-af966e642d31\",\n" +
158                         "\t\t\t\"modelVersion\"           : \"1.0\",\n" +
159                         "\t\t\t\"modelCustomizationUuid\" : \"a00404d5-d7eb-4c46-b6b6-9cf2d087e545\",\n" +
160                         "\t\t\t\"modelInstanceName\"      : \"15968a6e-2fe5-41bf-a481 0\"\n" +
161                         "\t\t\t},\n" +
162                         "\t\t\"toscaNodeType\"            : \"org.openecomp.resource.vf.15968a6e2fe541bfA481\",\n" +
163                         "\t\t\"nfFunction\"           \t: null,\n" +
164                         "\"resourceInput\":\"{\\\"a\\\":\\\"b\\\"}\"," +
165                         "\t\t\"nfType\"              \t\t: null,\n" +
166                         "\t\t\"nfRole\"              \t\t: null,\n" +
167                         "\t\t\"nfNamingCode\"         \t: null,\n" +
168                         "\t\t\"multiStageDesign\"         : \"false\",\n" +
169                         "\t\t\t\"vfModules\": [\n" +
170                         "\t\t\t\t{\n" +
171                         "\t\t\t\t\t\"modelInfo\"               : { \n" +
172                         "\t\t\t\t\t\t\"modelName\"              : \"15968a6e2fe541bfA481..base_vfw..module-0\",\n" +
173                         "\t\t\t\t\t\t\"modelUuid\"              : \"ec7fadde-1e5a-42f7-8255-cb19e475ff45\",\n" +
174                         "\t\t\t\t\t\t\"modelInvariantUuid\"     : \"61ab8b64-a014-4cf3-8a5a-b5ef388f8819\",\n" +
175                         "\t\t\t\t\t\t\"modelVersion\"           : \"1\",\n" +
176                         "\t\t\t\t\t\t\"modelCustomizationUuid\" : \"123aff6b-854f-4026-ae1e-cc74a3924576\"\n" +
177                         "\t\t\t\t\t},\t\t\"isBase\"                 : true,\n" +
178                         "\t\t\t\t\t\"vfModuleLabel\"          : \"base_vfw\",\n" +
179                         "\t\t\t\t\t\"initialCount\"           : 1,\n" +
180                         "\t\t\t\t\t\"hasVolumeGroup\"           : true\n" +
181                         "\t\t\t\t}\n" +
182                         "\t\t\t]\n" +
183                         "\t\t},\n" +
184                         "\t\n" +
185                         "\t\t{ \"modelInfo\"                    : {\n" +
186                         "\t\t\t\"modelName\"              : \"f971106a-248f-4202-9d1f\",\n" +
187                         "\t\t\t\"modelUuid\"              : \"4fbc08a4-35ed-4a59-9e47-79975e4add7e\",\n" +
188                         "\t\t\t\"modelInvariantUuid\"     : \"c669799e-adf1-46ae-8c70-48b326fe89f3\",\n" +
189                         "\t\t\t\"modelVersion\"           : \"1.0\",\n" +
190                         "\t\t\t\"modelCustomizationUuid\" : \"e776449e-2b10-45c5-9217-2775c88ca1a0\",\n" +
191                         "\t\t\t\"modelInstanceName\"      : \"f971106a-248f-4202-9d1f 0\"\n" +
192                         "\t\t\t},\n" +
193                         "\t\t\"toscaNodeType\"            : \"org.openecomp.resource.vf.F971106a248f42029d1f\",\n" +
194                         "\t\t\"nfFunction\"           \t: null,\n" +
195                         "\t\t\"nfType\"              \t\t: null,\n" +
196                         "\t\t\"nfRole\"              \t\t: null,\n" +
197                         "\"resourceInput\":\"{\\\"a\\\":\\\"key|default_value\\\"}\"," +
198                         "\t\t\"nfNamingCode\"         \t: null,\n" +
199                         "\t\t\"multiStageDesign\"         : \"false\",\n" +
200                         "\t\t\t\"vfModules\": [\n" +
201                         "\t\t\t\t{\n" +
202                         "\t\t\t\t\t\"modelInfo\"               : { \n" +
203                         "\t\t\t\t\t\t\"modelName\"              : \"F971106a248f42029d1f..base_vpkg..module-0\",\n" +
204                         "\t\t\t\t\t\t\"modelUuid\"              : \"47d5273a-7456-4786-9035-b3911944cc35\",\n" +
205                         "\t\t\t\t\t\t\"modelInvariantUuid\"     : \"0ea3e57e-ac7a-425a-928b-b4aee8806c15\",\n" +
206                         "\t\t\t\t\t\t\"modelVersion\"           : \"1\",\n" +
207                         "\t\t\t\t\t\t\"modelCustomizationUuid\" : \"9ed9fef6-d3f8-4433-9807-7e23393a16bc\"\n" +
208                         "\t\t\t\t\t},\t\t\"isBase\"                 : true,\n" +
209                         "\t\t\t\t\t\"vfModuleLabel\"          : \"base_vpkg\",\n" +
210                         "\t\t\t\t\t\"initialCount\"           : 1,\n" +
211                         "\t\t\t\t\t\"hasVolumeGroup\"           : true\n" +
212                         "\t\t\t\t}\n" +
213                         "\t\t\t]\n" +
214                         "\t\t}\n" +
215                         "\t],\n" +
216                         "\t\"serviceNetworks\": [],\n" +
217                         "\t\"serviceAllottedResources\": []\n" +
218                         "\t}}")));
219
220 //        when(UrnPropertiesReader.getVariable(anyString())).thenReturn("http://localhost:8080");
221         HashMap serviceInput = new HashMap();
222         serviceInput.put("key1", "value");
223         Map<String, Object> stringObjectMap = ResourceRequestBuilder.buildResouceRequest("c3954379-4efe-431c-8258-f84905b158e5",
224                 "e776449e-2b10-45c5-9217-2775c88ca1a0", serviceInput);
225         assertEquals(stringObjectMap.get("a"), "default_value");
226     }
227
228     @Test
229     public void getResourceInputValueNoDefaultTest() throws Exception {
230
231         stubFor(get(urlEqualTo("/ecomp/mso/catalog/v2/serviceResources?serviceModelUuid=c3954379-4efe-431c-8258-f84905b158e5"))
232                 .willReturn(ok("{ \"serviceResources\"    : {\n" +
233                         "\t\"modelInfo\"       : {\n" +
234                         "\t\t\"modelName\"          : \"demoVFWCL\",\n" +
235                         "\t\t\"modelUuid\"          : \"c3954379-4efe-431c-8258-f84905b158e5\",\n" +
236                         "\t\t\"modelInvariantUuid\" : \"0cbff61e-3b0a-4eed-97ce-b1b4faa03493\",\n" +
237                         "\t\t\"modelVersion\"       : \"1.0\"\n" +
238                         "\t},\n" +
239                         "\t\"serviceType\"        : \"\",\n" +
240                         "\t\"serviceRole\"        : \"\",\n" +
241                         "\t\"environmentContext\" : null,\n" +
242                         "\t\"workloadContext\"    : \"Production\",\n" +
243                         "\t\"serviceVnfs\": [\n" +
244                         "\t\n" +
245                         "\t\t{ \"modelInfo\"                    : {\n" +
246                         "\t\t\t\"modelName\"              : \"15968a6e-2fe5-41bf-a481\",\n" +
247                         "\t\t\t\"modelUuid\"              : \"808abda3-2023-4105-92d2-e62644b61d53\",\n" +
248                         "\t\t\t\"modelInvariantUuid\"     : \"6e4ffc7c-497e-4a77-970d-af966e642d31\",\n" +
249                         "\t\t\t\"modelVersion\"           : \"1.0\",\n" +
250                         "\t\t\t\"modelCustomizationUuid\" : \"a00404d5-d7eb-4c46-b6b6-9cf2d087e545\",\n" +
251                         "\t\t\t\"modelInstanceName\"      : \"15968a6e-2fe5-41bf-a481 0\"\n" +
252                         "\t\t\t},\n" +
253                         "\t\t\"toscaNodeType\"            : \"org.openecomp.resource.vf.15968a6e2fe541bfA481\",\n" +
254                         "\t\t\"nfFunction\"           \t: null,\n" +
255                         "\"resourceInput\":\"{\\\"a\\\":\\\"b\\\"}\"," +
256                         "\t\t\"nfType\"              \t\t: null,\n" +
257                         "\t\t\"nfRole\"              \t\t: null,\n" +
258                         "\t\t\"nfNamingCode\"         \t: null,\n" +
259                         "\t\t\"multiStageDesign\"         : \"false\",\n" +
260                         "\t\t\t\"vfModules\": [\n" +
261                         "\t\t\t\t{\n" +
262                         "\t\t\t\t\t\"modelInfo\"               : { \n" +
263                         "\t\t\t\t\t\t\"modelName\"              : \"15968a6e2fe541bfA481..base_vfw..module-0\",\n" +
264                         "\t\t\t\t\t\t\"modelUuid\"              : \"ec7fadde-1e5a-42f7-8255-cb19e475ff45\",\n" +
265                         "\t\t\t\t\t\t\"modelInvariantUuid\"     : \"61ab8b64-a014-4cf3-8a5a-b5ef388f8819\",\n" +
266                         "\t\t\t\t\t\t\"modelVersion\"           : \"1\",\n" +
267                         "\t\t\t\t\t\t\"modelCustomizationUuid\" : \"123aff6b-854f-4026-ae1e-cc74a3924576\"\n" +
268                         "\t\t\t\t\t},\t\t\"isBase\"                 : true,\n" +
269                         "\t\t\t\t\t\"vfModuleLabel\"          : \"base_vfw\",\n" +
270                         "\t\t\t\t\t\"initialCount\"           : 1,\n" +
271                         "\t\t\t\t\t\"hasVolumeGroup\"           : true\n" +
272                         "\t\t\t\t}\n" +
273                         "\t\t\t]\n" +
274                         "\t\t},\n" +
275                         "\t\n" +
276                         "\t\t{ \"modelInfo\"                    : {\n" +
277                         "\t\t\t\"modelName\"              : \"f971106a-248f-4202-9d1f\",\n" +
278                         "\t\t\t\"modelUuid\"              : \"4fbc08a4-35ed-4a59-9e47-79975e4add7e\",\n" +
279                         "\t\t\t\"modelInvariantUuid\"     : \"c669799e-adf1-46ae-8c70-48b326fe89f3\",\n" +
280                         "\t\t\t\"modelVersion\"           : \"1.0\",\n" +
281                         "\t\t\t\"modelCustomizationUuid\" : \"e776449e-2b10-45c5-9217-2775c88ca1a0\",\n" +
282                         "\t\t\t\"modelInstanceName\"      : \"f971106a-248f-4202-9d1f 0\"\n" +
283                         "\t\t\t},\n" +
284                         "\t\t\"toscaNodeType\"            : \"org.openecomp.resource.vf.F971106a248f42029d1f\",\n" +
285                         "\t\t\"nfFunction\"           \t: null,\n" +
286                         "\t\t\"nfType\"              \t\t: null,\n" +
287                         "\t\t\"nfRole\"              \t\t: null,\n" +
288                         "\"resourceInput\":\"{\\\"a\\\":\\\"value\\\"}\"," +
289                         "\t\t\"nfNamingCode\"         \t: null,\n" +
290                         "\t\t\"multiStageDesign\"         : \"false\",\n" +
291                         "\t\t\t\"vfModules\": [\n" +
292                         "\t\t\t\t{\n" +
293                         "\t\t\t\t\t\"modelInfo\"               : { \n" +
294                         "\t\t\t\t\t\t\"modelName\"              : \"F971106a248f42029d1f..base_vpkg..module-0\",\n" +
295                         "\t\t\t\t\t\t\"modelUuid\"              : \"47d5273a-7456-4786-9035-b3911944cc35\",\n" +
296                         "\t\t\t\t\t\t\"modelInvariantUuid\"     : \"0ea3e57e-ac7a-425a-928b-b4aee8806c15\",\n" +
297                         "\t\t\t\t\t\t\"modelVersion\"           : \"1\",\n" +
298                         "\t\t\t\t\t\t\"modelCustomizationUuid\" : \"9ed9fef6-d3f8-4433-9807-7e23393a16bc\"\n" +
299                         "\t\t\t\t\t},\t\t\"isBase\"                 : true,\n" +
300                         "\t\t\t\t\t\"vfModuleLabel\"          : \"base_vpkg\",\n" +
301                         "\t\t\t\t\t\"initialCount\"           : 1,\n" +
302                         "\t\t\t\t\t\"hasVolumeGroup\"           : true\n" +
303                         "\t\t\t\t}\n" +
304                         "\t\t\t]\n" +
305                         "\t\t}\n" +
306                         "\t],\n" +
307                         "\t\"serviceNetworks\": [],\n" +
308                         "\t\"serviceAllottedResources\": []\n" +
309                         "\t}}")));
310
311 //        when(UrnPropertiesReader.getVariable(anyString())).thenReturn("http://localhost:8080");
312         HashMap serviceInput = new HashMap();
313         serviceInput.put("key1", "value");
314         Map<String, Object> stringObjectMap = ResourceRequestBuilder.buildResouceRequest("c3954379-4efe-431c-8258-f84905b158e5",
315                 "e776449e-2b10-45c5-9217-2775c88ca1a0", serviceInput);
316         assertEquals(stringObjectMap.get("a"), "value");
317     }
318
319     @Test
320     public void getResourceSequenceTest() throws Exception {
321
322         stubFor(get(urlEqualTo("/ecomp/mso/catalog/v2/serviceResources?serviceModelUuid=c3954379-4efe-431c-8258-f84905b158e5"))
323                 .willReturn(ok("{ \"serviceResources\"    : {\n" +
324                         "\t\"modelInfo\"       : {\n" +
325                         "\t\t\"modelName\"          : \"demoVFWCL\",\n" +
326                         "\t\t\"modelUuid\"          : \"c3954379-4efe-431c-8258-f84905b158e5\",\n" +
327                         "\t\t\"modelInvariantUuid\" : \"0cbff61e-3b0a-4eed-97ce-b1b4faa03493\",\n" +
328                         "\t\t\"modelVersion\"       : \"1.0\"\n" +
329                         "\t},\n" +
330                         "\t\"serviceType\"        : \"\",\n" +
331                         "\t\"serviceRole\"        : \"\",\n" +
332                         "\t\"environmentContext\" : null,\n" +
333                         "\t\"resourceOrder\"       : \"res1,res2\",\n" +
334                         "\t\"workloadContext\"    : \"Production\",\n" +
335                         "\t\"serviceVnfs\": [\n" +
336                         "\t\n" +
337                         "\t\t{ \"modelInfo\"                    : {\n" +
338                         "\t\t\t\"modelName\"              : \"15968a6e-2fe5-41bf-a481\",\n" +
339                         "\t\t\t\"modelUuid\"              : \"808abda3-2023-4105-92d2-e62644b61d53\",\n" +
340                         "\t\t\t\"modelInvariantUuid\"     : \"6e4ffc7c-497e-4a77-970d-af966e642d31\",\n" +
341                         "\t\t\t\"modelVersion\"           : \"1.0\",\n" +
342                         "\t\t\t\"modelCustomizationUuid\" : \"a00404d5-d7eb-4c46-b6b6-9cf2d087e545\",\n" +
343                         "\t\t\t\"modelInstanceName\"      : \"15968a6e-2fe5-41bf-a481 0\"\n" +
344                         "\t\t\t},\n" +
345                         "\t\t\"toscaNodeType\"            : \"org.openecomp.resource.vf.15968a6e2fe541bfA481\",\n" +
346                         "\t\t\"nfFunction\"           \t: null,\n" +
347                         "\"resourceInput\":\"{\\\"a\\\":\\\"b\\\"}\"," +
348                         "\t\t\"nfType\"              \t\t: null,\n" +
349                         "\t\t\"nfRole\"              \t\t: null,\n" +
350                         "\t\t\"nfNamingCode\"         \t: null,\n" +
351                         "\t\t\"multiStageDesign\"         : \"false\",\n" +
352                         "\t\t\t\"vfModules\": [\n" +
353                         "\t\t\t\t{\n" +
354                         "\t\t\t\t\t\"modelInfo\"               : { \n" +
355                         "\t\t\t\t\t\t\"modelName\"              : \"15968a6e2fe541bfA481..base_vfw..module-0\",\n" +
356                         "\t\t\t\t\t\t\"modelUuid\"              : \"ec7fadde-1e5a-42f7-8255-cb19e475ff45\",\n" +
357                         "\t\t\t\t\t\t\"modelInvariantUuid\"     : \"61ab8b64-a014-4cf3-8a5a-b5ef388f8819\",\n" +
358                         "\t\t\t\t\t\t\"modelVersion\"           : \"1\",\n" +
359                         "\t\t\t\t\t\t\"modelCustomizationUuid\" : \"123aff6b-854f-4026-ae1e-cc74a3924576\"\n" +
360                         "\t\t\t\t\t},\t\t\"isBase\"                 : true,\n" +
361                         "\t\t\t\t\t\"vfModuleLabel\"          : \"base_vfw\",\n" +
362                         "\t\t\t\t\t\"initialCount\"           : 1,\n" +
363                         "\t\t\t\t\t\"hasVolumeGroup\"           : true\n" +
364                         "\t\t\t\t}\n" +
365                         "\t\t\t]\n" +
366                         "\t\t},\n" +
367                         "\t\n" +
368                         "\t\t{ \"modelInfo\"                    : {\n" +
369                         "\t\t\t\"modelName\"              : \"f971106a-248f-4202-9d1f\",\n" +
370                         "\t\t\t\"modelUuid\"              : \"4fbc08a4-35ed-4a59-9e47-79975e4add7e\",\n" +
371                         "\t\t\t\"modelInvariantUuid\"     : \"c669799e-adf1-46ae-8c70-48b326fe89f3\",\n" +
372                         "\t\t\t\"modelVersion\"           : \"1.0\",\n" +
373                         "\t\t\t\"modelCustomizationUuid\" : \"e776449e-2b10-45c5-9217-2775c88ca1a0\",\n" +
374                         "\t\t\t\"modelInstanceName\"      : \"f971106a-248f-4202-9d1f 0\"\n" +
375                         "\t\t\t},\n" +
376                         "\t\t\"toscaNodeType\"            : \"org.openecomp.resource.vf.F971106a248f42029d1f\",\n" +
377                         "\t\t\"nfFunction\"           \t: null,\n" +
378                         "\t\t\"nfType\"              \t\t: null,\n" +
379                         "\t\t\"nfRole\"              \t\t: null,\n" +
380                         "\"resourceInput\":\"{\\\"a\\\":\\\"key|default_value\\\"}\"," +
381                         "\t\t\"nfNamingCode\"         \t: null,\n" +
382                         "\t\t\"multiStageDesign\"         : \"false\",\n" +
383                         "\t\t\t\"vfModules\": [\n" +
384                         "\t\t\t\t{\n" +
385                         "\t\t\t\t\t\"modelInfo\"               : { \n" +
386                         "\t\t\t\t\t\t\"modelName\"              : \"F971106a248f42029d1f..base_vpkg..module-0\",\n" +
387                         "\t\t\t\t\t\t\"modelUuid\"              : \"47d5273a-7456-4786-9035-b3911944cc35\",\n" +
388                         "\t\t\t\t\t\t\"modelInvariantUuid\"     : \"0ea3e57e-ac7a-425a-928b-b4aee8806c15\",\n" +
389                         "\t\t\t\t\t\t\"modelVersion\"           : \"1\",\n" +
390                         "\t\t\t\t\t\t\"modelCustomizationUuid\" : \"9ed9fef6-d3f8-4433-9807-7e23393a16bc\"\n" +
391                         "\t\t\t\t\t},\t\t\"isBase\"                 : true,\n" +
392                         "\t\t\t\t\t\"vfModuleLabel\"          : \"base_vpkg\",\n" +
393                         "\t\t\t\t\t\"initialCount\"           : 1,\n" +
394                         "\t\t\t\t\t\"hasVolumeGroup\"           : true\n" +
395                         "\t\t\t\t}\n" +
396                         "\t\t\t]\n" +
397                         "\t\t}\n" +
398                         "\t],\n" +
399                         "\t\"serviceNetworks\": [],\n" +
400                         "\t\"serviceAllottedResources\": []\n" +
401                         "\t}}")));
402
403         List<String> resourceSequence = ResourceRequestBuilder.getResourceSequence("c3954379-4efe-431c-8258-f84905b158e5");
404         assertEquals(resourceSequence.size(), 2);
405         assertEquals(resourceSequence.get(0), "res1");
406         assertEquals(resourceSequence.get(1), "res2");
407     }
408 }