Update api performance test jmx file
[policy/api.git] / testsuites / stability / src / main / resources / testplans / policy_api_stability.jmx
1 <?xml version="1.0" encoding="UTF-8"?>
2 <jmeterTestPlan version="1.2" properties="5.0" jmeter="5.4.1">
3   <hashTree>
4     <TestPlan guiclass="TestPlanGui" testclass="TestPlan" testname="Policy API Stability" enabled="true">
5       <stringProp name="TestPlan.comments"></stringProp>
6       <boolProp name="TestPlan.functional_mode">false</boolProp>
7       <boolProp name="TestPlan.tearDown_on_shutdown">true</boolProp>
8       <boolProp name="TestPlan.serialize_threadgroups">false</boolProp>
9       <elementProp name="TestPlan.user_defined_variables" elementType="Arguments" guiclass="ArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
10         <collectionProp name="Arguments.arguments">
11           <elementProp name="API_HOST" elementType="Argument">
12             <stringProp name="Argument.name">API_HOST</stringProp>
13             <stringProp name="Argument.value">10.12.6.14</stringProp>
14             <stringProp name="Argument.metadata">=</stringProp>
15           </elementProp>
16           <elementProp name="API_PORT" elementType="Argument">
17             <stringProp name="Argument.name">API_PORT</stringProp>
18             <stringProp name="Argument.value">32191</stringProp>
19             <stringProp name="Argument.metadata">=</stringProp>
20           </elementProp>
21         </collectionProp>
22       </elementProp>
23       <stringProp name="TestPlan.user_define_classpath"></stringProp>
24     </TestPlan>
25     <hashTree>
26       <AuthManager guiclass="AuthPanel" testclass="AuthManager" testname="HTTP Authorization Manager" enabled="true">
27         <collectionProp name="AuthManager.auth_list">
28           <elementProp name="" elementType="Authorization">
29             <stringProp name="Authorization.url">https://${API_HOST}:${API_PORT}/</stringProp>
30             <stringProp name="Authorization.username">healthcheck</stringProp>
31             <stringProp name="Authorization.password">zb!XztG34</stringProp>
32             <stringProp name="Authorization.domain"></stringProp>
33             <stringProp name="Authorization.realm"></stringProp>
34           </elementProp>
35         </collectionProp>
36         <boolProp name="AuthManager.clearEachIteration">true</boolProp>
37         <boolProp name="AuthManager.controlledByThreadGroup">false</boolProp>
38       </AuthManager>
39       <hashTree/>
40       <HeaderManager guiclass="HeaderPanel" testclass="HeaderManager" testname="HTTP Header Manager" enabled="true">
41         <collectionProp name="HeaderManager.headers">
42           <elementProp name="" elementType="Header">
43             <stringProp name="Header.name">Accept</stringProp>
44             <stringProp name="Header.value">application/json</stringProp>
45           </elementProp>
46           <elementProp name="" elementType="Header">
47             <stringProp name="Header.name">Content-Type</stringProp>
48             <stringProp name="Header.value">application/json</stringProp>
49           </elementProp>
50         </collectionProp>
51       </HeaderManager>
52       <hashTree/>
53       <SetupThreadGroup guiclass="SetupThreadGroupGui" testclass="SetupThreadGroup" testname="setUp Thread Group" enabled="true">
54         <stringProp name="ThreadGroup.on_sample_error">continue</stringProp>
55         <elementProp name="ThreadGroup.main_controller" elementType="LoopController" guiclass="LoopControlPanel" testclass="LoopController" testname="Loop Controller" enabled="true">
56           <boolProp name="LoopController.continue_forever">false</boolProp>
57           <stringProp name="LoopController.loops">1</stringProp>
58         </elementProp>
59         <stringProp name="ThreadGroup.num_threads">1</stringProp>
60         <stringProp name="ThreadGroup.ramp_time">1</stringProp>
61         <boolProp name="ThreadGroup.scheduler">false</boolProp>
62         <stringProp name="ThreadGroup.duration"></stringProp>
63         <stringProp name="ThreadGroup.delay"></stringProp>
64         <boolProp name="ThreadGroup.same_user_on_next_iteration">true</boolProp>
65       </SetupThreadGroup>
66       <hashTree>
67         <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Get Healthcheck" enabled="true">
68           <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
69             <collectionProp name="Arguments.arguments"/>
70           </elementProp>
71           <stringProp name="HTTPSampler.domain">${API_HOST}</stringProp>
72           <stringProp name="HTTPSampler.port">${API_PORT}</stringProp>
73           <stringProp name="HTTPSampler.protocol">https</stringProp>
74           <stringProp name="HTTPSampler.contentEncoding"></stringProp>
75           <stringProp name="HTTPSampler.path">/policy/api/v1/healthcheck</stringProp>
76           <stringProp name="HTTPSampler.method">GET</stringProp>
77           <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
78           <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
79           <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
80           <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
81           <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
82           <stringProp name="HTTPSampler.connect_timeout"></stringProp>
83           <stringProp name="HTTPSampler.response_timeout"></stringProp>
84         </HTTPSamplerProxy>
85         <hashTree>
86           <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Response Assertion" enabled="true">
87             <collectionProp name="Asserion.test_strings">
88               <stringProp name="49586">200</stringProp>
89             </collectionProp>
90             <stringProp name="Assertion.custom_message"></stringProp>
91             <stringProp name="Assertion.test_field">Assertion.response_code</stringProp>
92             <boolProp name="Assertion.assume_success">false</boolProp>
93             <intProp name="Assertion.test_type">1</intProp>
94           </ResponseAssertion>
95           <hashTree/>
96           <JSR223Assertion guiclass="TestBeanGUI" testclass="JSR223Assertion" testname="JSR223 Assertion" enabled="true">
97             <stringProp name="cacheKey">true</stringProp>
98             <stringProp name="filename"></stringProp>
99             <stringProp name="parameters"></stringProp>
100             <stringProp name="script">import groovy.json.JsonSlurper;
101
102 def res = [];
103 if (prev.getResponseCode() == &apos;200&apos;) {
104     def jsonSlurper = new JsonSlurper();
105     res = jsonSlurper.parseText(prev.getResponseDataAsString());
106
107     assert res instanceof Map;
108     assert res.code == 200;
109     assert res.name == &quot;Policy API&quot;;
110     assert res.healthy==true;
111     assert res.message==&quot;alive&quot;;
112 }</stringProp>
113             <stringProp name="scriptLanguage">groovy</stringProp>
114           </JSR223Assertion>
115           <hashTree/>
116         </hashTree>
117         <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Get Statistics" enabled="true">
118           <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
119             <collectionProp name="Arguments.arguments"/>
120           </elementProp>
121           <stringProp name="HTTPSampler.domain">${API_HOST}</stringProp>
122           <stringProp name="HTTPSampler.port">${API_PORT}</stringProp>
123           <stringProp name="HTTPSampler.protocol">https</stringProp>
124           <stringProp name="HTTPSampler.contentEncoding"></stringProp>
125           <stringProp name="HTTPSampler.path">/policy/api/v1/statistics</stringProp>
126           <stringProp name="HTTPSampler.method">GET</stringProp>
127           <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
128           <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
129           <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
130           <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
131           <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
132           <stringProp name="HTTPSampler.connect_timeout"></stringProp>
133           <stringProp name="HTTPSampler.response_timeout"></stringProp>
134         </HTTPSamplerProxy>
135         <hashTree>
136           <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Response Assertion" enabled="true">
137             <collectionProp name="Asserion.test_strings">
138               <stringProp name="49586">200</stringProp>
139             </collectionProp>
140             <stringProp name="Assertion.custom_message"></stringProp>
141             <stringProp name="Assertion.test_field">Assertion.response_code</stringProp>
142             <boolProp name="Assertion.assume_success">false</boolProp>
143             <intProp name="Assertion.test_type">1</intProp>
144           </ResponseAssertion>
145           <hashTree/>
146           <JSR223Assertion guiclass="TestBeanGUI" testclass="JSR223Assertion" testname="JSR223 Assertion" enabled="true">
147             <stringProp name="scriptLanguage">groovy</stringProp>
148             <stringProp name="parameters"></stringProp>
149             <stringProp name="filename"></stringProp>
150             <stringProp name="cacheKey">true</stringProp>
151             <stringProp name="script">import groovy.json.JsonSlurper;
152
153 def res = [];
154 if (prev.getResponseCode() == &apos;200&apos;) {
155     def jsonSlurper = new JsonSlurper();
156     res = jsonSlurper.parseText(prev.getResponseDataAsString());
157
158     assert res instanceof Map;
159     assert res.code == 200;
160 }</stringProp>
161           </JSR223Assertion>
162           <hashTree/>
163         </hashTree>
164         <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Get Preloaded Policy Types" enabled="true">
165           <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
166             <collectionProp name="Arguments.arguments"/>
167           </elementProp>
168           <stringProp name="HTTPSampler.domain">${API_HOST}</stringProp>
169           <stringProp name="HTTPSampler.port">${API_PORT}</stringProp>
170           <stringProp name="HTTPSampler.protocol">https</stringProp>
171           <stringProp name="HTTPSampler.contentEncoding"></stringProp>
172           <stringProp name="HTTPSampler.path">/policy/api/v1/policytypes</stringProp>
173           <stringProp name="HTTPSampler.method">GET</stringProp>
174           <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
175           <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
176           <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
177           <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
178           <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
179           <stringProp name="HTTPSampler.connect_timeout"></stringProp>
180           <stringProp name="HTTPSampler.response_timeout"></stringProp>
181         </HTTPSamplerProxy>
182         <hashTree>
183           <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Response Assertion" enabled="true">
184             <collectionProp name="Asserion.test_strings">
185               <stringProp name="49586">200</stringProp>
186             </collectionProp>
187             <stringProp name="Assertion.custom_message"></stringProp>
188             <stringProp name="Assertion.test_field">Assertion.response_code</stringProp>
189             <boolProp name="Assertion.assume_success">false</boolProp>
190             <intProp name="Assertion.test_type">1</intProp>
191           </ResponseAssertion>
192           <hashTree/>
193           <JSR223Assertion guiclass="TestBeanGUI" testclass="JSR223Assertion" testname="JSR223 Assertion" enabled="true">
194             <stringProp name="scriptLanguage">groovy</stringProp>
195             <stringProp name="parameters"></stringProp>
196             <stringProp name="filename"></stringProp>
197             <stringProp name="cacheKey">true</stringProp>
198             <stringProp name="script">import groovy.json.JsonSlurper;
199
200 def res = [];
201 if (prev.getResponseCode() == &apos;200&apos;) {
202     def jsonSlurper = new JsonSlurper();
203     res = jsonSlurper.parseText(prev.getResponseDataAsString());
204
205     assert res instanceof Map;
206     assert res.policy_types instanceof Map;
207     assert res.policy_types.size() == 35;
208 }</stringProp>
209           </JSR223Assertion>
210           <hashTree/>
211         </hashTree>
212       </hashTree>
213       <ThreadGroup guiclass="ThreadGroupGui" testclass="ThreadGroup" testname="API Test Flow" enabled="true">
214         <stringProp name="ThreadGroup.on_sample_error">continue</stringProp>
215         <elementProp name="ThreadGroup.main_controller" elementType="LoopController" guiclass="LoopControlPanel" testclass="LoopController" testname="Loop Controller" enabled="true">
216           <boolProp name="LoopController.continue_forever">false</boolProp>
217           <intProp name="LoopController.loops">-1</intProp>
218         </elementProp>
219         <stringProp name="ThreadGroup.num_threads">5</stringProp>
220         <stringProp name="ThreadGroup.ramp_time">5</stringProp>
221         <boolProp name="ThreadGroup.scheduler">true</boolProp>
222         <stringProp name="ThreadGroup.duration">259200</stringProp>
223         <stringProp name="ThreadGroup.delay">5</stringProp>
224         <boolProp name="ThreadGroup.same_user_on_next_iteration">true</boolProp>
225       </ThreadGroup>
226       <hashTree>
227         <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Get Policy Metrics" enabled="true">
228           <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
229             <collectionProp name="Arguments.arguments"/>
230           </elementProp>
231           <stringProp name="HTTPSampler.domain">${API_HOST}</stringProp>
232           <stringProp name="HTTPSampler.port">${API_PORT}</stringProp>
233           <stringProp name="HTTPSampler.protocol">https</stringProp>
234           <stringProp name="HTTPSampler.contentEncoding"></stringProp>
235           <stringProp name="HTTPSampler.path">/metrics</stringProp>
236           <stringProp name="HTTPSampler.method">GET</stringProp>
237           <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
238           <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
239           <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
240           <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
241           <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
242           <stringProp name="HTTPSampler.connect_timeout"></stringProp>
243           <stringProp name="HTTPSampler.response_timeout"></stringProp>
244         </HTTPSamplerProxy>
245         <hashTree>
246           <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Response Assertion" enabled="true">
247             <collectionProp name="Asserion.test_strings">
248               <stringProp name="49586">200</stringProp>
249             </collectionProp>
250             <stringProp name="Assertion.custom_message"></stringProp>
251             <stringProp name="Assertion.test_field">Assertion.response_code</stringProp>
252             <boolProp name="Assertion.assume_success">false</boolProp>
253             <intProp name="Assertion.test_type">1</intProp>
254           </ResponseAssertion>
255           <hashTree/>
256           <JSR223Assertion guiclass="TestBeanGUI" testclass="JSR223Assertion" testname="JSR223 Assertion" enabled="true">
257             <stringProp name="scriptLanguage">groovy</stringProp>
258             <stringProp name="parameters"></stringProp>
259             <stringProp name="filename"></stringProp>
260             <stringProp name="cacheKey">true</stringProp>
261             <stringProp name="script">def res = [];
262 if (prev.getResponseCode() == &apos;200&apos;) {
263     res = prev.getResponseDataAsString();
264
265     assert res.contains(&quot;jvm_buffer_pool_used_bytes&quot;)
266     assert res.contains(&quot;jvm_buffer_pool_capacity_bytes&quot;)
267     assert res.contains(&quot;jvm_buffer_pool_used_buffers&quot;)
268     assert res.contains(&quot;jvm_memory_bytes_used&quot;)
269     assert res.contains(&quot;jvm_memory_bytes_committed&quot;)
270     assert res.contains(&quot;jvm_memory_pool_bytes_used&quot;)
271     assert res.contains(&quot;jvm_memory_pool_bytes_committed&quot;)
272     assert res.contains(&quot;jvm_memory_pool_allocated_bytes_created&quot;)
273     assert res.contains(&quot;jvm_memory_pool_allocated_bytes_total&quot;)
274 }</stringProp>
275           </JSR223Assertion>
276           <hashTree/>
277         </hashTree>
278         <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Create Policy Type Monitoring" enabled="true">
279           <boolProp name="HTTPSampler.postBodyRaw">true</boolProp>
280           <elementProp name="HTTPsampler.Arguments" elementType="Arguments">
281             <collectionProp name="Arguments.arguments">
282               <elementProp name="" elementType="HTTPArgument">
283                 <boolProp name="HTTPArgument.always_encode">false</boolProp>
284                 <stringProp name="Argument.value">{&#xd;
285     &quot;tosca_definitions_version&quot;: &quot;tosca_simple_yaml_1_1_0&quot;,&#xd;
286     &quot;policy_types&quot;: {&#xd;
287         &quot;onap.policies.Monitoring&quot;: {&#xd;
288             &quot;derived_from&quot;: &quot;tosca.policies.Root&quot;,&#xd;
289             &quot;version&quot;: &quot;6.0.0&quot;,&#xd;
290             &quot;description&quot;: &quot;a base policy type for all policies that govern monitoring provisioning&quot;&#xd;
291         },&#xd;
292         &quot;onap.policies.monitoring.cdap.tca.hi.lo.app&quot;: {&#xd;
293             &quot;derived_from&quot;: &quot;onap.policies.Monitoring&quot;,&#xd;
294             &quot;version&quot;: &quot;6.0.${__threadNum}&quot;,&#xd;
295             &quot;properties&quot;: {&#xd;
296                 &quot;tca_policy&quot;: {&#xd;
297                     &quot;type&quot;: &quot;onap.datatypes.monitoring.tca_policy&quot;,&#xd;
298                     &quot;description&quot;: &quot;TCA Policy JSON&quot;,&#xd;
299                     &quot;required&quot;: true&#xd;
300                 }&#xd;
301             }&#xd;
302         }&#xd;
303     },&#xd;
304     &quot;data_types&quot;: {&#xd;
305         &quot;onap.datatypes.monitoring.metricsPerEventName&quot;: {&#xd;
306             &quot;derived_from&quot;: &quot;tosca.datatypes.Root&quot;,&#xd;
307             &quot;properties&quot;: {&#xd;
308                 &quot;controlLoopSchemaType&quot;: {&#xd;
309                     &quot;type&quot;: &quot;string&quot;,&#xd;
310                     &quot;required&quot;: true,&#xd;
311                     &quot;description&quot;: &quot;Specifies Control Loop Schema Type for the event Name e.g. VNF, VM&quot;,&#xd;
312                     &quot;constraints&quot;: [&#xd;
313                         {&#xd;
314                             &quot;valid_values&quot;: [&#xd;
315                                 &quot;VM&quot;,&#xd;
316                                 &quot;VNF&quot;&#xd;
317                             ]&#xd;
318                         }&#xd;
319                     ]&#xd;
320                 },&#xd;
321                 &quot;eventName&quot;: {&#xd;
322                     &quot;type&quot;: &quot;string&quot;,&#xd;
323                     &quot;required&quot;: true,&#xd;
324                     &quot;description&quot;: &quot;Event name to which thresholds need to be applied&quot;&#xd;
325                 },&#xd;
326                 &quot;policyName&quot;: {&#xd;
327                     &quot;type&quot;: &quot;string&quot;,&#xd;
328                     &quot;required&quot;: true,&#xd;
329                     &quot;description&quot;: &quot;TCA Policy Scope Name&quot;&#xd;
330                 },&#xd;
331                 &quot;policyScope&quot;: {&#xd;
332                     &quot;type&quot;: &quot;string&quot;,&#xd;
333                     &quot;required&quot;: true,&#xd;
334                     &quot;description&quot;: &quot;TCA Policy Scope&quot;&#xd;
335                 },&#xd;
336                 &quot;policyVersion&quot;: {&#xd;
337                     &quot;type&quot;: &quot;string&quot;,&#xd;
338                     &quot;required&quot;: true,&#xd;
339                     &quot;description&quot;: &quot;TCA Policy Scope Version&quot;&#xd;
340                 },&#xd;
341                 &quot;thresholds&quot;: {&#xd;
342                     &quot;type&quot;: &quot;list&quot;,&#xd;
343                     &quot;required&quot;: true,&#xd;
344                     &quot;description&quot;: &quot;Thresholds associated with eventName&quot;,&#xd;
345                     &quot;entry_schema&quot;: {&#xd;
346                         &quot;type&quot;: &quot;onap.datatypes.monitoring.thresholds&quot;&#xd;
347                     }&#xd;
348                 }&#xd;
349             }&#xd;
350         },&#xd;
351         &quot;onap.datatypes.monitoring.tca_policy&quot;: {&#xd;
352             &quot;derived_from&quot;: &quot;tosca.datatypes.Root&quot;,&#xd;
353             &quot;properties&quot;: {&#xd;
354                 &quot;domain&quot;: {&#xd;
355                     &quot;type&quot;: &quot;string&quot;,&#xd;
356                     &quot;required&quot;: true,&#xd;
357                     &quot;description&quot;: &quot;Domain name to which TCA needs to be applied&quot;,&#xd;
358                     &quot;default&quot;: &quot;measurementsForVfScaling&quot;,&#xd;
359                     &quot;constraints&quot;: [&#xd;
360                         {&#xd;
361                             &quot;equal&quot;: &quot;measurementsForVfScaling&quot;&#xd;
362                         }&#xd;
363                     ]&#xd;
364                 },&#xd;
365                 &quot;metricsPerEventName&quot;: {&#xd;
366                     &quot;type&quot;: &quot;list&quot;,&#xd;
367                     &quot;required&quot;: true,&#xd;
368                     &quot;description&quot;: &quot;Contains eventName and threshold details that need to be applied to given eventName&quot;,&#xd;
369                     &quot;entry_schema&quot;: {&#xd;
370                         &quot;type&quot;: &quot;onap.datatypes.monitoring.metricsPerEventName&quot;&#xd;
371                     }&#xd;
372                 }&#xd;
373             }&#xd;
374         },&#xd;
375         &quot;onap.datatypes.monitoring.thresholds&quot;: {&#xd;
376             &quot;derived_from&quot;: &quot;tosca.datatypes.Root&quot;,&#xd;
377             &quot;properties&quot;: {&#xd;
378                 &quot;closedLoopControlName&quot;: {&#xd;
379                     &quot;type&quot;: &quot;string&quot;,&#xd;
380                     &quot;required&quot;: true,&#xd;
381                     &quot;description&quot;: &quot;Closed Loop Control Name associated with the threshold&quot;&#xd;
382                 },&#xd;
383                 &quot;closedLoopEventStatus&quot;: {&#xd;
384                     &quot;type&quot;: &quot;string&quot;,&#xd;
385                     &quot;required&quot;: true,&#xd;
386                     &quot;description&quot;: &quot;Closed Loop Event Status of the threshold&quot;,&#xd;
387                     &quot;constraints&quot;: [&#xd;
388                         {&#xd;
389                             &quot;valid_values&quot;: [&#xd;
390                                 &quot;ONSET&quot;,&#xd;
391                                 &quot;ABATED&quot;&#xd;
392                             ]&#xd;
393                         }&#xd;
394                     ]&#xd;
395                 },&#xd;
396                 &quot;direction&quot;: {&#xd;
397                     &quot;type&quot;: &quot;string&quot;,&#xd;
398                     &quot;required&quot;: true,&#xd;
399                     &quot;description&quot;: &quot;Direction of the threshold&quot;,&#xd;
400                     &quot;constraints&quot;: [&#xd;
401                         {&#xd;
402                             &quot;valid_values&quot;: [&#xd;
403                                 &quot;LESS&quot;,&#xd;
404                                 &quot;LESS_OR_EQUAL&quot;,&#xd;
405                                 &quot;GREATER&quot;,&#xd;
406                                 &quot;GREATER_OR_EQUAL&quot;,&#xd;
407                                 &quot;EQUAL&quot;&#xd;
408                             ]&#xd;
409                         }&#xd;
410                     ]&#xd;
411                 },&#xd;
412                 &quot;fieldPath&quot;: {&#xd;
413                     &quot;type&quot;: &quot;string&quot;,&#xd;
414                     &quot;required&quot;: true,&#xd;
415                     &quot;description&quot;: &quot;Json field Path as per CEF message which needs to be analyzed for TCA&quot;,&#xd;
416                     &quot;constraints&quot;: [&#xd;
417                         {&#xd;
418                             &quot;valid_values&quot;: [&#xd;
419                                 &quot;$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedTotalPacketsDelta&quot;,&#xd;
420                                 &quot;$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedOctetsDelta&quot;,&#xd;
421                                 &quot;$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedUnicastPacketsDelta&quot;,&#xd;
422                                 &quot;$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedMulticastPacketsDelta&quot;,&#xd;
423                                 &quot;$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedBroadcastPacketsDelta&quot;,&#xd;
424                                 &quot;$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedDiscardedPacketsDelta&quot;,&#xd;
425                                 &quot;$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedErrorPacketsDelta&quot;,&#xd;
426                                 &quot;$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedTotalPacketsAccumulated&quot;,&#xd;
427                                 &quot;$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedOctetsAccumulated&quot;,&#xd;
428                                 &quot;$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedUnicastPacketsAccumulated&quot;,&#xd;
429                                 &quot;$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedMulticastPacketsAccumulated&quot;,&#xd;
430                                 &quot;$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedBroadcastPacketsAccumulated&quot;,&#xd;
431                                 &quot;$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedDiscardedPacketsAccumulated&quot;,&#xd;
432                                 &quot;$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedErrorPacketsAccumulated&quot;,&#xd;
433                                 &quot;$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedTotalPacketsDelta&quot;,&#xd;
434                                 &quot;$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedOctetsDelta&quot;,&#xd;
435                                 &quot;$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedUnicastPacketsDelta&quot;,&#xd;
436                                 &quot;$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedMulticastPacketsDelta&quot;,&#xd;
437                                 &quot;$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedBroadcastPacketsDelta&quot;,&#xd;
438                                 &quot;$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedDiscardedPacketsDelta&quot;,&#xd;
439                                 &quot;$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedErrorPacketsDelta&quot;,&#xd;
440                                 &quot;$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedTotalPacketsAccumulated&quot;,&#xd;
441                                 &quot;$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedOctetsAccumulated&quot;,&#xd;
442                                 &quot;$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedUnicastPacketsAccumulated&quot;,&#xd;
443                                 &quot;$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedMulticastPacketsAccumulated&quot;,&#xd;
444                                 &quot;$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedBroadcastPacketsAccumulated&quot;,&#xd;
445                                 &quot;$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedDiscardedPacketsAccumulated&quot;,&#xd;
446                                 &quot;$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedErrorPacketsAccumulated&quot;,&#xd;
447                                 &quot;$.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuIdle&quot;,&#xd;
448                                 &quot;$.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuUsageInterrupt&quot;,&#xd;
449                                 &quot;$.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuUsageNice&quot;,&#xd;
450                                 &quot;$.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuUsageSoftIrq&quot;,&#xd;
451                                 &quot;$.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuUsageSteal&quot;,&#xd;
452                                 &quot;$.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuUsageSystem&quot;,&#xd;
453                                 &quot;$.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuWait&quot;,&#xd;
454                                 &quot;$.event.measurementsForVfScalingFields.cpuUsageArray[*].percentUsage&quot;,&#xd;
455                                 &quot;$.event.measurementsForVfScalingFields.meanRequestLatency&quot;,&#xd;
456                                 &quot;$.event.measurementsForVfScalingFields.memoryUsageArray[*].memoryBuffered&quot;,&#xd;
457                                 &quot;$.event.measurementsForVfScalingFields.memoryUsageArray[*].memoryCached&quot;,&#xd;
458                                 &quot;$.event.measurementsForVfScalingFields.memoryUsageArray[*].memoryConfigured&quot;,&#xd;
459                                 &quot;$.event.measurementsForVfScalingFields.memoryUsageArray[*].memoryFree&quot;,&#xd;
460                                 &quot;$.event.measurementsForVfScalingFields.memoryUsageArray[*].memoryUsed&quot;,&#xd;
461                                 &quot;$.event.measurementsForVfScalingFields.additionalMeasurements[*].arrayOfFields[0].value&quot;&#xd;
462                             ]&#xd;
463                         }&#xd;
464                     ]&#xd;
465                 },&#xd;
466                 &quot;severity&quot;: {&#xd;
467                     &quot;type&quot;: &quot;string&quot;,&#xd;
468                     &quot;required&quot;: true,&#xd;
469                     &quot;description&quot;: &quot;Threshold Event Severity&quot;,&#xd;
470                     &quot;constraints&quot;: [&#xd;
471                         {&#xd;
472                             &quot;valid_values&quot;: [&#xd;
473                                 &quot;CRITICAL&quot;,&#xd;
474                                 &quot;MAJOR&quot;,&#xd;
475                                 &quot;MINOR&quot;,&#xd;
476                                 &quot;WARNING&quot;,&#xd;
477                                 &quot;NORMAL&quot;&#xd;
478                             ]&#xd;
479                         }&#xd;
480                     ]&#xd;
481                 },&#xd;
482                 &quot;thresholdValue&quot;: {&#xd;
483                     &quot;type&quot;: &quot;integer&quot;,&#xd;
484                     &quot;required&quot;: true,&#xd;
485                     &quot;description&quot;: &quot;Threshold value for the field Path inside CEF message&quot;&#xd;
486                 },&#xd;
487                 &quot;version&quot;: {&#xd;
488                     &quot;type&quot;: &quot;string&quot;,&#xd;
489                     &quot;required&quot;: true,&#xd;
490                     &quot;description&quot;: &quot;Version number associated with the threshold&quot;&#xd;
491                 }&#xd;
492             }&#xd;
493         }&#xd;
494     }&#xd;
495 }</stringProp>
496                 <stringProp name="Argument.metadata">=</stringProp>
497               </elementProp>
498             </collectionProp>
499           </elementProp>
500           <stringProp name="HTTPSampler.domain">${API_HOST}</stringProp>
501           <stringProp name="HTTPSampler.port">${API_PORT}</stringProp>
502           <stringProp name="HTTPSampler.protocol">https</stringProp>
503           <stringProp name="HTTPSampler.contentEncoding"></stringProp>
504           <stringProp name="HTTPSampler.path">/policy/api/v1/policytypes</stringProp>
505           <stringProp name="HTTPSampler.method">POST</stringProp>
506           <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
507           <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
508           <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
509           <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
510           <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
511           <stringProp name="HTTPSampler.connect_timeout"></stringProp>
512           <stringProp name="HTTPSampler.response_timeout"></stringProp>
513         </HTTPSamplerProxy>
514         <hashTree>
515           <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Response Assertion" enabled="true">
516             <collectionProp name="Asserion.test_strings">
517               <stringProp name="49586">200</stringProp>
518             </collectionProp>
519             <stringProp name="Assertion.custom_message"></stringProp>
520             <stringProp name="Assertion.test_field">Assertion.response_code</stringProp>
521             <boolProp name="Assertion.assume_success">false</boolProp>
522             <intProp name="Assertion.test_type">1</intProp>
523           </ResponseAssertion>
524           <hashTree/>
525           <JSR223Assertion guiclass="TestBeanGUI" testclass="JSR223Assertion" testname="JSR223 Assertion" enabled="true">
526             <stringProp name="scriptLanguage">groovy</stringProp>
527             <stringProp name="parameters"></stringProp>
528             <stringProp name="filename"></stringProp>
529             <stringProp name="cacheKey">true</stringProp>
530             <stringProp name="script">import groovy.json.JsonSlurper;
531
532 def res = [];
533 if (prev.getResponseCode() == &apos;200&apos;) {
534     def jsonSlurper = new JsonSlurper();
535     res = jsonSlurper.parseText(prev.getResponseDataAsString());
536
537     assert res instanceof Map;
538     assert res.policy_types instanceof Map;
539     assert res.policy_types.size() == 2;
540     assert res.policy_types.values()[0] instanceof Map;
541     assert res.policy_types.values()[1] instanceof Map;
542 }</stringProp>
543           </JSR223Assertion>
544           <hashTree/>
545         </hashTree>
546         <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Create Policy Type Monitoring V7" enabled="true">
547           <boolProp name="HTTPSampler.postBodyRaw">true</boolProp>
548           <elementProp name="HTTPsampler.Arguments" elementType="Arguments">
549             <collectionProp name="Arguments.arguments">
550               <elementProp name="" elementType="HTTPArgument">
551                 <boolProp name="HTTPArgument.always_encode">false</boolProp>
552                 <stringProp name="Argument.value">{&#xd;
553     &quot;tosca_definitions_version&quot;: &quot;tosca_simple_yaml_1_1_0&quot;,&#xd;
554     &quot;policy_types&quot;: {&#xd;
555         &quot;onap.policies.Monitoring&quot;: {&#xd;
556             &quot;derived_from&quot;: &quot;tosca.policies.Root&quot;,&#xd;
557             &quot;version&quot;: &quot;1.0.0&quot;,&#xd;
558             &quot;description&quot;: &quot;a base policy type for all policies that govern monitoring provisioning&quot;&#xd;
559         },&#xd;
560         &quot;onap.policies.monitoring.cdap.tca.hi.lo.app&quot;: {&#xd;
561             &quot;derived_from&quot;: &quot;onap.policies.Monitoring&quot;,&#xd;
562             &quot;version&quot;: &quot;7.0.${__threadNum}&quot;,&#xd;
563             &quot;properties&quot;: {&#xd;
564                 &quot;tca_policy&quot;: {&#xd;
565                     &quot;type&quot;: &quot;onap.datatypes.monitoring.tca_policy&quot;,&#xd;
566                     &quot;description&quot;: &quot;TCA Policy JSON&quot;,&#xd;
567                     &quot;required&quot;: true&#xd;
568                 }&#xd;
569             }&#xd;
570         }&#xd;
571     },&#xd;
572     &quot;data_types&quot;: {&#xd;
573         &quot;onap.datatypes.monitoring.metricsPerEventName&quot;: {&#xd;
574             &quot;derived_from&quot;: &quot;tosca.datatypes.Root&quot;,&#xd;
575             &quot;properties&quot;: {&#xd;
576                 &quot;controlLoopSchemaType&quot;: {&#xd;
577                     &quot;type&quot;: &quot;string&quot;,&#xd;
578                     &quot;required&quot;: true,&#xd;
579                     &quot;description&quot;: &quot;Specifies Control Loop Schema Type for the event Name e.g. VNF, VM&quot;,&#xd;
580                     &quot;constraints&quot;: [&#xd;
581                         {&#xd;
582                             &quot;valid_values&quot;: [&#xd;
583                                 &quot;VM&quot;,&#xd;
584                                 &quot;VNF&quot;&#xd;
585                             ]&#xd;
586                         }&#xd;
587                     ]&#xd;
588                 },&#xd;
589                 &quot;eventName&quot;: {&#xd;
590                     &quot;type&quot;: &quot;string&quot;,&#xd;
591                     &quot;required&quot;: true,&#xd;
592                     &quot;description&quot;: &quot;Event name to which thresholds need to be applied&quot;&#xd;
593                 },&#xd;
594                 &quot;policyName&quot;: {&#xd;
595                     &quot;type&quot;: &quot;string&quot;,&#xd;
596                     &quot;required&quot;: true,&#xd;
597                     &quot;description&quot;: &quot;TCA Policy Scope Name&quot;&#xd;
598                 },&#xd;
599                 &quot;policyScope&quot;: {&#xd;
600                     &quot;type&quot;: &quot;string&quot;,&#xd;
601                     &quot;required&quot;: true,&#xd;
602                     &quot;description&quot;: &quot;TCA Policy Scope&quot;&#xd;
603                 },&#xd;
604                 &quot;policyVersion&quot;: {&#xd;
605                     &quot;type&quot;: &quot;string&quot;,&#xd;
606                     &quot;required&quot;: true,&#xd;
607                     &quot;description&quot;: &quot;TCA Policy Scope Version&quot;&#xd;
608                 },&#xd;
609                 &quot;thresholds&quot;: {&#xd;
610                     &quot;type&quot;: &quot;list&quot;,&#xd;
611                     &quot;required&quot;: true,&#xd;
612                     &quot;description&quot;: &quot;Thresholds associated with eventName&quot;,&#xd;
613                     &quot;entry_schema&quot;: {&#xd;
614                         &quot;type&quot;: &quot;onap.datatypes.monitoring.thresholds&quot;&#xd;
615                     }&#xd;
616                 }&#xd;
617             }&#xd;
618         },&#xd;
619         &quot;onap.datatypes.monitoring.tca_policy&quot;: {&#xd;
620             &quot;derived_from&quot;: &quot;tosca.datatypes.Root&quot;,&#xd;
621             &quot;properties&quot;: {&#xd;
622                 &quot;domain&quot;: {&#xd;
623                     &quot;type&quot;: &quot;string&quot;,&#xd;
624                     &quot;required&quot;: true,&#xd;
625                     &quot;description&quot;: &quot;Domain name to which TCA needs to be applied&quot;,&#xd;
626                     &quot;default&quot;: &quot;measurementsForVfScaling&quot;,&#xd;
627                     &quot;constraints&quot;: [&#xd;
628                         {&#xd;
629                             &quot;equal&quot;: &quot;measurementsForVfScaling&quot;&#xd;
630                         }&#xd;
631                     ]&#xd;
632                 },&#xd;
633                 &quot;metricsPerEventName&quot;: {&#xd;
634                     &quot;type&quot;: &quot;list&quot;,&#xd;
635                     &quot;required&quot;: true,&#xd;
636                     &quot;description&quot;: &quot;Contains eventName and threshold details that need to be applied to given eventName&quot;,&#xd;
637                     &quot;entry_schema&quot;: {&#xd;
638                         &quot;type&quot;: &quot;onap.datatypes.monitoring.metricsPerEventName&quot;&#xd;
639                     }&#xd;
640                 }&#xd;
641             }&#xd;
642         },&#xd;
643         &quot;onap.datatypes.monitoring.thresholds&quot;: {&#xd;
644             &quot;derived_from&quot;: &quot;tosca.datatypes.Root&quot;,&#xd;
645             &quot;properties&quot;: {&#xd;
646                 &quot;closedLoopControlName&quot;: {&#xd;
647                     &quot;type&quot;: &quot;string&quot;,&#xd;
648                     &quot;required&quot;: true,&#xd;
649                     &quot;description&quot;: &quot;Closed Loop Control Name associated with the threshold&quot;&#xd;
650                 },&#xd;
651                 &quot;closedLoopEventStatus&quot;: {&#xd;
652                     &quot;type&quot;: &quot;string&quot;,&#xd;
653                     &quot;required&quot;: true,&#xd;
654                     &quot;description&quot;: &quot;Closed Loop Event Status of the threshold&quot;,&#xd;
655                     &quot;constraints&quot;: [&#xd;
656                         {&#xd;
657                             &quot;valid_values&quot;: [&#xd;
658                                 &quot;ONSET&quot;,&#xd;
659                                 &quot;ABATED&quot;&#xd;
660                             ]&#xd;
661                         }&#xd;
662                     ]&#xd;
663                 },&#xd;
664                 &quot;direction&quot;: {&#xd;
665                     &quot;type&quot;: &quot;string&quot;,&#xd;
666                     &quot;required&quot;: true,&#xd;
667                     &quot;description&quot;: &quot;Direction of the threshold&quot;,&#xd;
668                     &quot;constraints&quot;: [&#xd;
669                         {&#xd;
670                             &quot;valid_values&quot;: [&#xd;
671                                 &quot;LESS&quot;,&#xd;
672                                 &quot;LESS_OR_EQUAL&quot;,&#xd;
673                                 &quot;GREATER&quot;,&#xd;
674                                 &quot;GREATER_OR_EQUAL&quot;,&#xd;
675                                 &quot;EQUAL&quot;&#xd;
676                             ]&#xd;
677                         }&#xd;
678                     ]&#xd;
679                 },&#xd;
680                 &quot;fieldPath&quot;: {&#xd;
681                     &quot;type&quot;: &quot;string&quot;,&#xd;
682                     &quot;required&quot;: true,&#xd;
683                     &quot;description&quot;: &quot;Json field Path as per CEF message which needs to be analyzed for TCA&quot;,&#xd;
684                     &quot;constraints&quot;: [&#xd;
685                         {&#xd;
686                             &quot;valid_values&quot;: [&#xd;
687                                 &quot;$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedTotalPacketsDelta&quot;,&#xd;
688                                 &quot;$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedOctetsDelta&quot;,&#xd;
689                                 &quot;$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedUnicastPacketsDelta&quot;,&#xd;
690                                 &quot;$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedMulticastPacketsDelta&quot;,&#xd;
691                                 &quot;$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedBroadcastPacketsDelta&quot;,&#xd;
692                                 &quot;$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedDiscardedPacketsDelta&quot;,&#xd;
693                                 &quot;$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedErrorPacketsDelta&quot;,&#xd;
694                                 &quot;$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedTotalPacketsAccumulated&quot;,&#xd;
695                                 &quot;$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedOctetsAccumulated&quot;,&#xd;
696                                 &quot;$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedUnicastPacketsAccumulated&quot;,&#xd;
697                                 &quot;$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedMulticastPacketsAccumulated&quot;,&#xd;
698                                 &quot;$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedBroadcastPacketsAccumulated&quot;,&#xd;
699                                 &quot;$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedDiscardedPacketsAccumulated&quot;,&#xd;
700                                 &quot;$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedErrorPacketsAccumulated&quot;,&#xd;
701                                 &quot;$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedTotalPacketsDelta&quot;,&#xd;
702                                 &quot;$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedOctetsDelta&quot;,&#xd;
703                                 &quot;$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedUnicastPacketsDelta&quot;,&#xd;
704                                 &quot;$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedMulticastPacketsDelta&quot;,&#xd;
705                                 &quot;$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedBroadcastPacketsDelta&quot;,&#xd;
706                                 &quot;$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedDiscardedPacketsDelta&quot;,&#xd;
707                                 &quot;$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedErrorPacketsDelta&quot;,&#xd;
708                                 &quot;$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedTotalPacketsAccumulated&quot;,&#xd;
709                                 &quot;$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedOctetsAccumulated&quot;,&#xd;
710                                 &quot;$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedUnicastPacketsAccumulated&quot;,&#xd;
711                                 &quot;$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedMulticastPacketsAccumulated&quot;,&#xd;
712                                 &quot;$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedBroadcastPacketsAccumulated&quot;,&#xd;
713                                 &quot;$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedDiscardedPacketsAccumulated&quot;,&#xd;
714                                 &quot;$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedErrorPacketsAccumulated&quot;,&#xd;
715                                 &quot;$.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuIdle&quot;,&#xd;
716                                 &quot;$.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuUsageInterrupt&quot;,&#xd;
717                                 &quot;$.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuUsageNice&quot;,&#xd;
718                                 &quot;$.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuUsageSoftIrq&quot;,&#xd;
719                                 &quot;$.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuUsageSteal&quot;,&#xd;
720                                 &quot;$.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuUsageSystem&quot;,&#xd;
721                                 &quot;$.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuWait&quot;,&#xd;
722                                 &quot;$.event.measurementsForVfScalingFields.cpuUsageArray[*].percentUsage&quot;,&#xd;
723                                 &quot;$.event.measurementsForVfScalingFields.meanRequestLatency&quot;,&#xd;
724                                 &quot;$.event.measurementsForVfScalingFields.memoryUsageArray[*].memoryBuffered&quot;,&#xd;
725                                 &quot;$.event.measurementsForVfScalingFields.memoryUsageArray[*].memoryCached&quot;,&#xd;
726                                 &quot;$.event.measurementsForVfScalingFields.memoryUsageArray[*].memoryConfigured&quot;,&#xd;
727                                 &quot;$.event.measurementsForVfScalingFields.memoryUsageArray[*].memoryFree&quot;,&#xd;
728                                 &quot;$.event.measurementsForVfScalingFields.memoryUsageArray[*].memoryUsed&quot;,&#xd;
729                                 &quot;$.event.measurementsForVfScalingFields.additionalMeasurements[*].arrayOfFields[0].value&quot;&#xd;
730                             ]&#xd;
731                         }&#xd;
732                     ]&#xd;
733                 },&#xd;
734                 &quot;severity&quot;: {&#xd;
735                     &quot;type&quot;: &quot;string&quot;,&#xd;
736                     &quot;required&quot;: true,&#xd;
737                     &quot;description&quot;: &quot;Threshold Event Severity&quot;,&#xd;
738                     &quot;constraints&quot;: [&#xd;
739                         {&#xd;
740                             &quot;valid_values&quot;: [&#xd;
741                                 &quot;CRITICAL&quot;,&#xd;
742                                 &quot;MAJOR&quot;,&#xd;
743                                 &quot;MINOR&quot;,&#xd;
744                                 &quot;WARNING&quot;,&#xd;
745                                 &quot;NORMAL&quot;&#xd;
746                             ]&#xd;
747                         }&#xd;
748                     ]&#xd;
749                 },&#xd;
750                 &quot;thresholdValue&quot;: {&#xd;
751                     &quot;type&quot;: &quot;integer&quot;,&#xd;
752                     &quot;required&quot;: true,&#xd;
753                     &quot;description&quot;: &quot;Threshold value for the field Path inside CEF message&quot;&#xd;
754                 },&#xd;
755                 &quot;version&quot;: {&#xd;
756                     &quot;type&quot;: &quot;string&quot;,&#xd;
757                     &quot;required&quot;: true,&#xd;
758                     &quot;description&quot;: &quot;Version number associated with the threshold&quot;&#xd;
759                 }&#xd;
760             }&#xd;
761         }&#xd;
762     }&#xd;
763 }</stringProp>
764                 <stringProp name="Argument.metadata">=</stringProp>
765               </elementProp>
766             </collectionProp>
767           </elementProp>
768           <stringProp name="HTTPSampler.domain">${API_HOST}</stringProp>
769           <stringProp name="HTTPSampler.port">${API_PORT}</stringProp>
770           <stringProp name="HTTPSampler.protocol">https</stringProp>
771           <stringProp name="HTTPSampler.contentEncoding"></stringProp>
772           <stringProp name="HTTPSampler.path">/policy/api/v1/policytypes</stringProp>
773           <stringProp name="HTTPSampler.method">POST</stringProp>
774           <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
775           <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
776           <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
777           <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
778           <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
779           <stringProp name="HTTPSampler.connect_timeout"></stringProp>
780           <stringProp name="HTTPSampler.response_timeout"></stringProp>
781         </HTTPSamplerProxy>
782         <hashTree>
783           <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Response Assertion" enabled="true">
784             <collectionProp name="Asserion.test_strings">
785               <stringProp name="49586">200</stringProp>
786             </collectionProp>
787             <stringProp name="Assertion.custom_message"></stringProp>
788             <stringProp name="Assertion.test_field">Assertion.response_code</stringProp>
789             <boolProp name="Assertion.assume_success">false</boolProp>
790             <intProp name="Assertion.test_type">1</intProp>
791           </ResponseAssertion>
792           <hashTree/>
793           <JSR223Assertion guiclass="TestBeanGUI" testclass="JSR223Assertion" testname="JSR223 Assertion" enabled="true">
794             <stringProp name="scriptLanguage">groovy</stringProp>
795             <stringProp name="parameters"></stringProp>
796             <stringProp name="filename"></stringProp>
797             <stringProp name="cacheKey">true</stringProp>
798             <stringProp name="script">import groovy.json.JsonSlurper;
799
800 def res = [];
801 if (prev.getResponseCode() == &apos;200&apos;) {
802     def jsonSlurper = new JsonSlurper();
803     res = jsonSlurper.parseText(prev.getResponseDataAsString());
804
805     assert res instanceof Map;
806     assert res.policy_types instanceof Map;
807     assert res.policy_types.size() == 2;
808     assert res.policy_types.values()[0] instanceof Map;
809     assert res.policy_types.values()[1] instanceof Map;
810 }</stringProp>
811           </JSR223Assertion>
812           <hashTree/>
813         </hashTree>
814         <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Create Policy Type Optimization" enabled="true">
815           <boolProp name="HTTPSampler.postBodyRaw">true</boolProp>
816           <elementProp name="HTTPsampler.Arguments" elementType="Arguments">
817             <collectionProp name="Arguments.arguments">
818               <elementProp name="" elementType="HTTPArgument">
819                 <boolProp name="HTTPArgument.always_encode">false</boolProp>
820                 <stringProp name="Argument.value">{&#xd;
821    &quot;tosca_definitions_version&quot;: &quot;tosca_simple_yaml_1_1_0&quot;,&#xd;
822    &quot;policy_types&quot;: {&#xd;
823       &quot;onap.policies.optimization.resource.AffinityPolicy&quot;: {&#xd;
824          &quot;derived_from&quot;: &quot;onap.policies.optimization.Resource&quot;,&#xd;
825          &quot;version&quot;: &quot;6.0.${__threadNum}&quot;,&#xd;
826          &quot;properties&quot;: {&#xd;
827             &quot;applicableResources&quot;: {&#xd;
828                &quot;type&quot;: &quot;list&quot;,&#xd;
829                &quot;required&quot;: true,&#xd;
830                &quot;entry_schema&quot;: {&#xd;
831                   &quot;type&quot;: &quot;string&quot;,&#xd;
832                   &quot;constraints&quot;: [&#xd;
833                      {&#xd;
834                         &quot;valid_values&quot;: [&#xd;
835                            &quot;any&quot;,&#xd;
836                            &quot;all&quot;&#xd;
837                         ]&#xd;
838                      }&#xd;
839                   ]&#xd;
840                }&#xd;
841             },&#xd;
842             &quot;affinityProperties&quot;: {&#xd;
843                &quot;type&quot;: &quot;policy.data.affinityProperties_properties&quot;,&#xd;
844                &quot;required&quot;: true&#xd;
845             }&#xd;
846          }&#xd;
847       }&#xd;
848    },&#xd;
849    &quot;data_types&quot;: {&#xd;
850       &quot;policy.data.affinityProperties_properties&quot;: {&#xd;
851          &quot;derived_from&quot;: &quot;tosca.nodes.Root&quot;,&#xd;
852          &quot;properties&quot;: {&#xd;
853             &quot;qualifier&quot;: {&#xd;
854                &quot;type&quot;: &quot;string&quot;,&#xd;
855                &quot;constraints&quot;: [&#xd;
856                   {&#xd;
857                      &quot;valid_values&quot;: [&#xd;
858                         &quot;same&quot;,&#xd;
859                         &quot;different&quot;&#xd;
860                      ]&#xd;
861                   }&#xd;
862                ]&#xd;
863             },&#xd;
864             &quot;category&quot;: {&#xd;
865                &quot;type&quot;: &quot;string&quot;,&#xd;
866                &quot;required&quot;: true&#xd;
867             }&#xd;
868          }&#xd;
869       }&#xd;
870    }&#xd;
871 }</stringProp>
872                 <stringProp name="Argument.metadata">=</stringProp>
873               </elementProp>
874             </collectionProp>
875           </elementProp>
876           <stringProp name="HTTPSampler.domain">${API_HOST}</stringProp>
877           <stringProp name="HTTPSampler.port">${API_PORT}</stringProp>
878           <stringProp name="HTTPSampler.protocol">https</stringProp>
879           <stringProp name="HTTPSampler.contentEncoding"></stringProp>
880           <stringProp name="HTTPSampler.path">/policy/api/v1/policytypes</stringProp>
881           <stringProp name="HTTPSampler.method">POST</stringProp>
882           <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
883           <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
884           <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
885           <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
886           <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
887           <stringProp name="HTTPSampler.connect_timeout"></stringProp>
888           <stringProp name="HTTPSampler.response_timeout"></stringProp>
889         </HTTPSamplerProxy>
890         <hashTree>
891           <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Response Assertion" enabled="true">
892             <collectionProp name="Asserion.test_strings">
893               <stringProp name="49586">200</stringProp>
894             </collectionProp>
895             <stringProp name="Assertion.custom_message"></stringProp>
896             <stringProp name="Assertion.test_field">Assertion.response_code</stringProp>
897             <boolProp name="Assertion.assume_success">false</boolProp>
898             <intProp name="Assertion.test_type">1</intProp>
899           </ResponseAssertion>
900           <hashTree/>
901           <JSR223Assertion guiclass="TestBeanGUI" testclass="JSR223Assertion" testname="JSR223 Assertion" enabled="true">
902             <stringProp name="scriptLanguage">groovy</stringProp>
903             <stringProp name="parameters"></stringProp>
904             <stringProp name="filename"></stringProp>
905             <stringProp name="cacheKey">true</stringProp>
906             <stringProp name="script">import groovy.json.JsonSlurper;
907
908 def res = [];
909 if (prev.getResponseCode() == &apos;200&apos;) {
910     def jsonSlurper = new JsonSlurper();
911     res = jsonSlurper.parseText(prev.getResponseDataAsString());
912
913     assert res instanceof Map;
914     assert res.policy_types instanceof Map;
915     assert res.policy_types.size() == 1;
916     assert res.policy_types.values()[0] instanceof Map;
917  //   assert res.policy_types.values()[1] instanceof Map;
918 }</stringProp>
919           </JSR223Assertion>
920           <hashTree/>
921         </hashTree>
922         <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Create Policy Type Guard" enabled="true">
923           <boolProp name="HTTPSampler.postBodyRaw">true</boolProp>
924           <elementProp name="HTTPsampler.Arguments" elementType="Arguments">
925             <collectionProp name="Arguments.arguments">
926               <elementProp name="" elementType="HTTPArgument">
927                 <boolProp name="HTTPArgument.always_encode">false</boolProp>
928                 <stringProp name="Argument.value">{&#xd;
929    &quot;tosca_definitions_version&quot;: &quot;tosca_simple_yaml_1_1_0&quot;,&#xd;
930    &quot;policy_types&quot;: {&#xd;
931       &quot;onap.policies.controlloop.guard.common.Blacklist&quot;: {&#xd;
932          &quot;derived_from&quot;: &quot;onap.policies.controlloop.guard.Common&quot;,&#xd;
933          &quot;type_version&quot;: &quot;1.0.0&quot;,&#xd;
934          &quot;version&quot;: &quot;6.0.${__threadNum}&quot;,&#xd;
935          &quot;description&quot;: &quot;Supports blacklist of entity id&apos;s from performing control loop actions on.&quot;,&#xd;
936          &quot;properties&quot;: {&#xd;
937             &quot;blacklist&quot;: {&#xd;
938                &quot;type&quot;: &quot;list&quot;,&#xd;
939                &quot;description&quot;: &quot;List of entity id&apos;s not allowed to have control loop operations on.&quot;,&#xd;
940                &quot;required&quot;: true,&#xd;
941                &quot;entry_schema&quot;: {&#xd;
942                   &quot;type&quot;: &quot;string&quot;&#xd;
943                }&#xd;
944             }&#xd;
945          }&#xd;
946       }&#xd;
947    }&#xd;
948 }</stringProp>
949                 <stringProp name="Argument.metadata">=</stringProp>
950               </elementProp>
951             </collectionProp>
952           </elementProp>
953           <stringProp name="HTTPSampler.domain">${API_HOST}</stringProp>
954           <stringProp name="HTTPSampler.port">${API_PORT}</stringProp>
955           <stringProp name="HTTPSampler.protocol">https</stringProp>
956           <stringProp name="HTTPSampler.contentEncoding"></stringProp>
957           <stringProp name="HTTPSampler.path">/policy/api/v1/policytypes</stringProp>
958           <stringProp name="HTTPSampler.method">POST</stringProp>
959           <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
960           <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
961           <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
962           <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
963           <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
964           <stringProp name="HTTPSampler.connect_timeout"></stringProp>
965           <stringProp name="HTTPSampler.response_timeout"></stringProp>
966         </HTTPSamplerProxy>
967         <hashTree>
968           <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Response Assertion" enabled="true">
969             <collectionProp name="Asserion.test_strings">
970               <stringProp name="49586">200</stringProp>
971             </collectionProp>
972             <stringProp name="Assertion.custom_message"></stringProp>
973             <stringProp name="Assertion.test_field">Assertion.response_code</stringProp>
974             <boolProp name="Assertion.assume_success">false</boolProp>
975             <intProp name="Assertion.test_type">1</intProp>
976           </ResponseAssertion>
977           <hashTree/>
978           <JSR223Assertion guiclass="TestBeanGUI" testclass="JSR223Assertion" testname="JSR223 Assertion" enabled="true">
979             <stringProp name="scriptLanguage">groovy</stringProp>
980             <stringProp name="parameters"></stringProp>
981             <stringProp name="filename"></stringProp>
982             <stringProp name="cacheKey">true</stringProp>
983             <stringProp name="script">import groovy.json.JsonSlurper;
984
985 def res = [];
986 if (prev.getResponseCode() == &apos;200&apos;) {
987     def jsonSlurper = new JsonSlurper();
988     res = jsonSlurper.parseText(prev.getResponseDataAsString());
989
990     assert res instanceof Map;
991     assert res.policy_types instanceof Map;
992     assert res.policy_types.size() == 1;
993     assert res.policy_types.values()[0] instanceof Map;
994 }</stringProp>
995           </JSR223Assertion>
996           <hashTree/>
997         </hashTree>
998         <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Create Policy Type Native APEX" enabled="true">
999           <boolProp name="HTTPSampler.postBodyRaw">true</boolProp>
1000           <elementProp name="HTTPsampler.Arguments" elementType="Arguments">
1001             <collectionProp name="Arguments.arguments">
1002               <elementProp name="" elementType="HTTPArgument">
1003                 <boolProp name="HTTPArgument.always_encode">false</boolProp>
1004                 <stringProp name="Argument.value">{&#xd;
1005    &quot;tosca_definitions_version&quot;: &quot;tosca_simple_yaml_1_1_0&quot;,&#xd;
1006    &quot;policy_types&quot;: {&#xd;
1007       &quot;onap.policies.Native&quot;: {&#xd;
1008          &quot;derived_from&quot;: &quot;tosca.policies.Root&quot;,&#xd;
1009          &quot;description&quot;: &quot;a base policy type for all native PDP policies&quot;,&#xd;
1010          &quot;version&quot;: &quot;1.0.0&quot;&#xd;
1011       },&#xd;
1012       &quot;onap.policies.native.Apex&quot;: {&#xd;
1013          &quot;derived_from&quot;: &quot;onap.policies.Native&quot;,&#xd;
1014          &quot;description&quot;: &quot;a policy type for native apex policies&quot;,&#xd;
1015          &quot;version&quot;: &quot;6.0.${__threadNum}&quot;,&#xd;
1016          &quot;properties&quot;: {&#xd;
1017             &quot;engine_service&quot;: {&#xd;
1018                &quot;type&quot;: &quot;onap.datatypes.native.apex.EngineService&quot;,&#xd;
1019                &quot;description&quot;: &quot;APEX Engine Service Parameters&quot;&#xd;
1020             },&#xd;
1021             &quot;inputs&quot;: {&#xd;
1022                &quot;type&quot;: &quot;map&quot;,&#xd;
1023                &quot;description&quot;: &quot;Inputs for handling events coming into the APEX engine&quot;,&#xd;
1024                &quot;entry_schema&quot;: {&#xd;
1025                   &quot;type&quot;: &quot;onap.datatypes.native.apex.EventHandler&quot;&#xd;
1026                }&#xd;
1027             },&#xd;
1028             &quot;outputs&quot;: {&#xd;
1029                &quot;type&quot;: &quot;map&quot;,&#xd;
1030                &quot;description&quot;: &quot;Outputs for handling events going out of the APEX engine&quot;,&#xd;
1031                &quot;entry_schema&quot;: {&#xd;
1032                   &quot;type&quot;: &quot;onap.datatypes.native.apex.EventHandler&quot;&#xd;
1033                }&#xd;
1034             },&#xd;
1035             &quot;environment&quot;: {&#xd;
1036                &quot;type&quot;: &quot;list&quot;,&#xd;
1037                &quot;description&quot;: &quot;Envioronmental parameters for the APEX engine&quot;,&#xd;
1038                &quot;entry_schema&quot;: {&#xd;
1039                   &quot;type&quot;: &quot;onap.datatypes.native.apex.Environment&quot;&#xd;
1040                }&#xd;
1041             }&#xd;
1042          }&#xd;
1043       }&#xd;
1044    },&#xd;
1045    &quot;data_types&quot;: {&#xd;
1046       &quot;onap.datatypes.native.apex.EngineService&quot;: {&#xd;
1047          &quot;derived_from&quot;: &quot;tosca.datatypes.Root&quot;,&#xd;
1048          &quot;properties&quot;: {&#xd;
1049             &quot;name&quot;: {&#xd;
1050                &quot;type&quot;: &quot;string&quot;,&#xd;
1051                &quot;description&quot;: &quot;Specifies the engine name&quot;,&#xd;
1052                &quot;required&quot;: false,&#xd;
1053                &quot;default&quot;: &quot;ApexEngineService&quot;&#xd;
1054             },&#xd;
1055             &quot;version&quot;: {&#xd;
1056                &quot;type&quot;: &quot;string&quot;,&#xd;
1057                &quot;description&quot;: &quot;Specifies the engine version in double dotted format&quot;,&#xd;
1058                &quot;required&quot;: false,&#xd;
1059                &quot;default&quot;: &quot;1.0.0&quot;&#xd;
1060             },&#xd;
1061             &quot;id&quot;: {&#xd;
1062                &quot;type&quot;: &quot;integer&quot;,&#xd;
1063                &quot;description&quot;: &quot;Specifies the engine id&quot;,&#xd;
1064                &quot;required&quot;: true&#xd;
1065             },&#xd;
1066             &quot;instance_count&quot;: {&#xd;
1067                &quot;type&quot;: &quot;integer&quot;,&#xd;
1068                &quot;description&quot;: &quot;Specifies the number of engine threads that should be run&quot;,&#xd;
1069                &quot;required&quot;: true&#xd;
1070             },&#xd;
1071             &quot;deployment_port&quot;: {&#xd;
1072                &quot;type&quot;: &quot;integer&quot;,&#xd;
1073                &quot;description&quot;: &quot;Specifies the port to connect to for engine administration&quot;,&#xd;
1074                &quot;required&quot;: false,&#xd;
1075                &quot;default&quot;: 1&#xd;
1076             },&#xd;
1077             &quot;policy_model_file_name&quot;: {&#xd;
1078                &quot;type&quot;: &quot;string&quot;,&#xd;
1079                &quot;description&quot;: &quot;The name of the file from which to read the APEX policy model&quot;,&#xd;
1080                &quot;required&quot;: false&#xd;
1081             },&#xd;
1082             &quot;policy_type_impl&quot;: {&#xd;
1083                &quot;type&quot;: &quot;string&quot;,&#xd;
1084                &quot;description&quot;: &quot;The policy type implementation from which to read the APEX policy model&quot;,&#xd;
1085                &quot;required&quot;: false&#xd;
1086             },&#xd;
1087             &quot;periodic_event_period&quot;: {&#xd;
1088                &quot;type&quot;: &quot;string&quot;,&#xd;
1089                &quot;description&quot;: &quot;The time interval in milliseconds for the periodic scanning event, 0 means don&apos;t scan&quot;,&#xd;
1090                &quot;required&quot;: false&#xd;
1091             },&#xd;
1092             &quot;engine&quot;: {&#xd;
1093                &quot;type&quot;: &quot;onap.datatypes.native.apex.engineservice.Engine&quot;,&#xd;
1094                &quot;description&quot;: &quot;The parameters for all engines in the APEX engine service&quot;,&#xd;
1095                &quot;required&quot;: true&#xd;
1096             }&#xd;
1097          }&#xd;
1098       },&#xd;
1099       &quot;onap.datatypes.native.apex.EventHandler&quot;: {&#xd;
1100          &quot;derived_from&quot;: &quot;tosca.datatypes.Root&quot;,&#xd;
1101          &quot;properties&quot;: {&#xd;
1102             &quot;name&quot;: {&#xd;
1103                &quot;type&quot;: &quot;string&quot;,&#xd;
1104                &quot;description&quot;: &quot;Specifies the event handler name, if not specified this is set to the key name&quot;,&#xd;
1105                &quot;required&quot;: false&#xd;
1106             },&#xd;
1107             &quot;carrier_technology&quot;: {&#xd;
1108                &quot;type&quot;: &quot;onap.datatypes.native.apex.CarrierTechnology&quot;,&#xd;
1109                &quot;description&quot;: &quot;Specifies the carrier technology of the event handler (such as REST/Web Socket/Kafka)&quot;,&#xd;
1110                &quot;required&quot;: true&#xd;
1111             },&#xd;
1112             &quot;event_protocol&quot;: {&#xd;
1113                &quot;type&quot;: &quot;onap.datatypes.native.apex.EventProtocol&quot;,&#xd;
1114                &quot;description&quot;: &quot;Specifies the event protocol of events for the event handler (such as Yaml/JSON/XML/POJO)&quot;,&#xd;
1115                &quot;required&quot;: true&#xd;
1116             },&#xd;
1117             &quot;event_name&quot;: {&#xd;
1118                &quot;type&quot;: &quot;string&quot;,&#xd;
1119                &quot;description&quot;: &quot;Specifies the event name for events on this event handler, if not specified, the event name is read from or written to the event being received or sent&quot;,&#xd;
1120                &quot;required&quot;: false&#xd;
1121             },&#xd;
1122             &quot;event_name_filter&quot;: {&#xd;
1123                &quot;type&quot;: &quot;string&quot;,&#xd;
1124                &quot;description&quot;: &quot;Specifies a filter as a regular expression, events that do not match the filter are dropped, the default is to let all events through&quot;,&#xd;
1125                &quot;required&quot;: false&#xd;
1126             },&#xd;
1127             &quot;synchronous_mode&quot;: {&#xd;
1128                &quot;type&quot;: &quot;boolean&quot;,&#xd;
1129                &quot;description&quot;: &quot;Specifies the event handler is syncronous (receive event and send response)&quot;,&#xd;
1130                &quot;required&quot;: false,&#xd;
1131                &quot;default&quot;: false&#xd;
1132             },&#xd;
1133             &quot;synchronous_peer&quot;: {&#xd;
1134                &quot;type&quot;: &quot;string&quot;,&#xd;
1135                &quot;description&quot;: &quot;The peer event handler (output for input or input for output) of this event handler in synchronous mode, this parameter is mandatory if the event handler is in synchronous mode&quot;,&#xd;
1136                &quot;required&quot;: false&#xd;
1137             },&#xd;
1138             &quot;synchronous_timeout&quot;: {&#xd;
1139                &quot;type&quot;: &quot;integer&quot;,&#xd;
1140                &quot;description&quot;: &quot;The timeout in milliseconds for responses to be issued by APEX torequests, this parameter is mandatory if the event handler is in synchronous mode&quot;,&#xd;
1141                &quot;required&quot;: false&#xd;
1142             },&#xd;
1143             &quot;requestor_mode&quot;: {&#xd;
1144                &quot;type&quot;: &quot;boolean&quot;,&#xd;
1145                &quot;description&quot;: &quot;Specifies the event handler is in requestor mode (send event and wait for response mode)&quot;,&#xd;
1146                &quot;required&quot;: false,&#xd;
1147                &quot;default&quot;: false&#xd;
1148             },&#xd;
1149             &quot;requestor_peer&quot;: {&#xd;
1150                &quot;type&quot;: &quot;string&quot;,&#xd;
1151                &quot;description&quot;: &quot;The peer event handler (output for input or input for output) of this event handler in requestor mode, this parameter is mandatory if the event handler is in requestor mode&quot;,&#xd;
1152                &quot;required&quot;: false&#xd;
1153             },&#xd;
1154             &quot;requestor_timeout&quot;: {&#xd;
1155                &quot;type&quot;: &quot;integer&quot;,&#xd;
1156                &quot;description&quot;: &quot;The timeout in milliseconds for wait for responses to requests, this parameter is mandatory if the event handler is in requestor mode&quot;,&#xd;
1157                &quot;required&quot;: false&#xd;
1158             }&#xd;
1159          }&#xd;
1160       },&#xd;
1161       &quot;onap.datatypes.native.apex.CarrierTechnology&quot;: {&#xd;
1162          &quot;derived_from&quot;: &quot;tosca.datatypes.Root&quot;,&#xd;
1163          &quot;properties&quot;: {&#xd;
1164             &quot;label&quot;: {&#xd;
1165                &quot;type&quot;: &quot;string&quot;,&#xd;
1166                &quot;description&quot;: &quot;The label (name) of the carrier technology (such as REST, Kafka, WebSocket)&quot;,&#xd;
1167                &quot;required&quot;: true&#xd;
1168             },&#xd;
1169             &quot;plugin_parameter_class_name&quot;: {&#xd;
1170                &quot;type&quot;: &quot;string&quot;,&#xd;
1171                &quot;description&quot;: &quot;The class name of the class that overrides default handling of event input or output for this carrier technology, defaults to the supplied input or output class&quot;,&#xd;
1172                &quot;required&quot;: false&#xd;
1173             }&#xd;
1174          }&#xd;
1175       },&#xd;
1176       &quot;onap.datatypes.native.apex.EventProtocol&quot;: {&#xd;
1177          &quot;derived_from&quot;: &quot;tosca.datatypes.Root&quot;,&#xd;
1178          &quot;properties&quot;: {&#xd;
1179             &quot;label&quot;: {&#xd;
1180                &quot;type&quot;: &quot;string&quot;,&#xd;
1181                &quot;description&quot;: &quot;The label (name) of the event protocol (such as Yaml, JSON, XML, or POJO)&quot;,&#xd;
1182                &quot;required&quot;: true&#xd;
1183             },&#xd;
1184             &quot;event_protocol_plugin_class&quot;: {&#xd;
1185                &quot;type&quot;: &quot;string&quot;,&#xd;
1186                &quot;description&quot;: &quot;The class name of the class that overrides default handling of the event protocol for this carrier technology, defaults to the supplied event protocol class&quot;,&#xd;
1187                &quot;required&quot;: false&#xd;
1188             }&#xd;
1189          }&#xd;
1190       },&#xd;
1191       &quot;onap.datatypes.native.apex.Environment&quot;: {&#xd;
1192          &quot;derived_from&quot;: &quot;tosca.datatypes.Root&quot;,&#xd;
1193          &quot;properties&quot;: {&#xd;
1194             &quot;name&quot;: {&#xd;
1195                &quot;type&quot;: &quot;string&quot;,&#xd;
1196                &quot;description&quot;: &quot;The name of the environment variable&quot;,&#xd;
1197                &quot;required&quot;: true&#xd;
1198             },&#xd;
1199             &quot;value&quot;: {&#xd;
1200                &quot;type&quot;: &quot;string&quot;,&#xd;
1201                &quot;description&quot;: &quot;The value of the environment variable&quot;,&#xd;
1202                &quot;required&quot;: true&#xd;
1203             }&#xd;
1204          }&#xd;
1205       },&#xd;
1206       &quot;onap.datatypes.native.apex.engineservice.Engine&quot;: {&#xd;
1207          &quot;derived_from&quot;: &quot;tosca.datatypes.Root&quot;,&#xd;
1208          &quot;properties&quot;: {&#xd;
1209             &quot;context&quot;: {&#xd;
1210                &quot;type&quot;: &quot;onap.datatypes.native.apex.engineservice.engine.Context&quot;,&#xd;
1211                &quot;description&quot;: &quot;The properties for handling context in APEX engines, defaults to using Java maps for context&quot;,&#xd;
1212                &quot;required&quot;: false&#xd;
1213             },&#xd;
1214             &quot;executors&quot;: {&#xd;
1215                &quot;type&quot;: &quot;map&quot;,&#xd;
1216                &quot;description&quot;: &quot;The plugins for policy executors used in engines such as javascript, MVEL, Jython&quot;,&#xd;
1217                &quot;required&quot;: true,&#xd;
1218                &quot;entry_schema&quot;: {&#xd;
1219                   &quot;description&quot;: &quot;The plugin class path for this policy executor&quot;,&#xd;
1220                   &quot;type&quot;: &quot;string&quot;&#xd;
1221                }&#xd;
1222             }&#xd;
1223          }&#xd;
1224       },&#xd;
1225       &quot;onap.datatypes.native.apex.engineservice.engine.Context&quot;: {&#xd;
1226          &quot;derived_from&quot;: &quot;tosca.datatypes.Root&quot;,&#xd;
1227          &quot;properties&quot;: {&#xd;
1228             &quot;distributor&quot;: {&#xd;
1229                &quot;type&quot;: &quot;onap.datatypes.native.apex.Plugin&quot;,&#xd;
1230                &quot;description&quot;: &quot;The plugin to be used for distributing context between APEX PDPs at runtime&quot;,&#xd;
1231                &quot;required&quot;: false&#xd;
1232             },&#xd;
1233             &quot;schemas&quot;: {&#xd;
1234                &quot;type&quot;: &quot;map&quot;,&#xd;
1235                &quot;description&quot;: &quot;The plugins for context schemas available in APEX PDPs such as Java and Avro&quot;,&#xd;
1236                &quot;required&quot;: false,&#xd;
1237                &quot;entry_schema&quot;: {&#xd;
1238                   &quot;type&quot;: &quot;onap.datatypes.native.apex.Plugin&quot;&#xd;
1239                }&#xd;
1240             },&#xd;
1241             &quot;locking&quot;: {&#xd;
1242                &quot;type&quot;: &quot;onap.datatypes.native.apex.Plugin&quot;,&#xd;
1243                &quot;description&quot;: &quot;The plugin to be used for locking context in and between APEX PDPs at runtime&quot;,&#xd;
1244                &quot;required&quot;: false&#xd;
1245             },&#xd;
1246             &quot;persistence&quot;: {&#xd;
1247                &quot;type&quot;: &quot;onap.datatypes.native.apex.Plugin&quot;,&#xd;
1248                &quot;description&quot;: &quot;The plugin to be used for persisting context for APEX PDPs at runtime&quot;,&#xd;
1249                &quot;required&quot;: false&#xd;
1250             }&#xd;
1251          }&#xd;
1252       },&#xd;
1253       &quot;onap.datatypes.native.apex.Plugin&quot;: {&#xd;
1254          &quot;derived_from&quot;: &quot;tosca.datatypes.Root&quot;,&#xd;
1255          &quot;properties&quot;: {&#xd;
1256             &quot;name&quot;: {&#xd;
1257                &quot;type&quot;: &quot;string&quot;,&#xd;
1258                &quot;description&quot;: &quot;The name of the executor such as Javascript, Jython or MVEL&quot;,&#xd;
1259                &quot;required&quot;: true&#xd;
1260             },&#xd;
1261             &quot;plugin_class_name&quot;: {&#xd;
1262                &quot;type&quot;: &quot;string&quot;,&#xd;
1263                &quot;description&quot;: &quot;The class path of the plugin class for this executor&quot;&#xd;
1264             }&#xd;
1265          }&#xd;
1266       }&#xd;
1267    }&#xd;
1268 }</stringProp>
1269                 <stringProp name="Argument.metadata">=</stringProp>
1270               </elementProp>
1271             </collectionProp>
1272           </elementProp>
1273           <stringProp name="HTTPSampler.domain">${API_HOST}</stringProp>
1274           <stringProp name="HTTPSampler.port">${API_PORT}</stringProp>
1275           <stringProp name="HTTPSampler.protocol">https</stringProp>
1276           <stringProp name="HTTPSampler.contentEncoding"></stringProp>
1277           <stringProp name="HTTPSampler.path">/policy/api/v1/policytypes</stringProp>
1278           <stringProp name="HTTPSampler.method">POST</stringProp>
1279           <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
1280           <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
1281           <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
1282           <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
1283           <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
1284           <stringProp name="HTTPSampler.connect_timeout"></stringProp>
1285           <stringProp name="HTTPSampler.response_timeout"></stringProp>
1286         </HTTPSamplerProxy>
1287         <hashTree>
1288           <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Response Assertion" enabled="true">
1289             <collectionProp name="Asserion.test_strings">
1290               <stringProp name="49586">200</stringProp>
1291             </collectionProp>
1292             <stringProp name="Assertion.custom_message"></stringProp>
1293             <stringProp name="Assertion.test_field">Assertion.response_code</stringProp>
1294             <boolProp name="Assertion.assume_success">false</boolProp>
1295             <intProp name="Assertion.test_type">1</intProp>
1296           </ResponseAssertion>
1297           <hashTree/>
1298           <JSR223Assertion guiclass="TestBeanGUI" testclass="JSR223Assertion" testname="JSR223 Assertion" enabled="true">
1299             <stringProp name="scriptLanguage">groovy</stringProp>
1300             <stringProp name="parameters"></stringProp>
1301             <stringProp name="filename"></stringProp>
1302             <stringProp name="cacheKey">true</stringProp>
1303             <stringProp name="script">import groovy.json.JsonSlurper;
1304
1305 def res = [];
1306 if (prev.getResponseCode() == &apos;200&apos;) {
1307     def jsonSlurper = new JsonSlurper();
1308     res = jsonSlurper.parseText(prev.getResponseDataAsString());
1309
1310     assert res instanceof Map;
1311     assert res.policy_types instanceof Map;
1312     assert res.policy_types.size() == 2;
1313     assert res.policy_types.values()[0] instanceof Map;
1314     assert res.policy_types.values()[1] instanceof Map;
1315 }</stringProp>
1316           </JSR223Assertion>
1317           <hashTree/>
1318         </hashTree>
1319         <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Create Policy Type Native Drools" enabled="true">
1320           <boolProp name="HTTPSampler.postBodyRaw">true</boolProp>
1321           <elementProp name="HTTPsampler.Arguments" elementType="Arguments">
1322             <collectionProp name="Arguments.arguments">
1323               <elementProp name="" elementType="HTTPArgument">
1324                 <boolProp name="HTTPArgument.always_encode">false</boolProp>
1325                 <stringProp name="Argument.value">{&#xd;
1326    &quot;tosca_definitions_version&quot;: &quot;tosca_simple_yaml_1_1_0&quot;,&#xd;
1327    &quot;policy_types&quot;: {&#xd;
1328       &quot;onap.policies.Native&quot;: {&#xd;
1329          &quot;derived_from&quot;: &quot;tosca.policies.Root&quot;,&#xd;
1330          &quot;description&quot;: &quot;a base policy type for all native PDP policies&quot;,&#xd;
1331          &quot;version&quot;: &quot;1.0.0&quot;&#xd;
1332       },&#xd;
1333       &quot;onap.policies.native.Drools&quot;: {&#xd;
1334          &quot;derived_from&quot;: &quot;onap.policies.Native&quot;,&#xd;
1335          &quot;description&quot;: &quot;a base policy type for all native PDP policies&quot;,&#xd;
1336          &quot;version&quot;: &quot;1.0.0&quot;&#xd;
1337       },&#xd;
1338       &quot;onap.policies.native.drools.Controller&quot;: {&#xd;
1339          &quot;derived_from&quot;: &quot;onap.policies.native.Drools&quot;,&#xd;
1340          &quot;description&quot;: &quot;a policy type for a drools controller configuration&quot;,&#xd;
1341          &quot;version&quot;: &quot;6.0.${__threadNum}&quot;,&#xd;
1342          &quot;properties&quot;: {&#xd;
1343             &quot;controllerName&quot;: {&#xd;
1344                &quot;type&quot;: &quot;string&quot;,&#xd;
1345                &quot;required&quot;: true,&#xd;
1346                &quot;description&quot;: &quot;the drools controller name&quot;&#xd;
1347             },&#xd;
1348             &quot;sourceTopics&quot;: {&#xd;
1349                &quot;type&quot;: &quot;list&quot;,&#xd;
1350                &quot;required&quot;: false,&#xd;
1351                &quot;description&quot;: &quot;source topics and applicable events&quot;,&#xd;
1352                &quot;entry_schema&quot;: {&#xd;
1353                   &quot;type&quot;: &quot;onap.datatypes.dmaap.topic&quot;&#xd;
1354                }&#xd;
1355             },&#xd;
1356             &quot;sinkTopics&quot;: {&#xd;
1357                &quot;type&quot;: &quot;list&quot;,&#xd;
1358                &quot;required&quot;: false,&#xd;
1359                &quot;description&quot;: &quot;sink topics and applicable events&quot;,&#xd;
1360                &quot;entry_schema&quot;: {&#xd;
1361                   &quot;type&quot;: &quot;onap.datatypes.dmaap.topic&quot;&#xd;
1362                }&#xd;
1363             },&#xd;
1364             &quot;customConfig&quot;: {&#xd;
1365                &quot;type&quot;: &quot;map&quot;,&#xd;
1366                &quot;required&quot;: false,&#xd;
1367                &quot;description&quot;: &quot;any use case specific configurations relevant to the drools controller&quot;,&#xd;
1368                &quot;entry_schema&quot;: {&#xd;
1369                   &quot;type&quot;: &quot;string&quot;&#xd;
1370                }&#xd;
1371             }&#xd;
1372          }&#xd;
1373       },&#xd;
1374       &quot;onap.policies.native.drools.Artifact&quot;: {&#xd;
1375          &quot;derived_from&quot;: &quot;onap.policies.native.Drools&quot;,&#xd;
1376          &quot;description&quot;: &quot;a policy type for native drools artifact policies&quot;,&#xd;
1377          &quot;version&quot;: &quot;6.0.${__threadNum}&quot;,&#xd;
1378          &quot;properties&quot;: {&#xd;
1379             &quot;rulesArtifact&quot;: {&#xd;
1380                &quot;type&quot;: &quot;onap.datatypes.native.rules_artifact&quot;,&#xd;
1381                &quot;required&quot;: true,&#xd;
1382                &quot;description&quot;: &quot;the GAV information of the maven artifact&quot;&#xd;
1383             },&#xd;
1384             &quot;controller&quot;: {&#xd;
1385                &quot;type&quot;: &quot;onap.datatypes.drools.controller.relation&quot;,&#xd;
1386                &quot;required&quot;: true,&#xd;
1387                &quot;description&quot;: &quot;the drools controller to which the current native policy is assigned&quot;&#xd;
1388             }&#xd;
1389          }&#xd;
1390       }&#xd;
1391    },&#xd;
1392    &quot;data_types&quot;: {&#xd;
1393       &quot;onap.datatypes.dmaap.topic&quot;: {&#xd;
1394          &quot;derived_from&quot;: &quot;tosca.datatypes.Root&quot;,&#xd;
1395          &quot;properties&quot;: {&#xd;
1396             &quot;topicName&quot;: {&#xd;
1397                &quot;type&quot;: &quot;string&quot;,&#xd;
1398                &quot;required&quot;: true,&#xd;
1399                &quot;description&quot;: &quot;the dmaap topic name&quot;&#xd;
1400             },&#xd;
1401             &quot;events&quot;: {&#xd;
1402                &quot;type&quot;: &quot;list&quot;,&#xd;
1403                &quot;required&quot;: true,&#xd;
1404                &quot;description&quot;: &quot;events used by this topic&quot;,&#xd;
1405                &quot;entry_schema&quot;: {&#xd;
1406                   &quot;type&quot;: &quot;onap.datatypes.dmaap.events&quot;&#xd;
1407                }&#xd;
1408             }&#xd;
1409          }&#xd;
1410       },&#xd;
1411       &quot;onap.datatypes.dmaap.events&quot;: {&#xd;
1412          &quot;derived_from&quot;: &quot;tosca.datatypes.Root&quot;,&#xd;
1413          &quot;properties&quot;: {&#xd;
1414             &quot;eventClass&quot;: {&#xd;
1415                &quot;type&quot;: &quot;string&quot;,&#xd;
1416                &quot;required&quot;: true,&#xd;
1417                &quot;description&quot;: &quot;the event canonical class for serialization&quot;&#xd;
1418             },&#xd;
1419             &quot;eventFilter&quot;: {&#xd;
1420                &quot;type&quot;: &quot;string&quot;,&#xd;
1421                &quot;required&quot;: false,&#xd;
1422                &quot;description&quot;: &quot;the JSONPath based condition to filter out the events to serialize&quot;&#xd;
1423             },&#xd;
1424             &quot;customSerialization&quot;: {&#xd;
1425                &quot;type&quot;: &quot;onap.datatypes.dmaap.custom_serialization&quot;,&#xd;
1426                &quot;required&quot;: false,&#xd;
1427                &quot;description&quot;: &quot;overrides the default serialization/deserialization mechanisms with custom ones&quot;&#xd;
1428             }&#xd;
1429          }&#xd;
1430       },&#xd;
1431       &quot;onap.datatypes.dmaap.custom_serialization&quot;: {&#xd;
1432          &quot;derived_from&quot;: &quot;tosca.datatypes.Root&quot;,&#xd;
1433          &quot;properties&quot;: {&#xd;
1434             &quot;customSerializerClass&quot;: {&#xd;
1435                &quot;type&quot;: &quot;string&quot;,&#xd;
1436                &quot;required&quot;: true,&#xd;
1437                &quot;description&quot;: &quot;the class that contains the JSON parser serializer/deserializer.&quot;&#xd;
1438             },&#xd;
1439             &quot;jsonParser&quot;: {&#xd;
1440                &quot;type&quot;: &quot;string&quot;,&#xd;
1441                &quot;required&quot;: true,&#xd;
1442                &quot;description&quot;: &quot;static field in customSerialized class with the json parser (currently only gson supported)&quot;&#xd;
1443             }&#xd;
1444          }&#xd;
1445       },&#xd;
1446       &quot;onap.datatypes.native.rules_artifact&quot;: {&#xd;
1447          &quot;derived_from&quot;: &quot;tosca.datatypes.Root&quot;,&#xd;
1448          &quot;properties&quot;: {&#xd;
1449             &quot;groupId&quot;: {&#xd;
1450                &quot;type&quot;: &quot;string&quot;,&#xd;
1451                &quot;required&quot;: true,&#xd;
1452                &quot;description&quot;: &quot;the groupId of the maven artifact&quot;&#xd;
1453             },&#xd;
1454             &quot;artifactId&quot;: {&#xd;
1455                &quot;type&quot;: &quot;string&quot;,&#xd;
1456                &quot;required&quot;: true,&#xd;
1457                &quot;description&quot;: &quot;the artifactId of the maven artifact&quot;&#xd;
1458             },&#xd;
1459             &quot;version&quot;: {&#xd;
1460                &quot;type&quot;: &quot;string&quot;,&#xd;
1461                &quot;required&quot;: true,&#xd;
1462                &quot;description&quot;: &quot;the version of the maven artifact&quot;&#xd;
1463             }&#xd;
1464          }&#xd;
1465       },&#xd;
1466       &quot;onap.datatypes.drools.controller.relation&quot;: {&#xd;
1467          &quot;derived_from&quot;: &quot;tosca.datatypes.Root&quot;,&#xd;
1468          &quot;properties&quot;: {&#xd;
1469             &quot;name&quot;: {&#xd;
1470                &quot;type&quot;: &quot;string&quot;,&#xd;
1471                &quot;required&quot;: true,&#xd;
1472                &quot;description&quot;: &quot;the name of drools controller policy&quot;&#xd;
1473             }&#xd;
1474          }&#xd;
1475       }&#xd;
1476    }&#xd;
1477 }</stringProp>
1478                 <stringProp name="Argument.metadata">=</stringProp>
1479               </elementProp>
1480             </collectionProp>
1481           </elementProp>
1482           <stringProp name="HTTPSampler.domain">${API_HOST}</stringProp>
1483           <stringProp name="HTTPSampler.port">${API_PORT}</stringProp>
1484           <stringProp name="HTTPSampler.protocol">https</stringProp>
1485           <stringProp name="HTTPSampler.contentEncoding"></stringProp>
1486           <stringProp name="HTTPSampler.path">/policy/api/v1/policytypes</stringProp>
1487           <stringProp name="HTTPSampler.method">POST</stringProp>
1488           <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
1489           <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
1490           <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
1491           <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
1492           <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
1493           <stringProp name="HTTPSampler.connect_timeout"></stringProp>
1494           <stringProp name="HTTPSampler.response_timeout"></stringProp>
1495         </HTTPSamplerProxy>
1496         <hashTree>
1497           <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Response Assertion" enabled="true">
1498             <collectionProp name="Asserion.test_strings">
1499               <stringProp name="49586">200</stringProp>
1500             </collectionProp>
1501             <stringProp name="Assertion.custom_message"></stringProp>
1502             <stringProp name="Assertion.test_field">Assertion.response_code</stringProp>
1503             <boolProp name="Assertion.assume_success">false</boolProp>
1504             <intProp name="Assertion.test_type">1</intProp>
1505           </ResponseAssertion>
1506           <hashTree/>
1507           <JSR223Assertion guiclass="TestBeanGUI" testclass="JSR223Assertion" testname="JSR223 Assertion" enabled="true">
1508             <stringProp name="scriptLanguage">groovy</stringProp>
1509             <stringProp name="parameters"></stringProp>
1510             <stringProp name="filename"></stringProp>
1511             <stringProp name="cacheKey">true</stringProp>
1512             <stringProp name="script">import groovy.json.JsonSlurper;
1513
1514 def res = [];
1515 if (prev.getResponseCode() == &apos;200&apos;) {
1516     def jsonSlurper = new JsonSlurper();
1517     res = jsonSlurper.parseText(prev.getResponseDataAsString());
1518
1519     assert res instanceof Map;
1520     assert res.policy_types instanceof Map;
1521     assert res.policy_types.size() == 4;
1522     assert res.policy_types.values()[0] instanceof Map;
1523     assert res.policy_types.values()[1] instanceof Map;
1524     assert res.policy_types.values()[2] instanceof Map;
1525     assert res.policy_types.values()[3] instanceof Map;        
1526 }</stringProp>
1527           </JSR223Assertion>
1528           <hashTree/>
1529         </hashTree>
1530         <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Create Policy Type Native XACML" enabled="true">
1531           <boolProp name="HTTPSampler.postBodyRaw">true</boolProp>
1532           <elementProp name="HTTPsampler.Arguments" elementType="Arguments">
1533             <collectionProp name="Arguments.arguments">
1534               <elementProp name="" elementType="HTTPArgument">
1535                 <boolProp name="HTTPArgument.always_encode">false</boolProp>
1536                 <stringProp name="Argument.value">{&#xd;
1537    &quot;tosca_definitions_version&quot;: &quot;tosca_simple_yaml_1_1_0&quot;,&#xd;
1538    &quot;policy_types&quot;: {&#xd;
1539       &quot;onap.policies.Native&quot;: {&#xd;
1540          &quot;derived_from&quot;: &quot;tosca.policies.Root&quot;,&#xd;
1541          &quot;description&quot;: &quot;a base policy type for all native PDP policies&quot;,&#xd;
1542          &quot;version&quot;: &quot;1.0.0&quot;&#xd;
1543       },&#xd;
1544       &quot;onap.policies.native.Xacml&quot;: {&#xd;
1545          &quot;derived_from&quot;: &quot;onap.policies.Native&quot;,&#xd;
1546          &quot;description&quot;: &quot;a policy type for native xacml policies&quot;,&#xd;
1547          &quot;version&quot;: &quot;6.0.${__threadNum}&quot;,&#xd;
1548          &quot;properties&quot;: {&#xd;
1549             &quot;policy&quot;: {&#xd;
1550                &quot;type&quot;: &quot;string&quot;,&#xd;
1551                &quot;required&quot;: true,&#xd;
1552                &quot;description&quot;: &quot;The XML XACML 3.0 PolicySet or Policy&quot;,&#xd;
1553                &quot;metadata&quot;: {&#xd;
1554                   &quot;encoding&quot;: &quot;Base64&quot;&#xd;
1555                }&#xd;
1556             }&#xd;
1557          }&#xd;
1558       }&#xd;
1559    }&#xd;
1560 }</stringProp>
1561                 <stringProp name="Argument.metadata">=</stringProp>
1562               </elementProp>
1563             </collectionProp>
1564           </elementProp>
1565           <stringProp name="HTTPSampler.domain">${API_HOST}</stringProp>
1566           <stringProp name="HTTPSampler.port">${API_PORT}</stringProp>
1567           <stringProp name="HTTPSampler.protocol">https</stringProp>
1568           <stringProp name="HTTPSampler.contentEncoding"></stringProp>
1569           <stringProp name="HTTPSampler.path">/policy/api/v1/policytypes</stringProp>
1570           <stringProp name="HTTPSampler.method">POST</stringProp>
1571           <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
1572           <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
1573           <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
1574           <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
1575           <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
1576           <stringProp name="HTTPSampler.connect_timeout"></stringProp>
1577           <stringProp name="HTTPSampler.response_timeout"></stringProp>
1578         </HTTPSamplerProxy>
1579         <hashTree>
1580           <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Response Assertion" enabled="true">
1581             <collectionProp name="Asserion.test_strings">
1582               <stringProp name="49586">200</stringProp>
1583             </collectionProp>
1584             <stringProp name="Assertion.custom_message"></stringProp>
1585             <stringProp name="Assertion.test_field">Assertion.response_code</stringProp>
1586             <boolProp name="Assertion.assume_success">false</boolProp>
1587             <intProp name="Assertion.test_type">1</intProp>
1588           </ResponseAssertion>
1589           <hashTree/>
1590           <JSR223Assertion guiclass="TestBeanGUI" testclass="JSR223Assertion" testname="JSR223 Assertion" enabled="true">
1591             <stringProp name="scriptLanguage">groovy</stringProp>
1592             <stringProp name="parameters"></stringProp>
1593             <stringProp name="filename"></stringProp>
1594             <stringProp name="cacheKey">true</stringProp>
1595             <stringProp name="script">import groovy.json.JsonSlurper;
1596
1597 def res = [];
1598 if (prev.getResponseCode() == &apos;200&apos;) {
1599     def jsonSlurper = new JsonSlurper();
1600     res = jsonSlurper.parseText(prev.getResponseDataAsString());
1601
1602     assert res instanceof Map;
1603     assert res.policy_types instanceof Map;
1604     assert res.policy_types.size() == 2;
1605     assert res.policy_types.values()[0] instanceof Map;
1606     assert res.policy_types.values()[1] instanceof Map;
1607 }</stringProp>
1608           </JSR223Assertion>
1609           <hashTree/>
1610         </hashTree>
1611         <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Get All Policy Types" enabled="true">
1612           <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
1613             <collectionProp name="Arguments.arguments"/>
1614           </elementProp>
1615           <stringProp name="HTTPSampler.domain">${API_HOST}</stringProp>
1616           <stringProp name="HTTPSampler.port">${API_PORT}</stringProp>
1617           <stringProp name="HTTPSampler.protocol">https</stringProp>
1618           <stringProp name="HTTPSampler.contentEncoding"></stringProp>
1619           <stringProp name="HTTPSampler.path">/policy/api/v1/policytypes</stringProp>
1620           <stringProp name="HTTPSampler.method">GET</stringProp>
1621           <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
1622           <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
1623           <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
1624           <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
1625           <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
1626           <stringProp name="HTTPSampler.connect_timeout"></stringProp>
1627           <stringProp name="HTTPSampler.response_timeout"></stringProp>
1628         </HTTPSamplerProxy>
1629         <hashTree>
1630           <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Response Assertion" enabled="true">
1631             <collectionProp name="Asserion.test_strings">
1632               <stringProp name="49586">200</stringProp>
1633             </collectionProp>
1634             <stringProp name="Assertion.custom_message"></stringProp>
1635             <stringProp name="Assertion.test_field">Assertion.response_code</stringProp>
1636             <boolProp name="Assertion.assume_success">false</boolProp>
1637             <intProp name="Assertion.test_type">1</intProp>
1638           </ResponseAssertion>
1639           <hashTree/>
1640           <JSR223Assertion guiclass="TestBeanGUI" testclass="JSR223Assertion" testname="JSR223 Assertion" enabled="true">
1641             <stringProp name="scriptLanguage">groovy</stringProp>
1642             <stringProp name="parameters"></stringProp>
1643             <stringProp name="filename"></stringProp>
1644             <stringProp name="cacheKey">true</stringProp>
1645             <stringProp name="script">import groovy.json.JsonSlurper;
1646
1647 def res = [];
1648 if (prev.getResponseCode() == &apos;200&apos;) {
1649     def jsonSlurper = new JsonSlurper();
1650     res = jsonSlurper.parseText(prev.getResponseDataAsString());
1651
1652     assert res instanceof Map;
1653     assert res.policy_types instanceof Map;
1654     assert res.policy_types.size() == 35;
1655
1656     def n = 33;
1657     for (i=0; i&lt;n; i++) {
1658         assert res.policy_types.values()[i] instanceof Map;     
1659     }
1660 }</stringProp>
1661           </JSR223Assertion>
1662           <hashTree/>
1663         </hashTree>
1664         <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Get All Versions of TCA Policy Type" enabled="true">
1665           <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
1666             <collectionProp name="Arguments.arguments"/>
1667           </elementProp>
1668           <stringProp name="HTTPSampler.domain">${API_HOST}</stringProp>
1669           <stringProp name="HTTPSampler.port">${API_PORT}</stringProp>
1670           <stringProp name="HTTPSampler.protocol">https</stringProp>
1671           <stringProp name="HTTPSampler.contentEncoding"></stringProp>
1672           <stringProp name="HTTPSampler.path">/policy/api/v1/policytypes/onap.policies.monitoring.cdap.tca.hi.lo.app</stringProp>
1673           <stringProp name="HTTPSampler.method">GET</stringProp>
1674           <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
1675           <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
1676           <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
1677           <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
1678           <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
1679           <stringProp name="HTTPSampler.connect_timeout"></stringProp>
1680           <stringProp name="HTTPSampler.response_timeout"></stringProp>
1681           <stringProp name="TestPlan.comments">This is not working in Frankfurt and hence disabled.</stringProp>
1682         </HTTPSamplerProxy>
1683         <hashTree>
1684           <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Response Assertion" enabled="true">
1685             <collectionProp name="Asserion.test_strings">
1686               <stringProp name="49586">200</stringProp>
1687             </collectionProp>
1688             <stringProp name="Assertion.custom_message"></stringProp>
1689             <stringProp name="Assertion.test_field">Assertion.response_code</stringProp>
1690             <boolProp name="Assertion.assume_success">false</boolProp>
1691             <intProp name="Assertion.test_type">1</intProp>
1692           </ResponseAssertion>
1693           <hashTree/>
1694           <JSR223Assertion guiclass="TestBeanGUI" testclass="JSR223Assertion" testname="JSR223 Assertion" enabled="true">
1695             <stringProp name="scriptLanguage">groovy</stringProp>
1696             <stringProp name="parameters"></stringProp>
1697             <stringProp name="filename"></stringProp>
1698             <stringProp name="cacheKey">true</stringProp>
1699             <stringProp name="script">import groovy.json.JsonSlurper;
1700
1701 def res = [];
1702 if (prev.getResponseCode() == &apos;200&apos;) {
1703     def jsonSlurper = new JsonSlurper();
1704     res = jsonSlurper.parseText(prev.getResponseDataAsString());
1705
1706     assert res instanceof Map;
1707     assert res.policy_types instanceof Map;
1708     assert res.policy_types.size() &gt; 0 &amp;&amp; res.policy_types.size() &lt; 10;
1709
1710     for (i=0; i&lt;res.policy_types.size(); i++) {
1711         assert res.policy_types.values()[i] instanceof Map;     
1712     }
1713 }</stringProp>
1714           </JSR223Assertion>
1715           <hashTree/>
1716         </hashTree>
1717         <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Get Policy Type Monitoring" enabled="true">
1718           <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
1719             <collectionProp name="Arguments.arguments"/>
1720           </elementProp>
1721           <stringProp name="HTTPSampler.domain">${API_HOST}</stringProp>
1722           <stringProp name="HTTPSampler.port">${API_PORT}</stringProp>
1723           <stringProp name="HTTPSampler.protocol">https</stringProp>
1724           <stringProp name="HTTPSampler.contentEncoding"></stringProp>
1725           <stringProp name="HTTPSampler.path">/policy/api/v1/policytypes/onap.policies.monitoring.cdap.tca.hi.lo.app/versions/6.0.${__threadNum}</stringProp>
1726           <stringProp name="HTTPSampler.method">GET</stringProp>
1727           <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
1728           <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
1729           <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
1730           <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
1731           <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
1732           <stringProp name="HTTPSampler.connect_timeout"></stringProp>
1733           <stringProp name="HTTPSampler.response_timeout"></stringProp>
1734         </HTTPSamplerProxy>
1735         <hashTree>
1736           <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Response Assertion" enabled="true">
1737             <collectionProp name="Asserion.test_strings">
1738               <stringProp name="49586">200</stringProp>
1739             </collectionProp>
1740             <stringProp name="Assertion.custom_message"></stringProp>
1741             <stringProp name="Assertion.test_field">Assertion.response_code</stringProp>
1742             <boolProp name="Assertion.assume_success">false</boolProp>
1743             <intProp name="Assertion.test_type">1</intProp>
1744           </ResponseAssertion>
1745           <hashTree/>
1746           <JSR223Assertion guiclass="TestBeanGUI" testclass="JSR223Assertion" testname="JSR223 Assertion" enabled="true">
1747             <stringProp name="scriptLanguage">groovy</stringProp>
1748             <stringProp name="parameters"></stringProp>
1749             <stringProp name="filename"></stringProp>
1750             <stringProp name="cacheKey">true</stringProp>
1751             <stringProp name="script">import groovy.json.JsonSlurper;
1752
1753 def res = [];
1754 if (prev.getResponseCode() == &apos;200&apos;) {
1755     def jsonSlurper = new JsonSlurper();
1756     res = jsonSlurper.parseText(prev.getResponseDataAsString());
1757
1758     assert res instanceof Map;
1759     assert res.policy_types instanceof Map;
1760     assert res.policy_types.size() == 2;
1761
1762     assert res.policy_types.get(&apos;onap.policies.monitoring.cdap.tca.hi.lo.app&apos;) instanceof Map;
1763     assert res.policy_types.get(&apos;onap.policies.monitoring.cdap.tca.hi.lo.app&apos;).version == &quot;6.0.${__threadNum}&quot;;
1764 }</stringProp>
1765           </JSR223Assertion>
1766           <hashTree/>
1767         </hashTree>
1768         <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Get Policy Type Optimization" enabled="true">
1769           <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
1770             <collectionProp name="Arguments.arguments"/>
1771           </elementProp>
1772           <stringProp name="HTTPSampler.domain">${API_HOST}</stringProp>
1773           <stringProp name="HTTPSampler.port">${API_PORT}</stringProp>
1774           <stringProp name="HTTPSampler.protocol">https</stringProp>
1775           <stringProp name="HTTPSampler.contentEncoding"></stringProp>
1776           <stringProp name="HTTPSampler.path">/policy/api/v1/policytypes/onap.policies.optimization.resource.AffinityPolicy/versions/6.0.${__threadNum}</stringProp>
1777           <stringProp name="HTTPSampler.method">GET</stringProp>
1778           <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
1779           <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
1780           <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
1781           <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
1782           <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
1783           <stringProp name="HTTPSampler.connect_timeout"></stringProp>
1784           <stringProp name="HTTPSampler.response_timeout"></stringProp>
1785         </HTTPSamplerProxy>
1786         <hashTree>
1787           <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Response Assertion" enabled="true">
1788             <collectionProp name="Asserion.test_strings">
1789               <stringProp name="49586">200</stringProp>
1790             </collectionProp>
1791             <stringProp name="Assertion.custom_message"></stringProp>
1792             <stringProp name="Assertion.test_field">Assertion.response_code</stringProp>
1793             <boolProp name="Assertion.assume_success">false</boolProp>
1794             <intProp name="Assertion.test_type">1</intProp>
1795           </ResponseAssertion>
1796           <hashTree/>
1797           <JSR223Assertion guiclass="TestBeanGUI" testclass="JSR223Assertion" testname="JSR223 Assertion" enabled="true">
1798             <stringProp name="scriptLanguage">groovy</stringProp>
1799             <stringProp name="parameters"></stringProp>
1800             <stringProp name="filename"></stringProp>
1801             <stringProp name="cacheKey">true</stringProp>
1802             <stringProp name="script">import groovy.json.JsonSlurper;
1803
1804 def res = [];
1805 if (prev.getResponseCode() == &apos;200&apos;) {
1806     def jsonSlurper = new JsonSlurper();
1807     res = jsonSlurper.parseText(prev.getResponseDataAsString());
1808
1809     assert res instanceof Map;
1810     assert res.policy_types instanceof Map;
1811     assert res.policy_types.size() == 3;
1812
1813     assert res.policy_types.get(&apos;onap.policies.optimization.resource.AffinityPolicy&apos;) instanceof Map;
1814     assert res.policy_types.get(&apos;onap.policies.optimization.resource.AffinityPolicy&apos;).version == &quot;6.0.${__threadNum}&quot;;
1815 }</stringProp>
1816           </JSR223Assertion>
1817           <hashTree/>
1818         </hashTree>
1819         <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Get Policy Type Guard" enabled="true">
1820           <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
1821             <collectionProp name="Arguments.arguments"/>
1822           </elementProp>
1823           <stringProp name="HTTPSampler.domain">${API_HOST}</stringProp>
1824           <stringProp name="HTTPSampler.port">${API_PORT}</stringProp>
1825           <stringProp name="HTTPSampler.protocol">https</stringProp>
1826           <stringProp name="HTTPSampler.contentEncoding"></stringProp>
1827           <stringProp name="HTTPSampler.path">/policy/api/v1/policytypes/onap.policies.controlloop.guard.common.Blacklist/versions/6.0.${__threadNum}</stringProp>
1828           <stringProp name="HTTPSampler.method">GET</stringProp>
1829           <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
1830           <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
1831           <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
1832           <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
1833           <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
1834           <stringProp name="HTTPSampler.connect_timeout"></stringProp>
1835           <stringProp name="HTTPSampler.response_timeout"></stringProp>
1836         </HTTPSamplerProxy>
1837         <hashTree>
1838           <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Response Assertion" enabled="true">
1839             <collectionProp name="Asserion.test_strings">
1840               <stringProp name="49586">200</stringProp>
1841             </collectionProp>
1842             <stringProp name="Assertion.custom_message"></stringProp>
1843             <stringProp name="Assertion.test_field">Assertion.response_code</stringProp>
1844             <boolProp name="Assertion.assume_success">false</boolProp>
1845             <intProp name="Assertion.test_type">1</intProp>
1846           </ResponseAssertion>
1847           <hashTree/>
1848           <JSR223Assertion guiclass="TestBeanGUI" testclass="JSR223Assertion" testname="JSR223 Assertion" enabled="true">
1849             <stringProp name="scriptLanguage">groovy</stringProp>
1850             <stringProp name="parameters"></stringProp>
1851             <stringProp name="filename"></stringProp>
1852             <stringProp name="cacheKey">true</stringProp>
1853             <stringProp name="script">import groovy.json.JsonSlurper;
1854
1855 def res = [];
1856 if (prev.getResponseCode() == &apos;200&apos;) {
1857     def jsonSlurper = new JsonSlurper();
1858     res = jsonSlurper.parseText(prev.getResponseDataAsString());
1859
1860     assert res instanceof Map;
1861     assert res.policy_types instanceof Map;
1862     assert res.policy_types.size() == 2;
1863
1864     assert res.policy_types.get(&apos;onap.policies.controlloop.guard.common.Blacklist&apos;) instanceof Map;
1865     assert res.policy_types.get(&apos;onap.policies.controlloop.guard.common.Blacklist&apos;).version == &quot;6.0.${__threadNum}&quot;;
1866 }</stringProp>
1867           </JSR223Assertion>
1868           <hashTree/>
1869         </hashTree>
1870         <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Get Policy Type Native APEX" enabled="true">
1871           <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
1872             <collectionProp name="Arguments.arguments"/>
1873           </elementProp>
1874           <stringProp name="HTTPSampler.domain">${API_HOST}</stringProp>
1875           <stringProp name="HTTPSampler.port">${API_PORT}</stringProp>
1876           <stringProp name="HTTPSampler.protocol">https</stringProp>
1877           <stringProp name="HTTPSampler.contentEncoding"></stringProp>
1878           <stringProp name="HTTPSampler.path">/policy/api/v1/policytypes/onap.policies.native.Apex/versions/6.0.${__threadNum}</stringProp>
1879           <stringProp name="HTTPSampler.method">GET</stringProp>
1880           <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
1881           <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
1882           <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
1883           <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
1884           <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
1885           <stringProp name="HTTPSampler.connect_timeout"></stringProp>
1886           <stringProp name="HTTPSampler.response_timeout"></stringProp>
1887         </HTTPSamplerProxy>
1888         <hashTree>
1889           <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Response Assertion" enabled="true">
1890             <collectionProp name="Asserion.test_strings">
1891               <stringProp name="49586">200</stringProp>
1892             </collectionProp>
1893             <stringProp name="Assertion.custom_message"></stringProp>
1894             <stringProp name="Assertion.test_field">Assertion.response_code</stringProp>
1895             <boolProp name="Assertion.assume_success">false</boolProp>
1896             <intProp name="Assertion.test_type">1</intProp>
1897           </ResponseAssertion>
1898           <hashTree/>
1899           <JSR223Assertion guiclass="TestBeanGUI" testclass="JSR223Assertion" testname="JSR223 Assertion" enabled="true">
1900             <stringProp name="scriptLanguage">groovy</stringProp>
1901             <stringProp name="parameters"></stringProp>
1902             <stringProp name="filename"></stringProp>
1903             <stringProp name="cacheKey">true</stringProp>
1904             <stringProp name="script">import groovy.json.JsonSlurper;
1905
1906 def res = [];
1907 if (prev.getResponseCode() == &apos;200&apos;) {
1908     def jsonSlurper = new JsonSlurper();
1909     res = jsonSlurper.parseText(prev.getResponseDataAsString());
1910
1911     assert res instanceof Map;
1912     assert res.policy_types instanceof Map;
1913     assert res.policy_types.size() == 2;
1914
1915     assert res.policy_types.get(&apos;onap.policies.native.Apex&apos;) instanceof Map;
1916     assert res.policy_types.get(&apos;onap.policies.native.Apex&apos;).version == &quot;6.0.${__threadNum}&quot;;
1917 }</stringProp>
1918           </JSR223Assertion>
1919           <hashTree/>
1920         </hashTree>
1921         <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Get Policy Type Native Drools" enabled="true">
1922           <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
1923             <collectionProp name="Arguments.arguments"/>
1924           </elementProp>
1925           <stringProp name="HTTPSampler.domain">${API_HOST}</stringProp>
1926           <stringProp name="HTTPSampler.port">${API_PORT}</stringProp>
1927           <stringProp name="HTTPSampler.protocol">https</stringProp>
1928           <stringProp name="HTTPSampler.contentEncoding"></stringProp>
1929           <stringProp name="HTTPSampler.path">/policy/api/v1/policytypes/onap.policies.native.drools.Controller/versions/6.0.${__threadNum}</stringProp>
1930           <stringProp name="HTTPSampler.method">GET</stringProp>
1931           <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
1932           <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
1933           <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
1934           <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
1935           <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
1936           <stringProp name="HTTPSampler.connect_timeout"></stringProp>
1937           <stringProp name="HTTPSampler.response_timeout"></stringProp>
1938         </HTTPSamplerProxy>
1939         <hashTree>
1940           <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Response Assertion" enabled="true">
1941             <collectionProp name="Asserion.test_strings">
1942               <stringProp name="49586">200</stringProp>
1943             </collectionProp>
1944             <stringProp name="Assertion.custom_message"></stringProp>
1945             <stringProp name="Assertion.test_field">Assertion.response_code</stringProp>
1946             <boolProp name="Assertion.assume_success">false</boolProp>
1947             <intProp name="Assertion.test_type">1</intProp>
1948           </ResponseAssertion>
1949           <hashTree/>
1950           <JSR223Assertion guiclass="TestBeanGUI" testclass="JSR223Assertion" testname="JSR223 Assertion" enabled="true">
1951             <stringProp name="scriptLanguage">groovy</stringProp>
1952             <stringProp name="parameters"></stringProp>
1953             <stringProp name="filename"></stringProp>
1954             <stringProp name="cacheKey">true</stringProp>
1955             <stringProp name="script">import groovy.json.JsonSlurper;
1956
1957 def res = [];
1958 if (prev.getResponseCode() == &apos;200&apos;) {
1959     def jsonSlurper = new JsonSlurper();
1960     res = jsonSlurper.parseText(prev.getResponseDataAsString());
1961
1962     assert res instanceof Map;
1963     assert res.policy_types instanceof Map;
1964     assert res.policy_types.size() == 3;
1965
1966     assert res.policy_types.get(&apos;onap.policies.native.drools.Controller&apos;) instanceof Map;
1967     assert res.policy_types.get(&apos;onap.policies.native.drools.Controller&apos;).version == &quot;6.0.${__threadNum}&quot;;
1968 }</stringProp>
1969           </JSR223Assertion>
1970           <hashTree/>
1971         </hashTree>
1972         <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Get Policy Type Native XACML" enabled="true">
1973           <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
1974             <collectionProp name="Arguments.arguments"/>
1975           </elementProp>
1976           <stringProp name="HTTPSampler.domain">${API_HOST}</stringProp>
1977           <stringProp name="HTTPSampler.port">${API_PORT}</stringProp>
1978           <stringProp name="HTTPSampler.protocol">https</stringProp>
1979           <stringProp name="HTTPSampler.contentEncoding"></stringProp>
1980           <stringProp name="HTTPSampler.path">/policy/api/v1/policytypes/onap.policies.native.Xacml/versions/6.0.${__threadNum}</stringProp>
1981           <stringProp name="HTTPSampler.method">GET</stringProp>
1982           <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
1983           <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
1984           <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
1985           <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
1986           <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
1987           <stringProp name="HTTPSampler.connect_timeout"></stringProp>
1988           <stringProp name="HTTPSampler.response_timeout"></stringProp>
1989         </HTTPSamplerProxy>
1990         <hashTree>
1991           <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Response Assertion" enabled="true">
1992             <collectionProp name="Asserion.test_strings">
1993               <stringProp name="49586">200</stringProp>
1994             </collectionProp>
1995             <stringProp name="Assertion.custom_message"></stringProp>
1996             <stringProp name="Assertion.test_field">Assertion.response_code</stringProp>
1997             <boolProp name="Assertion.assume_success">false</boolProp>
1998             <intProp name="Assertion.test_type">1</intProp>
1999           </ResponseAssertion>
2000           <hashTree/>
2001           <JSR223Assertion guiclass="TestBeanGUI" testclass="JSR223Assertion" testname="JSR223 Assertion" enabled="true">
2002             <stringProp name="scriptLanguage">groovy</stringProp>
2003             <stringProp name="parameters"></stringProp>
2004             <stringProp name="filename"></stringProp>
2005             <stringProp name="cacheKey">true</stringProp>
2006             <stringProp name="script">import groovy.json.JsonSlurper;
2007
2008 def res = [];
2009 if (prev.getResponseCode() == &apos;200&apos;) {
2010     def jsonSlurper = new JsonSlurper();
2011     res = jsonSlurper.parseText(prev.getResponseDataAsString());
2012
2013     assert res instanceof Map;
2014     assert res.policy_types instanceof Map;
2015     assert res.policy_types.size() == 2;
2016
2017     assert res.policy_types.get(&apos;onap.policies.native.Xacml&apos;) instanceof Map;
2018     assert res.policy_types.get(&apos;onap.policies.native.Xacml&apos;).version == &quot;6.0.${__threadNum}&quot;;
2019 }</stringProp>
2020           </JSR223Assertion>
2021           <hashTree/>
2022         </hashTree>
2023         <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Get Latest Monitoring Policy Type" enabled="true">
2024           <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
2025             <collectionProp name="Arguments.arguments"/>
2026           </elementProp>
2027           <stringProp name="HTTPSampler.domain">${API_HOST}</stringProp>
2028           <stringProp name="HTTPSampler.port">${API_PORT}</stringProp>
2029           <stringProp name="HTTPSampler.protocol">https</stringProp>
2030           <stringProp name="HTTPSampler.contentEncoding"></stringProp>
2031           <stringProp name="HTTPSampler.path">/policy/api/v1/policytypes/onap.policies.monitoring.cdap.tca.hi.lo.app/versions/latest</stringProp>
2032           <stringProp name="HTTPSampler.method">GET</stringProp>
2033           <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
2034           <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
2035           <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
2036           <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
2037           <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
2038           <stringProp name="HTTPSampler.connect_timeout"></stringProp>
2039           <stringProp name="HTTPSampler.response_timeout"></stringProp>
2040         </HTTPSamplerProxy>
2041         <hashTree>
2042           <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Response Assertion" enabled="true">
2043             <collectionProp name="Asserion.test_strings">
2044               <stringProp name="49586">200</stringProp>
2045             </collectionProp>
2046             <stringProp name="Assertion.custom_message"></stringProp>
2047             <stringProp name="Assertion.test_field">Assertion.response_code</stringProp>
2048             <boolProp name="Assertion.assume_success">false</boolProp>
2049             <intProp name="Assertion.test_type">1</intProp>
2050           </ResponseAssertion>
2051           <hashTree/>
2052           <JSR223Assertion guiclass="TestBeanGUI" testclass="JSR223Assertion" testname="JSR223 Assertion" enabled="true">
2053             <stringProp name="scriptLanguage">groovy</stringProp>
2054             <stringProp name="parameters"></stringProp>
2055             <stringProp name="filename"></stringProp>
2056             <stringProp name="cacheKey">true</stringProp>
2057             <stringProp name="script">import groovy.json.JsonSlurper;
2058
2059 def res = [];
2060 if (prev.getResponseCode() == &apos;200&apos;) {
2061     def jsonSlurper = new JsonSlurper();
2062     res = jsonSlurper.parseText(prev.getResponseDataAsString());
2063
2064     assert res instanceof Map;
2065     assert res.policy_types instanceof Map;
2066     assert res.policy_types.size() &gt; 0 &amp;&amp; res.policy_types.size() &lt; 10;
2067
2068     assert res.policy_types.get(&apos;onap.policies.monitoring.cdap.tca.hi.lo.app&apos;) instanceof Map;
2069     assert res.policy_types.get(&apos;onap.policies.monitoring.cdap.tca.hi.lo.app&apos;).version ==~ /7.0.\d+/;
2070 }</stringProp>
2071           </JSR223Assertion>
2072           <hashTree/>
2073         </hashTree>
2074         <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Create Policy Monitoring" enabled="true">
2075           <boolProp name="HTTPSampler.postBodyRaw">true</boolProp>
2076           <elementProp name="HTTPsampler.Arguments" elementType="Arguments">
2077             <collectionProp name="Arguments.arguments">
2078               <elementProp name="" elementType="HTTPArgument">
2079                 <boolProp name="HTTPArgument.always_encode">false</boolProp>
2080                 <stringProp name="Argument.value">{&#xd;
2081     &quot;tosca_definitions_version&quot;: &quot;tosca_simple_yaml_1_1_0&quot;,&#xd;
2082     &quot;topology_template&quot;: {&#xd;
2083         &quot;policies&quot;: [&#xd;
2084             {&#xd;
2085                 &quot;onap.restart.tca&quot;: {&#xd;
2086                     &quot;type&quot;: &quot;onap.policies.monitoring.cdap.tca.hi.lo.app&quot;,&#xd;
2087                     &quot;type_version&quot;: &quot;6.0.${__threadNum}&quot;,&#xd;
2088                     &quot;version&quot;: &quot;6.0.${__threadNum}&quot;,&#xd;
2089                     &quot;metadata&quot;: {&#xd;
2090                         &quot;policy-id&quot;: &quot;onap.restart.tca&quot;&#xd;
2091                     },&#xd;
2092                     &quot;properties&quot;: {&#xd;
2093                         &quot;tca_policy&quot;: {&#xd;
2094                             &quot;domain&quot;: &quot;measurementsForVfScaling&quot;,&#xd;
2095                             &quot;metricsPerEventName&quot;: [&#xd;
2096                                 {&#xd;
2097                                     &quot;eventName&quot;: &quot;Measurement_vGMUX&quot;,&#xd;
2098                                     &quot;controlLoopSchemaType&quot;: &quot;VNF&quot;,&#xd;
2099                                     &quot;policyScope&quot;: &quot;DCAE&quot;,&#xd;
2100                                     &quot;policyName&quot;: &quot;DCAE.Config_tca-hi-lo&quot;,&#xd;
2101                                     &quot;policyVersion&quot;: &quot;v0.0.1&quot;,&#xd;
2102                                     &quot;thresholds&quot;: [&#xd;
2103                                         {&#xd;
2104                                             &quot;closedLoopControlName&quot;: &quot;ControlLoop-vCPE-48f0c2c3-a172-4192-9ae3-052274181b6e&quot;,&#xd;
2105                                             &quot;version&quot;: &quot;1.0.2&quot;,&#xd;
2106                                             &quot;fieldPath&quot;: &quot;$.event.measurementsForVfScalingFields.additionalMeasurements[*].arrayOfFields[0].value&quot;,&#xd;
2107                                             &quot;thresholdValue&quot;: 0,&#xd;
2108                                             &quot;direction&quot;: &quot;EQUAL&quot;,&#xd;
2109                                             &quot;severity&quot;: &quot;MAJOR&quot;,&#xd;
2110                                             &quot;closedLoopEventStatus&quot;: &quot;ABATED&quot;&#xd;
2111                                         },&#xd;
2112                                         {&#xd;
2113                                             &quot;closedLoopControlName&quot;: &quot;ControlLoop-vCPE-48f0c2c3-a172-4192-9ae3-052274181b6e&quot;,&#xd;
2114                                             &quot;version&quot;: &quot;1.0.2&quot;,&#xd;
2115                                             &quot;fieldPath&quot;: &quot;$.event.measurementsForVfScalingFields.additionalMeasurements[*].arrayOfFields[0].value&quot;,&#xd;
2116                                             &quot;thresholdValue&quot;: 0,&#xd;
2117                                             &quot;direction&quot;: &quot;GREATER&quot;,&#xd;
2118                                             &quot;severity&quot;: &quot;CRITICAL&quot;,&#xd;
2119                                             &quot;closedLoopEventStatus&quot;: &quot;ONSET&quot;&#xd;
2120                                         }&#xd;
2121                                     ]&#xd;
2122                                 }&#xd;
2123                             ]&#xd;
2124                         }&#xd;
2125                     }&#xd;
2126                 }&#xd;
2127             }&#xd;
2128         ]&#xd;
2129     }&#xd;
2130 }</stringProp>
2131                 <stringProp name="Argument.metadata">=</stringProp>
2132               </elementProp>
2133             </collectionProp>
2134           </elementProp>
2135           <stringProp name="HTTPSampler.domain">${API_HOST}</stringProp>
2136           <stringProp name="HTTPSampler.port">${API_PORT}</stringProp>
2137           <stringProp name="HTTPSampler.protocol">https</stringProp>
2138           <stringProp name="HTTPSampler.contentEncoding"></stringProp>
2139           <stringProp name="HTTPSampler.path">/policy/api/v1/policytypes/onap.policies.monitoring.cdap.tca.hi.lo.app/versions/1.0.0/policies</stringProp>
2140           <stringProp name="HTTPSampler.method">POST</stringProp>
2141           <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
2142           <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
2143           <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
2144           <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
2145           <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
2146           <stringProp name="HTTPSampler.connect_timeout"></stringProp>
2147           <stringProp name="HTTPSampler.response_timeout"></stringProp>
2148         </HTTPSamplerProxy>
2149         <hashTree>
2150           <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Response Assertion" enabled="true">
2151             <collectionProp name="Asserion.test_strings">
2152               <stringProp name="49586">200</stringProp>
2153             </collectionProp>
2154             <stringProp name="Assertion.custom_message"></stringProp>
2155             <stringProp name="Assertion.test_field">Assertion.response_code</stringProp>
2156             <boolProp name="Assertion.assume_success">false</boolProp>
2157             <intProp name="Assertion.test_type">1</intProp>
2158           </ResponseAssertion>
2159           <hashTree/>
2160           <JSR223Assertion guiclass="TestBeanGUI" testclass="JSR223Assertion" testname="JSR223 Assertion" enabled="true">
2161             <stringProp name="scriptLanguage">groovy</stringProp>
2162             <stringProp name="parameters"></stringProp>
2163             <stringProp name="filename"></stringProp>
2164             <stringProp name="cacheKey">true</stringProp>
2165             <stringProp name="script">import groovy.json.JsonSlurper;
2166
2167 def res = [];
2168 if (prev.getResponseCode() == &apos;200&apos;) {
2169     def jsonSlurper = new JsonSlurper();
2170     res = jsonSlurper.parseText(prev.getResponseDataAsString());
2171
2172     assert res instanceof Map;
2173     assert res.topology_template.policies instanceof List;
2174     assert res.topology_template.policies.size == 1;
2175     assert res.topology_template.policies[0] instanceof Map;
2176 }</stringProp>
2177           </JSR223Assertion>
2178           <hashTree/>
2179         </hashTree>
2180         <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Create Policy Monitoring V2" enabled="true">
2181           <boolProp name="HTTPSampler.postBodyRaw">true</boolProp>
2182           <elementProp name="HTTPsampler.Arguments" elementType="Arguments">
2183             <collectionProp name="Arguments.arguments">
2184               <elementProp name="" elementType="HTTPArgument">
2185                 <boolProp name="HTTPArgument.always_encode">false</boolProp>
2186                 <stringProp name="Argument.value">{&#xd;
2187     &quot;tosca_definitions_version&quot;: &quot;tosca_simple_yaml_1_1_0&quot;,&#xd;
2188     &quot;topology_template&quot;: {&#xd;
2189         &quot;policies&quot;: [&#xd;
2190             {&#xd;
2191                 &quot;onap.restart.tca&quot;: {&#xd;
2192                     &quot;type&quot;: &quot;onap.policies.monitoring.cdap.tca.hi.lo.app&quot;,&#xd;
2193                     &quot;type_version&quot;: &quot;7.0.${__threadNum}&quot;,&#xd;
2194                     &quot;version&quot;: &quot;7.0.${__threadNum}&quot;,&#xd;
2195                     &quot;metadata&quot;: {&#xd;
2196                         &quot;policy-id&quot;: &quot;onap.restart.tca&quot;&#xd;
2197                     },&#xd;
2198                     &quot;properties&quot;: {&#xd;
2199                         &quot;tca_policy&quot;: {&#xd;
2200                             &quot;domain&quot;: &quot;measurementsForVfScaling&quot;,&#xd;
2201                             &quot;metricsPerEventName&quot;: [&#xd;
2202                                 {&#xd;
2203                                     &quot;eventName&quot;: &quot;Measurement_vGMUX&quot;,&#xd;
2204                                     &quot;controlLoopSchemaType&quot;: &quot;VNF&quot;,&#xd;
2205                                     &quot;policyScope&quot;: &quot;DCAE&quot;,&#xd;
2206                                     &quot;policyName&quot;: &quot;DCAE.Config_tca-hi-lo&quot;,&#xd;
2207                                     &quot;policyVersion&quot;: &quot;v0.0.1&quot;,&#xd;
2208                                     &quot;thresholds&quot;: [&#xd;
2209                                         {&#xd;
2210                                             &quot;closedLoopControlName&quot;: &quot;ControlLoop-vCPE-48f0c2c3-a172-4192-9ae3-052274181b6e&quot;,&#xd;
2211                                             &quot;version&quot;: &quot;1.0.2&quot;,&#xd;
2212                                             &quot;fieldPath&quot;: &quot;$.event.measurementsForVfScalingFields.additionalMeasurements[*].arrayOfFields[0].value&quot;,&#xd;
2213                                             &quot;thresholdValue&quot;: 0,&#xd;
2214                                             &quot;direction&quot;: &quot;EQUAL&quot;,&#xd;
2215                                             &quot;severity&quot;: &quot;MAJOR&quot;,&#xd;
2216                                             &quot;closedLoopEventStatus&quot;: &quot;ABATED&quot;&#xd;
2217                                         },&#xd;
2218                                         {&#xd;
2219                                             &quot;closedLoopControlName&quot;: &quot;ControlLoop-vCPE-48f0c2c3-a172-4192-9ae3-052274181b6e&quot;,&#xd;
2220                                             &quot;version&quot;: &quot;1.0.2&quot;,&#xd;
2221                                             &quot;fieldPath&quot;: &quot;$.event.measurementsForVfScalingFields.additionalMeasurements[*].arrayOfFields[0].value&quot;,&#xd;
2222                                             &quot;thresholdValue&quot;: 0,&#xd;
2223                                             &quot;direction&quot;: &quot;GREATER&quot;,&#xd;
2224                                             &quot;severity&quot;: &quot;CRITICAL&quot;,&#xd;
2225                                             &quot;closedLoopEventStatus&quot;: &quot;ONSET&quot;&#xd;
2226                                         }&#xd;
2227                                     ]&#xd;
2228                                 }&#xd;
2229                             ]&#xd;
2230                         }&#xd;
2231                     }&#xd;
2232                 }&#xd;
2233             }&#xd;
2234         ]&#xd;
2235     }&#xd;
2236 }</stringProp>
2237                 <stringProp name="Argument.metadata">=</stringProp>
2238               </elementProp>
2239             </collectionProp>
2240           </elementProp>
2241           <stringProp name="HTTPSampler.domain">${API_HOST}</stringProp>
2242           <stringProp name="HTTPSampler.port">${API_PORT}</stringProp>
2243           <stringProp name="HTTPSampler.protocol">https</stringProp>
2244           <stringProp name="HTTPSampler.contentEncoding"></stringProp>
2245           <stringProp name="HTTPSampler.path">/policy/api/v1/policytypes/onap.policies.monitoring.cdap.tca.hi.lo.app/versions/1.0.0/policies</stringProp>
2246           <stringProp name="HTTPSampler.method">POST</stringProp>
2247           <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
2248           <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
2249           <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
2250           <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
2251           <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
2252           <stringProp name="HTTPSampler.connect_timeout"></stringProp>
2253           <stringProp name="HTTPSampler.response_timeout"></stringProp>
2254         </HTTPSamplerProxy>
2255         <hashTree>
2256           <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Response Assertion" enabled="true">
2257             <collectionProp name="Asserion.test_strings">
2258               <stringProp name="49586">200</stringProp>
2259             </collectionProp>
2260             <stringProp name="Assertion.custom_message"></stringProp>
2261             <stringProp name="Assertion.test_field">Assertion.response_code</stringProp>
2262             <boolProp name="Assertion.assume_success">false</boolProp>
2263             <intProp name="Assertion.test_type">1</intProp>
2264           </ResponseAssertion>
2265           <hashTree/>
2266           <JSR223Assertion guiclass="TestBeanGUI" testclass="JSR223Assertion" testname="JSR223 Assertion" enabled="true">
2267             <stringProp name="scriptLanguage">groovy</stringProp>
2268             <stringProp name="parameters"></stringProp>
2269             <stringProp name="filename"></stringProp>
2270             <stringProp name="cacheKey">true</stringProp>
2271             <stringProp name="script">import groovy.json.JsonSlurper;
2272
2273 def res = [];
2274 if (prev.getResponseCode() == &apos;200&apos;) {
2275     def jsonSlurper = new JsonSlurper();
2276     res = jsonSlurper.parseText(prev.getResponseDataAsString());
2277
2278     assert res instanceof Map;
2279     assert res.topology_template.policies instanceof List;
2280     assert res.topology_template.policies.size == 1;
2281     assert res.topology_template.policies[0] instanceof Map;
2282 }</stringProp>
2283           </JSR223Assertion>
2284           <hashTree/>
2285         </hashTree>
2286         <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Create Policy Optimization" enabled="true">
2287           <boolProp name="HTTPSampler.postBodyRaw">true</boolProp>
2288           <elementProp name="HTTPsampler.Arguments" elementType="Arguments">
2289             <collectionProp name="Arguments.arguments">
2290               <elementProp name="" elementType="HTTPArgument">
2291                 <boolProp name="HTTPArgument.always_encode">false</boolProp>
2292                 <stringProp name="Argument.value">{&#xd;
2293     &quot;tosca_definitions_version&quot;: &quot;tosca_simple_yaml_1_1_0&quot;,&#xd;
2294     &quot;topology_template&quot;: {&#xd;
2295         &quot;policies&quot;: [&#xd;
2296             {&#xd;
2297                 &quot;OSDF_CASABLANCA.Affinity_Default&quot;: {&#xd;
2298                     &quot;type&quot;: &quot;onap.policies.optimization.resource.AffinityPolicy&quot;,&#xd;
2299                     &quot;version&quot;: &quot;6.0.${__threadNum}&quot;,&#xd;
2300                     &quot;type_version&quot;: &quot;6.0.${__threadNum}&quot;,&#xd;
2301                     &quot;metadata&quot;: {&#xd;
2302                         &quot;policy-id&quot;: &quot;OSDF_CASABLANCA.Affinity_Default&quot;,&#xd;
2303                         &quot;policy-version&quot;: 1&#xd;
2304                     },&#xd;
2305                     &quot;properties&quot;: {&#xd;
2306                         &quot;scope&quot;: [],&#xd;
2307                         &quot;services&quot;: [],&#xd;
2308                         &quot;resources&quot;: [],&#xd;
2309                         &quot;geography&quot;: [],&#xd;
2310                         &quot;identity&quot;: &quot;affinity_vCPE&quot;,&#xd;
2311                         &quot;applicableResources&quot;: &quot;any&quot;,&#xd;
2312                         &quot;affinityProperties&quot;: {&#xd;
2313                             &quot;qualifier&quot;: &quot;same&quot;,&#xd;
2314                             &quot;category&quot;: &quot;complex&quot;&#xd;
2315                         }&#xd;
2316                     }&#xd;
2317                 }&#xd;
2318             }&#xd;
2319         ]&#xd;
2320     }&#xd;
2321 }</stringProp>
2322                 <stringProp name="Argument.metadata">=</stringProp>
2323               </elementProp>
2324             </collectionProp>
2325           </elementProp>
2326           <stringProp name="HTTPSampler.domain">${API_HOST}</stringProp>
2327           <stringProp name="HTTPSampler.port">${API_PORT}</stringProp>
2328           <stringProp name="HTTPSampler.protocol">https</stringProp>
2329           <stringProp name="HTTPSampler.contentEncoding"></stringProp>
2330           <stringProp name="HTTPSampler.path">/policy/api/v1/policytypes/onap.policies.optimization.resource.AffinityPolicy/versions/2.0.0/policies</stringProp>
2331           <stringProp name="HTTPSampler.method">POST</stringProp>
2332           <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
2333           <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
2334           <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
2335           <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
2336           <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
2337           <stringProp name="HTTPSampler.connect_timeout"></stringProp>
2338           <stringProp name="HTTPSampler.response_timeout"></stringProp>
2339         </HTTPSamplerProxy>
2340         <hashTree>
2341           <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Response Assertion" enabled="true">
2342             <collectionProp name="Asserion.test_strings">
2343               <stringProp name="49586">200</stringProp>
2344             </collectionProp>
2345             <stringProp name="Assertion.custom_message"></stringProp>
2346             <stringProp name="Assertion.test_field">Assertion.response_code</stringProp>
2347             <boolProp name="Assertion.assume_success">false</boolProp>
2348             <intProp name="Assertion.test_type">1</intProp>
2349           </ResponseAssertion>
2350           <hashTree/>
2351           <JSR223Assertion guiclass="TestBeanGUI" testclass="JSR223Assertion" testname="JSR223 Assertion" enabled="true">
2352             <stringProp name="scriptLanguage">groovy</stringProp>
2353             <stringProp name="parameters"></stringProp>
2354             <stringProp name="filename"></stringProp>
2355             <stringProp name="cacheKey">true</stringProp>
2356             <stringProp name="script">import groovy.json.JsonSlurper;
2357
2358 def res = [];
2359 if (prev.getResponseCode() == &apos;200&apos;) {
2360     def jsonSlurper = new JsonSlurper();
2361     res = jsonSlurper.parseText(prev.getResponseDataAsString());
2362
2363     assert res instanceof Map;
2364     assert res.topology_template.policies instanceof List;
2365     assert res.topology_template.policies.size == 1;
2366     assert res.topology_template.policies[0] instanceof Map;
2367 }</stringProp>
2368           </JSR223Assertion>
2369           <hashTree/>
2370         </hashTree>
2371         <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Create Policy Guard" enabled="true">
2372           <boolProp name="HTTPSampler.postBodyRaw">true</boolProp>
2373           <elementProp name="HTTPsampler.Arguments" elementType="Arguments">
2374             <collectionProp name="Arguments.arguments">
2375               <elementProp name="" elementType="HTTPArgument">
2376                 <boolProp name="HTTPArgument.always_encode">false</boolProp>
2377                 <stringProp name="Argument.value">{&#xd;
2378    &quot;tosca_definitions_version&quot;: &quot;tosca_simple_yaml_1_1_0&quot;,&#xd;
2379    &quot;topology_template&quot;: {&#xd;
2380       &quot;policies&quot;: [&#xd;
2381          {&#xd;
2382             &quot;guard.blacklist.scaleout&quot;: {&#xd;
2383                &quot;type&quot;: &quot;onap.policies.controlloop.guard.common.Blacklist&quot;,&#xd;
2384                &quot;type_version&quot;: &quot;6.0.${__threadNum}&quot;,&#xd;
2385                &quot;version&quot;: &quot;6.0.${__threadNum}&quot;,&#xd;
2386                &quot;metadata&quot;: {&#xd;
2387                   &quot;policy-id&quot;: &quot;guard.blacklist.scaleout&quot;&#xd;
2388                },&#xd;
2389                &quot;properties&quot;: {&#xd;
2390                   &quot;actor&quot;: &quot;SO&quot;,&#xd;
2391                   &quot;operation&quot;: &quot;VF Module Create&quot;,&#xd;
2392                   &quot;id&quot;: &quot;ControlLoop-vDNS-6f37f56d-a87d-4b85-b6a9-cc953cf779b3&quot;,&#xd;
2393                   &quot;blacklist&quot;: [&#xd;
2394                      &quot;the-vfmodule-where-root-is-true&quot;,&#xd;
2395                      &quot;another-vfmodule-where-root-is-true&quot;&#xd;
2396                   ]&#xd;
2397                }&#xd;
2398             }&#xd;
2399          }&#xd;
2400       ]&#xd;
2401    }&#xd;
2402 }</stringProp>
2403                 <stringProp name="Argument.metadata">=</stringProp>
2404               </elementProp>
2405             </collectionProp>
2406           </elementProp>
2407           <stringProp name="HTTPSampler.domain">${API_HOST}</stringProp>
2408           <stringProp name="HTTPSampler.port">${API_PORT}</stringProp>
2409           <stringProp name="HTTPSampler.protocol">https</stringProp>
2410           <stringProp name="HTTPSampler.contentEncoding"></stringProp>
2411           <stringProp name="HTTPSampler.path">/policy/api/v1/policytypes/onap.policies.controlloop.guard.common.Blacklist/versions/1.0.0/policies</stringProp>
2412           <stringProp name="HTTPSampler.method">POST</stringProp>
2413           <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
2414           <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
2415           <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
2416           <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
2417           <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
2418           <stringProp name="HTTPSampler.connect_timeout"></stringProp>
2419           <stringProp name="HTTPSampler.response_timeout"></stringProp>
2420         </HTTPSamplerProxy>
2421         <hashTree>
2422           <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Response Assertion" enabled="true">
2423             <collectionProp name="Asserion.test_strings">
2424               <stringProp name="49586">200</stringProp>
2425             </collectionProp>
2426             <stringProp name="Assertion.custom_message"></stringProp>
2427             <stringProp name="Assertion.test_field">Assertion.response_code</stringProp>
2428             <boolProp name="Assertion.assume_success">false</boolProp>
2429             <intProp name="Assertion.test_type">1</intProp>
2430           </ResponseAssertion>
2431           <hashTree/>
2432           <JSR223Assertion guiclass="TestBeanGUI" testclass="JSR223Assertion" testname="JSR223 Assertion" enabled="true">
2433             <stringProp name="scriptLanguage">groovy</stringProp>
2434             <stringProp name="parameters"></stringProp>
2435             <stringProp name="filename"></stringProp>
2436             <stringProp name="cacheKey">true</stringProp>
2437             <stringProp name="script">import groovy.json.JsonSlurper;
2438
2439 def res = [];
2440 if (prev.getResponseCode() == &apos;200&apos;) {
2441     def jsonSlurper = new JsonSlurper();
2442     res = jsonSlurper.parseText(prev.getResponseDataAsString());
2443
2444     assert res instanceof Map;
2445     assert res.topology_template.policies instanceof List;
2446     assert res.topology_template.policies.size == 1;
2447     assert res.topology_template.policies[0] instanceof Map;
2448 }</stringProp>
2449           </JSR223Assertion>
2450           <hashTree/>
2451         </hashTree>
2452         <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Create Policy Native APEX" enabled="true">
2453           <boolProp name="HTTPSampler.postBodyRaw">true</boolProp>
2454           <elementProp name="HTTPsampler.Arguments" elementType="Arguments">
2455             <collectionProp name="Arguments.arguments">
2456               <elementProp name="" elementType="HTTPArgument">
2457                 <boolProp name="HTTPArgument.always_encode">false</boolProp>
2458                 <stringProp name="Argument.value">{&#xd;
2459   &quot;tosca_definitions_version&quot;: &quot;tosca_simple_yaml_1_1_0&quot;,&#xd;
2460   &quot;topology_template&quot;: {&#xd;
2461     &quot;policies&quot;: [&#xd;
2462       {&#xd;
2463         &quot;operational.apex.vCPE&quot;: {&#xd;
2464           &quot;type&quot;: &quot;onap.policies.native.Apex&quot;,&#xd;
2465           &quot;type_version&quot;: &quot;6.0.${__threadNum}&quot;,&#xd;
2466           &quot;derived_from&quot;: &quot;tosca.policies.Root&quot;,&#xd;
2467           &quot;name&quot;: &quot;operational.apex.vCPE&quot;,&#xd;
2468           &quot;version&quot;: &quot;6.0.${__threadNum}&quot;,&#xd;
2469           &quot;properties&quot;: {&#xd;
2470             &quot;engineServiceParameters&quot;: {&#xd;
2471               &quot;name&quot;: &quot;MyApexEngine&quot;,&#xd;
2472               &quot;version&quot;: &quot;0.0.1&quot;,&#xd;
2473               &quot;id&quot;: 45,&#xd;
2474               &quot;instanceCount&quot;: 4,&#xd;
2475               &quot;deploymentPort&quot;: 12561,&#xd;
2476               &quot;policy_type_impl&quot;: {&#xd;
2477               },&#xd;
2478               &quot;engineParameters&quot;: {&#xd;
2479                 &quot;executorParameters&quot;: {&#xd;
2480                   &quot;JAVASCRIPT&quot;: {&#xd;
2481                     &quot;parameterClassName&quot;: &quot;org.onap.policy.apex.plugins.executor.javascript.JavascriptExecutorParameters&quot;&#xd;
2482                   }&#xd;
2483                 },&#xd;
2484                 &quot;contextParameters&quot;: {&#xd;
2485                   &quot;parameterClassName&quot;: &quot;org.onap.policy.apex.context.parameters.ContextParameters&quot;,&#xd;
2486                   &quot;schemaParameters&quot;: {&#xd;
2487                     &quot;Avro&quot;: {&#xd;
2488                       &quot;parameterClassName&quot;: &quot;org.onap.policy.apex.plugins.context.schema.avro.AvroSchemaHelperParameters&quot;&#xd;
2489                     },&#xd;
2490                     &quot;Java&quot;: {&#xd;
2491                       &quot;parameterClassName&quot;: &quot;org.onap.policy.apex.context.impl.schema.java.JavaSchemaHelperParameters&quot;,&#xd;
2492                       &quot;jsonAdapters&quot;: {&#xd;
2493                         &quot;Instant&quot;: {&#xd;
2494                           &quot;adaptedClass&quot;: &quot;java.time.Instant&quot;,&#xd;
2495                           &quot;adaptorClass&quot;: &quot;org.onap.policy.controlloop.util.Serialization$GsonInstantAdapter&quot;&#xd;
2496                         }&#xd;
2497                       }&#xd;
2498                     }&#xd;
2499                   }&#xd;
2500                 },&#xd;
2501                 &quot;taskParameters&quot;: [&#xd;
2502                   {&#xd;
2503                     &quot;key&quot;: &quot;ParameterKey1&quot;,&#xd;
2504                     &quot;value&quot;: &quot;ParameterValue1&quot;&#xd;
2505                   },&#xd;
2506                   {&#xd;
2507                     &quot;taskId&quot;: &quot;AAILookupTask:0.0.1&quot;,&#xd;
2508                     &quot;key&quot;: &quot;SomeKeyForThisTask&quot;,&#xd;
2509                     &quot;value&quot;: &quot;Value&quot;&#xd;
2510                   }&#xd;
2511                 ]&#xd;
2512               }&#xd;
2513             },&#xd;
2514             &quot;eventInputParameters&quot;: {&#xd;
2515               &quot;GuardRequestorConsumer&quot;: {&#xd;
2516                 &quot;carrierTechnologyParameters&quot;: {&#xd;
2517                   &quot;carrierTechnology&quot;: &quot;RESTREQUESTOR&quot;,&#xd;
2518                   &quot;parameterClassName&quot;: &quot;org.onap.policy.apex.plugins.event.carrier.restrequestor.RestRequestorCarrierTechnologyParameters&quot;,&#xd;
2519                   &quot;parameters&quot;: {&#xd;
2520                     &quot;url&quot;: &quot;http://111.222.333.444:5555/pdp/api/getDecision&quot;,&#xd;
2521                     &quot;httpMethod&quot;: &quot;POST&quot;,&#xd;
2522                     &quot;restRequestTimeout&quot;: 2000,&#xd;
2523                     &quot;httpHeader&quot;: &quot;Authorization:aaaaaaaaa== ClientAuth:bbbbbbbbb=&quot;&#xd;
2524                   }&#xd;
2525                 },&#xd;
2526                 &quot;eventProtocolParameters&quot;: {&#xd;
2527                   &quot;eventProtocol&quot;: &quot;JSON&quot;&#xd;
2528                 },&#xd;
2529                 &quot;eventName&quot;: &quot;GuardResponseEvent&quot;,&#xd;
2530                 &quot;eventNameFilter&quot;: &quot;GuardResponseEvent&quot;,&#xd;
2531                 &quot;requestorMode&quot;: true,&#xd;
2532                 &quot;requestorPeer&quot;: &quot;GuardRequestorProducer&quot;,&#xd;
2533                 &quot;requestorTimeout&quot;: 500&#xd;
2534               },&#xd;
2535               &quot;DCAEConsumer&quot;: {&#xd;
2536                 &quot;carrierTechnologyParameters&quot;: {&#xd;
2537                   &quot;carrierTechnology&quot;: &quot;RESTCLIENT&quot;,&#xd;
2538                   &quot;parameterClassName&quot;: &quot;org.onap.policy.apex.plugins.event.carrier.restclient.RestClientCarrierTechnologyParameters&quot;,&#xd;
2539                   &quot;parameters&quot;: {&#xd;
2540                     &quot;url&quot;: &quot;http://message-router:3904/events/unauthenticated.DCAE_CL_OUTPUT/APEX/1?timeout=60000&quot;&#xd;
2541                   }&#xd;
2542                 },&#xd;
2543                 &quot;eventProtocolParameters&quot;: {&#xd;
2544                   &quot;eventProtocol&quot;: &quot;JSON&quot;,&#xd;
2545                   &quot;parameters&quot;: {&#xd;
2546                     &quot;nameAlias&quot;: &quot;closedLoopControlName&quot;,&#xd;
2547                     &quot;versionAlias&quot;: &quot;version&quot;,&#xd;
2548                     &quot;sourceAlias&quot;: &quot;from&quot;,&#xd;
2549                     &quot;pojoField&quot;: &quot;VirtualControlLoopEvent&quot;&#xd;
2550                   }&#xd;
2551                 },&#xd;
2552                 &quot;eventName&quot;: &quot;ControlLoop-vCPE-48f0c2c3-a172-4192-9ae3-052274181b6e&quot;&#xd;
2553               },&#xd;
2554               &quot;APPCConsumer&quot;: {&#xd;
2555                 &quot;carrierTechnologyParameters&quot;: {&#xd;
2556                   &quot;carrierTechnology&quot;: &quot;RESTCLIENT&quot;,&#xd;
2557                   &quot;parameterClassName&quot;: &quot;org.onap.policy.apex.plugins.event.carrier.restclient.RestClientCarrierTechnologyParameters&quot;,&#xd;
2558                   &quot;parameters&quot;: {&#xd;
2559                     &quot;url&quot;: &quot;http://message-router:3904/events/APPC-LCM-WRITE/APEX/1?timeout=60000&quot;&#xd;
2560                   }&#xd;
2561                 },&#xd;
2562                 &quot;eventProtocolParameters&quot;: {&#xd;
2563                   &quot;eventProtocol&quot;: &quot;JSON&quot;,&#xd;
2564                   &quot;parameters&quot;: {&#xd;
2565                     &quot;versionAlias&quot;: &quot;version&quot;,&#xd;
2566                     &quot;pojoField&quot;: &quot;APPCLCMResponseEvent&quot;&#xd;
2567                   }&#xd;
2568                 },&#xd;
2569                 &quot;eventName&quot;: &quot;APPCRestartVNFResponseEvent&quot;,&#xd;
2570                 &quot;eventNameFilter&quot;: &quot;APPCRestartVNFResponseEvent&quot;&#xd;
2571               }&#xd;
2572             },&#xd;
2573             &quot;eventOutputParameters&quot;: {&#xd;
2574               &quot;logProducer&quot;: {&#xd;
2575                 &quot;carrierTechnologyParameters&quot;: {&#xd;
2576                   &quot;carrierTechnology&quot;: &quot;FILE&quot;,&#xd;
2577                   &quot;parameters&quot;: {&#xd;
2578                     &quot;fileName&quot;: &quot;/tmp/VCPEEventsOut.json&quot;&#xd;
2579                   }&#xd;
2580                 },&#xd;
2581                 &quot;eventProtocolParameters&quot;: {&#xd;
2582                   &quot;eventProtocol&quot;: &quot;JSON&quot;&#xd;
2583                 }&#xd;
2584               },&#xd;
2585               &quot;GuardRequestorProducer&quot;: {&#xd;
2586                 &quot;carrierTechnologyParameters&quot;: {&#xd;
2587                   &quot;carrierTechnology&quot;: &quot;RESTREQUESTOR&quot;,&#xd;
2588                   &quot;parameterClassName&quot;: &quot;org.onap.policy.apex.plugins.event.carrier.restrequestor.RestRequestorCarrierTechnologyParameters&quot;&#xd;
2589                 },&#xd;
2590                 &quot;eventProtocolParameters&quot;: {&#xd;
2591                   &quot;eventProtocol&quot;: &quot;JSON&quot;&#xd;
2592                 },&#xd;
2593                 &quot;eventNameFilter&quot;: &quot;GuardRequestEvent&quot;,&#xd;
2594                 &quot;requestorMode&quot;: true,&#xd;
2595                 &quot;requestorPeer&quot;: &quot;GuardRequestorConsumer&quot;,&#xd;
2596                 &quot;requestorTimeout&quot;: 500&#xd;
2597               },&#xd;
2598               &quot;APPCProducer&quot;: {&#xd;
2599                 &quot;carrierTechnologyParameters&quot;: {&#xd;
2600                   &quot;carrierTechnology&quot;: &quot;RESTCLIENT&quot;,&#xd;
2601                   &quot;parameterClassName&quot;: &quot;org.onap.policy.apex.plugins.event.carrier.restclient.RestClientCarrierTechnologyParameters&quot;,&#xd;
2602                   &quot;parameters&quot;: {&#xd;
2603                     &quot;url&quot;: &quot;http://message-router:3904/events/APPC-LCM-READ&quot;&#xd;
2604                   }&#xd;
2605                 },&#xd;
2606                 &quot;eventProtocolParameters&quot;: {&#xd;
2607                   &quot;eventProtocol&quot;: &quot;JSON&quot;,&#xd;
2608                   &quot;parameters&quot;: {&#xd;
2609                     &quot;versionAlias&quot;: &quot;version&quot;,&#xd;
2610                     &quot;sourceAlias&quot;: &quot;from&quot;,&#xd;
2611                     &quot;pojoField&quot;: &quot;APPCLCMRequestEvent&quot;&#xd;
2612                   }&#xd;
2613                 },&#xd;
2614                 &quot;eventNameFilter&quot;: &quot;APPCRestartVNFRequestEvent&quot;&#xd;
2615               },&#xd;
2616               &quot;PolicyLogProducer&quot;: {&#xd;
2617                 &quot;carrierTechnologyParameters&quot;: {&#xd;
2618                   &quot;carrierTechnology&quot;: &quot;RESTCLIENT&quot;,&#xd;
2619                   &quot;parameterClassName&quot;: &quot;org.onap.policy.apex.plugins.event.carrier.restclient.RestClientCarrierTechnologyParameters&quot;,&#xd;
2620                   &quot;parameters&quot;: {&#xd;
2621                     &quot;url&quot;: &quot;http://message-router:3904/events/POLICY-CL-MGT&quot;&#xd;
2622                   }&#xd;
2623                 },&#xd;
2624                 &quot;eventProtocolParameters&quot;: {&#xd;
2625                   &quot;eventProtocol&quot;: &quot;JSON&quot;,&#xd;
2626                   &quot;parameters&quot;: {&#xd;
2627                     &quot;versionAlias&quot;: &quot;version&quot;,&#xd;
2628                     &quot;sourceAlias&quot;: &quot;from&quot;,&#xd;
2629                     &quot;pojoField&quot;: &quot;VirtualControlLoopNotification&quot;&#xd;
2630                   }&#xd;
2631                 },&#xd;
2632                 &quot;eventNameFilter&quot;: &quot;ControlLoopLogEvent&quot;&#xd;
2633               }&#xd;
2634             }&#xd;
2635           }&#xd;
2636         }&#xd;
2637       }&#xd;
2638     ]&#xd;
2639   }&#xd;
2640 }</stringProp>
2641                 <stringProp name="Argument.metadata">=</stringProp>
2642               </elementProp>
2643             </collectionProp>
2644           </elementProp>
2645           <stringProp name="HTTPSampler.domain">${API_HOST}</stringProp>
2646           <stringProp name="HTTPSampler.port">${API_PORT}</stringProp>
2647           <stringProp name="HTTPSampler.protocol">https</stringProp>
2648           <stringProp name="HTTPSampler.contentEncoding"></stringProp>
2649           <stringProp name="HTTPSampler.path">/policy/api/v1/policies</stringProp>
2650           <stringProp name="HTTPSampler.method">POST</stringProp>
2651           <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
2652           <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
2653           <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
2654           <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
2655           <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
2656           <stringProp name="HTTPSampler.connect_timeout"></stringProp>
2657           <stringProp name="HTTPSampler.response_timeout"></stringProp>
2658         </HTTPSamplerProxy>
2659         <hashTree>
2660           <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Response Assertion" enabled="true">
2661             <collectionProp name="Asserion.test_strings">
2662               <stringProp name="49586">200</stringProp>
2663             </collectionProp>
2664             <stringProp name="Assertion.custom_message"></stringProp>
2665             <stringProp name="Assertion.test_field">Assertion.response_code</stringProp>
2666             <boolProp name="Assertion.assume_success">false</boolProp>
2667             <intProp name="Assertion.test_type">1</intProp>
2668           </ResponseAssertion>
2669           <hashTree/>
2670           <JSR223Assertion guiclass="TestBeanGUI" testclass="JSR223Assertion" testname="JSR223 Assertion" enabled="true">
2671             <stringProp name="scriptLanguage">groovy</stringProp>
2672             <stringProp name="parameters"></stringProp>
2673             <stringProp name="filename"></stringProp>
2674             <stringProp name="cacheKey">true</stringProp>
2675             <stringProp name="script">import groovy.json.JsonSlurper;
2676
2677 def res = [];
2678 if (prev.getResponseCode() == &apos;200&apos;) {
2679     def jsonSlurper = new JsonSlurper();
2680     res = jsonSlurper.parseText(prev.getResponseDataAsString());
2681
2682     assert res instanceof Map;
2683     assert res.topology_template.policies instanceof List;
2684     assert res.topology_template.policies.size == 1;
2685     assert res.topology_template.policies[0] instanceof Map;
2686 }</stringProp>
2687           </JSR223Assertion>
2688           <hashTree/>
2689         </hashTree>
2690         <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Create Policy Native Drools" enabled="true">
2691           <boolProp name="HTTPSampler.postBodyRaw">true</boolProp>
2692           <elementProp name="HTTPsampler.Arguments" elementType="Arguments">
2693             <collectionProp name="Arguments.arguments">
2694               <elementProp name="" elementType="HTTPArgument">
2695                 <boolProp name="HTTPArgument.always_encode">false</boolProp>
2696                 <stringProp name="Argument.value">{&#xd;
2697     &quot;tosca_definitions_version&quot;: &quot;tosca_simple_yaml_1_1_0&quot;,&#xd;
2698     &quot;topology_template&quot;: {&#xd;
2699         &quot;policies&quot;: [&#xd;
2700             {&#xd;
2701                 &quot;usecases.artifacts&quot;: {&#xd;
2702                     &quot;type&quot;: &quot;onap.policies.native.drools.Artifact&quot;,&#xd;
2703                     &quot;type_version&quot;: &quot;6.0.${__threadNum}&quot;,&#xd;
2704                     &quot;name&quot;: &quot;usecases.artifacts&quot;,&#xd;
2705                     &quot;version&quot;: &quot;6.0.${__threadNum}&quot;,&#xd;
2706                     &quot;metadata&quot;: {&#xd;
2707                         &quot;policy-id&quot;: &quot;usecases.artifacts&quot;&#xd;
2708                     },&#xd;
2709                     &quot;properties&quot;: {&#xd;
2710                         &quot;rulesArtifact&quot;: {&#xd;
2711                             &quot;groupId&quot;: &quot;org.onap.policy.drools-applications.controlloop.common&quot;,&#xd;
2712                             &quot;artifactId&quot;: &quot;controller-usecases&quot;,&#xd;
2713                             &quot;version&quot;: &quot;1.6.1&quot;&#xd;
2714                         },&#xd;
2715                         &quot;controller&quot;: {&#xd;
2716                             &quot;name&quot;: &quot;frankfurt&quot;&#xd;
2717                         }&#xd;
2718                     }&#xd;
2719                 }&#xd;
2720             }&#xd;
2721         ]&#xd;
2722     }&#xd;
2723 }</stringProp>
2724                 <stringProp name="Argument.metadata">=</stringProp>
2725               </elementProp>
2726             </collectionProp>
2727           </elementProp>
2728           <stringProp name="HTTPSampler.domain">${API_HOST}</stringProp>
2729           <stringProp name="HTTPSampler.port">${API_PORT}</stringProp>
2730           <stringProp name="HTTPSampler.protocol">https</stringProp>
2731           <stringProp name="HTTPSampler.contentEncoding"></stringProp>
2732           <stringProp name="HTTPSampler.path">/policy/api/v1/policies</stringProp>
2733           <stringProp name="HTTPSampler.method">POST</stringProp>
2734           <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
2735           <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
2736           <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
2737           <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
2738           <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
2739           <stringProp name="HTTPSampler.connect_timeout"></stringProp>
2740           <stringProp name="HTTPSampler.response_timeout"></stringProp>
2741         </HTTPSamplerProxy>
2742         <hashTree>
2743           <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Response Assertion" enabled="true">
2744             <collectionProp name="Asserion.test_strings">
2745               <stringProp name="49586">200</stringProp>
2746             </collectionProp>
2747             <stringProp name="Assertion.custom_message"></stringProp>
2748             <stringProp name="Assertion.test_field">Assertion.response_code</stringProp>
2749             <boolProp name="Assertion.assume_success">false</boolProp>
2750             <intProp name="Assertion.test_type">1</intProp>
2751           </ResponseAssertion>
2752           <hashTree/>
2753           <JSR223Assertion guiclass="TestBeanGUI" testclass="JSR223Assertion" testname="JSR223 Assertion" enabled="true">
2754             <stringProp name="scriptLanguage">groovy</stringProp>
2755             <stringProp name="parameters"></stringProp>
2756             <stringProp name="filename"></stringProp>
2757             <stringProp name="cacheKey">true</stringProp>
2758             <stringProp name="script">import groovy.json.JsonSlurper;
2759
2760 def res = [];
2761 if (prev.getResponseCode() == &apos;200&apos;) {
2762     def jsonSlurper = new JsonSlurper();
2763     res = jsonSlurper.parseText(prev.getResponseDataAsString());
2764
2765     assert res instanceof Map;
2766     assert res.topology_template.policies instanceof List;
2767     assert res.topology_template.policies.size == 1;
2768     assert res.topology_template.policies[0] instanceof Map;
2769 }</stringProp>
2770           </JSR223Assertion>
2771           <hashTree/>
2772         </hashTree>
2773         <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Create Policy Native XACML" enabled="true">
2774           <boolProp name="HTTPSampler.postBodyRaw">true</boolProp>
2775           <elementProp name="HTTPsampler.Arguments" elementType="Arguments">
2776             <collectionProp name="Arguments.arguments">
2777               <elementProp name="" elementType="HTTPArgument">
2778                 <boolProp name="HTTPArgument.always_encode">false</boolProp>
2779                 <stringProp name="Argument.value">{&#xd;
2780     &quot;tosca_definitions_version&quot;: &quot;tosca_simple_yaml_1_1_0&quot;,&#xd;
2781     &quot;topology_template&quot;: {&#xd;
2782         &quot;policies&quot;: [&#xd;
2783             {&#xd;
2784                 &quot;onap.policies.native.xacml.NativeXacmlPolicy&quot;: {&#xd;
2785                     &quot;type&quot;: &quot;onap.policies.native.Xacml&quot;,&#xd;
2786                     &quot;type_version&quot;: &quot;6.0.${__threadNum}&quot;,&#xd;
2787                     &quot;version&quot;: &quot;6.0.${__threadNum}&quot;,&#xd;
2788                     &quot;metadata&quot;: {&#xd;
2789                         &quot;policy-id&quot;: &quot;onap.policies.native.xacml.NativeXacmlPolicy&quot;&#xd;
2790                     },&#xd;
2791                     &quot;properties&quot;: {&#xd;
2792                         &quot;tca_policy&quot;: {&#xd;
2793                             &quot;domain&quot;: &quot;measurementsForVfScaling&quot;,&#xd;
2794                             &quot;metricsPerEventName&quot;: [&#xd;
2795                                 {&#xd;
2796                                     &quot;eventName&quot;: &quot;Measurement_vGMUX&quot;,&#xd;
2797                                     &quot;controlLoopSchemaType&quot;: &quot;VNF&quot;,&#xd;
2798                                     &quot;policyScope&quot;: &quot;DCAE&quot;,&#xd;
2799                                     &quot;policyName&quot;: &quot;DCAE.Config_tca-hi-lo&quot;,&#xd;
2800                                     &quot;policyVersion&quot;: &quot;v0.0.1&quot;,&#xd;
2801                                     &quot;thresholds&quot;: [&#xd;
2802                                         {&#xd;
2803                                             &quot;closedLoopControlName&quot;: &quot;ControlLoop-vCPE-48f0c2c3-a172-4192-9ae3-052274181b6e&quot;,&#xd;
2804                                             &quot;version&quot;: &quot;1.0.2&quot;,&#xd;
2805                                             &quot;fieldPath&quot;: &quot;$.event.measurementsForVfScalingFields.additionalMeasurements[*].arrayOfFields[0].value&quot;,&#xd;
2806                                             &quot;thresholdValue&quot;: 0,&#xd;
2807                                             &quot;direction&quot;: &quot;EQUAL&quot;,&#xd;
2808                                             &quot;severity&quot;: &quot;MAJOR&quot;,&#xd;
2809                                             &quot;closedLoopEventStatus&quot;: &quot;ABATED&quot;&#xd;
2810                                         },&#xd;
2811                                         {&#xd;
2812                                             &quot;closedLoopControlName&quot;: &quot;ControlLoop-vCPE-48f0c2c3-a172-4192-9ae3-052274181b6e&quot;,&#xd;
2813                                             &quot;version&quot;: &quot;1.0.2&quot;,&#xd;
2814                                             &quot;fieldPath&quot;: &quot;$.event.measurementsForVfScalingFields.additionalMeasurements[*].arrayOfFields[0].value&quot;,&#xd;
2815                                             &quot;thresholdValue&quot;: 0,&#xd;
2816                                             &quot;direction&quot;: &quot;GREATER&quot;,&#xd;
2817                                             &quot;severity&quot;: &quot;CRITICAL&quot;,&#xd;
2818                                             &quot;closedLoopEventStatus&quot;: &quot;ONSET&quot;&#xd;
2819                                         }&#xd;
2820                                     ]&#xd;
2821                                 }&#xd;
2822                             ]&#xd;
2823                         }&#xd;
2824                     }&#xd;
2825                 }&#xd;
2826             }&#xd;
2827         ]&#xd;
2828     }&#xd;
2829 }</stringProp>
2830                 <stringProp name="Argument.metadata">=</stringProp>
2831               </elementProp>
2832             </collectionProp>
2833           </elementProp>
2834           <stringProp name="HTTPSampler.domain">${API_HOST}</stringProp>
2835           <stringProp name="HTTPSampler.port">${API_PORT}</stringProp>
2836           <stringProp name="HTTPSampler.protocol">https</stringProp>
2837           <stringProp name="HTTPSampler.contentEncoding"></stringProp>
2838           <stringProp name="HTTPSampler.path">/policy/api/v1/policytypes/onap.policies.monitoring.cdap.tca.hi.lo.app/versions/2.0.0/policies</stringProp>
2839           <stringProp name="HTTPSampler.method">POST</stringProp>
2840           <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
2841           <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
2842           <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
2843           <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
2844           <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
2845           <stringProp name="HTTPSampler.connect_timeout"></stringProp>
2846           <stringProp name="HTTPSampler.response_timeout"></stringProp>
2847         </HTTPSamplerProxy>
2848         <hashTree>
2849           <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Response Assertion" enabled="true">
2850             <collectionProp name="Asserion.test_strings">
2851               <stringProp name="49586">200</stringProp>
2852             </collectionProp>
2853             <stringProp name="Assertion.custom_message"></stringProp>
2854             <stringProp name="Assertion.test_field">Assertion.response_code</stringProp>
2855             <boolProp name="Assertion.assume_success">false</boolProp>
2856             <intProp name="Assertion.test_type">1</intProp>
2857           </ResponseAssertion>
2858           <hashTree/>
2859           <JSR223Assertion guiclass="TestBeanGUI" testclass="JSR223Assertion" testname="JSR223 Assertion" enabled="true">
2860             <stringProp name="scriptLanguage">groovy</stringProp>
2861             <stringProp name="parameters"></stringProp>
2862             <stringProp name="filename"></stringProp>
2863             <stringProp name="cacheKey">true</stringProp>
2864             <stringProp name="script">import groovy.json.JsonSlurper;
2865
2866 def res = [];
2867 if (prev.getResponseCode() == &apos;200&apos;) {
2868     def jsonSlurper = new JsonSlurper();
2869     res = jsonSlurper.parseText(prev.getResponseDataAsString());
2870
2871     assert res instanceof Map;
2872     assert res.topology_template.policies instanceof List;
2873     assert res.topology_template.policies.size == 1;
2874     assert res.topology_template.policies[0] instanceof Map;
2875 }</stringProp>
2876           </JSR223Assertion>
2877           <hashTree/>
2878         </hashTree>
2879         <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Get All TCA Policies" enabled="true">
2880           <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
2881             <collectionProp name="Arguments.arguments"/>
2882           </elementProp>
2883           <stringProp name="HTTPSampler.domain">${API_HOST}</stringProp>
2884           <stringProp name="HTTPSampler.port">${API_PORT}</stringProp>
2885           <stringProp name="HTTPSampler.protocol">https</stringProp>
2886           <stringProp name="HTTPSampler.contentEncoding"></stringProp>
2887           <stringProp name="HTTPSampler.path">/policy/api/v1/policytypes/onap.policies.monitoring.cdap.tca.hi.lo.app/versions/6.0.${__threadNum}/policies</stringProp>
2888           <stringProp name="HTTPSampler.method">GET</stringProp>
2889           <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
2890           <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
2891           <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
2892           <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
2893           <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
2894           <stringProp name="HTTPSampler.connect_timeout"></stringProp>
2895           <stringProp name="HTTPSampler.response_timeout"></stringProp>
2896         </HTTPSamplerProxy>
2897         <hashTree>
2898           <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Response Assertion" enabled="true">
2899             <collectionProp name="Asserion.test_strings">
2900               <stringProp name="49586">200</stringProp>
2901             </collectionProp>
2902             <stringProp name="Assertion.custom_message"></stringProp>
2903             <stringProp name="Assertion.test_field">Assertion.response_code</stringProp>
2904             <boolProp name="Assertion.assume_success">false</boolProp>
2905             <intProp name="Assertion.test_type">1</intProp>
2906           </ResponseAssertion>
2907           <hashTree/>
2908           <JSR223Assertion guiclass="TestBeanGUI" testclass="JSR223Assertion" testname="JSR223 Assertion" enabled="true">
2909             <stringProp name="scriptLanguage">groovy</stringProp>
2910             <stringProp name="parameters"></stringProp>
2911             <stringProp name="filename"></stringProp>
2912             <stringProp name="cacheKey">true</stringProp>
2913             <stringProp name="script">import groovy.json.JsonSlurper;
2914
2915 def res = [];
2916 if (prev.getResponseCode() == &apos;200&apos;) {
2917     def jsonSlurper = new JsonSlurper();
2918     res = jsonSlurper.parseText(prev.getResponseDataAsString());
2919
2920     assert res instanceof Map;
2921     assert res.topology_template.policies instanceof List;
2922     assert res.topology_template.policies.size &gt; 0 &amp;&amp; res.topology_template.policies.size &lt; 10;
2923
2924
2925     for (i=0; i&lt;res.topology_template.policies.size; i++) {
2926         assert res.topology_template.policies[i] instanceof Map;
2927     }
2928 }</stringProp>
2929           </JSR223Assertion>
2930           <hashTree/>
2931         </hashTree>
2932         <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Get All Versions of Monitoring Policy" enabled="true">
2933           <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
2934             <collectionProp name="Arguments.arguments"/>
2935           </elementProp>
2936           <stringProp name="HTTPSampler.domain">${API_HOST}</stringProp>
2937           <stringProp name="HTTPSampler.port">${API_PORT}</stringProp>
2938           <stringProp name="HTTPSampler.protocol">https</stringProp>
2939           <stringProp name="HTTPSampler.contentEncoding"></stringProp>
2940           <stringProp name="HTTPSampler.path">/policy/api/v1/policytypes/onap.policies.monitoring.cdap.tca.hi.lo.app/versions/6.0.${__threadNum}/policies</stringProp>
2941           <stringProp name="HTTPSampler.method">GET</stringProp>
2942           <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
2943           <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
2944           <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
2945           <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
2946           <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
2947           <stringProp name="HTTPSampler.connect_timeout"></stringProp>
2948           <stringProp name="HTTPSampler.response_timeout"></stringProp>
2949         </HTTPSamplerProxy>
2950         <hashTree>
2951           <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Response Assertion" enabled="true">
2952             <collectionProp name="Asserion.test_strings">
2953               <stringProp name="49586">200</stringProp>
2954             </collectionProp>
2955             <stringProp name="Assertion.custom_message"></stringProp>
2956             <stringProp name="Assertion.test_field">Assertion.response_code</stringProp>
2957             <boolProp name="Assertion.assume_success">false</boolProp>
2958             <intProp name="Assertion.test_type">1</intProp>
2959           </ResponseAssertion>
2960           <hashTree/>
2961           <JSR223Assertion guiclass="TestBeanGUI" testclass="JSR223Assertion" testname="JSR223 Assertion" enabled="true">
2962             <stringProp name="scriptLanguage">groovy</stringProp>
2963             <stringProp name="parameters"></stringProp>
2964             <stringProp name="filename"></stringProp>
2965             <stringProp name="cacheKey">true</stringProp>
2966             <stringProp name="script">import groovy.json.JsonSlurper;
2967
2968 def res = [];
2969 if (prev.getResponseCode() == &apos;200&apos;) {
2970     def jsonSlurper = new JsonSlurper();
2971     res = jsonSlurper.parseText(prev.getResponseDataAsString());
2972
2973     assert res instanceof Map;
2974     assert res.topology_template.policies instanceof List;
2975     assert res.topology_template.policies.size &gt; 0 &amp;&amp; res.topology_template.policies.size &lt; 6;
2976
2977     for (i=0; i&lt;res.topology_template.policies.size; i++) {
2978         assert res.topology_template.policies[i] instanceof Map;
2979         assert res.topology_template.policies[i].get(&apos;onap.restart.tca&apos;).version == &quot;6.0.${__threadNum}&quot;;
2980     }
2981 }</stringProp>
2982           </JSR223Assertion>
2983           <hashTree/>
2984         </hashTree>
2985         <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Get Policy Monitoring" enabled="true">
2986           <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
2987             <collectionProp name="Arguments.arguments"/>
2988           </elementProp>
2989           <stringProp name="HTTPSampler.domain">${API_HOST}</stringProp>
2990           <stringProp name="HTTPSampler.port">${API_PORT}</stringProp>
2991           <stringProp name="HTTPSampler.protocol">https</stringProp>
2992           <stringProp name="HTTPSampler.contentEncoding"></stringProp>
2993           <stringProp name="HTTPSampler.path">/policy/api/v1/policytypes/onap.policies.monitoring.cdap.tca.hi.lo.app/versions/6.0.${__threadNum}/policies/onap.restart.tca/versions/6.0.${__threadNum}</stringProp>
2994           <stringProp name="HTTPSampler.method">GET</stringProp>
2995           <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
2996           <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
2997           <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
2998           <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
2999           <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
3000           <stringProp name="HTTPSampler.connect_timeout"></stringProp>
3001           <stringProp name="HTTPSampler.response_timeout"></stringProp>
3002         </HTTPSamplerProxy>
3003         <hashTree>
3004           <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Response Assertion" enabled="true">
3005             <collectionProp name="Asserion.test_strings">
3006               <stringProp name="49586">200</stringProp>
3007             </collectionProp>
3008             <stringProp name="Assertion.custom_message"></stringProp>
3009             <stringProp name="Assertion.test_field">Assertion.response_code</stringProp>
3010             <boolProp name="Assertion.assume_success">false</boolProp>
3011             <intProp name="Assertion.test_type">1</intProp>
3012           </ResponseAssertion>
3013           <hashTree/>
3014           <JSR223Assertion guiclass="TestBeanGUI" testclass="JSR223Assertion" testname="JSR223 Assertion" enabled="true">
3015             <stringProp name="scriptLanguage">groovy</stringProp>
3016             <stringProp name="parameters"></stringProp>
3017             <stringProp name="filename"></stringProp>
3018             <stringProp name="cacheKey">true</stringProp>
3019             <stringProp name="script">import groovy.json.JsonSlurper;
3020
3021 def res = [];
3022 if (prev.getResponseCode() == &apos;200&apos;) {
3023     def jsonSlurper = new JsonSlurper();
3024     res = jsonSlurper.parseText(prev.getResponseDataAsString());
3025
3026     assert res instanceof Map;
3027     assert res.topology_template.policies instanceof List;
3028     assert res.topology_template.policies.size == 1;
3029
3030     assert res.topology_template.policies[0] instanceof Map;
3031     assert res.topology_template.policies [0].get(&apos;onap.restart.tca&apos;).version == &quot;6.0.${__threadNum}&quot;;
3032 }</stringProp>
3033           </JSR223Assertion>
3034           <hashTree/>
3035         </hashTree>
3036         <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Get Policy Optimization" enabled="true">
3037           <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
3038             <collectionProp name="Arguments.arguments"/>
3039           </elementProp>
3040           <stringProp name="HTTPSampler.domain">${API_HOST}</stringProp>
3041           <stringProp name="HTTPSampler.port">${API_PORT}</stringProp>
3042           <stringProp name="HTTPSampler.protocol">https</stringProp>
3043           <stringProp name="HTTPSampler.contentEncoding"></stringProp>
3044           <stringProp name="HTTPSampler.path">/policy/api/v1/policytypes/onap.policies.optimization.resource.AffinityPolicy/versions/6.0.${__threadNum}/policies/OSDF_CASABLANCA.Affinity_Default/versions/6.0.${__threadNum}</stringProp>
3045           <stringProp name="HTTPSampler.method">GET</stringProp>
3046           <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
3047           <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
3048           <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
3049           <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
3050           <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
3051           <stringProp name="HTTPSampler.connect_timeout"></stringProp>
3052           <stringProp name="HTTPSampler.response_timeout"></stringProp>
3053         </HTTPSamplerProxy>
3054         <hashTree>
3055           <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Response Assertion" enabled="true">
3056             <collectionProp name="Asserion.test_strings">
3057               <stringProp name="49586">200</stringProp>
3058             </collectionProp>
3059             <stringProp name="Assertion.custom_message"></stringProp>
3060             <stringProp name="Assertion.test_field">Assertion.response_code</stringProp>
3061             <boolProp name="Assertion.assume_success">false</boolProp>
3062             <intProp name="Assertion.test_type">1</intProp>
3063           </ResponseAssertion>
3064           <hashTree/>
3065           <JSR223Assertion guiclass="TestBeanGUI" testclass="JSR223Assertion" testname="JSR223 Assertion" enabled="true">
3066             <stringProp name="scriptLanguage">groovy</stringProp>
3067             <stringProp name="parameters"></stringProp>
3068             <stringProp name="filename"></stringProp>
3069             <stringProp name="cacheKey">true</stringProp>
3070             <stringProp name="script">import groovy.json.JsonSlurper;
3071
3072 def res = [];
3073 if (prev.getResponseCode() == &apos;200&apos;) {
3074     def jsonSlurper = new JsonSlurper();
3075     res = jsonSlurper.parseText(prev.getResponseDataAsString());
3076
3077     assert res instanceof Map;
3078     assert res.topology_template.policies instanceof List;
3079     assert res.topology_template.policies.size == 1;
3080
3081     assert res.topology_template.policies[0] instanceof Map;
3082     assert res.topology_template.policies [0].get(&apos;OSDF_CASABLANCA.Affinity_Default&apos;).version == &quot;6.0.${__threadNum}&quot;;
3083 }</stringProp>
3084           </JSR223Assertion>
3085           <hashTree/>
3086         </hashTree>
3087         <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Get Policy Guard" enabled="true">
3088           <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
3089             <collectionProp name="Arguments.arguments"/>
3090           </elementProp>
3091           <stringProp name="HTTPSampler.domain">${API_HOST}</stringProp>
3092           <stringProp name="HTTPSampler.port">${API_PORT}</stringProp>
3093           <stringProp name="HTTPSampler.protocol">https</stringProp>
3094           <stringProp name="HTTPSampler.contentEncoding"></stringProp>
3095           <stringProp name="HTTPSampler.path">/policy/api/v1/policytypes/onap.policies.controlloop.guard.common.Blacklist/versions/6.0.${__threadNum}/policies/guard.blacklist.scaleout/versions/6.0.${__threadNum}</stringProp>
3096           <stringProp name="HTTPSampler.method">GET</stringProp>
3097           <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
3098           <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
3099           <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
3100           <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
3101           <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
3102           <stringProp name="HTTPSampler.connect_timeout"></stringProp>
3103           <stringProp name="HTTPSampler.response_timeout"></stringProp>
3104         </HTTPSamplerProxy>
3105         <hashTree>
3106           <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Response Assertion" enabled="true">
3107             <collectionProp name="Asserion.test_strings">
3108               <stringProp name="49586">200</stringProp>
3109             </collectionProp>
3110             <stringProp name="Assertion.custom_message"></stringProp>
3111             <stringProp name="Assertion.test_field">Assertion.response_code</stringProp>
3112             <boolProp name="Assertion.assume_success">false</boolProp>
3113             <intProp name="Assertion.test_type">1</intProp>
3114           </ResponseAssertion>
3115           <hashTree/>
3116           <JSR223Assertion guiclass="TestBeanGUI" testclass="JSR223Assertion" testname="JSR223 Assertion" enabled="true">
3117             <stringProp name="scriptLanguage">groovy</stringProp>
3118             <stringProp name="parameters"></stringProp>
3119             <stringProp name="filename"></stringProp>
3120             <stringProp name="cacheKey">true</stringProp>
3121             <stringProp name="script">import groovy.json.JsonSlurper;
3122
3123 def res = [];
3124 if (prev.getResponseCode() == &apos;200&apos;) {
3125     def jsonSlurper = new JsonSlurper();
3126     res = jsonSlurper.parseText(prev.getResponseDataAsString());
3127
3128     assert res instanceof Map;
3129     assert res.topology_template.policies instanceof List;
3130     assert res.topology_template.policies.size == 1;
3131
3132     assert res.topology_template.policies[0] instanceof Map;
3133     assert res.topology_template.policies [0].get(&apos;guard.blacklist.scaleout&apos;).version == &quot;6.0.${__threadNum}&quot;;
3134 }</stringProp>
3135           </JSR223Assertion>
3136           <hashTree/>
3137         </hashTree>
3138         <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Get Policy Native APEX" enabled="true">
3139           <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
3140             <collectionProp name="Arguments.arguments"/>
3141           </elementProp>
3142           <stringProp name="HTTPSampler.domain">${API_HOST}</stringProp>
3143           <stringProp name="HTTPSampler.port">${API_PORT}</stringProp>
3144           <stringProp name="HTTPSampler.protocol">https</stringProp>
3145           <stringProp name="HTTPSampler.contentEncoding"></stringProp>
3146           <stringProp name="HTTPSampler.path">/policy/api/v1/policytypes/onap.policies.native.Apex/versions/6.0.${__threadNum}/policies/operational.apex.vCPE/versions/6.0.${__threadNum}</stringProp>
3147           <stringProp name="HTTPSampler.method">GET</stringProp>
3148           <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
3149           <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
3150           <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
3151           <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
3152           <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
3153           <stringProp name="HTTPSampler.connect_timeout"></stringProp>
3154           <stringProp name="HTTPSampler.response_timeout"></stringProp>
3155         </HTTPSamplerProxy>
3156         <hashTree>
3157           <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Response Assertion" enabled="true">
3158             <collectionProp name="Asserion.test_strings">
3159               <stringProp name="49586">200</stringProp>
3160             </collectionProp>
3161             <stringProp name="Assertion.custom_message"></stringProp>
3162             <stringProp name="Assertion.test_field">Assertion.response_code</stringProp>
3163             <boolProp name="Assertion.assume_success">false</boolProp>
3164             <intProp name="Assertion.test_type">1</intProp>
3165           </ResponseAssertion>
3166           <hashTree/>
3167           <JSR223Assertion guiclass="TestBeanGUI" testclass="JSR223Assertion" testname="JSR223 Assertion" enabled="true">
3168             <stringProp name="scriptLanguage">groovy</stringProp>
3169             <stringProp name="parameters"></stringProp>
3170             <stringProp name="filename"></stringProp>
3171             <stringProp name="cacheKey">true</stringProp>
3172             <stringProp name="script">import groovy.json.JsonSlurper;
3173
3174 def res = [];
3175 if (prev.getResponseCode() == &apos;200&apos;) {
3176     def jsonSlurper = new JsonSlurper();
3177     res = jsonSlurper.parseText(prev.getResponseDataAsString());
3178
3179     assert res instanceof Map;
3180     assert res.topology_template.policies instanceof List;
3181     assert res.topology_template.policies.size == 1;
3182
3183     assert res.topology_template.policies[0] instanceof Map;
3184     assert res.topology_template.policies [0].get(&apos;operational.apex.vCPE&apos;).version == &quot;6.0.${__threadNum}&quot;;
3185 }</stringProp>
3186           </JSR223Assertion>
3187           <hashTree/>
3188         </hashTree>
3189         <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Get Policy Native Drools" enabled="true">
3190           <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
3191             <collectionProp name="Arguments.arguments"/>
3192           </elementProp>
3193           <stringProp name="HTTPSampler.domain">${API_HOST}</stringProp>
3194           <stringProp name="HTTPSampler.port">${API_PORT}</stringProp>
3195           <stringProp name="HTTPSampler.protocol">https</stringProp>
3196           <stringProp name="HTTPSampler.contentEncoding"></stringProp>
3197           <stringProp name="HTTPSampler.path">/policy/api/v1/policytypes/onap.policies.native.drools.Artifact/versions/6.0.${__threadNum}/policies/usecases.artifacts/versions/6.0.${__threadNum}</stringProp>
3198           <stringProp name="HTTPSampler.method">GET</stringProp>
3199           <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
3200           <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
3201           <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
3202           <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
3203           <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
3204           <stringProp name="HTTPSampler.connect_timeout"></stringProp>
3205           <stringProp name="HTTPSampler.response_timeout"></stringProp>
3206         </HTTPSamplerProxy>
3207         <hashTree>
3208           <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Response Assertion" enabled="true">
3209             <collectionProp name="Asserion.test_strings">
3210               <stringProp name="49586">200</stringProp>
3211             </collectionProp>
3212             <stringProp name="Assertion.custom_message"></stringProp>
3213             <stringProp name="Assertion.test_field">Assertion.response_code</stringProp>
3214             <boolProp name="Assertion.assume_success">false</boolProp>
3215             <intProp name="Assertion.test_type">1</intProp>
3216           </ResponseAssertion>
3217           <hashTree/>
3218           <JSR223Assertion guiclass="TestBeanGUI" testclass="JSR223Assertion" testname="JSR223 Assertion" enabled="true">
3219             <stringProp name="scriptLanguage">groovy</stringProp>
3220             <stringProp name="parameters"></stringProp>
3221             <stringProp name="filename"></stringProp>
3222             <stringProp name="cacheKey">true</stringProp>
3223             <stringProp name="script">import groovy.json.JsonSlurper;
3224
3225 def res = [];
3226 if (prev.getResponseCode() == &apos;200&apos;) {
3227     def jsonSlurper = new JsonSlurper();
3228     res = jsonSlurper.parseText(prev.getResponseDataAsString());
3229
3230     assert res instanceof Map;
3231     assert res.topology_template.policies instanceof List;
3232     assert res.topology_template.policies.size == 1;
3233
3234     assert res.topology_template.policies[0] instanceof Map;
3235     assert res.topology_template.policies [0].get(&apos;usecases.artifacts&apos;).version == &quot;6.0.${__threadNum}&quot;;
3236 }</stringProp>
3237           </JSR223Assertion>
3238           <hashTree/>
3239         </hashTree>
3240         <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Get Policy Native XACML" enabled="true">
3241           <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
3242             <collectionProp name="Arguments.arguments"/>
3243           </elementProp>
3244           <stringProp name="HTTPSampler.domain">${API_HOST}</stringProp>
3245           <stringProp name="HTTPSampler.port">${API_PORT}</stringProp>
3246           <stringProp name="HTTPSampler.protocol">https</stringProp>
3247           <stringProp name="HTTPSampler.contentEncoding"></stringProp>
3248           <stringProp name="HTTPSampler.path">/policy/api/v1/policytypes/onap.policies.native.Xacml/versions/6.0.${__threadNum}/policies/onap.policies.native.xacml.NativeXacmlPolicy/versions/6.0.${__threadNum}</stringProp>
3249           <stringProp name="HTTPSampler.method">GET</stringProp>
3250           <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
3251           <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
3252           <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
3253           <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
3254           <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
3255           <stringProp name="HTTPSampler.connect_timeout"></stringProp>
3256           <stringProp name="HTTPSampler.response_timeout"></stringProp>
3257         </HTTPSamplerProxy>
3258         <hashTree>
3259           <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Response Assertion" enabled="true">
3260             <collectionProp name="Asserion.test_strings">
3261               <stringProp name="49586">200</stringProp>
3262             </collectionProp>
3263             <stringProp name="Assertion.custom_message"></stringProp>
3264             <stringProp name="Assertion.test_field">Assertion.response_code</stringProp>
3265             <boolProp name="Assertion.assume_success">false</boolProp>
3266             <intProp name="Assertion.test_type">1</intProp>
3267           </ResponseAssertion>
3268           <hashTree/>
3269           <JSR223Assertion guiclass="TestBeanGUI" testclass="JSR223Assertion" testname="JSR223 Assertion" enabled="true">
3270             <stringProp name="scriptLanguage">groovy</stringProp>
3271             <stringProp name="parameters"></stringProp>
3272             <stringProp name="filename"></stringProp>
3273             <stringProp name="cacheKey">true</stringProp>
3274             <stringProp name="script">import groovy.json.JsonSlurper;
3275
3276 def res = [];
3277 if (prev.getResponseCode() == &apos;200&apos;) {
3278     def jsonSlurper = new JsonSlurper();
3279     res = jsonSlurper.parseText(prev.getResponseDataAsString());
3280
3281     assert res instanceof Map;
3282     assert res.topology_template.policies instanceof List;
3283     assert res.topology_template.policies.size == 1;
3284
3285     assert res.topology_template.policies[0] instanceof Map;
3286     assert res.topology_template.policies [0].get(&apos;onap.policies.native.xacml.NativeXacmlPolicy&apos;).version == &quot;6.0.${__threadNum}&quot;;
3287 }</stringProp>
3288           </JSR223Assertion>
3289           <hashTree/>
3290         </hashTree>
3291         <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Get latest Monitoring Policy" enabled="true">
3292           <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
3293             <collectionProp name="Arguments.arguments"/>
3294           </elementProp>
3295           <stringProp name="HTTPSampler.domain">${API_HOST}</stringProp>
3296           <stringProp name="HTTPSampler.port">${API_PORT}</stringProp>
3297           <stringProp name="HTTPSampler.protocol">https</stringProp>
3298           <stringProp name="HTTPSampler.contentEncoding"></stringProp>
3299           <stringProp name="HTTPSampler.path">/policy/api/v1/policytypes/onap.policies.monitoring.cdap.tca.hi.lo.app/versions/6.0.${__threadNum}/policies/onap.restart.tca/versions/latest</stringProp>
3300           <stringProp name="HTTPSampler.method">GET</stringProp>
3301           <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
3302           <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
3303           <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
3304           <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
3305           <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
3306           <stringProp name="HTTPSampler.connect_timeout"></stringProp>
3307           <stringProp name="HTTPSampler.response_timeout"></stringProp>
3308         </HTTPSamplerProxy>
3309         <hashTree>
3310           <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Response Assertion" enabled="true">
3311             <collectionProp name="Asserion.test_strings">
3312               <stringProp name="49586">200</stringProp>
3313             </collectionProp>
3314             <stringProp name="Assertion.custom_message"></stringProp>
3315             <stringProp name="Assertion.test_field">Assertion.response_code</stringProp>
3316             <boolProp name="Assertion.assume_success">false</boolProp>
3317             <intProp name="Assertion.test_type">1</intProp>
3318           </ResponseAssertion>
3319           <hashTree/>
3320           <JSR223Assertion guiclass="TestBeanGUI" testclass="JSR223Assertion" testname="JSR223 Assertion" enabled="true">
3321             <stringProp name="scriptLanguage">groovy</stringProp>
3322             <stringProp name="parameters"></stringProp>
3323             <stringProp name="filename"></stringProp>
3324             <stringProp name="cacheKey">true</stringProp>
3325             <stringProp name="script">import groovy.json.JsonSlurper;
3326
3327 def res = [];
3328 if (prev.getResponseCode() == &apos;200&apos;) {
3329     def jsonSlurper = new JsonSlurper();
3330     res = jsonSlurper.parseText(prev.getResponseDataAsString());
3331
3332     assert res instanceof Map;
3333     assert res.topology_template.policies instanceof List;
3334     assert res.topology_template.policies.size == 1;
3335
3336     assert res.topology_template.policies[0] instanceof Map;
3337     assert res.topology_template.policies [0].get(&apos;onap.restart.tca&apos;).version ==~ /6.0.\d+/;
3338 }</stringProp>
3339           </JSR223Assertion>
3340           <hashTree/>
3341         </hashTree>
3342         <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Delete Policy Monitoring" enabled="true">
3343           <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
3344             <collectionProp name="Arguments.arguments"/>
3345           </elementProp>
3346           <stringProp name="HTTPSampler.domain">${API_HOST}</stringProp>
3347           <stringProp name="HTTPSampler.port">${API_PORT}</stringProp>
3348           <stringProp name="HTTPSampler.protocol">https</stringProp>
3349           <stringProp name="HTTPSampler.contentEncoding"></stringProp>
3350           <stringProp name="HTTPSampler.path">/policy/api/v1/policytypes/onap.policies.monitoring.cdap.tca.hi.lo.app/versions/6.0.${__threadNum}/policies/onap.restart.tca/versions/6.0.${__threadNum}</stringProp>
3351           <stringProp name="HTTPSampler.method">DELETE</stringProp>
3352           <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
3353           <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
3354           <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
3355           <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
3356           <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
3357           <stringProp name="HTTPSampler.connect_timeout"></stringProp>
3358           <stringProp name="HTTPSampler.response_timeout"></stringProp>
3359         </HTTPSamplerProxy>
3360         <hashTree>
3361           <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Response Assertion" enabled="true">
3362             <collectionProp name="Asserion.test_strings">
3363               <stringProp name="49586">200</stringProp>
3364             </collectionProp>
3365             <stringProp name="Assertion.custom_message"></stringProp>
3366             <stringProp name="Assertion.test_field">Assertion.response_code</stringProp>
3367             <boolProp name="Assertion.assume_success">false</boolProp>
3368             <intProp name="Assertion.test_type">1</intProp>
3369           </ResponseAssertion>
3370           <hashTree/>
3371           <JSR223Assertion guiclass="TestBeanGUI" testclass="JSR223Assertion" testname="JSR223 Assertion" enabled="true">
3372             <stringProp name="scriptLanguage">groovy</stringProp>
3373             <stringProp name="parameters"></stringProp>
3374             <stringProp name="filename"></stringProp>
3375             <stringProp name="cacheKey">true</stringProp>
3376             <stringProp name="script">import groovy.json.JsonSlurper;
3377
3378 def res = [];
3379 if (prev.getResponseCode() == &apos;200&apos;) {
3380     def jsonSlurper = new JsonSlurper();
3381     res = jsonSlurper.parseText(prev.getResponseDataAsString());
3382
3383     assert res instanceof Map;
3384     assert res.topology_template.policies instanceof List;
3385     assert res.topology_template.policies.size == 1;
3386     assert res.topology_template.policies[0] instanceof Map;
3387     assert res.topology_template.policies[0].get(&apos;onap.restart.tca&apos;).version == &quot;6.0.${__threadNum}&quot;;
3388 }</stringProp>
3389           </JSR223Assertion>
3390           <hashTree/>
3391         </hashTree>
3392         <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Delete Policy Monitoring V2" enabled="true">
3393           <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
3394             <collectionProp name="Arguments.arguments"/>
3395           </elementProp>
3396           <stringProp name="HTTPSampler.domain">${API_HOST}</stringProp>
3397           <stringProp name="HTTPSampler.port">${API_PORT}</stringProp>
3398           <stringProp name="HTTPSampler.protocol">https</stringProp>
3399           <stringProp name="HTTPSampler.contentEncoding"></stringProp>
3400           <stringProp name="HTTPSampler.path">/policy/api/v1/policytypes/onap.policies.monitoring.cdap.tca.hi.lo.app/versions/6.0.${__threadNum}/policies/onap.restart.tca/versions/7.0.${__threadNum}</stringProp>
3401           <stringProp name="HTTPSampler.method">DELETE</stringProp>
3402           <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
3403           <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
3404           <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
3405           <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
3406           <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
3407           <stringProp name="HTTPSampler.connect_timeout"></stringProp>
3408           <stringProp name="HTTPSampler.response_timeout"></stringProp>
3409         </HTTPSamplerProxy>
3410         <hashTree>
3411           <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Response Assertion" enabled="true">
3412             <collectionProp name="Asserion.test_strings">
3413               <stringProp name="49586">200</stringProp>
3414             </collectionProp>
3415             <stringProp name="Assertion.custom_message"></stringProp>
3416             <stringProp name="Assertion.test_field">Assertion.response_code</stringProp>
3417             <boolProp name="Assertion.assume_success">false</boolProp>
3418             <intProp name="Assertion.test_type">1</intProp>
3419           </ResponseAssertion>
3420           <hashTree/>
3421           <JSR223Assertion guiclass="TestBeanGUI" testclass="JSR223Assertion" testname="JSR223 Assertion" enabled="true">
3422             <stringProp name="scriptLanguage">groovy</stringProp>
3423             <stringProp name="parameters"></stringProp>
3424             <stringProp name="filename"></stringProp>
3425             <stringProp name="cacheKey">true</stringProp>
3426             <stringProp name="script">import groovy.json.JsonSlurper;
3427
3428 def res = [];
3429 if (prev.getResponseCode() == &apos;200&apos;) {
3430     def jsonSlurper = new JsonSlurper();
3431     res = jsonSlurper.parseText(prev.getResponseDataAsString());
3432
3433     assert res instanceof Map;
3434     assert res.topology_template.policies instanceof List;
3435     assert res.topology_template.policies.size == 1;
3436     assert res.topology_template.policies[0] instanceof Map;
3437     assert res.topology_template.policies[0].get(&apos;onap.restart.tca&apos;).version == &quot;7.0.${__threadNum}&quot;;
3438 }</stringProp>
3439           </JSR223Assertion>
3440           <hashTree/>
3441         </hashTree>
3442         <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Delete Policy Optimization" enabled="true">
3443           <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
3444             <collectionProp name="Arguments.arguments"/>
3445           </elementProp>
3446           <stringProp name="HTTPSampler.domain">${API_HOST}</stringProp>
3447           <stringProp name="HTTPSampler.port">${API_PORT}</stringProp>
3448           <stringProp name="HTTPSampler.protocol">https</stringProp>
3449           <stringProp name="HTTPSampler.contentEncoding"></stringProp>
3450           <stringProp name="HTTPSampler.path">/policy/api/v1/policytypes/onap.policies.optimization.resource.AffinityPolicy/versions/6.0.${__threadNum}/policies/OSDF_CASABLANCA.Affinity_Default/versions/6.0.${__threadNum}</stringProp>
3451           <stringProp name="HTTPSampler.method">DELETE</stringProp>
3452           <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
3453           <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
3454           <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
3455           <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
3456           <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
3457           <stringProp name="HTTPSampler.connect_timeout"></stringProp>
3458           <stringProp name="HTTPSampler.response_timeout"></stringProp>
3459         </HTTPSamplerProxy>
3460         <hashTree>
3461           <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Response Assertion" enabled="true">
3462             <collectionProp name="Asserion.test_strings">
3463               <stringProp name="49586">200</stringProp>
3464             </collectionProp>
3465             <stringProp name="Assertion.custom_message"></stringProp>
3466             <stringProp name="Assertion.test_field">Assertion.response_code</stringProp>
3467             <boolProp name="Assertion.assume_success">false</boolProp>
3468             <intProp name="Assertion.test_type">1</intProp>
3469           </ResponseAssertion>
3470           <hashTree/>
3471           <JSR223Assertion guiclass="TestBeanGUI" testclass="JSR223Assertion" testname="JSR223 Assertion" enabled="true">
3472             <stringProp name="scriptLanguage">groovy</stringProp>
3473             <stringProp name="parameters"></stringProp>
3474             <stringProp name="filename"></stringProp>
3475             <stringProp name="cacheKey">true</stringProp>
3476             <stringProp name="script">import groovy.json.JsonSlurper;
3477
3478 def res = [];
3479 if (prev.getResponseCode() == &apos;200&apos;) {
3480     def jsonSlurper = new JsonSlurper();
3481     res = jsonSlurper.parseText(prev.getResponseDataAsString());
3482
3483     assert res instanceof Map;
3484     assert res.topology_template.policies instanceof List;
3485     assert res.topology_template.policies.size == 1;
3486     assert res.topology_template.policies[0] instanceof Map;
3487     assert res.topology_template.policies[0].get(&apos;OSDF_CASABLANCA.Affinity_Default&apos;).version == &quot;6.0.${__threadNum}&quot;;
3488 }</stringProp>
3489           </JSR223Assertion>
3490           <hashTree/>
3491         </hashTree>
3492         <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Delete Policy Guard" enabled="true">
3493           <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
3494             <collectionProp name="Arguments.arguments"/>
3495           </elementProp>
3496           <stringProp name="HTTPSampler.domain">${API_HOST}</stringProp>
3497           <stringProp name="HTTPSampler.port">${API_PORT}</stringProp>
3498           <stringProp name="HTTPSampler.protocol">https</stringProp>
3499           <stringProp name="HTTPSampler.contentEncoding"></stringProp>
3500           <stringProp name="HTTPSampler.path">/policy/api/v1/policytypes/onap.policies.controlloop.guard.common.Blacklist/versions/6.0.${__threadNum}/policies/guard.blacklist.scaleout/versions/6.0.${__threadNum}</stringProp>
3501           <stringProp name="HTTPSampler.method">DELETE</stringProp>
3502           <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
3503           <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
3504           <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
3505           <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
3506           <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
3507           <stringProp name="HTTPSampler.connect_timeout"></stringProp>
3508           <stringProp name="HTTPSampler.response_timeout"></stringProp>
3509         </HTTPSamplerProxy>
3510         <hashTree>
3511           <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Response Assertion" enabled="true">
3512             <collectionProp name="Asserion.test_strings">
3513               <stringProp name="49586">200</stringProp>
3514             </collectionProp>
3515             <stringProp name="Assertion.custom_message"></stringProp>
3516             <stringProp name="Assertion.test_field">Assertion.response_code</stringProp>
3517             <boolProp name="Assertion.assume_success">false</boolProp>
3518             <intProp name="Assertion.test_type">1</intProp>
3519           </ResponseAssertion>
3520           <hashTree/>
3521           <JSR223Assertion guiclass="TestBeanGUI" testclass="JSR223Assertion" testname="JSR223 Assertion" enabled="true">
3522             <stringProp name="scriptLanguage">groovy</stringProp>
3523             <stringProp name="parameters"></stringProp>
3524             <stringProp name="filename"></stringProp>
3525             <stringProp name="cacheKey">true</stringProp>
3526             <stringProp name="script">import groovy.json.JsonSlurper;
3527
3528 def res = [];
3529 if (prev.getResponseCode() == &apos;200&apos;) {
3530     def jsonSlurper = new JsonSlurper();
3531     res = jsonSlurper.parseText(prev.getResponseDataAsString());
3532
3533     assert res instanceof Map;
3534     assert res.topology_template.policies instanceof List;
3535     assert res.topology_template.policies.size == 1;
3536     assert res.topology_template.policies[0] instanceof Map;
3537     assert res.topology_template.policies[0].get(&apos;guard.blacklist.scaleout&apos;).version == &quot;6.0.${__threadNum}&quot;;
3538 }</stringProp>
3539           </JSR223Assertion>
3540           <hashTree/>
3541         </hashTree>
3542         <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Delete Policy Native APEX" enabled="true">
3543           <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
3544             <collectionProp name="Arguments.arguments"/>
3545           </elementProp>
3546           <stringProp name="HTTPSampler.domain">${API_HOST}</stringProp>
3547           <stringProp name="HTTPSampler.port">${API_PORT}</stringProp>
3548           <stringProp name="HTTPSampler.protocol">https</stringProp>
3549           <stringProp name="HTTPSampler.contentEncoding"></stringProp>
3550           <stringProp name="HTTPSampler.path">/policy/api/v1/policytypes/onap.policies.native.Apex/versions/6.0.${__threadNum}/policies/operational.apex.vCPE/versions/6.0.${__threadNum}</stringProp>
3551           <stringProp name="HTTPSampler.method">DELETE</stringProp>
3552           <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
3553           <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
3554           <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
3555           <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
3556           <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
3557           <stringProp name="HTTPSampler.connect_timeout"></stringProp>
3558           <stringProp name="HTTPSampler.response_timeout"></stringProp>
3559         </HTTPSamplerProxy>
3560         <hashTree>
3561           <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Response Assertion" enabled="true">
3562             <collectionProp name="Asserion.test_strings">
3563               <stringProp name="49586">200</stringProp>
3564             </collectionProp>
3565             <stringProp name="Assertion.custom_message"></stringProp>
3566             <stringProp name="Assertion.test_field">Assertion.response_code</stringProp>
3567             <boolProp name="Assertion.assume_success">false</boolProp>
3568             <intProp name="Assertion.test_type">1</intProp>
3569           </ResponseAssertion>
3570           <hashTree/>
3571           <JSR223Assertion guiclass="TestBeanGUI" testclass="JSR223Assertion" testname="JSR223 Assertion" enabled="true">
3572             <stringProp name="scriptLanguage">groovy</stringProp>
3573             <stringProp name="parameters"></stringProp>
3574             <stringProp name="filename"></stringProp>
3575             <stringProp name="cacheKey">true</stringProp>
3576             <stringProp name="script">import groovy.json.JsonSlurper;
3577
3578 def res = [];
3579 if (prev.getResponseCode() == &apos;200&apos;) {
3580     def jsonSlurper = new JsonSlurper();
3581     res = jsonSlurper.parseText(prev.getResponseDataAsString());
3582
3583     assert res instanceof Map;
3584     assert res.topology_template.policies instanceof List;
3585     assert res.topology_template.policies.size == 1;
3586     assert res.topology_template.policies[0] instanceof Map;
3587     assert res.topology_template.policies[0].get(&apos;operational.apex.vCPE&apos;).version == &quot;6.0.${__threadNum}&quot;;
3588 }</stringProp>
3589           </JSR223Assertion>
3590           <hashTree/>
3591         </hashTree>
3592         <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Delete Policy Native Drools" enabled="true">
3593           <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
3594             <collectionProp name="Arguments.arguments"/>
3595           </elementProp>
3596           <stringProp name="HTTPSampler.domain">${API_HOST}</stringProp>
3597           <stringProp name="HTTPSampler.port">${API_PORT}</stringProp>
3598           <stringProp name="HTTPSampler.protocol">https</stringProp>
3599           <stringProp name="HTTPSampler.contentEncoding"></stringProp>
3600           <stringProp name="HTTPSampler.path">/policy/api/v1/policytypes/onap.policies.native.drools.Artifact/versions/6.0.${__threadNum}/policies/usecases.artifacts/versions/6.0.${__threadNum}</stringProp>
3601           <stringProp name="HTTPSampler.method">DELETE</stringProp>
3602           <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
3603           <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
3604           <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
3605           <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
3606           <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
3607           <stringProp name="HTTPSampler.connect_timeout"></stringProp>
3608           <stringProp name="HTTPSampler.response_timeout"></stringProp>
3609         </HTTPSamplerProxy>
3610         <hashTree>
3611           <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Response Assertion" enabled="true">
3612             <collectionProp name="Asserion.test_strings">
3613               <stringProp name="49586">200</stringProp>
3614             </collectionProp>
3615             <stringProp name="Assertion.custom_message"></stringProp>
3616             <stringProp name="Assertion.test_field">Assertion.response_code</stringProp>
3617             <boolProp name="Assertion.assume_success">false</boolProp>
3618             <intProp name="Assertion.test_type">1</intProp>
3619           </ResponseAssertion>
3620           <hashTree/>
3621           <JSR223Assertion guiclass="TestBeanGUI" testclass="JSR223Assertion" testname="JSR223 Assertion" enabled="true">
3622             <stringProp name="scriptLanguage">groovy</stringProp>
3623             <stringProp name="parameters"></stringProp>
3624             <stringProp name="filename"></stringProp>
3625             <stringProp name="cacheKey">true</stringProp>
3626             <stringProp name="script">import groovy.json.JsonSlurper;
3627
3628 def res = [];
3629 if (prev.getResponseCode() == &apos;200&apos;) {
3630     def jsonSlurper = new JsonSlurper();
3631     res = jsonSlurper.parseText(prev.getResponseDataAsString());
3632
3633     assert res instanceof Map;
3634     assert res.topology_template.policies instanceof List;
3635     assert res.topology_template.policies.size == 1;
3636     assert res.topology_template.policies[0] instanceof Map;
3637     assert res.topology_template.policies[0].get(&apos;usecases.artifacts&apos;).version == &quot;6.0.${__threadNum}&quot;;
3638 }</stringProp>
3639           </JSR223Assertion>
3640           <hashTree/>
3641         </hashTree>
3642         <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Delete Policy Native XACML" enabled="true">
3643           <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
3644             <collectionProp name="Arguments.arguments"/>
3645           </elementProp>
3646           <stringProp name="HTTPSampler.domain">${API_HOST}</stringProp>
3647           <stringProp name="HTTPSampler.port">${API_PORT}</stringProp>
3648           <stringProp name="HTTPSampler.protocol">https</stringProp>
3649           <stringProp name="HTTPSampler.contentEncoding"></stringProp>
3650           <stringProp name="HTTPSampler.path">/policy/api/v1/policytypes/onap.policies.native.Xacml/versions/6.0.${__threadNum}/policies/onap.policies.native.xacml.NativeXacmlPolicy/versions/6.0.${__threadNum}</stringProp>
3651           <stringProp name="HTTPSampler.method">DELETE</stringProp>
3652           <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
3653           <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
3654           <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
3655           <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
3656           <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
3657           <stringProp name="HTTPSampler.connect_timeout"></stringProp>
3658           <stringProp name="HTTPSampler.response_timeout"></stringProp>
3659         </HTTPSamplerProxy>
3660         <hashTree>
3661           <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Response Assertion" enabled="true">
3662             <collectionProp name="Asserion.test_strings">
3663               <stringProp name="49586">200</stringProp>
3664             </collectionProp>
3665             <stringProp name="Assertion.custom_message"></stringProp>
3666             <stringProp name="Assertion.test_field">Assertion.response_code</stringProp>
3667             <boolProp name="Assertion.assume_success">false</boolProp>
3668             <intProp name="Assertion.test_type">1</intProp>
3669           </ResponseAssertion>
3670           <hashTree/>
3671           <JSR223Assertion guiclass="TestBeanGUI" testclass="JSR223Assertion" testname="JSR223 Assertion" enabled="true">
3672             <stringProp name="scriptLanguage">groovy</stringProp>
3673             <stringProp name="parameters"></stringProp>
3674             <stringProp name="filename"></stringProp>
3675             <stringProp name="cacheKey">true</stringProp>
3676             <stringProp name="script">import groovy.json.JsonSlurper;
3677
3678 def res = [];
3679 if (prev.getResponseCode() == &apos;200&apos;) {
3680     def jsonSlurper = new JsonSlurper();
3681     res = jsonSlurper.parseText(prev.getResponseDataAsString());
3682
3683     assert res instanceof Map;
3684     assert res.topology_template.policies instanceof List;
3685     assert res.topology_template.policies.size == 1;
3686     assert res.topology_template.policies[0] instanceof Map;
3687     assert res.topology_template.policies[0].get(&apos;onap.policies.native.xacml.NativeXacmlPolicy&apos;).version == &quot;6.0.${__threadNum}&quot;;
3688 }</stringProp>
3689           </JSR223Assertion>
3690           <hashTree/>
3691         </hashTree>
3692         <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Delete Policy Type Monitoring" enabled="true">
3693           <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
3694             <collectionProp name="Arguments.arguments"/>
3695           </elementProp>
3696           <stringProp name="HTTPSampler.domain">${API_HOST}</stringProp>
3697           <stringProp name="HTTPSampler.port">${API_PORT}</stringProp>
3698           <stringProp name="HTTPSampler.protocol">https</stringProp>
3699           <stringProp name="HTTPSampler.contentEncoding"></stringProp>
3700           <stringProp name="HTTPSampler.path">/policy/api/v1/policytypes/onap.policies.monitoring.cdap.tca.hi.lo.app/versions/6.0.${__threadNum}</stringProp>
3701           <stringProp name="HTTPSampler.method">DELETE</stringProp>
3702           <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
3703           <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
3704           <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
3705           <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
3706           <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
3707           <stringProp name="HTTPSampler.connect_timeout"></stringProp>
3708           <stringProp name="HTTPSampler.response_timeout"></stringProp>
3709         </HTTPSamplerProxy>
3710         <hashTree>
3711           <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Response Assertion" enabled="false">
3712             <collectionProp name="Asserion.test_strings">
3713               <stringProp name="49586">200</stringProp>
3714             </collectionProp>
3715             <stringProp name="Assertion.custom_message"></stringProp>
3716             <stringProp name="Assertion.test_field">Assertion.response_code</stringProp>
3717             <boolProp name="Assertion.assume_success">false</boolProp>
3718             <intProp name="Assertion.test_type">1</intProp>
3719           </ResponseAssertion>
3720           <hashTree/>
3721           <JSR223Assertion guiclass="TestBeanGUI" testclass="JSR223Assertion" testname="JSR223 Assertion" enabled="false">
3722             <stringProp name="scriptLanguage">groovy</stringProp>
3723             <stringProp name="parameters"></stringProp>
3724             <stringProp name="filename"></stringProp>
3725             <stringProp name="cacheKey">true</stringProp>
3726             <stringProp name="script">import groovy.json.JsonSlurper;
3727
3728 def res = [];
3729 if (prev.getResponseCode() == &apos;409&apos;) {
3730     def jsonSlurper = new JsonSlurper();
3731     res = jsonSlurper.parseText(prev.getResponseDataAsString());
3732
3733     assert res instanceof Map;
3734     assert res.policy_types instanceof List;
3735     assert res.policy_types.size == 1;
3736     assert res.policy_types[0] instanceof Map;
3737     assert res.policy_types[0].get(&apos;onap.policies.monitoring.cdap.tca.hi.lo.app&apos;).version == &quot;6.0.${__threadNum}&quot;;
3738  }</stringProp>
3739           </JSR223Assertion>
3740           <hashTree/>
3741         </hashTree>
3742         <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Delete Policy Type Monitoring V2" enabled="true">
3743           <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
3744             <collectionProp name="Arguments.arguments"/>
3745           </elementProp>
3746           <stringProp name="HTTPSampler.domain">${API_HOST}</stringProp>
3747           <stringProp name="HTTPSampler.port">${API_PORT}</stringProp>
3748           <stringProp name="HTTPSampler.protocol">https</stringProp>
3749           <stringProp name="HTTPSampler.contentEncoding"></stringProp>
3750           <stringProp name="HTTPSampler.path">/policy/api/v1/policytypes/onap.policies.monitoring.cdap.tca.hi.lo.app/versions/7.0.${__threadNum}</stringProp>
3751           <stringProp name="HTTPSampler.method">DELETE</stringProp>
3752           <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
3753           <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
3754           <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
3755           <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
3756           <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
3757           <stringProp name="HTTPSampler.connect_timeout"></stringProp>
3758           <stringProp name="HTTPSampler.response_timeout"></stringProp>
3759         </HTTPSamplerProxy>
3760         <hashTree>
3761           <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Response Assertion" enabled="false">
3762             <collectionProp name="Asserion.test_strings">
3763               <stringProp name="49586">200</stringProp>
3764             </collectionProp>
3765             <stringProp name="Assertion.custom_message"></stringProp>
3766             <stringProp name="Assertion.test_field">Assertion.response_code</stringProp>
3767             <boolProp name="Assertion.assume_success">false</boolProp>
3768             <intProp name="Assertion.test_type">1</intProp>
3769           </ResponseAssertion>
3770           <hashTree/>
3771           <JSR223Assertion guiclass="TestBeanGUI" testclass="JSR223Assertion" testname="JSR223 Assertion" enabled="false">
3772             <stringProp name="scriptLanguage">groovy</stringProp>
3773             <stringProp name="parameters"></stringProp>
3774             <stringProp name="filename"></stringProp>
3775             <stringProp name="cacheKey">true</stringProp>
3776             <stringProp name="script">import groovy.json.JsonSlurper;
3777
3778 def res = [];
3779 if (prev.getResponseCode() == &apos;409&apos;) {
3780     def jsonSlurper = new JsonSlurper();
3781     res = jsonSlurper.parseText(prev.getResponseDataAsString());
3782
3783     assert res instanceof Map;
3784     assert res.policy_types instanceof List;
3785     assert res.policy_types.size == 1;
3786     assert res.policy_types[0] instanceof Map;
3787     assert res.policy_types[0].get(&apos;onap.policies.monitoring.cdap.tca.hi.lo.app&apos;).version == &quot;7.0.${__threadNum}&quot;;
3788  }</stringProp>
3789           </JSR223Assertion>
3790           <hashTree/>
3791         </hashTree>
3792         <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Delete Policy Type Optimization" enabled="true">
3793           <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
3794             <collectionProp name="Arguments.arguments"/>
3795           </elementProp>
3796           <stringProp name="HTTPSampler.domain">${API_HOST}</stringProp>
3797           <stringProp name="HTTPSampler.port">${API_PORT}</stringProp>
3798           <stringProp name="HTTPSampler.protocol">https</stringProp>
3799           <stringProp name="HTTPSampler.contentEncoding"></stringProp>
3800           <stringProp name="HTTPSampler.path">/policy/api/v1/policytypes/onap.policies.optimization.resource.AffinityPolicy/versions/6.0.${__threadNum}</stringProp>
3801           <stringProp name="HTTPSampler.method">DELETE</stringProp>
3802           <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
3803           <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
3804           <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
3805           <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
3806           <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
3807           <stringProp name="HTTPSampler.connect_timeout"></stringProp>
3808           <stringProp name="HTTPSampler.response_timeout"></stringProp>
3809         </HTTPSamplerProxy>
3810         <hashTree>
3811           <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Response Assertion" enabled="true">
3812             <collectionProp name="Asserion.test_strings">
3813               <stringProp name="49586">200</stringProp>
3814             </collectionProp>
3815             <stringProp name="Assertion.custom_message"></stringProp>
3816             <stringProp name="Assertion.test_field">Assertion.response_code</stringProp>
3817             <boolProp name="Assertion.assume_success">false</boolProp>
3818             <intProp name="Assertion.test_type">1</intProp>
3819           </ResponseAssertion>
3820           <hashTree/>
3821           <JSR223Assertion guiclass="TestBeanGUI" testclass="JSR223Assertion" testname="JSR223 Assertion" enabled="true">
3822             <stringProp name="scriptLanguage">groovy</stringProp>
3823             <stringProp name="parameters"></stringProp>
3824             <stringProp name="filename"></stringProp>
3825             <stringProp name="cacheKey">true</stringProp>
3826             <stringProp name="script">import groovy.json.JsonSlurper;
3827
3828 def res = [];
3829 if (prev.getResponseCode() == &apos;409&apos;) {
3830     def jsonSlurper = new JsonSlurper();
3831     res = jsonSlurper.parseText(prev.getResponseDataAsString());
3832
3833     assert res instanceof Map;
3834     assert res.policy_types instanceof List;
3835     assert res.policy_types.size == 1;
3836     assert res.policy_types[0] instanceof Map;
3837     assert res.policy_types[0].get(&apos;onap.policies.optimization.resource.AffinityPolicy&apos;).version == &quot;6.0.${__threadNum}&quot;;
3838  }</stringProp>
3839           </JSR223Assertion>
3840           <hashTree/>
3841         </hashTree>
3842         <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Delete Policy Type Guard" enabled="true">
3843           <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
3844             <collectionProp name="Arguments.arguments"/>
3845           </elementProp>
3846           <stringProp name="HTTPSampler.domain">${API_HOST}</stringProp>
3847           <stringProp name="HTTPSampler.port">${API_PORT}</stringProp>
3848           <stringProp name="HTTPSampler.protocol">https</stringProp>
3849           <stringProp name="HTTPSampler.contentEncoding"></stringProp>
3850           <stringProp name="HTTPSampler.path">/policy/api/v1/policytypes/onap.policies.controlloop.guard.common.Blacklist/versions/6.0.${__threadNum}</stringProp>
3851           <stringProp name="HTTPSampler.method">DELETE</stringProp>
3852           <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
3853           <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
3854           <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
3855           <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
3856           <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
3857           <stringProp name="HTTPSampler.connect_timeout"></stringProp>
3858           <stringProp name="HTTPSampler.response_timeout"></stringProp>
3859         </HTTPSamplerProxy>
3860         <hashTree>
3861           <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Response Assertion" enabled="true">
3862             <collectionProp name="Asserion.test_strings">
3863               <stringProp name="49586">200</stringProp>
3864             </collectionProp>
3865             <stringProp name="Assertion.custom_message"></stringProp>
3866             <stringProp name="Assertion.test_field">Assertion.response_code</stringProp>
3867             <boolProp name="Assertion.assume_success">false</boolProp>
3868             <intProp name="Assertion.test_type">1</intProp>
3869           </ResponseAssertion>
3870           <hashTree/>
3871           <JSR223Assertion guiclass="TestBeanGUI" testclass="JSR223Assertion" testname="JSR223 Assertion" enabled="true">
3872             <stringProp name="scriptLanguage">groovy</stringProp>
3873             <stringProp name="parameters"></stringProp>
3874             <stringProp name="filename"></stringProp>
3875             <stringProp name="cacheKey">true</stringProp>
3876             <stringProp name="script">import groovy.json.JsonSlurper;
3877
3878 def res = [];
3879 if (prev.getResponseCode() == &apos;200&apos;) {
3880     def jsonSlurper = new JsonSlurper();
3881     res = jsonSlurper.parseText(prev.getResponseDataAsString());
3882
3883     assert res instanceof Map;
3884     assert res.policy_types instanceof Map;
3885     assert res.policy_types.get(&apos;onap.policies.controlloop.guard.common.Blacklist&apos;).version == &quot;6.0.${__threadNum}&quot;;
3886  }</stringProp>
3887           </JSR223Assertion>
3888           <hashTree/>
3889         </hashTree>
3890         <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Delete Policy Type Native APEX" enabled="true">
3891           <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
3892             <collectionProp name="Arguments.arguments"/>
3893           </elementProp>
3894           <stringProp name="HTTPSampler.domain">${API_HOST}</stringProp>
3895           <stringProp name="HTTPSampler.port">${API_PORT}</stringProp>
3896           <stringProp name="HTTPSampler.protocol">https</stringProp>
3897           <stringProp name="HTTPSampler.contentEncoding"></stringProp>
3898           <stringProp name="HTTPSampler.path">/policy/api/v1/policytypes/onap.policies.native.Apex/versions/6.0.${__threadNum}</stringProp>
3899           <stringProp name="HTTPSampler.method">DELETE</stringProp>
3900           <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
3901           <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
3902           <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
3903           <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
3904           <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
3905           <stringProp name="HTTPSampler.connect_timeout"></stringProp>
3906           <stringProp name="HTTPSampler.response_timeout"></stringProp>
3907         </HTTPSamplerProxy>
3908         <hashTree>
3909           <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Response Assertion" enabled="true">
3910             <collectionProp name="Asserion.test_strings">
3911               <stringProp name="49586">200</stringProp>
3912             </collectionProp>
3913             <stringProp name="Assertion.custom_message"></stringProp>
3914             <stringProp name="Assertion.test_field">Assertion.response_code</stringProp>
3915             <boolProp name="Assertion.assume_success">false</boolProp>
3916             <intProp name="Assertion.test_type">1</intProp>
3917           </ResponseAssertion>
3918           <hashTree/>
3919           <JSR223Assertion guiclass="TestBeanGUI" testclass="JSR223Assertion" testname="JSR223 Assertion" enabled="true">
3920             <stringProp name="scriptLanguage">groovy</stringProp>
3921             <stringProp name="parameters"></stringProp>
3922             <stringProp name="filename"></stringProp>
3923             <stringProp name="cacheKey">true</stringProp>
3924             <stringProp name="script">import groovy.json.JsonSlurper;
3925
3926 def res = [];
3927 if (prev.getResponseCode() == &apos;200&apos;) {
3928     def jsonSlurper = new JsonSlurper();
3929     res = jsonSlurper.parseText(prev.getResponseDataAsString());
3930
3931     assert res instanceof Map;
3932     assert res.policy_types instanceof Map;
3933     assert res.policy_types.get(&apos;onap.policies.native.Apex&apos;).version == &quot;6.0.${__threadNum}&quot;;
3934  }</stringProp>
3935           </JSR223Assertion>
3936           <hashTree/>
3937         </hashTree>
3938         <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Delete Policy Type Native Drools Controller" enabled="true">
3939           <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
3940             <collectionProp name="Arguments.arguments"/>
3941           </elementProp>
3942           <stringProp name="HTTPSampler.domain">${API_HOST}</stringProp>
3943           <stringProp name="HTTPSampler.port">${API_PORT}</stringProp>
3944           <stringProp name="HTTPSampler.protocol">https</stringProp>
3945           <stringProp name="HTTPSampler.contentEncoding"></stringProp>
3946           <stringProp name="HTTPSampler.path">/policy/api/v1/policytypes/onap.policies.native.drools.Controller/versions/6.0.${__threadNum}</stringProp>
3947           <stringProp name="HTTPSampler.method">DELETE</stringProp>
3948           <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
3949           <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
3950           <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
3951           <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
3952           <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
3953           <stringProp name="HTTPSampler.connect_timeout"></stringProp>
3954           <stringProp name="HTTPSampler.response_timeout"></stringProp>
3955         </HTTPSamplerProxy>
3956         <hashTree>
3957           <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Response Assertion" enabled="true">
3958             <collectionProp name="Asserion.test_strings">
3959               <stringProp name="49586">200</stringProp>
3960             </collectionProp>
3961             <stringProp name="Assertion.custom_message"></stringProp>
3962             <stringProp name="Assertion.test_field">Assertion.response_code</stringProp>
3963             <boolProp name="Assertion.assume_success">false</boolProp>
3964             <intProp name="Assertion.test_type">1</intProp>
3965           </ResponseAssertion>
3966           <hashTree/>
3967           <JSR223Assertion guiclass="TestBeanGUI" testclass="JSR223Assertion" testname="JSR223 Assertion" enabled="true">
3968             <stringProp name="scriptLanguage">groovy</stringProp>
3969             <stringProp name="parameters"></stringProp>
3970             <stringProp name="filename"></stringProp>
3971             <stringProp name="cacheKey">true</stringProp>
3972             <stringProp name="script">import groovy.json.JsonSlurper;
3973
3974 def res = [];
3975 if (prev.getResponseCode() == &apos;200&apos;) {
3976     def jsonSlurper = new JsonSlurper();
3977     res = jsonSlurper.parseText(prev.getResponseDataAsString());
3978
3979     assert res instanceof Map;
3980     assert res.policy_types instanceof Map;
3981     assert res.policy_types.get(&apos;onap.policies.native.drools.Controller&apos;).version == &quot;6.0.${__threadNum}&quot;;
3982  }</stringProp>
3983           </JSR223Assertion>
3984           <hashTree/>
3985         </hashTree>
3986         <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Delete Policy Type Native Drools Artifact" enabled="true">
3987           <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
3988             <collectionProp name="Arguments.arguments"/>
3989           </elementProp>
3990           <stringProp name="HTTPSampler.domain">${API_HOST}</stringProp>
3991           <stringProp name="HTTPSampler.port">${API_PORT}</stringProp>
3992           <stringProp name="HTTPSampler.protocol">https</stringProp>
3993           <stringProp name="HTTPSampler.contentEncoding"></stringProp>
3994           <stringProp name="HTTPSampler.path">/policy/api/v1/policytypes/onap.policies.native.drools.Artifact/versions/6.0.${__threadNum}</stringProp>
3995           <stringProp name="HTTPSampler.method">DELETE</stringProp>
3996           <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
3997           <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
3998           <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
3999           <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
4000           <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
4001           <stringProp name="HTTPSampler.connect_timeout"></stringProp>
4002           <stringProp name="HTTPSampler.response_timeout"></stringProp>
4003         </HTTPSamplerProxy>
4004         <hashTree>
4005           <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Response Assertion" enabled="true">
4006             <collectionProp name="Asserion.test_strings">
4007               <stringProp name="49586">200</stringProp>
4008             </collectionProp>
4009             <stringProp name="Assertion.custom_message"></stringProp>
4010             <stringProp name="Assertion.test_field">Assertion.response_code</stringProp>
4011             <boolProp name="Assertion.assume_success">false</boolProp>
4012             <intProp name="Assertion.test_type">1</intProp>
4013           </ResponseAssertion>
4014           <hashTree/>
4015           <JSR223Assertion guiclass="TestBeanGUI" testclass="JSR223Assertion" testname="JSR223 Assertion" enabled="true">
4016             <stringProp name="scriptLanguage">groovy</stringProp>
4017             <stringProp name="parameters"></stringProp>
4018             <stringProp name="filename"></stringProp>
4019             <stringProp name="cacheKey">true</stringProp>
4020             <stringProp name="script">import groovy.json.JsonSlurper;
4021
4022 def res = [];
4023 if (prev.getResponseCode() == &apos;200&apos;) {
4024     def jsonSlurper = new JsonSlurper();
4025     res = jsonSlurper.parseText(prev.getResponseDataAsString());
4026
4027     assert res instanceof Map;
4028     assert res.policy_types instanceof Map;
4029     assert res.policy_types.get(&apos;onap.policies.native.drools.Artifact&apos;).version == &quot;6.0.${__threadNum}&quot;;
4030  }</stringProp>
4031           </JSR223Assertion>
4032           <hashTree/>
4033         </hashTree>
4034         <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Delete Policy Type Native XACML" enabled="true">
4035           <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
4036             <collectionProp name="Arguments.arguments"/>
4037           </elementProp>
4038           <stringProp name="HTTPSampler.domain">${API_HOST}</stringProp>
4039           <stringProp name="HTTPSampler.port">${API_PORT}</stringProp>
4040           <stringProp name="HTTPSampler.protocol">https</stringProp>
4041           <stringProp name="HTTPSampler.contentEncoding"></stringProp>
4042           <stringProp name="HTTPSampler.path">/policy/api/v1/policytypes/onap.policies.native.Xacml/versions/6.0.${__threadNum}</stringProp>
4043           <stringProp name="HTTPSampler.method">DELETE</stringProp>
4044           <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
4045           <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
4046           <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
4047           <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
4048           <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
4049           <stringProp name="HTTPSampler.connect_timeout"></stringProp>
4050           <stringProp name="HTTPSampler.response_timeout"></stringProp>
4051         </HTTPSamplerProxy>
4052         <hashTree>
4053           <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Response Assertion" enabled="true">
4054             <collectionProp name="Asserion.test_strings">
4055               <stringProp name="49586">200</stringProp>
4056             </collectionProp>
4057             <stringProp name="Assertion.custom_message"></stringProp>
4058             <stringProp name="Assertion.test_field">Assertion.response_code</stringProp>
4059             <boolProp name="Assertion.assume_success">false</boolProp>
4060             <intProp name="Assertion.test_type">1</intProp>
4061           </ResponseAssertion>
4062           <hashTree/>
4063           <JSR223Assertion guiclass="TestBeanGUI" testclass="JSR223Assertion" testname="JSR223 Assertion" enabled="true">
4064             <stringProp name="scriptLanguage">groovy</stringProp>
4065             <stringProp name="parameters"></stringProp>
4066             <stringProp name="filename"></stringProp>
4067             <stringProp name="cacheKey">true</stringProp>
4068             <stringProp name="script">import groovy.json.JsonSlurper;
4069
4070 def res = [];
4071 if (prev.getResponseCode() == &apos;200&apos;) {
4072     def jsonSlurper = new JsonSlurper();
4073     res = jsonSlurper.parseText(prev.getResponseDataAsString());
4074
4075     assert res instanceof Map;
4076     assert res.policy_types instanceof Map;
4077     assert res.policy_types.get(&apos;onap.policies.native.Xacml&apos;).version == &quot;6.0.${__threadNum}&quot;;
4078  }</stringProp>
4079           </JSR223Assertion>
4080           <hashTree/>
4081         </hashTree>
4082       </hashTree>
4083       <PostThreadGroup guiclass="PostThreadGroupGui" testclass="PostThreadGroup" testname="tearDown Thread Group" enabled="true">
4084         <stringProp name="ThreadGroup.on_sample_error">stoptest</stringProp>
4085         <elementProp name="ThreadGroup.main_controller" elementType="LoopController" guiclass="LoopControlPanel" testclass="LoopController" testname="Loop Controller" enabled="true">
4086           <boolProp name="LoopController.continue_forever">false</boolProp>
4087           <stringProp name="LoopController.loops">1</stringProp>
4088         </elementProp>
4089         <stringProp name="ThreadGroup.num_threads">1</stringProp>
4090         <stringProp name="ThreadGroup.ramp_time">1</stringProp>
4091         <boolProp name="ThreadGroup.scheduler">false</boolProp>
4092         <stringProp name="ThreadGroup.duration"></stringProp>
4093         <stringProp name="ThreadGroup.delay"></stringProp>
4094         <boolProp name="ThreadGroup.same_user_on_next_iteration">true</boolProp>
4095       </PostThreadGroup>
4096       <hashTree>
4097         <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Get Healthcheck" enabled="true">
4098           <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
4099             <collectionProp name="Arguments.arguments"/>
4100           </elementProp>
4101           <stringProp name="HTTPSampler.domain">${API_HOST}</stringProp>
4102           <stringProp name="HTTPSampler.port">${API_PORT}</stringProp>
4103           <stringProp name="HTTPSampler.protocol">https</stringProp>
4104           <stringProp name="HTTPSampler.contentEncoding"></stringProp>
4105           <stringProp name="HTTPSampler.path">/policy/api/v1/healthcheck</stringProp>
4106           <stringProp name="HTTPSampler.method">GET</stringProp>
4107           <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
4108           <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
4109           <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
4110           <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
4111           <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
4112           <stringProp name="HTTPSampler.connect_timeout"></stringProp>
4113           <stringProp name="HTTPSampler.response_timeout"></stringProp>
4114         </HTTPSamplerProxy>
4115         <hashTree>
4116           <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Response Assertion" enabled="true">
4117             <collectionProp name="Asserion.test_strings">
4118               <stringProp name="49586">200</stringProp>
4119             </collectionProp>
4120             <stringProp name="Assertion.custom_message"></stringProp>
4121             <stringProp name="Assertion.test_field">Assertion.response_code</stringProp>
4122             <boolProp name="Assertion.assume_success">false</boolProp>
4123             <intProp name="Assertion.test_type">1</intProp>
4124           </ResponseAssertion>
4125           <hashTree/>
4126           <JSR223Assertion guiclass="TestBeanGUI" testclass="JSR223Assertion" testname="JSR223 Assertion" enabled="true">
4127             <stringProp name="cacheKey">true</stringProp>
4128             <stringProp name="filename"></stringProp>
4129             <stringProp name="parameters"></stringProp>
4130             <stringProp name="script">import groovy.json.JsonSlurper;
4131
4132 def res = [];
4133 if (prev.getResponseCode() == &apos;200&apos;) {
4134     def jsonSlurper = new JsonSlurper();
4135     res = jsonSlurper.parseText(prev.getResponseDataAsString());
4136
4137     assert res instanceof Map;
4138     assert res.code == 200;
4139     assert res.name == &quot;Policy API&quot;;
4140     assert res.healthy==true;
4141     assert res.message==&quot;alive&quot;;
4142 }</stringProp>
4143             <stringProp name="scriptLanguage">groovy</stringProp>
4144           </JSR223Assertion>
4145           <hashTree/>
4146         </hashTree>
4147         <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Get Preloaded Policy Types" enabled="true">
4148           <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
4149             <collectionProp name="Arguments.arguments"/>
4150           </elementProp>
4151           <stringProp name="HTTPSampler.domain">${API_HOST}</stringProp>
4152           <stringProp name="HTTPSampler.port">${API_PORT}</stringProp>
4153           <stringProp name="HTTPSampler.protocol">https</stringProp>
4154           <stringProp name="HTTPSampler.contentEncoding"></stringProp>
4155           <stringProp name="HTTPSampler.path">/policy/api/v1/policytypes</stringProp>
4156           <stringProp name="HTTPSampler.method">GET</stringProp>
4157           <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
4158           <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
4159           <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
4160           <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
4161           <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
4162           <stringProp name="HTTPSampler.connect_timeout"></stringProp>
4163           <stringProp name="HTTPSampler.response_timeout"></stringProp>
4164         </HTTPSamplerProxy>
4165         <hashTree>
4166           <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Response Assertion" enabled="true">
4167             <collectionProp name="Asserion.test_strings">
4168               <stringProp name="49586">200</stringProp>
4169             </collectionProp>
4170             <stringProp name="Assertion.custom_message"></stringProp>
4171             <stringProp name="Assertion.test_field">Assertion.response_code</stringProp>
4172             <boolProp name="Assertion.assume_success">false</boolProp>
4173             <intProp name="Assertion.test_type">1</intProp>
4174           </ResponseAssertion>
4175           <hashTree/>
4176           <JSR223Assertion guiclass="TestBeanGUI" testclass="JSR223Assertion" testname="JSR223 Assertion" enabled="true">
4177             <stringProp name="scriptLanguage">groovy</stringProp>
4178             <stringProp name="parameters"></stringProp>
4179             <stringProp name="filename"></stringProp>
4180             <stringProp name="cacheKey">true</stringProp>
4181             <stringProp name="script">import groovy.json.JsonSlurper;
4182
4183 def res = [];
4184 if (prev.getResponseCode() == &apos;200&apos;) {
4185     def jsonSlurper = new JsonSlurper();
4186     res = jsonSlurper.parseText(prev.getResponseDataAsString());
4187
4188     assert res instanceof Map;
4189     assert res.policy_types instanceof Map;
4190     assert res.policy_types.size() == 35;
4191 }</stringProp>
4192           </JSR223Assertion>
4193           <hashTree/>
4194         </hashTree>
4195       </hashTree>
4196       <ResultCollector guiclass="SummaryReport" testclass="ResultCollector" testname="Summary Report" enabled="true">
4197         <boolProp name="ResultCollector.error_logging">false</boolProp>
4198         <objProp>
4199           <name>saveConfig</name>
4200           <value class="SampleSaveConfiguration">
4201             <time>true</time>
4202             <latency>true</latency>
4203             <timestamp>true</timestamp>
4204             <success>true</success>
4205             <label>true</label>
4206             <code>true</code>
4207             <message>true</message>
4208             <threadName>true</threadName>
4209             <dataType>true</dataType>
4210             <encoding>false</encoding>
4211             <assertions>true</assertions>
4212             <subresults>true</subresults>
4213             <responseData>false</responseData>
4214             <samplerData>false</samplerData>
4215             <xml>false</xml>
4216             <fieldNames>true</fieldNames>
4217             <responseHeaders>false</responseHeaders>
4218             <requestHeaders>false</requestHeaders>
4219             <responseDataOnError>false</responseDataOnError>
4220             <saveAssertionResultsFailureMessage>true</saveAssertionResultsFailureMessage>
4221             <assertionsResultsToSave>0</assertionsResultsToSave>
4222             <bytes>true</bytes>
4223             <sentBytes>true</sentBytes>
4224             <url>true</url>
4225             <threadCounts>true</threadCounts>
4226             <idleTime>true</idleTime>
4227             <connectTime>true</connectTime>
4228           </value>
4229         </objProp>
4230         <stringProp name="filename">/home/liam/work/WIndriver/summary.log</stringProp>
4231       </ResultCollector>
4232       <hashTree/>
4233       <ResultCollector guiclass="ViewResultsFullVisualizer" testclass="ResultCollector" testname="View Results Tree" enabled="true">
4234         <boolProp name="ResultCollector.error_logging">false</boolProp>
4235         <objProp>
4236           <name>saveConfig</name>
4237           <value class="SampleSaveConfiguration">
4238             <time>true</time>
4239             <latency>true</latency>
4240             <timestamp>true</timestamp>
4241             <success>true</success>
4242             <label>true</label>
4243             <code>true</code>
4244             <message>true</message>
4245             <threadName>true</threadName>
4246             <dataType>true</dataType>
4247             <encoding>false</encoding>
4248             <assertions>true</assertions>
4249             <subresults>true</subresults>
4250             <responseData>false</responseData>
4251             <samplerData>false</samplerData>
4252             <xml>false</xml>
4253             <fieldNames>true</fieldNames>
4254             <responseHeaders>false</responseHeaders>
4255             <requestHeaders>false</requestHeaders>
4256             <responseDataOnError>false</responseDataOnError>
4257             <saveAssertionResultsFailureMessage>true</saveAssertionResultsFailureMessage>
4258             <assertionsResultsToSave>0</assertionsResultsToSave>
4259             <bytes>true</bytes>
4260             <sentBytes>true</sentBytes>
4261             <url>true</url>
4262             <threadCounts>true</threadCounts>
4263             <idleTime>true</idleTime>
4264             <connectTime>true</connectTime>
4265           </value>
4266         </objProp>
4267         <stringProp name="filename">/home/ubuntu/s3p/stability.log</stringProp>
4268       </ResultCollector>
4269       <hashTree/>
4270       <ResultCollector guiclass="TableVisualizer" testclass="ResultCollector" testname="View Results in Table" enabled="true">
4271         <boolProp name="ResultCollector.error_logging">false</boolProp>
4272         <objProp>
4273           <name>saveConfig</name>
4274           <value class="SampleSaveConfiguration">
4275             <time>true</time>
4276             <latency>true</latency>
4277             <timestamp>true</timestamp>
4278             <success>true</success>
4279             <label>true</label>
4280             <code>true</code>
4281             <message>true</message>
4282             <threadName>true</threadName>
4283             <dataType>true</dataType>
4284             <encoding>false</encoding>
4285             <assertions>true</assertions>
4286             <subresults>true</subresults>
4287             <responseData>false</responseData>
4288             <samplerData>false</samplerData>
4289             <xml>false</xml>
4290             <fieldNames>true</fieldNames>
4291             <responseHeaders>false</responseHeaders>
4292             <requestHeaders>false</requestHeaders>
4293             <responseDataOnError>false</responseDataOnError>
4294             <saveAssertionResultsFailureMessage>true</saveAssertionResultsFailureMessage>
4295             <assertionsResultsToSave>0</assertionsResultsToSave>
4296             <bytes>true</bytes>
4297             <sentBytes>true</sentBytes>
4298             <url>true</url>
4299             <threadCounts>true</threadCounts>
4300             <idleTime>true</idleTime>
4301             <connectTime>true</connectTime>
4302           </value>
4303         </objProp>
4304         <stringProp name="filename">/home/liam/work/WIndriver/Results.log</stringProp>
4305       </ResultCollector>
4306       <hashTree/>
4307     </hashTree>
4308   </hashTree>
4309 </jmeterTestPlan>