Update S3Ps to use Kafka
[policy/drools-applications.git] / testsuites / stability / src / main / resources / s3p.jmx
1 <?xml version="1.0" encoding="UTF-8"?>
2 <jmeterTestPlan version="1.2" properties="5.0" jmeter="5.6.2">
3   <hashTree>
4     <TestPlan guiclass="TestPlanGui" testclass="TestPlan" testname="PDP-D Stability" enabled="true">
5       <boolProp name="TestPlan.functional_mode">false</boolProp>
6       <boolProp name="TestPlan.tearDown_on_shutdown">true</boolProp>
7       <boolProp name="TestPlan.serialize_threadgroups">false</boolProp>
8       <elementProp name="TestPlan.user_defined_variables" elementType="Arguments" guiclass="ArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
9         <collectionProp name="Arguments.arguments">
10           <elementProp name="API_HOST" elementType="Argument">
11             <stringProp name="Argument.name">API_HOST</stringProp>
12             <stringProp name="Argument.value">localhost</stringProp>
13             <stringProp name="Argument.metadata">=</stringProp>
14           </elementProp>
15           <elementProp name="API_PORT" elementType="Argument">
16             <stringProp name="Argument.name">API_PORT</stringProp>
17             <stringProp name="Argument.value">30002</stringProp>
18             <stringProp name="Argument.metadata">=</stringProp>
19           </elementProp>
20           <elementProp name="PAP_HOST" elementType="Argument">
21             <stringProp name="Argument.name">PAP_HOST</stringProp>
22             <stringProp name="Argument.value">localhost</stringProp>
23             <stringProp name="Argument.metadata">=</stringProp>
24           </elementProp>
25           <elementProp name="PAP_PORT" elementType="Argument">
26             <stringProp name="Argument.name">PAP_PORT</stringProp>
27             <stringProp name="Argument.value">30003</stringProp>
28             <stringProp name="Argument.metadata">=</stringProp>
29           </elementProp>
30           <elementProp name="KAFKA_HOST" elementType="Argument">
31             <stringProp name="Argument.name">KAFKA_HOST</stringProp>
32             <stringProp name="Argument.value">localhost</stringProp>
33             <stringProp name="Argument.metadata">=</stringProp>
34           </elementProp>
35           <elementProp name="KAFKA_PORT" elementType="Argument">
36             <stringProp name="Argument.name">KAFKA_PORT</stringProp>
37             <stringProp name="Argument.value">9092</stringProp>
38             <stringProp name="Argument.metadata">=</stringProp>
39           </elementProp>
40           <elementProp name="DROOLS_HOST" elementType="Argument">
41             <stringProp name="Argument.name">DROOLS_HOST</stringProp>
42             <stringProp name="Argument.value">localhost</stringProp>
43             <stringProp name="Argument.metadata">=</stringProp>
44           </elementProp>
45           <elementProp name="DROOLS_PORT" elementType="Argument">
46             <stringProp name="Argument.name">DROOLS_PORT</stringProp>
47             <stringProp name="Argument.value">30005</stringProp>
48             <stringProp name="Argument.metadata">=</stringProp>
49           </elementProp>
50           <elementProp name="duration" elementType="Argument">
51             <stringProp name="Argument.name">duration</stringProp>
52             <stringProp name="Argument.value">259200</stringProp>
53             <stringProp name="Argument.metadata">=</stringProp>
54           </elementProp>
55           <elementProp name="HTTP" elementType="Argument">
56             <stringProp name="Argument.name">HTTP</stringProp>
57             <stringProp name="Argument.value">https</stringProp>
58             <stringProp name="Argument.metadata">=</stringProp>
59           </elementProp>
60         </collectionProp>
61       </elementProp>
62     </TestPlan>
63     <hashTree>
64       <HeaderManager guiclass="HeaderPanel" testclass="HeaderManager" testname="HTTP Header Manager" enabled="true">
65         <collectionProp name="HeaderManager.headers">
66           <elementProp name="" elementType="Header">
67             <stringProp name="Header.name">Accept</stringProp>
68             <stringProp name="Header.value">application/json</stringProp>
69           </elementProp>
70           <elementProp name="" elementType="Header">
71             <stringProp name="Header.name">Content-Type</stringProp>
72             <stringProp name="Header.value">application/json</stringProp>
73           </elementProp>
74         </collectionProp>
75       </HeaderManager>
76       <hashTree/>
77       <AuthManager guiclass="AuthPanel" testclass="AuthManager" testname="HTTP Authorization Manager" enabled="true">
78         <collectionProp name="AuthManager.auth_list">
79           <elementProp name="" elementType="Authorization">
80             <stringProp name="Authorization.url">${HTTP}://${API_HOST}:${API_PORT}/policy/api/v1</stringProp>
81             <stringProp name="Authorization.username">policyadmin</stringProp>
82             <stringProp name="Authorization.password">zb!XztG34</stringProp>
83             <stringProp name="Authorization.domain"></stringProp>
84             <stringProp name="Authorization.realm"></stringProp>
85           </elementProp>
86           <elementProp name="" elementType="Authorization">
87             <stringProp name="Authorization.url">${HTTP}://${PAP_HOST}:${PAP_PORT}/policy/pap/v1</stringProp>
88             <stringProp name="Authorization.username">policyadmin</stringProp>
89             <stringProp name="Authorization.password">zb!XztG34</stringProp>
90             <stringProp name="Authorization.domain"></stringProp>
91             <stringProp name="Authorization.realm"></stringProp>
92           </elementProp>
93           <elementProp name="" elementType="Authorization">
94             <stringProp name="Authorization.url">${HTTP}://${DROOLS_HOST}:${DROOLS_PORT}/policy/pdp/engine</stringProp>
95             <stringProp name="Authorization.username">demo@people.osaaf.org</stringProp>
96             <stringProp name="Authorization.password">demo123456!</stringProp>
97             <stringProp name="Authorization.domain"></stringProp>
98             <stringProp name="Authorization.realm"></stringProp>
99           </elementProp>
100         </collectionProp>
101         <boolProp name="AuthManager.controlledByThreadGroup">false</boolProp>
102       </AuthManager>
103       <hashTree/>
104       <ConfigTestElement guiclass="HttpDefaultsGui" testclass="ConfigTestElement" testname="HTTP Request Defaults" enabled="true">
105         <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
106           <collectionProp name="Arguments.arguments"/>
107         </elementProp>
108         <stringProp name="HTTPSampler.port">9696</stringProp>
109         <stringProp name="HTTPSampler.protocol">http</stringProp>
110       </ConfigTestElement>
111       <hashTree/>
112       <SetupThreadGroup guiclass="SetupThreadGroupGui" testclass="SetupThreadGroup" testname="Set up" enabled="true">
113         <stringProp name="ThreadGroup.on_sample_error">continue</stringProp>
114         <elementProp name="ThreadGroup.main_controller" elementType="LoopController" guiclass="LoopControlPanel" testclass="LoopController" testname="Loop Controller" enabled="true">
115           <stringProp name="LoopController.loops">1</stringProp>
116           <boolProp name="LoopController.continue_forever">false</boolProp>
117         </elementProp>
118         <stringProp name="ThreadGroup.num_threads">1</stringProp>
119         <stringProp name="ThreadGroup.ramp_time">1</stringProp>
120         <boolProp name="ThreadGroup.scheduler">false</boolProp>
121         <stringProp name="ThreadGroup.duration"></stringProp>
122         <stringProp name="ThreadGroup.delay"></stringProp>
123         <boolProp name="ThreadGroup.same_user_on_next_iteration">true</boolProp>
124       </SetupThreadGroup>
125       <hashTree>
126         <GenericController guiclass="LogicControllerGui" testclass="GenericController" testname="API" enabled="true"/>
127         <hashTree>
128           <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="API Healthcheck" enabled="true">
129             <boolProp name="HTTPSampler.postBodyRaw">false</boolProp>
130             <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
131               <collectionProp name="Arguments.arguments"/>
132             </elementProp>
133             <stringProp name="HTTPSampler.domain">${API_HOST}</stringProp>
134             <stringProp name="HTTPSampler.port">${API_PORT}</stringProp>
135             <stringProp name="HTTPSampler.protocol">${HTTP}</stringProp>
136             <stringProp name="HTTPSampler.path">/policy/api/v1/healthcheck</stringProp>
137             <stringProp name="HTTPSampler.method">GET</stringProp>
138             <boolProp name="HTTPSampler.follow_redirects">false</boolProp>
139             <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
140             <boolProp name="HTTPSampler.use_keepalive">false</boolProp>
141             <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
142             <boolProp name="HTTPSampler.BROWSER_COMPATIBLE_MULTIPART">false</boolProp>
143             <boolProp name="HTTPSampler.image_parser">false</boolProp>
144             <boolProp name="HTTPSampler.concurrentDwn">false</boolProp>
145             <stringProp name="HTTPSampler.concurrentPool">6</stringProp>
146             <boolProp name="HTTPSampler.md5">false</boolProp>
147             <intProp name="HTTPSampler.ipSourceType">0</intProp>
148           </HTTPSamplerProxy>
149           <hashTree>
150             <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Response Assertion" enabled="true">
151               <collectionProp name="Asserion.test_strings">
152                 <stringProp name="49586">200</stringProp>
153               </collectionProp>
154               <stringProp name="Assertion.custom_message"></stringProp>
155               <stringProp name="Assertion.test_field">Assertion.response_code</stringProp>
156               <boolProp name="Assertion.assume_success">false</boolProp>
157               <intProp name="Assertion.test_type">8</intProp>
158             </ResponseAssertion>
159             <hashTree/>
160             <JSONPathAssertion guiclass="JSONPathAssertionGui" testclass="JSONPathAssertion" testname="JSON Assertion" enabled="true">
161               <stringProp name="JSON_PATH">$.healthy</stringProp>
162               <stringProp name="EXPECTED_VALUE">true</stringProp>
163               <boolProp name="JSONVALIDATION">true</boolProp>
164               <boolProp name="EXPECT_NULL">false</boolProp>
165               <boolProp name="INVERT">false</boolProp>
166               <boolProp name="ISREGEX">false</boolProp>
167             </JSONPathAssertion>
168             <hashTree/>
169           </hashTree>
170           <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Create vCPE Policy" enabled="true">
171             <boolProp name="HTTPSampler.postBodyRaw">true</boolProp>
172             <elementProp name="HTTPsampler.Arguments" elementType="Arguments">
173               <collectionProp name="Arguments.arguments">
174                 <elementProp name="" elementType="HTTPArgument">
175                   <boolProp name="HTTPArgument.always_encode">false</boolProp>
176                   <stringProp name="Argument.value">{&#xd;
177   &quot;tosca_definitions_version&quot;: &quot;tosca_simple_yaml_1_1_0&quot;,&#xd;
178   &quot;topology_template&quot;: {&#xd;
179     &quot;policies&quot;: [&#xd;
180       {&#xd;
181         &quot;operational.restart&quot;: {&#xd;
182           &quot;type&quot;: &quot;onap.policies.controlloop.operational.common.Drools&quot;,&#xd;
183           &quot;type_version&quot;: &quot;1.0.0&quot;,&#xd;
184           &quot;version&quot;: &quot;1.0.0&quot;,&#xd;
185           &quot;metadata&quot;: {&#xd;
186             &quot;policy-id&quot;: &quot;operational.restart&quot;&#xd;
187           },&#xd;
188           &quot;properties&quot;: {&#xd;
189             &quot;id&quot;: &quot;ControlLoop-vCPE-48f0c2c3-a172-4192-9ae3-052274181b6e&quot;,&#xd;
190             &quot;timeout&quot;: 60,&#xd;
191             &quot;abatement&quot;: false,&#xd;
192             &quot;trigger&quot;: &quot;unique-policy-id-1-restart&quot;,&#xd;
193             &quot;operations&quot;: [&#xd;
194               {&#xd;
195                 &quot;id&quot;: &quot;unique-policy-id-1-restart&quot;,&#xd;
196                 &quot;description&quot;: &quot;Restart the VM&quot;,&#xd;
197                 &quot;operation&quot;: {&#xd;
198                   &quot;actor&quot;: &quot;APPC&quot;,&#xd;
199                   &quot;operation&quot;: &quot;Restart&quot;,&#xd;
200                   &quot;target&quot;: {&#xd;
201                     &quot;targetType&quot;: &quot;VNF&quot;&#xd;
202                   }&#xd;
203                 },&#xd;
204                 &quot;timeout&quot;: 20,&#xd;
205                 &quot;retries&quot;: 0,&#xd;
206                 &quot;success&quot;: &quot;final_success&quot;,&#xd;
207                 &quot;failure&quot;: &quot;final_failure&quot;,&#xd;
208                 &quot;failure_timeout&quot;: &quot;final_failure_timeout&quot;,&#xd;
209                 &quot;failure_retries&quot;: &quot;final_failure_retries&quot;,&#xd;
210                 &quot;failure_exception&quot;: &quot;final_failure_exception&quot;,&#xd;
211                 &quot;failure_guard&quot;: &quot;final_failure_guard&quot;&#xd;
212               }&#xd;
213             ],&#xd;
214             &quot;controllerName&quot;: &quot;usecases&quot;&#xd;
215           }&#xd;
216         }&#xd;
217       }&#xd;
218     ]&#xd;
219   }&#xd;
220 }</stringProp>
221                   <stringProp name="Argument.metadata">=</stringProp>
222                 </elementProp>
223               </collectionProp>
224             </elementProp>
225             <stringProp name="HTTPSampler.domain">${API_HOST}</stringProp>
226             <stringProp name="HTTPSampler.port">${API_PORT}</stringProp>
227             <stringProp name="HTTPSampler.protocol">${HTTP}</stringProp>
228             <stringProp name="HTTPSampler.path">policy/api/v1/policytypes/onap.policies.controlloop.operational.common.Drools/versions/1.0.0/policies</stringProp>
229             <stringProp name="HTTPSampler.method">POST</stringProp>
230             <boolProp name="HTTPSampler.follow_redirects">false</boolProp>
231             <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
232             <boolProp name="HTTPSampler.use_keepalive">false</boolProp>
233             <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
234             <boolProp name="HTTPSampler.BROWSER_COMPATIBLE_MULTIPART">false</boolProp>
235             <boolProp name="HTTPSampler.image_parser">false</boolProp>
236             <boolProp name="HTTPSampler.concurrentDwn">false</boolProp>
237             <stringProp name="HTTPSampler.concurrentPool">6</stringProp>
238             <boolProp name="HTTPSampler.md5">false</boolProp>
239             <intProp name="HTTPSampler.ipSourceType">0</intProp>
240           </HTTPSamplerProxy>
241           <hashTree>
242             <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Response Assertion" enabled="true">
243               <collectionProp name="Asserion.test_strings">
244                 <stringProp name="49586">200</stringProp>
245               </collectionProp>
246               <stringProp name="Assertion.custom_message"></stringProp>
247               <stringProp name="Assertion.test_field">Assertion.response_code</stringProp>
248               <boolProp name="Assertion.assume_success">false</boolProp>
249               <intProp name="Assertion.test_type">8</intProp>
250             </ResponseAssertion>
251             <hashTree/>
252           </hashTree>
253           <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Create 5G SON O1 Policy" enabled="true">
254             <boolProp name="HTTPSampler.postBodyRaw">true</boolProp>
255             <elementProp name="HTTPsampler.Arguments" elementType="Arguments">
256               <collectionProp name="Arguments.arguments">
257                 <elementProp name="" elementType="HTTPArgument">
258                   <boolProp name="HTTPArgument.always_encode">false</boolProp>
259                   <stringProp name="Argument.value">{&#xd;
260   &quot;tosca_definitions_version&quot;: &quot;tosca_simple_yaml_1_1_0&quot;,&#xd;
261   &quot;topology_template&quot;: {&#xd;
262     &quot;policies&quot;: [&#xd;
263       {&#xd;
264         &quot;op.5g.son.o1&quot;: {&#xd;
265           &quot;type&quot;: &quot;onap.policies.controlloop.operational.common.Drools&quot;,&#xd;
266           &quot;type_version&quot;: &quot;1.0.0&quot;,&#xd;
267           &quot;name&quot;: &quot;op.5g.son.o1&quot;,&#xd;
268           &quot;version&quot;: &quot;1.0.0&quot;,&#xd;
269           &quot;metadata&quot;: {&#xd;
270             &quot;policy-id&quot;: &quot;op.5g.son.o1&quot;&#xd;
271           },&#xd;
272           &quot;properties&quot;: {&#xd;
273             &quot;id&quot;: &quot;ControlLoop-SONO1-fb41f388-a5f2-11e8-98d0-529269fb1459&quot;,&#xd;
274             &quot;timeout&quot;: 1200,&#xd;
275             &quot;abatement&quot;: false,&#xd;
276             &quot;trigger&quot;: &quot;modify-o1-config&quot;,&#xd;
277             &quot;operations&quot;: [&#xd;
278               {&#xd;
279                 &quot;id&quot;: &quot;modify-o1-config&quot;,&#xd;
280                 &quot;description&quot;: &quot;Control Loop Modify O1 Configuration&quot;,&#xd;
281                 &quot;operation&quot;: {&#xd;
282                   &quot;actor&quot;: &quot;SDNR&quot;,&#xd;
283                   &quot;operation&quot;: &quot;ModifyO1Config&quot;,&#xd;
284                   &quot;target&quot;: {&#xd;
285                     &quot;targetType&quot;: &quot;PNF&quot;&#xd;
286                   }&#xd;
287                 },&#xd;
288                 &quot;timeout&quot;: 60,&#xd;
289                 &quot;retries&quot;: 0,&#xd;
290                 &quot;success&quot;: &quot;final_success&quot;,&#xd;
291                 &quot;failure&quot;: &quot;final_failure&quot;,&#xd;
292                 &quot;failure_timeout&quot;: &quot;final_failure_timeout&quot;,&#xd;
293                 &quot;failure_retries&quot;: &quot;final_failure_retries&quot;,&#xd;
294                 &quot;failure_exception&quot;: &quot;final_failure_exception&quot;,&#xd;
295                 &quot;failure_guard&quot;: &quot;final_failure_guard&quot;&#xd;
296               }&#xd;
297             ]&#xd;
298           }&#xd;
299         }&#xd;
300       }&#xd;
301     ]&#xd;
302   }&#xd;
303 }</stringProp>
304                   <stringProp name="Argument.metadata">=</stringProp>
305                 </elementProp>
306               </collectionProp>
307             </elementProp>
308             <stringProp name="HTTPSampler.domain">${API_HOST}</stringProp>
309             <stringProp name="HTTPSampler.port">${API_PORT}</stringProp>
310             <stringProp name="HTTPSampler.protocol">${HTTP}</stringProp>
311             <stringProp name="HTTPSampler.path">policy/api/v1/policytypes/onap.policies.controlloop.operational.common.Drools/versions/1.0.0/policies</stringProp>
312             <stringProp name="HTTPSampler.method">POST</stringProp>
313             <boolProp name="HTTPSampler.follow_redirects">false</boolProp>
314             <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
315             <boolProp name="HTTPSampler.use_keepalive">false</boolProp>
316             <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
317             <boolProp name="HTTPSampler.BROWSER_COMPATIBLE_MULTIPART">false</boolProp>
318             <boolProp name="HTTPSampler.image_parser">false</boolProp>
319             <boolProp name="HTTPSampler.concurrentDwn">false</boolProp>
320             <stringProp name="HTTPSampler.concurrentPool">6</stringProp>
321             <boolProp name="HTTPSampler.md5">false</boolProp>
322             <intProp name="HTTPSampler.ipSourceType">0</intProp>
323           </HTTPSamplerProxy>
324           <hashTree>
325             <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Response Assertion" enabled="true">
326               <collectionProp name="Asserion.test_strings">
327                 <stringProp name="49586">200</stringProp>
328               </collectionProp>
329               <stringProp name="Assertion.custom_message"></stringProp>
330               <stringProp name="Assertion.test_field">Assertion.response_code</stringProp>
331               <boolProp name="Assertion.assume_success">false</boolProp>
332               <intProp name="Assertion.test_type">8</intProp>
333             </ResponseAssertion>
334             <hashTree/>
335           </hashTree>
336           <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Create 5G SON A1 Policy" enabled="true">
337             <boolProp name="HTTPSampler.postBodyRaw">true</boolProp>
338             <elementProp name="HTTPsampler.Arguments" elementType="Arguments">
339               <collectionProp name="Arguments.arguments">
340                 <elementProp name="" elementType="HTTPArgument">
341                   <boolProp name="HTTPArgument.always_encode">false</boolProp>
342                   <stringProp name="Argument.value">{&#xd;
343   &quot;tosca_definitions_version&quot;: &quot;tosca_simple_yaml_1_1_0&quot;,&#xd;
344   &quot;topology_template&quot;: {&#xd;
345     &quot;policies&quot;: [&#xd;
346       {&#xd;
347         &quot;op.5g.son.a1&quot;: {&#xd;
348           &quot;type&quot;: &quot;onap.policies.controlloop.operational.common.Drools&quot;,&#xd;
349           &quot;type_version&quot;: &quot;1.0.0&quot;,&#xd;
350           &quot;name&quot;: &quot;op.5g.son.a1&quot;,&#xd;
351           &quot;version&quot;: &quot;1.0.0&quot;,&#xd;
352           &quot;metadata&quot;: {&#xd;
353             &quot;policy-id&quot;: &quot;op.5g.son.a1&quot;&#xd;
354           },&#xd;
355           &quot;properties&quot;: {&#xd;
356             &quot;id&quot;: &quot;ControlLoop-SONA1-7d4baf04-8875-4d1f-946d-06b874048b61&quot;,&#xd;
357             &quot;timeout&quot;: 1200,&#xd;
358             &quot;abatement&quot;: false,&#xd;
359             &quot;trigger&quot;: &quot;modify-a1-policy&quot;,&#xd;
360             &quot;operations&quot;: [&#xd;
361               {&#xd;
362                 &quot;id&quot;: &quot;modify-a1-policy&quot;,&#xd;
363                 &quot;description&quot;: &quot;Control Loop Modify A1 Policy&quot;,&#xd;
364                 &quot;operation&quot;: {&#xd;
365                   &quot;actor&quot;: &quot;SDNR&quot;,&#xd;
366                   &quot;operation&quot;: &quot;ModifyA1Policy&quot;,&#xd;
367                   &quot;target&quot;: {&#xd;
368                     &quot;targetType&quot;: &quot;PNF&quot;&#xd;
369                   }&#xd;
370                 },&#xd;
371                 &quot;timeout&quot;: 60,&#xd;
372                 &quot;retries&quot;: 0,&#xd;
373                 &quot;success&quot;: &quot;final_success&quot;,&#xd;
374                 &quot;failure&quot;: &quot;final_failure&quot;,&#xd;
375                 &quot;failure_timeout&quot;: &quot;final_failure_timeout&quot;,&#xd;
376                 &quot;failure_retries&quot;: &quot;final_failure_retries&quot;,&#xd;
377                 &quot;failure_exception&quot;: &quot;final_failure_exception&quot;,&#xd;
378                 &quot;failure_guard&quot;: &quot;final_failure_guard&quot;&#xd;
379               }&#xd;
380             ]&#xd;
381           }&#xd;
382         }&#xd;
383       }&#xd;
384     ]&#xd;
385   }&#xd;
386 }</stringProp>
387                   <stringProp name="Argument.metadata">=</stringProp>
388                 </elementProp>
389               </collectionProp>
390             </elementProp>
391             <stringProp name="HTTPSampler.domain">${API_HOST}</stringProp>
392             <stringProp name="HTTPSampler.port">${API_PORT}</stringProp>
393             <stringProp name="HTTPSampler.protocol">${HTTP}</stringProp>
394             <stringProp name="HTTPSampler.path">policy/api/v1/policytypes/onap.policies.controlloop.operational.common.Drools/versions/1.0.0/policies</stringProp>
395             <stringProp name="HTTPSampler.method">POST</stringProp>
396             <boolProp name="HTTPSampler.follow_redirects">false</boolProp>
397             <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
398             <boolProp name="HTTPSampler.use_keepalive">false</boolProp>
399             <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
400             <boolProp name="HTTPSampler.BROWSER_COMPATIBLE_MULTIPART">false</boolProp>
401             <boolProp name="HTTPSampler.image_parser">false</boolProp>
402             <boolProp name="HTTPSampler.concurrentDwn">false</boolProp>
403             <stringProp name="HTTPSampler.concurrentPool">6</stringProp>
404             <boolProp name="HTTPSampler.md5">false</boolProp>
405             <intProp name="HTTPSampler.ipSourceType">0</intProp>
406           </HTTPSamplerProxy>
407           <hashTree>
408             <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Response Assertion" enabled="true">
409               <collectionProp name="Asserion.test_strings">
410                 <stringProp name="49586">200</stringProp>
411               </collectionProp>
412               <stringProp name="Assertion.custom_message"></stringProp>
413               <stringProp name="Assertion.test_field">Assertion.response_code</stringProp>
414               <boolProp name="Assertion.assume_success">false</boolProp>
415               <intProp name="Assertion.test_type">8</intProp>
416             </ResponseAssertion>
417             <hashTree/>
418           </hashTree>
419         </hashTree>
420         <GenericController guiclass="LogicControllerGui" testclass="GenericController" testname="PAP" enabled="true"/>
421         <hashTree>
422           <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="PAP Healthcheck" enabled="true">
423             <boolProp name="HTTPSampler.postBodyRaw">false</boolProp>
424             <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
425               <collectionProp name="Arguments.arguments"/>
426             </elementProp>
427             <stringProp name="HTTPSampler.domain">${PAP_HOST}</stringProp>
428             <stringProp name="HTTPSampler.port">${PAP_PORT}</stringProp>
429             <stringProp name="HTTPSampler.protocol">${HTTP}</stringProp>
430             <stringProp name="HTTPSampler.path">/policy/pap/v1/healthcheck</stringProp>
431             <stringProp name="HTTPSampler.method">GET</stringProp>
432             <boolProp name="HTTPSampler.follow_redirects">false</boolProp>
433             <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
434             <boolProp name="HTTPSampler.use_keepalive">false</boolProp>
435             <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
436             <boolProp name="HTTPSampler.BROWSER_COMPATIBLE_MULTIPART">false</boolProp>
437             <boolProp name="HTTPSampler.image_parser">false</boolProp>
438             <boolProp name="HTTPSampler.concurrentDwn">false</boolProp>
439             <stringProp name="HTTPSampler.concurrentPool">6</stringProp>
440             <boolProp name="HTTPSampler.md5">false</boolProp>
441             <intProp name="HTTPSampler.ipSourceType">0</intProp>
442           </HTTPSamplerProxy>
443           <hashTree>
444             <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Response Assertion" enabled="true">
445               <collectionProp name="Asserion.test_strings">
446                 <stringProp name="49586">200</stringProp>
447               </collectionProp>
448               <stringProp name="Assertion.custom_message"></stringProp>
449               <stringProp name="Assertion.test_field">Assertion.response_code</stringProp>
450               <boolProp name="Assertion.assume_success">false</boolProp>
451               <intProp name="Assertion.test_type">8</intProp>
452             </ResponseAssertion>
453             <hashTree/>
454             <JSONPathAssertion guiclass="JSONPathAssertionGui" testclass="JSONPathAssertion" testname="JSON Assertion" enabled="true">
455               <stringProp name="JSON_PATH">$.healthy</stringProp>
456               <stringProp name="EXPECTED_VALUE">true</stringProp>
457               <boolProp name="JSONVALIDATION">true</boolProp>
458               <boolProp name="EXPECT_NULL">false</boolProp>
459               <boolProp name="INVERT">false</boolProp>
460               <boolProp name="ISREGEX">false</boolProp>
461             </JSONPathAssertion>
462             <hashTree/>
463           </hashTree>
464           <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Deploy vCPE Policy" enabled="true">
465             <boolProp name="HTTPSampler.postBodyRaw">true</boolProp>
466             <elementProp name="HTTPsampler.Arguments" elementType="Arguments">
467               <collectionProp name="Arguments.arguments">
468                 <elementProp name="" elementType="HTTPArgument">
469                   <boolProp name="HTTPArgument.always_encode">false</boolProp>
470                   <stringProp name="Argument.value">{&quot;policies&quot;:[{&quot;policy-id&quot;:&quot;operational.restart&quot;, &quot;version&quot;: &quot;1.0.0&quot;}]}</stringProp>
471                   <stringProp name="Argument.metadata">=</stringProp>
472                 </elementProp>
473               </collectionProp>
474             </elementProp>
475             <stringProp name="HTTPSampler.domain">${PAP_HOST}</stringProp>
476             <stringProp name="HTTPSampler.port">${PAP_PORT}</stringProp>
477             <stringProp name="HTTPSampler.protocol">${HTTP}</stringProp>
478             <stringProp name="HTTPSampler.path">policy/pap/v1/pdps/policies</stringProp>
479             <stringProp name="HTTPSampler.method">POST</stringProp>
480             <boolProp name="HTTPSampler.follow_redirects">false</boolProp>
481             <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
482             <boolProp name="HTTPSampler.use_keepalive">false</boolProp>
483             <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
484             <boolProp name="HTTPSampler.BROWSER_COMPATIBLE_MULTIPART">false</boolProp>
485             <boolProp name="HTTPSampler.image_parser">false</boolProp>
486             <boolProp name="HTTPSampler.concurrentDwn">false</boolProp>
487             <stringProp name="HTTPSampler.concurrentPool">6</stringProp>
488             <boolProp name="HTTPSampler.md5">false</boolProp>
489             <intProp name="HTTPSampler.ipSourceType">0</intProp>
490           </HTTPSamplerProxy>
491           <hashTree>
492             <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Response Assertion" enabled="true">
493               <collectionProp name="Asserion.test_strings">
494                 <stringProp name="49588">202</stringProp>
495               </collectionProp>
496               <stringProp name="Assertion.custom_message"></stringProp>
497               <stringProp name="Assertion.test_field">Assertion.response_code</stringProp>
498               <boolProp name="Assertion.assume_success">false</boolProp>
499               <intProp name="Assertion.test_type">8</intProp>
500             </ResponseAssertion>
501             <hashTree/>
502           </hashTree>
503           <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Deploy 5G SON O1" enabled="true">
504             <boolProp name="HTTPSampler.postBodyRaw">true</boolProp>
505             <elementProp name="HTTPsampler.Arguments" elementType="Arguments">
506               <collectionProp name="Arguments.arguments">
507                 <elementProp name="" elementType="HTTPArgument">
508                   <boolProp name="HTTPArgument.always_encode">false</boolProp>
509                   <stringProp name="Argument.value">{&quot;policies&quot;:[{&quot;policy-id&quot;:&quot;op.5g.son.o1&quot;, &quot;version&quot;: &quot;1.0.0&quot;}]}</stringProp>
510                   <stringProp name="Argument.metadata">=</stringProp>
511                 </elementProp>
512               </collectionProp>
513             </elementProp>
514             <stringProp name="HTTPSampler.domain">${PAP_HOST}</stringProp>
515             <stringProp name="HTTPSampler.port">${PAP_PORT}</stringProp>
516             <stringProp name="HTTPSampler.protocol">${HTTP}</stringProp>
517             <stringProp name="HTTPSampler.path">policy/pap/v1/pdps/policies</stringProp>
518             <stringProp name="HTTPSampler.method">POST</stringProp>
519             <boolProp name="HTTPSampler.follow_redirects">false</boolProp>
520             <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
521             <boolProp name="HTTPSampler.use_keepalive">false</boolProp>
522             <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
523             <boolProp name="HTTPSampler.BROWSER_COMPATIBLE_MULTIPART">false</boolProp>
524             <boolProp name="HTTPSampler.image_parser">false</boolProp>
525             <boolProp name="HTTPSampler.concurrentDwn">false</boolProp>
526             <stringProp name="HTTPSampler.concurrentPool">6</stringProp>
527             <boolProp name="HTTPSampler.md5">false</boolProp>
528             <intProp name="HTTPSampler.ipSourceType">0</intProp>
529           </HTTPSamplerProxy>
530           <hashTree>
531             <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Response Assertion" enabled="true">
532               <collectionProp name="Asserion.test_strings">
533                 <stringProp name="49588">202</stringProp>
534               </collectionProp>
535               <stringProp name="Assertion.custom_message"></stringProp>
536               <stringProp name="Assertion.test_field">Assertion.response_code</stringProp>
537               <boolProp name="Assertion.assume_success">false</boolProp>
538               <intProp name="Assertion.test_type">8</intProp>
539             </ResponseAssertion>
540             <hashTree/>
541           </hashTree>
542           <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Deploy 5G SON A1" enabled="true">
543             <boolProp name="HTTPSampler.postBodyRaw">true</boolProp>
544             <elementProp name="HTTPsampler.Arguments" elementType="Arguments">
545               <collectionProp name="Arguments.arguments">
546                 <elementProp name="" elementType="HTTPArgument">
547                   <boolProp name="HTTPArgument.always_encode">false</boolProp>
548                   <stringProp name="Argument.value">{&quot;policies&quot;:[{&quot;policy-id&quot;:&quot;op.5g.son.a1&quot;, &quot;version&quot;: &quot;1.0.0&quot;}]}</stringProp>
549                   <stringProp name="Argument.metadata">=</stringProp>
550                 </elementProp>
551               </collectionProp>
552             </elementProp>
553             <stringProp name="HTTPSampler.domain">${PAP_HOST}</stringProp>
554             <stringProp name="HTTPSampler.port">${PAP_PORT}</stringProp>
555             <stringProp name="HTTPSampler.protocol">${HTTP}</stringProp>
556             <stringProp name="HTTPSampler.path">policy/pap/v1/pdps/policies</stringProp>
557             <stringProp name="HTTPSampler.method">POST</stringProp>
558             <boolProp name="HTTPSampler.follow_redirects">false</boolProp>
559             <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
560             <boolProp name="HTTPSampler.use_keepalive">false</boolProp>
561             <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
562             <boolProp name="HTTPSampler.BROWSER_COMPATIBLE_MULTIPART">false</boolProp>
563             <boolProp name="HTTPSampler.image_parser">false</boolProp>
564             <boolProp name="HTTPSampler.concurrentDwn">false</boolProp>
565             <stringProp name="HTTPSampler.concurrentPool">6</stringProp>
566             <boolProp name="HTTPSampler.md5">false</boolProp>
567             <intProp name="HTTPSampler.ipSourceType">0</intProp>
568           </HTTPSamplerProxy>
569           <hashTree>
570             <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Response Assertion" enabled="true">
571               <collectionProp name="Asserion.test_strings">
572                 <stringProp name="49588">202</stringProp>
573               </collectionProp>
574               <stringProp name="Assertion.custom_message"></stringProp>
575               <stringProp name="Assertion.test_field">Assertion.response_code</stringProp>
576               <boolProp name="Assertion.assume_success">false</boolProp>
577               <intProp name="Assertion.test_type">8</intProp>
578             </ResponseAssertion>
579             <hashTree/>
580           </hashTree>
581         </hashTree>
582         <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="POLICY-PDP-PAP " enabled="true">
583           <boolProp name="HTTPSampler.postBodyRaw">false</boolProp>
584           <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
585             <collectionProp name="Arguments.arguments"/>
586           </elementProp>
587           <stringProp name="HTTPSampler.domain">${KAFKA_HOST}</stringProp>
588           <stringProp name="HTTPSampler.port">${KAFKA_PORT}</stringProp>
589           <stringProp name="HTTPSampler.protocol">${HTTP}</stringProp>
590           <stringProp name="HTTPSampler.path">events/policy-pdp-pap/${__time()}/1?timeout=2000</stringProp>
591           <stringProp name="HTTPSampler.method">GET</stringProp>
592           <boolProp name="HTTPSampler.follow_redirects">false</boolProp>
593           <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
594           <boolProp name="HTTPSampler.use_keepalive">false</boolProp>
595           <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
596           <boolProp name="HTTPSampler.BROWSER_COMPATIBLE_MULTIPART">false</boolProp>
597           <boolProp name="HTTPSampler.image_parser">false</boolProp>
598           <boolProp name="HTTPSampler.concurrentDwn">false</boolProp>
599           <stringProp name="HTTPSampler.concurrentPool">6</stringProp>
600           <boolProp name="HTTPSampler.md5">false</boolProp>
601           <intProp name="HTTPSampler.ipSourceType">0</intProp>
602         </HTTPSamplerProxy>
603         <hashTree>
604           <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Response Assertion" enabled="true">
605             <collectionProp name="Asserion.test_strings">
606               <stringProp name="49586">200</stringProp>
607             </collectionProp>
608             <stringProp name="Assertion.custom_message"></stringProp>
609             <stringProp name="Assertion.test_field">Assertion.response_code</stringProp>
610             <boolProp name="Assertion.assume_success">false</boolProp>
611             <intProp name="Assertion.test_type">8</intProp>
612           </ResponseAssertion>
613           <hashTree/>
614         </hashTree>
615         <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Drain vCPE success appc-lcm-read" enabled="true">
616           <boolProp name="HTTPSampler.postBodyRaw">false</boolProp>
617           <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
618             <collectionProp name="Arguments.arguments"/>
619           </elementProp>
620           <stringProp name="HTTPSampler.domain">${KAFKA_HOST}</stringProp>
621           <stringProp name="HTTPSampler.port">${KAFKA_PORT}</stringProp>
622           <stringProp name="HTTPSampler.protocol">${HTTP}</stringProp>
623           <stringProp name="HTTPSampler.path">events/appc-lcm-read/vcpesuccess/1?timeout=5000</stringProp>
624           <stringProp name="HTTPSampler.method">GET</stringProp>
625           <boolProp name="HTTPSampler.follow_redirects">false</boolProp>
626           <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
627           <boolProp name="HTTPSampler.use_keepalive">false</boolProp>
628           <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
629           <boolProp name="HTTPSampler.BROWSER_COMPATIBLE_MULTIPART">false</boolProp>
630           <boolProp name="HTTPSampler.image_parser">false</boolProp>
631           <boolProp name="HTTPSampler.concurrentDwn">false</boolProp>
632           <stringProp name="HTTPSampler.concurrentPool">6</stringProp>
633           <boolProp name="HTTPSampler.md5">false</boolProp>
634           <intProp name="HTTPSampler.ipSourceType">0</intProp>
635         </HTTPSamplerProxy>
636         <hashTree>
637           <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Response Assertion" enabled="true">
638             <collectionProp name="Asserion.test_strings">
639               <stringProp name="49586">200</stringProp>
640             </collectionProp>
641             <stringProp name="Assertion.custom_message"></stringProp>
642             <stringProp name="Assertion.test_field">Assertion.response_code</stringProp>
643             <boolProp name="Assertion.assume_success">false</boolProp>
644             <intProp name="Assertion.test_type">8</intProp>
645           </ResponseAssertion>
646           <hashTree/>
647         </hashTree>
648         <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Drain vCPE success policy-cl-mgt" enabled="true">
649           <boolProp name="HTTPSampler.postBodyRaw">false</boolProp>
650           <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
651             <collectionProp name="Arguments.arguments"/>
652           </elementProp>
653           <stringProp name="HTTPSampler.domain">${KAFKA_HOST}</stringProp>
654           <stringProp name="HTTPSampler.port">${KAFKA_PORT}</stringProp>
655           <stringProp name="HTTPSampler.protocol">${HTTP}</stringProp>
656           <stringProp name="HTTPSampler.path">events/policy-cl-mgt/vcpesuccess/1?timeout=5000</stringProp>
657           <stringProp name="HTTPSampler.method">GET</stringProp>
658           <boolProp name="HTTPSampler.follow_redirects">false</boolProp>
659           <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
660           <boolProp name="HTTPSampler.use_keepalive">false</boolProp>
661           <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
662           <boolProp name="HTTPSampler.BROWSER_COMPATIBLE_MULTIPART">false</boolProp>
663           <boolProp name="HTTPSampler.image_parser">false</boolProp>
664           <boolProp name="HTTPSampler.concurrentDwn">false</boolProp>
665           <stringProp name="HTTPSampler.concurrentPool">6</stringProp>
666           <boolProp name="HTTPSampler.md5">false</boolProp>
667           <intProp name="HTTPSampler.ipSourceType">0</intProp>
668         </HTTPSamplerProxy>
669         <hashTree>
670           <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Response Assertion" enabled="true">
671             <collectionProp name="Asserion.test_strings">
672               <stringProp name="49586">200</stringProp>
673             </collectionProp>
674             <stringProp name="Assertion.custom_message"></stringProp>
675             <stringProp name="Assertion.test_field">Assertion.response_code</stringProp>
676             <boolProp name="Assertion.assume_success">false</boolProp>
677             <intProp name="Assertion.test_type">8</intProp>
678           </ResponseAssertion>
679           <hashTree/>
680         </hashTree>
681         <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Drain SON 01 SDNR-CL" enabled="true">
682           <boolProp name="HTTPSampler.postBodyRaw">false</boolProp>
683           <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
684             <collectionProp name="Arguments.arguments"/>
685           </elementProp>
686           <stringProp name="HTTPSampler.domain">${KAFKA_HOST}</stringProp>
687           <stringProp name="HTTPSampler.port">${KAFKA_PORT}</stringProp>
688           <stringProp name="HTTPSampler.protocol">${HTTP}</stringProp>
689           <stringProp name="HTTPSampler.path">events/SDNR-CL/sonO1/1?timeout=5000</stringProp>
690           <stringProp name="HTTPSampler.method">GET</stringProp>
691           <boolProp name="HTTPSampler.follow_redirects">false</boolProp>
692           <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
693           <boolProp name="HTTPSampler.use_keepalive">false</boolProp>
694           <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
695           <boolProp name="HTTPSampler.BROWSER_COMPATIBLE_MULTIPART">false</boolProp>
696           <boolProp name="HTTPSampler.image_parser">false</boolProp>
697           <boolProp name="HTTPSampler.concurrentDwn">false</boolProp>
698           <stringProp name="HTTPSampler.concurrentPool">6</stringProp>
699           <boolProp name="HTTPSampler.md5">false</boolProp>
700           <intProp name="HTTPSampler.ipSourceType">0</intProp>
701         </HTTPSamplerProxy>
702         <hashTree>
703           <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Response Assertion" enabled="true">
704             <collectionProp name="Asserion.test_strings">
705               <stringProp name="49586">200</stringProp>
706             </collectionProp>
707             <stringProp name="Assertion.custom_message"></stringProp>
708             <stringProp name="Assertion.test_field">Assertion.response_code</stringProp>
709             <boolProp name="Assertion.assume_success">false</boolProp>
710             <intProp name="Assertion.test_type">8</intProp>
711           </ResponseAssertion>
712           <hashTree/>
713         </hashTree>
714         <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Drain SON 01 SDNR-CL-RSP" enabled="true">
715           <boolProp name="HTTPSampler.postBodyRaw">false</boolProp>
716           <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
717             <collectionProp name="Arguments.arguments"/>
718           </elementProp>
719           <stringProp name="HTTPSampler.domain">${KAFKA_HOST}</stringProp>
720           <stringProp name="HTTPSampler.port">${KAFKA_PORT}</stringProp>
721           <stringProp name="HTTPSampler.protocol">${HTTP}</stringProp>
722           <stringProp name="HTTPSampler.path">events/SDNR-CL-RSP/sonO1/1?timeout=5000</stringProp>
723           <stringProp name="HTTPSampler.method">GET</stringProp>
724           <boolProp name="HTTPSampler.follow_redirects">false</boolProp>
725           <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
726           <boolProp name="HTTPSampler.use_keepalive">false</boolProp>
727           <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
728           <boolProp name="HTTPSampler.BROWSER_COMPATIBLE_MULTIPART">false</boolProp>
729           <boolProp name="HTTPSampler.image_parser">false</boolProp>
730           <boolProp name="HTTPSampler.concurrentDwn">false</boolProp>
731           <stringProp name="HTTPSampler.concurrentPool">6</stringProp>
732           <boolProp name="HTTPSampler.md5">false</boolProp>
733           <intProp name="HTTPSampler.ipSourceType">0</intProp>
734         </HTTPSamplerProxy>
735         <hashTree>
736           <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Response Assertion" enabled="true">
737             <collectionProp name="Asserion.test_strings">
738               <stringProp name="49586">200</stringProp>
739             </collectionProp>
740             <stringProp name="Assertion.custom_message"></stringProp>
741             <stringProp name="Assertion.test_field">Assertion.response_code</stringProp>
742             <boolProp name="Assertion.assume_success">false</boolProp>
743             <intProp name="Assertion.test_type">8</intProp>
744           </ResponseAssertion>
745           <hashTree/>
746         </hashTree>
747         <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Drain SON 01 DCAE_CL_RSP" enabled="true">
748           <boolProp name="HTTPSampler.postBodyRaw">false</boolProp>
749           <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
750             <collectionProp name="Arguments.arguments"/>
751           </elementProp>
752           <stringProp name="HTTPSampler.domain">${KAFKA_HOST}</stringProp>
753           <stringProp name="HTTPSampler.port">${KAFKA_PORT}</stringProp>
754           <stringProp name="HTTPSampler.protocol">${HTTP}</stringProp>
755           <stringProp name="HTTPSampler.path">events/DCAE_CL_RSP/son01/1?timeout=5000</stringProp>
756           <stringProp name="HTTPSampler.method">GET</stringProp>
757           <boolProp name="HTTPSampler.follow_redirects">false</boolProp>
758           <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
759           <boolProp name="HTTPSampler.use_keepalive">false</boolProp>
760           <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
761           <boolProp name="HTTPSampler.BROWSER_COMPATIBLE_MULTIPART">false</boolProp>
762           <boolProp name="HTTPSampler.image_parser">false</boolProp>
763           <boolProp name="HTTPSampler.concurrentDwn">false</boolProp>
764           <stringProp name="HTTPSampler.concurrentPool">6</stringProp>
765           <boolProp name="HTTPSampler.md5">false</boolProp>
766           <intProp name="HTTPSampler.ipSourceType">0</intProp>
767         </HTTPSamplerProxy>
768         <hashTree>
769           <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Response Assertion" enabled="true">
770             <collectionProp name="Asserion.test_strings">
771               <stringProp name="49586">200</stringProp>
772             </collectionProp>
773             <stringProp name="Assertion.custom_message"></stringProp>
774             <stringProp name="Assertion.test_field">Assertion.response_code</stringProp>
775             <boolProp name="Assertion.assume_success">false</boolProp>
776             <intProp name="Assertion.test_type">8</intProp>
777           </ResponseAssertion>
778           <hashTree/>
779         </hashTree>
780         <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Drain SON A1 SDNR-CL" enabled="true">
781           <boolProp name="HTTPSampler.postBodyRaw">false</boolProp>
782           <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
783             <collectionProp name="Arguments.arguments"/>
784           </elementProp>
785           <stringProp name="HTTPSampler.domain">${KAFKA_HOST}</stringProp>
786           <stringProp name="HTTPSampler.port">${KAFKA_PORT}</stringProp>
787           <stringProp name="HTTPSampler.protocol">${HTTP}</stringProp>
788           <stringProp name="HTTPSampler.path">events/SDNR-CL/sonA1/1?timeout=5000</stringProp>
789           <stringProp name="HTTPSampler.method">GET</stringProp>
790           <boolProp name="HTTPSampler.follow_redirects">false</boolProp>
791           <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
792           <boolProp name="HTTPSampler.use_keepalive">false</boolProp>
793           <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
794           <boolProp name="HTTPSampler.BROWSER_COMPATIBLE_MULTIPART">false</boolProp>
795           <boolProp name="HTTPSampler.image_parser">false</boolProp>
796           <boolProp name="HTTPSampler.concurrentDwn">false</boolProp>
797           <stringProp name="HTTPSampler.concurrentPool">6</stringProp>
798           <boolProp name="HTTPSampler.md5">false</boolProp>
799           <intProp name="HTTPSampler.ipSourceType">0</intProp>
800         </HTTPSamplerProxy>
801         <hashTree>
802           <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Response Assertion" enabled="true">
803             <collectionProp name="Asserion.test_strings">
804               <stringProp name="49586">200</stringProp>
805             </collectionProp>
806             <stringProp name="Assertion.custom_message"></stringProp>
807             <stringProp name="Assertion.test_field">Assertion.response_code</stringProp>
808             <boolProp name="Assertion.assume_success">false</boolProp>
809             <intProp name="Assertion.test_type">8</intProp>
810           </ResponseAssertion>
811           <hashTree/>
812         </hashTree>
813         <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Drain SON A1 SDNR-CL-RSP" enabled="true">
814           <boolProp name="HTTPSampler.postBodyRaw">false</boolProp>
815           <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
816             <collectionProp name="Arguments.arguments"/>
817           </elementProp>
818           <stringProp name="HTTPSampler.domain">${KAFKA_HOST}</stringProp>
819           <stringProp name="HTTPSampler.port">${KAFKA_PORT}</stringProp>
820           <stringProp name="HTTPSampler.protocol">${HTTP}</stringProp>
821           <stringProp name="HTTPSampler.path">events/SDNR-CL-RSP/sonA1/1?timeout=5000</stringProp>
822           <stringProp name="HTTPSampler.method">GET</stringProp>
823           <boolProp name="HTTPSampler.follow_redirects">false</boolProp>
824           <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
825           <boolProp name="HTTPSampler.use_keepalive">false</boolProp>
826           <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
827           <boolProp name="HTTPSampler.BROWSER_COMPATIBLE_MULTIPART">false</boolProp>
828           <boolProp name="HTTPSampler.image_parser">false</boolProp>
829           <boolProp name="HTTPSampler.concurrentDwn">false</boolProp>
830           <stringProp name="HTTPSampler.concurrentPool">6</stringProp>
831           <boolProp name="HTTPSampler.md5">false</boolProp>
832           <intProp name="HTTPSampler.ipSourceType">0</intProp>
833         </HTTPSamplerProxy>
834         <hashTree>
835           <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Response Assertion" enabled="true">
836             <collectionProp name="Asserion.test_strings">
837               <stringProp name="49586">200</stringProp>
838             </collectionProp>
839             <stringProp name="Assertion.custom_message"></stringProp>
840             <stringProp name="Assertion.test_field">Assertion.response_code</stringProp>
841             <boolProp name="Assertion.assume_success">false</boolProp>
842             <intProp name="Assertion.test_type">8</intProp>
843           </ResponseAssertion>
844           <hashTree/>
845         </hashTree>
846         <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Drain SON A1 DCAE_CL_RSP" enabled="true">
847           <boolProp name="HTTPSampler.postBodyRaw">false</boolProp>
848           <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
849             <collectionProp name="Arguments.arguments"/>
850           </elementProp>
851           <stringProp name="HTTPSampler.domain">${KAFKA_HOST}</stringProp>
852           <stringProp name="HTTPSampler.port">${KAFKA_PORT}</stringProp>
853           <stringProp name="HTTPSampler.protocol">${HTTP}</stringProp>
854           <stringProp name="HTTPSampler.path">events/DCAE_CL_RSP/sonA1/1?timeout=5000</stringProp>
855           <stringProp name="HTTPSampler.method">GET</stringProp>
856           <boolProp name="HTTPSampler.follow_redirects">false</boolProp>
857           <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
858           <boolProp name="HTTPSampler.use_keepalive">false</boolProp>
859           <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
860           <boolProp name="HTTPSampler.BROWSER_COMPATIBLE_MULTIPART">false</boolProp>
861           <boolProp name="HTTPSampler.image_parser">false</boolProp>
862           <boolProp name="HTTPSampler.concurrentDwn">false</boolProp>
863           <stringProp name="HTTPSampler.concurrentPool">6</stringProp>
864           <boolProp name="HTTPSampler.md5">false</boolProp>
865           <intProp name="HTTPSampler.ipSourceType">0</intProp>
866         </HTTPSamplerProxy>
867         <hashTree>
868           <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Response Assertion" enabled="true">
869             <collectionProp name="Asserion.test_strings">
870               <stringProp name="49586">200</stringProp>
871             </collectionProp>
872             <stringProp name="Assertion.custom_message"></stringProp>
873             <stringProp name="Assertion.test_field">Assertion.response_code</stringProp>
874             <boolProp name="Assertion.assume_success">false</boolProp>
875             <intProp name="Assertion.test_type">8</intProp>
876           </ResponseAssertion>
877           <hashTree/>
878         </hashTree>
879         <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Drain SON A1 policy-cl-mgt" enabled="true">
880           <boolProp name="HTTPSampler.postBodyRaw">false</boolProp>
881           <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
882             <collectionProp name="Arguments.arguments"/>
883           </elementProp>
884           <stringProp name="HTTPSampler.domain">${KAFKA_HOST}</stringProp>
885           <stringProp name="HTTPSampler.port">${KAFKA_PORT}</stringProp>
886           <stringProp name="HTTPSampler.protocol">${HTTP}</stringProp>
887           <stringProp name="HTTPSampler.path">events/policy-cl-mgt/sonA1/1?timeout=5000</stringProp>
888           <stringProp name="HTTPSampler.method">GET</stringProp>
889           <boolProp name="HTTPSampler.follow_redirects">false</boolProp>
890           <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
891           <boolProp name="HTTPSampler.use_keepalive">false</boolProp>
892           <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
893           <boolProp name="HTTPSampler.BROWSER_COMPATIBLE_MULTIPART">false</boolProp>
894           <boolProp name="HTTPSampler.image_parser">false</boolProp>
895           <boolProp name="HTTPSampler.concurrentDwn">false</boolProp>
896           <stringProp name="HTTPSampler.concurrentPool">6</stringProp>
897           <boolProp name="HTTPSampler.md5">false</boolProp>
898           <intProp name="HTTPSampler.ipSourceType">0</intProp>
899         </HTTPSamplerProxy>
900         <hashTree>
901           <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Response Assertion" enabled="true">
902             <collectionProp name="Asserion.test_strings">
903               <stringProp name="49586">200</stringProp>
904             </collectionProp>
905             <stringProp name="Assertion.custom_message"></stringProp>
906             <stringProp name="Assertion.test_field">Assertion.response_code</stringProp>
907             <boolProp name="Assertion.assume_success">false</boolProp>
908             <intProp name="Assertion.test_type">8</intProp>
909           </ResponseAssertion>
910           <hashTree/>
911         </hashTree>
912         <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Drain SON A1 policy-cl-mgt" enabled="true">
913           <boolProp name="HTTPSampler.postBodyRaw">false</boolProp>
914           <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
915             <collectionProp name="Arguments.arguments"/>
916           </elementProp>
917           <stringProp name="HTTPSampler.domain">${KAFKA_HOST}</stringProp>
918           <stringProp name="HTTPSampler.port">${KAFKA_PORT}</stringProp>
919           <stringProp name="HTTPSampler.protocol">${HTTP}</stringProp>
920           <stringProp name="HTTPSampler.path">events/policy-cl-mgt/sonA1/1?timeout=5000</stringProp>
921           <stringProp name="HTTPSampler.method">GET</stringProp>
922           <boolProp name="HTTPSampler.follow_redirects">false</boolProp>
923           <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
924           <boolProp name="HTTPSampler.use_keepalive">false</boolProp>
925           <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
926           <boolProp name="HTTPSampler.BROWSER_COMPATIBLE_MULTIPART">false</boolProp>
927           <boolProp name="HTTPSampler.image_parser">false</boolProp>
928           <boolProp name="HTTPSampler.concurrentDwn">false</boolProp>
929           <stringProp name="HTTPSampler.concurrentPool">6</stringProp>
930           <boolProp name="HTTPSampler.md5">false</boolProp>
931           <intProp name="HTTPSampler.ipSourceType">0</intProp>
932         </HTTPSamplerProxy>
933         <hashTree>
934           <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Response Assertion" enabled="true">
935             <collectionProp name="Asserion.test_strings">
936               <stringProp name="49586">200</stringProp>
937             </collectionProp>
938             <stringProp name="Assertion.custom_message"></stringProp>
939             <stringProp name="Assertion.test_field">Assertion.response_code</stringProp>
940             <boolProp name="Assertion.assume_success">false</boolProp>
941             <intProp name="Assertion.test_type">8</intProp>
942           </ResponseAssertion>
943           <hashTree/>
944         </hashTree>
945         <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="PDP-D" enabled="true">
946           <boolProp name="HTTPSampler.postBodyRaw">false</boolProp>
947           <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
948             <collectionProp name="Arguments.arguments"/>
949           </elementProp>
950           <stringProp name="HTTPSampler.domain">${DROOLS_HOST}</stringProp>
951           <stringProp name="HTTPSampler.port">${DROOLS_PORT}</stringProp>
952           <stringProp name="HTTPSampler.protocol">${HTTP}</stringProp>
953           <stringProp name="HTTPSampler.path">policy/pdp/engine/controllers/usecases/drools/facts</stringProp>
954           <stringProp name="HTTPSampler.method">GET</stringProp>
955           <boolProp name="HTTPSampler.follow_redirects">false</boolProp>
956           <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
957           <boolProp name="HTTPSampler.use_keepalive">false</boolProp>
958           <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
959           <boolProp name="HTTPSampler.BROWSER_COMPATIBLE_MULTIPART">false</boolProp>
960           <boolProp name="HTTPSampler.image_parser">false</boolProp>
961           <boolProp name="HTTPSampler.concurrentDwn">false</boolProp>
962           <stringProp name="HTTPSampler.concurrentPool">6</stringProp>
963           <boolProp name="HTTPSampler.md5">false</boolProp>
964           <intProp name="HTTPSampler.ipSourceType">0</intProp>
965         </HTTPSamplerProxy>
966         <hashTree>
967           <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Response Assertion" enabled="true">
968             <collectionProp name="Asserion.test_strings">
969               <stringProp name="49586">200</stringProp>
970             </collectionProp>
971             <stringProp name="Assertion.custom_message"></stringProp>
972             <stringProp name="Assertion.test_field">Assertion.response_code</stringProp>
973             <boolProp name="Assertion.assume_success">false</boolProp>
974             <intProp name="Assertion.test_type">8</intProp>
975           </ResponseAssertion>
976           <hashTree/>
977           <JSONPathAssertion guiclass="JSONPathAssertionGui" testclass="JSONPathAssertion" testname="JSON Assertion" enabled="true">
978             <stringProp name="JSON_PATH">$.usecases</stringProp>
979             <stringProp name="EXPECTED_VALUE">7</stringProp>
980             <boolProp name="JSONVALIDATION">true</boolProp>
981             <boolProp name="EXPECT_NULL">false</boolProp>
982             <boolProp name="INVERT">false</boolProp>
983             <boolProp name="ISREGEX">false</boolProp>
984           </JSONPathAssertion>
985           <hashTree/>
986         </hashTree>
987       </hashTree>
988       <ThreadGroup guiclass="ThreadGroupGui" testclass="ThreadGroup" testname="vCPE Success" enabled="true">
989         <stringProp name="ThreadGroup.on_sample_error">startnextloop</stringProp>
990         <elementProp name="ThreadGroup.main_controller" elementType="LoopController" guiclass="LoopControlPanel" testclass="LoopController" testname="Loop Controller" enabled="true">
991           <intProp name="LoopController.loops">-1</intProp>
992           <boolProp name="LoopController.continue_forever">false</boolProp>
993         </elementProp>
994         <stringProp name="ThreadGroup.num_threads">1</stringProp>
995         <stringProp name="ThreadGroup.ramp_time">1</stringProp>
996         <boolProp name="ThreadGroup.scheduler">true</boolProp>
997         <stringProp name="ThreadGroup.duration">${duration}</stringProp>
998         <stringProp name="ThreadGroup.delay">11</stringProp>
999         <boolProp name="ThreadGroup.same_user_on_next_iteration">true</boolProp>
1000         <boolProp name="ThreadGroup.delayedStart">false</boolProp>
1001       </ThreadGroup>
1002       <hashTree>
1003         <UserParameters guiclass="UserParametersGui" testclass="UserParameters" testname="Set consumer group per scenario" enabled="true">
1004           <collectionProp name="UserParameters.names">
1005             <stringProp name="-308835287">consumerGroup</stringProp>
1006           </collectionProp>
1007           <collectionProp name="UserParameters.thread_values">
1008             <collectionProp name="-1571164782">
1009               <stringProp name="-2075285407">vcpesuccess</stringProp>
1010             </collectionProp>
1011           </collectionProp>
1012           <boolProp name="UserParameters.per_iteration">false</boolProp>
1013           <stringProp name="TestPlan.comments">Global to the thread group</stringProp>
1014         </UserParameters>
1015         <hashTree/>
1016         <UserParameters guiclass="UserParametersGui" testclass="UserParameters" testname="Set request id per cycle" enabled="true">
1017           <collectionProp name="UserParameters.names">
1018             <stringProp name="693933066">requestId</stringProp>
1019           </collectionProp>
1020           <collectionProp name="UserParameters.thread_values">
1021             <collectionProp name="681405977">
1022               <stringProp name="118040362">${__UUID()}</stringProp>
1023             </collectionProp>
1024           </collectionProp>
1025           <boolProp name="UserParameters.per_iteration">true</boolProp>
1026           <stringProp name="TestPlan.comments">Update on a per iteration basis</stringProp>
1027         </UserParameters>
1028         <hashTree/>
1029         <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="DCAE[DCAE_TOPIC]: ONSET" enabled="true">
1030           <boolProp name="HTTPSampler.postBodyRaw">true</boolProp>
1031           <elementProp name="HTTPsampler.Arguments" elementType="Arguments">
1032             <collectionProp name="Arguments.arguments">
1033               <elementProp name="" elementType="HTTPArgument">
1034                 <boolProp name="HTTPArgument.always_encode">false</boolProp>
1035                 <stringProp name="Argument.value">{&#xd;
1036   &quot;closedLoopControlName&quot;: &quot;ControlLoop-vCPE-48f0c2c3-a172-4192-9ae3-052274181b6e&quot;,&#xd;
1037   &quot;closedLoopAlarmStart&quot;: 1463679805324,&#xd;
1038   &quot;closedLoopEventClient&quot;: &quot;DCAE_INSTANCE_ID.dcae-tca&quot;,&#xd;
1039   &quot;closedLoopEventStatus&quot;: &quot;ONSET&quot;,&#xd;
1040   &quot;requestID&quot;: &quot;${requestId}&quot;,&#xd;
1041   &quot;target_type&quot;: &quot;VNF&quot;,&#xd;
1042   &quot;target&quot;: &quot;generic-vnf.vnf-id&quot;,&#xd;
1043   &quot;AAI&quot;: {&#xd;
1044     &quot;vserver.is-closed-loop-disabled&quot;: &quot;false&quot;,&#xd;
1045     &quot;vserver.prov-status&quot;: &quot;ACTIVE&quot;,&#xd;
1046     &quot;generic-vnf.vnf-id&quot;: &quot;vCPE_Infrastructure_vGMUX_demo_app&quot;&#xd;
1047   },&#xd;
1048   &quot;from&quot;: &quot;DCAE&quot;,&#xd;
1049   &quot;version&quot;: &quot;1.0.2&quot;&#xd;
1050 }</stringProp>
1051                 <stringProp name="Argument.metadata">=</stringProp>
1052               </elementProp>
1053             </collectionProp>
1054           </elementProp>
1055           <stringProp name="HTTPSampler.domain">${DROOLS_HOST}</stringProp>
1056           <stringProp name="HTTPSampler.port">${DROOLS_PORT}</stringProp>
1057           <stringProp name="HTTPSampler.protocol">${HTTP}</stringProp>
1058           <stringProp name="HTTPSampler.path">policy/pdp/engine/topics/sources/dmaap/dcae_topic/events</stringProp>
1059           <stringProp name="HTTPSampler.method">PUT</stringProp>
1060           <boolProp name="HTTPSampler.follow_redirects">false</boolProp>
1061           <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
1062           <boolProp name="HTTPSampler.use_keepalive">false</boolProp>
1063           <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
1064           <boolProp name="HTTPSampler.BROWSER_COMPATIBLE_MULTIPART">false</boolProp>
1065           <boolProp name="HTTPSampler.image_parser">false</boolProp>
1066           <boolProp name="HTTPSampler.concurrentDwn">false</boolProp>
1067           <stringProp name="HTTPSampler.concurrentPool">6</stringProp>
1068           <boolProp name="HTTPSampler.md5">false</boolProp>
1069           <intProp name="HTTPSampler.ipSourceType">0</intProp>
1070         </HTTPSamplerProxy>
1071         <hashTree>
1072           <HeaderManager guiclass="HeaderPanel" testclass="HeaderManager" testname="HTTP Header Manager" enabled="true">
1073             <collectionProp name="HeaderManager.headers">
1074               <elementProp name="" elementType="Header">
1075                 <stringProp name="Header.name">Content-Type</stringProp>
1076                 <stringProp name="Header.value">text/plain</stringProp>
1077               </elementProp>
1078             </collectionProp>
1079           </HeaderManager>
1080           <hashTree/>
1081         </hashTree>
1082         <JSR223Sampler guiclass="TestBeanGUI" testclass="JSR223Sampler" testname="Init DMaaP Counter" enabled="true">
1083           <stringProp name="scriptLanguage">groovy</stringProp>
1084           <stringProp name="parameters"></stringProp>
1085           <stringProp name="filename"></stringProp>
1086           <stringProp name="cacheKey">true</stringProp>
1087           <stringProp name="script">vars.put(&quot;counter&quot;, &quot;0&quot;);</stringProp>
1088         </JSR223Sampler>
1089         <hashTree/>
1090         <WhileController guiclass="WhileControllerGui" testclass="WhileController" testname="APPCL Restart Loop Controller" enabled="true">
1091           <stringProp name="WhileController.condition">${__javaScript(${counter} &lt; 10)}</stringProp>
1092         </WhileController>
1093         <hashTree>
1094           <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="POLICY[appc-lcm-read]: Restart" enabled="true">
1095             <boolProp name="HTTPSampler.postBodyRaw">false</boolProp>
1096             <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
1097               <collectionProp name="Arguments.arguments">
1098                 <elementProp name="filter" elementType="HTTPArgument">
1099                   <boolProp name="HTTPArgument.always_encode">true</boolProp>
1100                   <stringProp name="Argument.value">{&quot;class&quot;:&quot;And&quot;, &quot;filters&quot;: [ { &quot;class&quot;:&quot;Equals&quot;, &quot;field&quot;:&quot;request-id&quot;, &quot;value&quot;:&quot;${requestId}&quot; }, { &quot;class&quot;:&quot;Equals&quot;, &quot;field&quot;:&quot;rpc-name&quot;, &quot;value&quot;:&quot;restart&quot; }]}</stringProp>
1101                   <stringProp name="Argument.metadata">=</stringProp>
1102                   <boolProp name="HTTPArgument.use_equals">true</boolProp>
1103                   <stringProp name="Argument.name">filter</stringProp>
1104                 </elementProp>
1105               </collectionProp>
1106             </elementProp>
1107             <stringProp name="HTTPSampler.domain">${KAFKA_HOST}</stringProp>
1108             <stringProp name="HTTPSampler.port">${KAFKA_PORT}</stringProp>
1109             <stringProp name="HTTPSampler.protocol">${HTTP}</stringProp>
1110             <stringProp name="HTTPSampler.path">events/appc-lcm-read/${consumerGroup}/1?timeout=15000&amp;limit=1</stringProp>
1111             <stringProp name="HTTPSampler.method">GET</stringProp>
1112             <boolProp name="HTTPSampler.follow_redirects">false</boolProp>
1113             <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
1114             <boolProp name="HTTPSampler.use_keepalive">false</boolProp>
1115             <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
1116             <boolProp name="HTTPSampler.BROWSER_COMPATIBLE_MULTIPART">false</boolProp>
1117             <boolProp name="HTTPSampler.image_parser">false</boolProp>
1118             <boolProp name="HTTPSampler.concurrentDwn">false</boolProp>
1119             <stringProp name="HTTPSampler.concurrentPool">6</stringProp>
1120             <boolProp name="HTTPSampler.md5">false</boolProp>
1121             <intProp name="HTTPSampler.ipSourceType">0</intProp>
1122           </HTTPSamplerProxy>
1123           <hashTree>
1124             <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="No []" enabled="true">
1125               <collectionProp name="Asserion.test_strings">
1126                 <stringProp name="2914">[]</stringProp>
1127               </collectionProp>
1128               <stringProp name="Assertion.custom_message"></stringProp>
1129               <stringProp name="Assertion.test_field">Assertion.response_data</stringProp>
1130               <boolProp name="Assertion.assume_success">false</boolProp>
1131               <intProp name="Assertion.test_type">12</intProp>
1132             </ResponseAssertion>
1133             <hashTree/>
1134             <RegexExtractor guiclass="RegexExtractorGui" testclass="RegexExtractor" testname="request-id extractor" enabled="true">
1135               <stringProp name="RegexExtractor.useHeaders">false</stringProp>
1136               <stringProp name="RegexExtractor.refname">requestIdOnset</stringProp>
1137               <stringProp name="RegexExtractor.regex">\\&quot;request-id\\&quot;: \\&quot;(.+?)\\&quot;</stringProp>
1138               <stringProp name="RegexExtractor.template">$1$</stringProp>
1139               <stringProp name="RegexExtractor.default">none</stringProp>
1140               <boolProp name="RegexExtractor.default_empty_value">false</boolProp>
1141             </RegexExtractor>
1142             <hashTree/>
1143             <RegexExtractor guiclass="RegexExtractorGui" testclass="RegexExtractor" testname="correlation-id extractor" enabled="true">
1144               <stringProp name="RegexExtractor.useHeaders">false</stringProp>
1145               <stringProp name="RegexExtractor.refname">correlationId</stringProp>
1146               <stringProp name="RegexExtractor.regex">correlation-id\\&quot;: \\&quot;(.+?)\\&quot;</stringProp>
1147               <stringProp name="RegexExtractor.template">$1$</stringProp>
1148               <stringProp name="RegexExtractor.default">none</stringProp>
1149               <boolProp name="RegexExtractor.default_empty_value">false</boolProp>
1150             </RegexExtractor>
1151             <hashTree/>
1152             <RegexExtractor guiclass="RegexExtractorGui" testclass="RegexExtractor" testname="sub-request-id extractor" enabled="true">
1153               <stringProp name="RegexExtractor.useHeaders">false</stringProp>
1154               <stringProp name="RegexExtractor.refname">subRequestId</stringProp>
1155               <stringProp name="RegexExtractor.regex">sub-request-id\\&quot;: \\&quot;(.+?)\\&quot;</stringProp>
1156               <stringProp name="RegexExtractor.template">$1$</stringProp>
1157               <stringProp name="RegexExtractor.default">none</stringProp>
1158               <boolProp name="RegexExtractor.default_empty_value">false</boolProp>
1159             </RegexExtractor>
1160             <hashTree/>
1161             <JSR223Assertion guiclass="TestBeanGUI" testclass="JSR223Assertion" testname="JSR223 Assertion" enabled="true">
1162               <stringProp name="scriptLanguage">groovy</stringProp>
1163               <stringProp name="parameters"></stringProp>
1164               <stringProp name="filename"></stringProp>
1165               <stringProp name="cacheKey">true</stringProp>
1166               <stringProp name="script">String requestIdOnset =  vars.get(&quot;requestIdOnset&quot;);
1167 String requestId =  vars.get(&quot;requestId&quot;);
1168 String correlationId =  vars.get(&quot;correlationId&quot;);
1169 String subRequestId =  vars.get(&quot;subRequestId&quot;);
1170 String counter =  vars.get(&quot;counter&quot;);
1171
1172 String transaction = &quot;none&quot;;
1173
1174 log.info (&quot;The requestId id is &quot; + requestId);
1175 log.info (&quot;The requestIdOnset id is &quot; + requestIdOnset);
1176 log.info (&quot;The correlation id is &quot; + correlationId);
1177 log.info (&quot;The subrequest id is &quot; + subRequestId);
1178 log.info (&quot;The counter is &quot; + counter);       
1179
1180 if (    requestId == requestIdOnset ) {
1181         if (    correlationId == &quot;none&quot; || subRequestId == &quot;none&quot; ) {
1182                 transaction = &quot;FINAL&quot;;
1183                 log.info (&quot;Final Failure Transaction&quot;);
1184                 AssertionResult.setFailureMessage(&quot;Missing correlationId or subRequestId&quot;);
1185                 AssertionResult.setFailure(true);
1186         } else {
1187                 transaction = &quot;FINAL&quot;;
1188                 vars.put(&quot;transaction&quot;, &quot;FINAL&quot;);
1189                 log.info (&quot;Final Success Transaction&quot;);
1190         }
1191 }
1192
1193 int counterTemp = Integer.parseInt(counter) +1;
1194 if (transaction == &quot;FINAL&quot;) {
1195         counterTemp = 99;
1196 } else if (counterTemp &gt;= 10) {
1197         AssertionResult.setFailureMessage(&quot;vCPE Success APPCL Failure, reached maximum number of 10 attempts &quot;);
1198         AssertionResult.setFailure(true);               
1199 }
1200
1201 vars.put(&quot;counter&quot;, Integer.toString(counterTemp));
1202
1203 </stringProp>
1204             </JSR223Assertion>
1205             <hashTree/>
1206           </hashTree>
1207         </hashTree>
1208         <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="APPC[appc-lcm-read]: SUCCESS" enabled="true">
1209           <boolProp name="HTTPSampler.postBodyRaw">true</boolProp>
1210           <elementProp name="HTTPsampler.Arguments" elementType="Arguments">
1211             <collectionProp name="Arguments.arguments">
1212               <elementProp name="" elementType="HTTPArgument">
1213                 <boolProp name="HTTPArgument.always_encode">false</boolProp>
1214                 <stringProp name="Argument.value">{&#xd;
1215   &quot;body&quot;: {&#xd;
1216     &quot;output&quot;: {&#xd;
1217       &quot;common-header&quot;: {&#xd;
1218         &quot;timestamp&quot;: &quot;2020-05-05T15:56:34.845Z&quot;,&#xd;
1219         &quot;api-ver&quot;: &quot;2.00&quot;,&#xd;
1220         &quot;originator-id&quot;: &quot;${requestId}&quot;,&#xd;
1221         &quot;request-id&quot;: &quot;${requestId}&quot;,&#xd;
1222         &quot;sub-request-id&quot;: &quot;${subRequestId}&quot;,&#xd;
1223         &quot;flags&quot;: {}&#xd;
1224       },&#xd;
1225       &quot;status&quot;: {&#xd;
1226         &quot;code&quot;: 400,&#xd;
1227         &quot;message&quot;: &quot;Restart Successful&quot;&#xd;
1228       }&#xd;
1229     }&#xd;
1230   },&#xd;
1231   &quot;version&quot;: &quot;2.0&quot;,&#xd;
1232   &quot;rpc-name&quot;: &quot;restart&quot;,&#xd;
1233   &quot;correlation-id&quot;: &quot;${correlationId}&quot;,&#xd;
1234   &quot;type&quot;: &quot;response&quot;&#xd;
1235 }&#xd;
1236 </stringProp>
1237                 <stringProp name="Argument.metadata">=</stringProp>
1238               </elementProp>
1239             </collectionProp>
1240           </elementProp>
1241           <stringProp name="HTTPSampler.domain">${DROOLS_HOST}</stringProp>
1242           <stringProp name="HTTPSampler.port">${DROOLS_PORT}</stringProp>
1243           <stringProp name="HTTPSampler.protocol">${HTTP}</stringProp>
1244           <stringProp name="HTTPSampler.path">policy/pdp/engine/topics/sources/dmaap/appc-lcm-write/events</stringProp>
1245           <stringProp name="HTTPSampler.method">PUT</stringProp>
1246           <boolProp name="HTTPSampler.follow_redirects">false</boolProp>
1247           <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
1248           <boolProp name="HTTPSampler.use_keepalive">false</boolProp>
1249           <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
1250           <boolProp name="HTTPSampler.BROWSER_COMPATIBLE_MULTIPART">false</boolProp>
1251           <boolProp name="HTTPSampler.image_parser">false</boolProp>
1252           <boolProp name="HTTPSampler.concurrentDwn">false</boolProp>
1253           <stringProp name="HTTPSampler.concurrentPool">6</stringProp>
1254           <boolProp name="HTTPSampler.md5">false</boolProp>
1255           <intProp name="HTTPSampler.ipSourceType">0</intProp>
1256         </HTTPSamplerProxy>
1257         <hashTree>
1258           <HeaderManager guiclass="HeaderPanel" testclass="HeaderManager" testname="HTTP Header Manager" enabled="true">
1259             <collectionProp name="HeaderManager.headers">
1260               <elementProp name="" elementType="Header">
1261                 <stringProp name="Header.name">Content-Type</stringProp>
1262                 <stringProp name="Header.value">text/plain</stringProp>
1263               </elementProp>
1264             </collectionProp>
1265           </HeaderManager>
1266           <hashTree/>
1267         </hashTree>
1268         <JSR223Sampler guiclass="TestBeanGUI" testclass="JSR223Sampler" testname="Init DMaaP Counter" enabled="true">
1269           <stringProp name="scriptLanguage">groovy</stringProp>
1270           <stringProp name="parameters"></stringProp>
1271           <stringProp name="filename"></stringProp>
1272           <stringProp name="cacheKey">true</stringProp>
1273           <stringProp name="script">vars.put(&quot;counter&quot;, &quot;0&quot;);</stringProp>
1274         </JSR223Sampler>
1275         <hashTree/>
1276         <WhileController guiclass="WhileControllerGui" testclass="WhileController" testname="Final Success Controller" enabled="true">
1277           <stringProp name="WhileController.condition">${__javaScript(${counter} &lt; 60)}</stringProp>
1278         </WhileController>
1279         <hashTree>
1280           <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="POLICY[policy-cl-mgt]: FINAL_SUCCESS" enabled="true">
1281             <boolProp name="HTTPSampler.postBodyRaw">false</boolProp>
1282             <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
1283               <collectionProp name="Arguments.arguments">
1284                 <elementProp name="filter" elementType="HTTPArgument">
1285                   <boolProp name="HTTPArgument.always_encode">true</boolProp>
1286                   <stringProp name="Argument.value">{&quot;class&quot;:&quot;And&quot;, &quot;filters&quot;: [ { &quot;class&quot;:&quot;Equals&quot;, &quot;field&quot;:&quot;requestId&quot;, &quot;value&quot;:&quot;${requestId}&quot; }, { &quot;class&quot;:&quot;Equals&quot;, &quot;field&quot;:&quot;notification&quot;, &quot;value&quot;:&quot;FINAL: SUCCESS&quot; }]}</stringProp>
1287                   <stringProp name="Argument.metadata">=</stringProp>
1288                   <boolProp name="HTTPArgument.use_equals">true</boolProp>
1289                   <stringProp name="Argument.name">filter</stringProp>
1290                 </elementProp>
1291               </collectionProp>
1292             </elementProp>
1293             <stringProp name="HTTPSampler.domain">${KAFKA_HOST}</stringProp>
1294             <stringProp name="HTTPSampler.port">${KAFKA_PORT}</stringProp>
1295             <stringProp name="HTTPSampler.protocol">${HTTP}</stringProp>
1296             <stringProp name="HTTPSampler.path">events/policy-cl-mgt/${consumerGroup}/1?timeout=15000&amp;limit=1</stringProp>
1297             <stringProp name="HTTPSampler.method">GET</stringProp>
1298             <boolProp name="HTTPSampler.follow_redirects">false</boolProp>
1299             <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
1300             <boolProp name="HTTPSampler.use_keepalive">false</boolProp>
1301             <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
1302             <boolProp name="HTTPSampler.BROWSER_COMPATIBLE_MULTIPART">false</boolProp>
1303             <boolProp name="HTTPSampler.image_parser">false</boolProp>
1304             <boolProp name="HTTPSampler.concurrentDwn">false</boolProp>
1305             <stringProp name="HTTPSampler.concurrentPool">6</stringProp>
1306             <boolProp name="HTTPSampler.md5">false</boolProp>
1307             <intProp name="HTTPSampler.ipSourceType">0</intProp>
1308           </HTTPSamplerProxy>
1309           <hashTree>
1310             <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="No []" enabled="true">
1311               <collectionProp name="Asserion.test_strings">
1312                 <stringProp name="2914">[]</stringProp>
1313               </collectionProp>
1314               <stringProp name="Assertion.custom_message"></stringProp>
1315               <stringProp name="Assertion.test_field">Assertion.response_data</stringProp>
1316               <boolProp name="Assertion.assume_success">false</boolProp>
1317               <intProp name="Assertion.test_type">12</intProp>
1318             </ResponseAssertion>
1319             <hashTree/>
1320             <RegexExtractor guiclass="RegexExtractorGui" testclass="RegexExtractor" testname="requestId extractor" enabled="true">
1321               <stringProp name="RegexExtractor.useHeaders">false</stringProp>
1322               <stringProp name="RegexExtractor.refname">requestIdOnset</stringProp>
1323               <stringProp name="RegexExtractor.regex">requestId\\&quot;: \\&quot;(.+?)\\&quot;</stringProp>
1324               <stringProp name="RegexExtractor.template">$1$</stringProp>
1325               <stringProp name="RegexExtractor.default">none</stringProp>
1326               <boolProp name="RegexExtractor.default_empty_value">false</boolProp>
1327             </RegexExtractor>
1328             <hashTree/>
1329             <RegexExtractor guiclass="RegexExtractorGui" testclass="RegexExtractor" testname="notification extractor" enabled="true">
1330               <stringProp name="RegexExtractor.useHeaders">false</stringProp>
1331               <stringProp name="RegexExtractor.refname">notification</stringProp>
1332               <stringProp name="RegexExtractor.regex">notification\\&quot;: \\&quot;FINAL: (.+?)\\&quot;</stringProp>
1333               <stringProp name="RegexExtractor.template">$1$</stringProp>
1334               <stringProp name="RegexExtractor.default">none</stringProp>
1335               <boolProp name="RegexExtractor.default_empty_value">false</boolProp>
1336             </RegexExtractor>
1337             <hashTree/>
1338             <JSR223Assertion guiclass="TestBeanGUI" testclass="JSR223Assertion" testname="JSR223 Assertion" enabled="true">
1339               <stringProp name="scriptLanguage">groovy</stringProp>
1340               <stringProp name="parameters"></stringProp>
1341               <stringProp name="filename"></stringProp>
1342               <stringProp name="cacheKey">true</stringProp>
1343               <stringProp name="script">String requestIdOnset =  vars.get(&quot;requestIdOnset&quot;);
1344 String requestId =  vars.get(&quot;requestId&quot;);
1345 String notification =  vars.get(&quot;notification&quot;);
1346 String counter =  vars.get(&quot;counter&quot;);
1347
1348 String transaction = &quot;none&quot;;
1349
1350 log.info (&quot;The requestId id is &quot; + requestId);
1351 log.info (&quot;The requestIdOnset id is &quot; + requestIdOnset);
1352 log.info (&quot;The notification is &quot; + notification);
1353 log.info (&quot;The transaction is &quot; + transaction);
1354 log.info (&quot;The counter is &quot; + counter);
1355
1356 if (    requestId == requestIdOnset ) {
1357         if ( notification == &quot;SUCCESS&quot; ) {
1358                 transaction = &quot;FINAL&quot;;
1359                 log.info (&quot;Final Success Transaction&quot;);
1360                 log.info (&quot;The notification is SUCCESS&quot;);
1361         } else if ( notification == &quot;FAILURE&quot; ) {
1362                 transaction = &quot;FINAL&quot;;
1363                 log.info (&quot;Final Failure Transaction&quot;);
1364                 AssertionResult.setFailureMessage(&quot;Bad final notification&quot;);
1365                 AssertionResult.setFailure(true);
1366         } 
1367 }
1368
1369 int counterTemp = Integer.parseInt(counter) +1;
1370 if (transaction == &quot;FINAL&quot;) {
1371         counterTemp = 99;
1372 } else if (counterTemp &gt;= 60) {
1373         AssertionResult.setFailureMessage(&quot;vCPE Success POLICYCL Failure, reached maximum number of attempts &quot;);
1374         AssertionResult.setFailure(true);               
1375 }
1376
1377 vars.put(&quot;counter&quot;, Integer.toString(counterTemp));</stringProp>
1378             </JSR223Assertion>
1379             <hashTree/>
1380           </hashTree>
1381         </hashTree>
1382         <TestAction guiclass="TestActionGui" testclass="TestAction" testname="Flow Control Action" enabled="true">
1383           <intProp name="ActionProcessor.action">1</intProp>
1384           <intProp name="ActionProcessor.target">0</intProp>
1385           <stringProp name="ActionProcessor.duration">200</stringProp>
1386         </TestAction>
1387         <hashTree/>
1388       </hashTree>
1389       <ThreadGroup guiclass="ThreadGroupGui" testclass="ThreadGroup" testname="SON O1 Success" enabled="true">
1390         <stringProp name="ThreadGroup.on_sample_error">startnextloop</stringProp>
1391         <elementProp name="ThreadGroup.main_controller" elementType="LoopController" guiclass="LoopControlPanel" testclass="LoopController" testname="Loop Controller" enabled="true">
1392           <intProp name="LoopController.loops">-1</intProp>
1393           <boolProp name="LoopController.continue_forever">false</boolProp>
1394         </elementProp>
1395         <stringProp name="ThreadGroup.num_threads">1</stringProp>
1396         <stringProp name="ThreadGroup.ramp_time">1</stringProp>
1397         <boolProp name="ThreadGroup.scheduler">true</boolProp>
1398         <stringProp name="ThreadGroup.duration">${duration}</stringProp>
1399         <stringProp name="ThreadGroup.delay">11</stringProp>
1400         <boolProp name="ThreadGroup.same_user_on_next_iteration">true</boolProp>
1401         <boolProp name="ThreadGroup.delayedStart">false</boolProp>
1402       </ThreadGroup>
1403       <hashTree>
1404         <UserParameters guiclass="UserParametersGui" testclass="UserParameters" testname="Set consumer group per scenario" enabled="true">
1405           <collectionProp name="UserParameters.names">
1406             <stringProp name="-308835287">consumerGroup</stringProp>
1407           </collectionProp>
1408           <collectionProp name="UserParameters.thread_values">
1409             <collectionProp name="1059733039">
1410               <stringProp name="109619924">sonO1</stringProp>
1411             </collectionProp>
1412           </collectionProp>
1413           <boolProp name="UserParameters.per_iteration">false</boolProp>
1414           <stringProp name="TestPlan.comments">Global to the thread group</stringProp>
1415         </UserParameters>
1416         <hashTree/>
1417         <UserParameters guiclass="UserParametersGui" testclass="UserParameters" testname="Set request id per cycle" enabled="true">
1418           <collectionProp name="UserParameters.names">
1419             <stringProp name="693933066">requestId</stringProp>
1420           </collectionProp>
1421           <collectionProp name="UserParameters.thread_values">
1422             <collectionProp name="681405977">
1423               <stringProp name="118040362">${__UUID()}</stringProp>
1424             </collectionProp>
1425           </collectionProp>
1426           <boolProp name="UserParameters.per_iteration">true</boolProp>
1427           <stringProp name="TestPlan.comments">Update on a per iteration basis</stringProp>
1428         </UserParameters>
1429         <hashTree/>
1430         <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="DCAE[DCAE_TOPIC]: ONSET" enabled="true">
1431           <boolProp name="HTTPSampler.postBodyRaw">true</boolProp>
1432           <elementProp name="HTTPsampler.Arguments" elementType="Arguments">
1433             <collectionProp name="Arguments.arguments">
1434               <elementProp name="" elementType="HTTPArgument">
1435                 <boolProp name="HTTPArgument.always_encode">false</boolProp>
1436                 <stringProp name="Argument.value">{&#xd;
1437   &quot;closedLoopControlName&quot;: &quot;ControlLoop-SONO1-fb41f388-a5f2-11e8-98d0-529269fb1459&quot;,&#xd;
1438   &quot;closedLoopAlarmStart&quot;: 1606806580487,&#xd;
1439   &quot;closedLoopEventClient&quot;: &quot;microservice.PCI&quot;,&#xd;
1440   &quot;closedLoopEventStatus&quot;: &quot;ONSET&quot;,&#xd;
1441   &quot;requestID&quot;: &quot;${requestId}&quot;,&#xd;
1442   &quot;target_type&quot;: &quot;PNF&quot;,&#xd;
1443   &quot;target&quot;: &quot;pnf.pnf-name&quot;,&#xd;
1444   &quot;AAI&quot;: {&#xd;
1445     &quot;generic-vnf.prov-status&quot;: &quot;ACTIVE&quot;,&#xd;
1446     &quot;generic-vnf.is-closed-loop-disabled&quot;: &quot;false&quot;,&#xd;
1447     &quot;pnf.pnf-name&quot;: &quot;ncserver1&quot;&#xd;
1448   },  &#xd;
1449   &quot;from&quot;: &quot;PCIMS&quot;,&#xd;
1450   &quot;version&quot;: &quot;1.0.2&quot;,&#xd;
1451   &quot;policyName&quot;: &quot;SONO1&quot;,&#xd;
1452   &quot;policyVersion&quot;: &quot;1.0.2&quot;,&#xd;
1453   &quot;Action&quot;: &quot;ModifyO1Config&quot;,&#xd;
1454   &quot;payload&quot;: &quot;{\&quot;Configurations\&quot;:[{\&quot;data\&quot;:{\&quot;FAPService\&quot;:{\&quot;alias\&quot;:\&quot;Chn0330\&quot;,\&quot;X0005b9Lte\&quot;:{\&quot;phyCellIdInUse\&quot;:6,\&quot;pnfName\&quot;:\&quot;ncserver23\&quot;},\&quot;CellConfig\&quot;:{\&quot;LTE\&quot;:{\&quot;RAN\&quot;:{\&quot;Common\&quot;:{\&quot;CellIdentity\&quot;:\&quot;Chn0330\&quot;}}}}}}},{\&quot;data\&quot;:{\&quot;FAPService\&quot;:{\&quot;alias\&quot;:\&quot;Chn0331\&quot;,\&quot;X0005b9Lte\&quot;:{\&quot;phyCellIdInUse\&quot;:7,\&quot;pnfName\&quot;:\&quot;ncserver23\&quot;},\&quot;CellConfig\&quot;:{\&quot;LTE\&quot;:{\&quot;RAN\&quot;:{\&quot;Common\&quot;:{\&quot;CellIdentity\&quot;:\&quot;Chn0331\&quot;}}}}}}}]}&quot;&#xd;
1455 }</stringProp>
1456                 <stringProp name="Argument.metadata">=</stringProp>
1457               </elementProp>
1458             </collectionProp>
1459           </elementProp>
1460           <stringProp name="HTTPSampler.domain">${DROOLS_HOST}</stringProp>
1461           <stringProp name="HTTPSampler.port">${DROOLS_PORT}</stringProp>
1462           <stringProp name="HTTPSampler.protocol">${HTTP}</stringProp>
1463           <stringProp name="HTTPSampler.path">policy/pdp/engine/topics/sources/dmaap/dcae_topic/events</stringProp>
1464           <stringProp name="HTTPSampler.method">PUT</stringProp>
1465           <boolProp name="HTTPSampler.follow_redirects">false</boolProp>
1466           <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
1467           <boolProp name="HTTPSampler.use_keepalive">false</boolProp>
1468           <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
1469           <boolProp name="HTTPSampler.BROWSER_COMPATIBLE_MULTIPART">false</boolProp>
1470           <boolProp name="HTTPSampler.image_parser">false</boolProp>
1471           <boolProp name="HTTPSampler.concurrentDwn">false</boolProp>
1472           <stringProp name="HTTPSampler.concurrentPool">6</stringProp>
1473           <boolProp name="HTTPSampler.md5">false</boolProp>
1474           <intProp name="HTTPSampler.ipSourceType">0</intProp>
1475         </HTTPSamplerProxy>
1476         <hashTree>
1477           <HeaderManager guiclass="HeaderPanel" testclass="HeaderManager" testname="HTTP Header Manager" enabled="true">
1478             <collectionProp name="HeaderManager.headers">
1479               <elementProp name="" elementType="Header">
1480                 <stringProp name="Header.name">Content-Type</stringProp>
1481                 <stringProp name="Header.value">text/plain</stringProp>
1482               </elementProp>
1483             </collectionProp>
1484           </HeaderManager>
1485           <hashTree/>
1486         </hashTree>
1487         <JSR223Sampler guiclass="TestBeanGUI" testclass="JSR223Sampler" testname="Init DMaaP Counter" enabled="true">
1488           <stringProp name="scriptLanguage">groovy</stringProp>
1489           <stringProp name="parameters"></stringProp>
1490           <stringProp name="filename"></stringProp>
1491           <stringProp name="cacheKey">true</stringProp>
1492           <stringProp name="script">vars.put(&quot;counterO1&quot;, &quot;0&quot;);</stringProp>
1493         </JSR223Sampler>
1494         <hashTree/>
1495         <WhileController guiclass="WhileControllerGui" testclass="WhileController" testname="SDNR-CL Modify01Config" enabled="true">
1496           <stringProp name="WhileController.condition">${__javaScript(${counterO1} &lt; 10)}</stringProp>
1497         </WhileController>
1498         <hashTree>
1499           <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="POLICY[SDNR-CL]: Modify01Config" enabled="true">
1500             <boolProp name="HTTPSampler.postBodyRaw">false</boolProp>
1501             <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
1502               <collectionProp name="Arguments.arguments">
1503                 <elementProp name="filter" elementType="HTTPArgument">
1504                   <boolProp name="HTTPArgument.always_encode">true</boolProp>
1505                   <stringProp name="Argument.value">{&quot;class&quot;:&quot;And&quot;, &quot;filters&quot;: [ { &quot;class&quot;:&quot;Equals&quot;, &quot;field&quot;:&quot;request-id&quot;, &quot;value&quot;:&quot;${requestId}&quot; }, { &quot;class&quot;:&quot;Equals&quot;, &quot;field&quot;:&quot;rpc-name&quot;, &quot;value&quot;:&quot;modifyo1config&quot; }]}</stringProp>
1506                   <stringProp name="Argument.metadata">=</stringProp>
1507                   <boolProp name="HTTPArgument.use_equals">true</boolProp>
1508                   <stringProp name="Argument.name">filter</stringProp>
1509                 </elementProp>
1510               </collectionProp>
1511             </elementProp>
1512             <stringProp name="HTTPSampler.domain">${KAFKA_HOST}</stringProp>
1513             <stringProp name="HTTPSampler.port">${KAFKA_PORT}</stringProp>
1514             <stringProp name="HTTPSampler.protocol">${HTTP}</stringProp>
1515             <stringProp name="HTTPSampler.path">events/SDNR-CL/${consumerGroup}/1?timeout=15000&amp;limit=1</stringProp>
1516             <stringProp name="HTTPSampler.method">GET</stringProp>
1517             <boolProp name="HTTPSampler.follow_redirects">false</boolProp>
1518             <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
1519             <boolProp name="HTTPSampler.use_keepalive">false</boolProp>
1520             <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
1521             <boolProp name="HTTPSampler.BROWSER_COMPATIBLE_MULTIPART">false</boolProp>
1522             <boolProp name="HTTPSampler.image_parser">false</boolProp>
1523             <boolProp name="HTTPSampler.concurrentDwn">false</boolProp>
1524             <stringProp name="HTTPSampler.concurrentPool">6</stringProp>
1525             <boolProp name="HTTPSampler.md5">false</boolProp>
1526             <intProp name="HTTPSampler.ipSourceType">0</intProp>
1527           </HTTPSamplerProxy>
1528           <hashTree>
1529             <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="No []" enabled="true">
1530               <collectionProp name="Asserion.test_strings">
1531                 <stringProp name="2914">[]</stringProp>
1532               </collectionProp>
1533               <stringProp name="Assertion.custom_message"></stringProp>
1534               <stringProp name="Assertion.test_field">Assertion.response_data</stringProp>
1535               <boolProp name="Assertion.assume_success">false</boolProp>
1536               <intProp name="Assertion.test_type">12</intProp>
1537             </ResponseAssertion>
1538             <hashTree/>
1539             <RegexExtractor guiclass="RegexExtractorGui" testclass="RegexExtractor" testname="request-id extractor" enabled="true">
1540               <stringProp name="RegexExtractor.useHeaders">false</stringProp>
1541               <stringProp name="RegexExtractor.refname">requestIdOnset</stringProp>
1542               <stringProp name="RegexExtractor.regex">\\&quot;RequestID\\&quot;: \\&quot;(.+?)\\&quot;</stringProp>
1543               <stringProp name="RegexExtractor.template">$1$</stringProp>
1544               <stringProp name="RegexExtractor.default">none</stringProp>
1545               <boolProp name="RegexExtractor.default_empty_value">false</boolProp>
1546             </RegexExtractor>
1547             <hashTree/>
1548             <RegexExtractor guiclass="RegexExtractorGui" testclass="RegexExtractor" testname="correlation-id extractor" enabled="true">
1549               <stringProp name="RegexExtractor.useHeaders">false</stringProp>
1550               <stringProp name="RegexExtractor.refname">correlationId</stringProp>
1551               <stringProp name="RegexExtractor.regex">correlation-id\\&quot;: \\&quot;(.+?)\\&quot;</stringProp>
1552               <stringProp name="RegexExtractor.template">$1$</stringProp>
1553               <stringProp name="RegexExtractor.default">none</stringProp>
1554               <boolProp name="RegexExtractor.default_empty_value">false</boolProp>
1555             </RegexExtractor>
1556             <hashTree/>
1557             <RegexExtractor guiclass="RegexExtractorGui" testclass="RegexExtractor" testname="sub-request-id extractor" enabled="true">
1558               <stringProp name="RegexExtractor.useHeaders">false</stringProp>
1559               <stringProp name="RegexExtractor.refname">subRequestId</stringProp>
1560               <stringProp name="RegexExtractor.regex">SubRequestID\\&quot;: \\&quot;(.+?)\\&quot;</stringProp>
1561               <stringProp name="RegexExtractor.template">$1$</stringProp>
1562               <stringProp name="RegexExtractor.default">none</stringProp>
1563               <boolProp name="RegexExtractor.default_empty_value">false</boolProp>
1564             </RegexExtractor>
1565             <hashTree/>
1566             <JSR223Assertion guiclass="TestBeanGUI" testclass="JSR223Assertion" testname="JSR223 Assertion" enabled="true">
1567               <stringProp name="scriptLanguage">groovy</stringProp>
1568               <stringProp name="parameters"></stringProp>
1569               <stringProp name="filename"></stringProp>
1570               <stringProp name="cacheKey">true</stringProp>
1571               <stringProp name="script">String requestIdOnset =  vars.get(&quot;requestIdOnset&quot;);
1572 String requestId =  vars.get(&quot;requestId&quot;);
1573 String correlationId =  vars.get(&quot;correlationId&quot;);
1574 String subRequestId =  vars.get(&quot;subRequestId&quot;);
1575 String counter =  vars.get(&quot;counterO1&quot;);
1576
1577 String transaction = &quot;none&quot;;
1578
1579 log.info (&quot;The requestId id is &quot; + requestId);
1580 log.info (&quot;The requestIdOnset id is &quot; + requestIdOnset);
1581 log.info (&quot;The correlation id is &quot; + correlationId);
1582 log.info (&quot;The subrequest id is &quot; + subRequestId);
1583 log.info (&quot;The counter is &quot; + counter);       
1584
1585 if (    requestId == requestIdOnset ) {
1586         if (    correlationId == &quot;none&quot; || subRequestId == &quot;none&quot; ) {
1587                 transaction = &quot;FINAL&quot;;
1588                 log.info (&quot;Final Failure Transaction&quot;);
1589                 AssertionResult.setFailureMessage(&quot;Missing correlationId or subRequestId&quot;);
1590                 AssertionResult.setFailure(true);
1591         } else {
1592                 transaction = &quot;FINAL&quot;;
1593                 vars.put(&quot;transaction&quot;, &quot;FINAL&quot;);
1594                 log.info (&quot;Final Success Transaction&quot;);
1595         }
1596 }
1597
1598 int counterTemp = Integer.parseInt(counter) +1;
1599 if (transaction == &quot;FINAL&quot;) {
1600         counterTemp = 99;
1601 } else if (counterTemp &gt;= 10) {
1602         AssertionResult.setFailureMessage(&quot;SON 01 Failure, reached maximum number of 10 attempts &quot;);
1603         AssertionResult.setFailure(true);               
1604 }
1605
1606 vars.put(&quot;counterO1&quot;, Integer.toString(counterTemp));
1607
1608 </stringProp>
1609             </JSR223Assertion>
1610             <hashTree/>
1611           </hashTree>
1612         </hashTree>
1613         <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="SDNR[SDNR-CL-RSP]: SUCCESS" enabled="true">
1614           <boolProp name="HTTPSampler.postBodyRaw">true</boolProp>
1615           <elementProp name="HTTPsampler.Arguments" elementType="Arguments">
1616             <collectionProp name="Arguments.arguments">
1617               <elementProp name="" elementType="HTTPArgument">
1618                 <boolProp name="HTTPArgument.always_encode">false</boolProp>
1619                 <stringProp name="Argument.value">{&#xd;
1620     &quot;body&quot;: {&#xd;
1621         &quot;output&quot;: {&#xd;
1622             &quot;CommonHeader&quot;: {&#xd;
1623                 &quot;TimeStamp&quot;: &quot;2022-08-10T07:10:05.614Z&quot;,&#xd;
1624                 &quot;APIver&quot;: &quot;1.0&quot;,&#xd;
1625                 &quot;RequestID&quot;: &quot;${requestId}&quot;,&#xd;
1626                 &quot;SubRequestID&quot;: &quot;${subRequestId}&quot;,&#xd;
1627                 &quot;RequestTrack&quot;: [],&#xd;
1628                 &quot;Flags&quot;: []&#xd;
1629             },&#xd;
1630             &quot;Status&quot;: {&#xd;
1631                 &quot;Code&quot;: 200,&#xd;
1632                 &quot;Value&quot;: &quot;SUCCESS&quot;&#xd;
1633             },&#xd;
1634             &quot;Payload&quot;: &quot;{ \&quot;Configurations\&quot;:[ { \&quot;Status\&quot;: { \&quot;Code\&quot;: 200, \&quot;Value\&quot;: \&quot;SUCCESS\&quot; }, \&quot;data\&quot;:{\&quot;FAPService\&quot;:{\&quot;alias\&quot;:\&quot;Chn0330\&quot;,\&quot;X0005b9Lte\&quot;:{\&quot;phyCellIdInUse\&quot;:6,\&quot;pnfName\&quot;:\&quot;ncserver23\&quot;},\&quot;CellConfig\&quot;:{\&quot;LTE\&quot;:{\&quot;RAN\&quot;:{\&quot;Common\&quot;:{\&quot;CellIdentity\&quot;:\&quot;Chn0330\&quot;}}}}}} } ] }&quot;&#xd;
1635         }&#xd;
1636     },&#xd;
1637     &quot;version&quot;: &quot;1.0&quot;,&#xd;
1638     &quot;rpc-name&quot;: &quot;ModifyO1Config&quot;,&#xd;
1639     &quot;correlation-id&quot;: &quot;${correlationId}&quot;,&#xd;
1640     &quot;type&quot;: &quot;response&quot;&#xd;
1641 }&#xd;
1642 &#xd;
1643 </stringProp>
1644                 <stringProp name="Argument.metadata">=</stringProp>
1645               </elementProp>
1646             </collectionProp>
1647           </elementProp>
1648           <stringProp name="HTTPSampler.domain">${DROOLS_HOST}</stringProp>
1649           <stringProp name="HTTPSampler.port">${DROOLS_PORT}</stringProp>
1650           <stringProp name="HTTPSampler.protocol">${HTTP}</stringProp>
1651           <stringProp name="HTTPSampler.path">policy/pdp/engine/topics/sources/dmaap/sdnr-cl-rsp/events</stringProp>
1652           <stringProp name="HTTPSampler.method">PUT</stringProp>
1653           <boolProp name="HTTPSampler.follow_redirects">false</boolProp>
1654           <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
1655           <boolProp name="HTTPSampler.use_keepalive">false</boolProp>
1656           <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
1657           <boolProp name="HTTPSampler.BROWSER_COMPATIBLE_MULTIPART">false</boolProp>
1658           <boolProp name="HTTPSampler.image_parser">false</boolProp>
1659           <boolProp name="HTTPSampler.concurrentDwn">false</boolProp>
1660           <stringProp name="HTTPSampler.concurrentPool">6</stringProp>
1661           <boolProp name="HTTPSampler.md5">false</boolProp>
1662           <intProp name="HTTPSampler.ipSourceType">0</intProp>
1663         </HTTPSamplerProxy>
1664         <hashTree>
1665           <HeaderManager guiclass="HeaderPanel" testclass="HeaderManager" testname="HTTP Header Manager" enabled="true">
1666             <collectionProp name="HeaderManager.headers">
1667               <elementProp name="" elementType="Header">
1668                 <stringProp name="Header.name">Content-Type</stringProp>
1669                 <stringProp name="Header.value">text/plain</stringProp>
1670               </elementProp>
1671             </collectionProp>
1672           </HeaderManager>
1673           <hashTree/>
1674         </hashTree>
1675         <JSR223Sampler guiclass="TestBeanGUI" testclass="JSR223Sampler" testname="Init DMaaP Counter" enabled="true">
1676           <stringProp name="scriptLanguage">groovy</stringProp>
1677           <stringProp name="parameters"></stringProp>
1678           <stringProp name="filename"></stringProp>
1679           <stringProp name="cacheKey">true</stringProp>
1680           <stringProp name="script">vars.put(&quot;counterO1&quot;, &quot;0&quot;);</stringProp>
1681         </JSR223Sampler>
1682         <hashTree/>
1683         <WhileController guiclass="WhileControllerGui" testclass="WhileController" testname="Final Success Controller" enabled="true">
1684           <stringProp name="WhileController.condition">${__javaScript(${counterO1} &lt; 60)}</stringProp>
1685         </WhileController>
1686         <hashTree>
1687           <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="POLICY[policy-cl-mgt]: FINAL_SUCCESS" enabled="true">
1688             <boolProp name="HTTPSampler.postBodyRaw">false</boolProp>
1689             <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
1690               <collectionProp name="Arguments.arguments">
1691                 <elementProp name="filter" elementType="HTTPArgument">
1692                   <boolProp name="HTTPArgument.always_encode">true</boolProp>
1693                   <stringProp name="Argument.value">{&quot;class&quot;:&quot;And&quot;, &quot;filters&quot;: [ { &quot;class&quot;:&quot;Equals&quot;, &quot;field&quot;:&quot;requestId&quot;, &quot;value&quot;:&quot;${requestId}&quot; }, { &quot;class&quot;:&quot;Equals&quot;, &quot;field&quot;:&quot;notification&quot;, &quot;value&quot;:&quot;FINAL: SUCCESS&quot; }]}</stringProp>
1694                   <stringProp name="Argument.metadata">=</stringProp>
1695                   <boolProp name="HTTPArgument.use_equals">true</boolProp>
1696                   <stringProp name="Argument.name">filter</stringProp>
1697                 </elementProp>
1698               </collectionProp>
1699             </elementProp>
1700             <stringProp name="HTTPSampler.domain">${KAFKA_HOST}</stringProp>
1701             <stringProp name="HTTPSampler.port">${KAFKA_PORT}</stringProp>
1702             <stringProp name="HTTPSampler.protocol">${HTTP}</stringProp>
1703             <stringProp name="HTTPSampler.path">events/policy-cl-mgt/${consumerGroup}/1?timeout=15000&amp;limit=1</stringProp>
1704             <stringProp name="HTTPSampler.method">GET</stringProp>
1705             <boolProp name="HTTPSampler.follow_redirects">false</boolProp>
1706             <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
1707             <boolProp name="HTTPSampler.use_keepalive">false</boolProp>
1708             <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
1709             <boolProp name="HTTPSampler.BROWSER_COMPATIBLE_MULTIPART">false</boolProp>
1710             <boolProp name="HTTPSampler.image_parser">false</boolProp>
1711             <boolProp name="HTTPSampler.concurrentDwn">false</boolProp>
1712             <stringProp name="HTTPSampler.concurrentPool">6</stringProp>
1713             <boolProp name="HTTPSampler.md5">false</boolProp>
1714             <intProp name="HTTPSampler.ipSourceType">0</intProp>
1715           </HTTPSamplerProxy>
1716           <hashTree>
1717             <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="No []" enabled="true">
1718               <collectionProp name="Asserion.test_strings">
1719                 <stringProp name="2914">[]</stringProp>
1720               </collectionProp>
1721               <stringProp name="Assertion.custom_message"></stringProp>
1722               <stringProp name="Assertion.test_field">Assertion.response_data</stringProp>
1723               <boolProp name="Assertion.assume_success">false</boolProp>
1724               <intProp name="Assertion.test_type">12</intProp>
1725             </ResponseAssertion>
1726             <hashTree/>
1727             <RegexExtractor guiclass="RegexExtractorGui" testclass="RegexExtractor" testname="requestId extractor" enabled="true">
1728               <stringProp name="RegexExtractor.useHeaders">false</stringProp>
1729               <stringProp name="RegexExtractor.refname">requestIdOnset</stringProp>
1730               <stringProp name="RegexExtractor.regex">requestId\\&quot;: \\&quot;(.+?)\\&quot;</stringProp>
1731               <stringProp name="RegexExtractor.template">$1$</stringProp>
1732               <stringProp name="RegexExtractor.default">none</stringProp>
1733               <boolProp name="RegexExtractor.default_empty_value">false</boolProp>
1734             </RegexExtractor>
1735             <hashTree/>
1736             <RegexExtractor guiclass="RegexExtractorGui" testclass="RegexExtractor" testname="notification extractor" enabled="true">
1737               <stringProp name="RegexExtractor.useHeaders">false</stringProp>
1738               <stringProp name="RegexExtractor.refname">notification</stringProp>
1739               <stringProp name="RegexExtractor.regex">notification\\&quot;: \\&quot;FINAL: (.+?)\\&quot;</stringProp>
1740               <stringProp name="RegexExtractor.template">$1$</stringProp>
1741               <stringProp name="RegexExtractor.default">none</stringProp>
1742               <boolProp name="RegexExtractor.default_empty_value">false</boolProp>
1743             </RegexExtractor>
1744             <hashTree/>
1745             <JSR223Assertion guiclass="TestBeanGUI" testclass="JSR223Assertion" testname="JSR223 Assertion" enabled="true">
1746               <stringProp name="scriptLanguage">groovy</stringProp>
1747               <stringProp name="parameters"></stringProp>
1748               <stringProp name="filename"></stringProp>
1749               <stringProp name="cacheKey">true</stringProp>
1750               <stringProp name="script">String requestIdOnset =  vars.get(&quot;requestIdOnset&quot;);
1751 String requestId =  vars.get(&quot;requestId&quot;);
1752 String notification =  vars.get(&quot;notification&quot;);
1753 String counter =  vars.get(&quot;counterO1&quot;);
1754
1755 String transaction = &quot;none&quot;;
1756
1757 log.info (&quot;The requestId id is &quot; + requestId);
1758 log.info (&quot;The requestIdOnset id is &quot; + requestIdOnset);
1759 log.info (&quot;The notification is &quot; + notification);
1760 log.info (&quot;The transaction is &quot; + transaction);
1761 log.info (&quot;The counter is &quot; + counter);
1762
1763 if (    requestId == requestIdOnset ) {
1764         if ( notification == &quot;SUCCESS&quot; ) {
1765                 transaction = &quot;FINAL&quot;;
1766                 log.info (&quot;Final Success Transaction&quot;);
1767                 log.info (&quot;The notification is SUCCESS&quot;);
1768         } else if ( notification == &quot;FAILURE&quot; ) {
1769                 transaction = &quot;FINAL&quot;;
1770                 log.info (&quot;Final Failure Transaction&quot;);
1771                 AssertionResult.setFailureMessage(&quot;Bad final notification&quot;);
1772                 AssertionResult.setFailure(true);
1773         } 
1774 }
1775
1776 int counterTemp = Integer.parseInt(counter) +1;
1777 if (transaction == &quot;FINAL&quot;) {
1778         counterTemp = 99;
1779 } else if (counterTemp &gt;= 60) {
1780         AssertionResult.setFailureMessage(&quot;vCPE Success POLICYCL Failure, reached maximum number of attempts &quot;);
1781         AssertionResult.setFailure(true);               
1782 }
1783
1784 vars.put(&quot;counterO1&quot;, Integer.toString(counterTemp));</stringProp>
1785             </JSR223Assertion>
1786             <hashTree/>
1787           </hashTree>
1788         </hashTree>
1789         <TestAction guiclass="TestActionGui" testclass="TestAction" testname="Flow Control Action" enabled="true">
1790           <intProp name="ActionProcessor.action">1</intProp>
1791           <intProp name="ActionProcessor.target">0</intProp>
1792           <stringProp name="ActionProcessor.duration">250</stringProp>
1793         </TestAction>
1794         <hashTree/>
1795       </hashTree>
1796       <ThreadGroup guiclass="ThreadGroupGui" testclass="ThreadGroup" testname="SON A1 Success" enabled="true">
1797         <stringProp name="ThreadGroup.on_sample_error">startnextloop</stringProp>
1798         <elementProp name="ThreadGroup.main_controller" elementType="LoopController" guiclass="LoopControlPanel" testclass="LoopController" testname="Loop Controller" enabled="true">
1799           <intProp name="LoopController.loops">-1</intProp>
1800           <boolProp name="LoopController.continue_forever">false</boolProp>
1801         </elementProp>
1802         <stringProp name="ThreadGroup.num_threads">1</stringProp>
1803         <stringProp name="ThreadGroup.ramp_time">1</stringProp>
1804         <boolProp name="ThreadGroup.scheduler">true</boolProp>
1805         <stringProp name="ThreadGroup.duration">${duration}</stringProp>
1806         <stringProp name="ThreadGroup.delay">11</stringProp>
1807         <boolProp name="ThreadGroup.same_user_on_next_iteration">true</boolProp>
1808         <boolProp name="ThreadGroup.delayedStart">false</boolProp>
1809       </ThreadGroup>
1810       <hashTree>
1811         <UserParameters guiclass="UserParametersGui" testclass="UserParameters" testname="Set consumer group per scenario" enabled="true">
1812           <collectionProp name="UserParameters.names">
1813             <stringProp name="-308835287">consumerGroup</stringProp>
1814           </collectionProp>
1815           <collectionProp name="UserParameters.thread_values">
1816             <collectionProp name="1059562701">
1817               <stringProp name="109619490">sonA1</stringProp>
1818             </collectionProp>
1819           </collectionProp>
1820           <boolProp name="UserParameters.per_iteration">false</boolProp>
1821           <stringProp name="TestPlan.comments">Global to the thread group</stringProp>
1822         </UserParameters>
1823         <hashTree/>
1824         <UserParameters guiclass="UserParametersGui" testclass="UserParameters" testname="Set request id per cycle" enabled="true">
1825           <collectionProp name="UserParameters.names">
1826             <stringProp name="693933066">requestId</stringProp>
1827           </collectionProp>
1828           <collectionProp name="UserParameters.thread_values">
1829             <collectionProp name="681405977">
1830               <stringProp name="118040362">${__UUID()}</stringProp>
1831             </collectionProp>
1832           </collectionProp>
1833           <boolProp name="UserParameters.per_iteration">true</boolProp>
1834           <stringProp name="TestPlan.comments">Update on a per iteration basis</stringProp>
1835         </UserParameters>
1836         <hashTree/>
1837         <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="DCAE[DCAE_TOPIC]: ONSET" enabled="true">
1838           <boolProp name="HTTPSampler.postBodyRaw">true</boolProp>
1839           <elementProp name="HTTPsampler.Arguments" elementType="Arguments">
1840             <collectionProp name="Arguments.arguments">
1841               <elementProp name="" elementType="HTTPArgument">
1842                 <boolProp name="HTTPArgument.always_encode">false</boolProp>
1843                 <stringProp name="Argument.value">{&#xd;
1844   &quot;closedLoopControlName&quot;: &quot;ControlLoop-SONA1-7d4baf04-8875-4d1f-946d-06b874048b61&quot;,&#xd;
1845   &quot;closedLoopAlarmStart&quot;: 1606805921693,&#xd;
1846   &quot;closedLoopEventClient&quot;: &quot;microservice.SONH&quot;,&#xd;
1847   &quot;closedLoopEventStatus&quot;: &quot;ONSET&quot;,&#xd;
1848   &quot;requestID&quot;: &quot;${requestId}&quot;,&#xd;
1849   &quot;target_type&quot;: &quot;PNF&quot;,&#xd;
1850   &quot;target&quot;: &quot;pnf.pnf-name&quot;,&#xd;
1851   &quot;AAI&quot;: {&#xd;
1852     &quot;generic-vnf.prov-status&quot;: &quot;ACTIVE&quot;,&#xd;
1853     &quot;generic-vnf.is-closed-loop-disabled&quot;: &quot;false&quot;,&#xd;
1854     &quot;pnf.pnf-name&quot;: &quot;ncserver2&quot;&#xd;
1855   },&#xd;
1856   &quot;from&quot;: &quot;SONHMS&quot;,&#xd;
1857   &quot;version&quot;: &quot;1.0.2&quot;,&#xd;
1858   &quot;policyName&quot;: &quot;SONA1&quot;,&#xd;
1859   &quot;policyVersion&quot;: &quot;1.0.2&quot;,&#xd;
1860   &quot;Action&quot;: &quot;ModifyA1Policy&quot;,&#xd;
1861   &quot;payload&quot;: &quot;{ \&quot;Configurations\&quot;:[ { \&quot;data\&quot;:{ \&quot;FAPService\&quot;:{ \&quot;alias\&quot;:\&quot;Cell1\&quot;, \&quot;CellConfig\&quot;:{ \&quot;LTE\&quot;:{ \&quot;RAN\&quot;:{ \&quot;Common\&quot;:{ \&quot;CellIdentity\&quot;:\&quot;1\&quot; }, \&quot;NeighborListInUse\&quot; : { \&quot;LTECellNumberOfEntries\&quot; : \&quot;1\&quot; , \&quot;LTECell\&quot; : [{ \&quot;PLMNID\&quot; :\&quot;plmnid1\&quot;, \&quot;CID\&quot;:\&quot;Chn0001\&quot;, \&quot;PhyCellID\&quot;:\&quot;3\&quot;, \&quot;PNFName\&quot;:\&quot;ncserver01\&quot;, \&quot;Blacklisted\&quot;:\&quot;false\&quot;}] } } } } } } } ] }&quot;&#xd;
1862 }</stringProp>
1863                 <stringProp name="Argument.metadata">=</stringProp>
1864               </elementProp>
1865             </collectionProp>
1866           </elementProp>
1867           <stringProp name="HTTPSampler.domain">${DROOLS_HOST}</stringProp>
1868           <stringProp name="HTTPSampler.port">${DROOLS_PORT}</stringProp>
1869           <stringProp name="HTTPSampler.protocol">${HTTP}</stringProp>
1870           <stringProp name="HTTPSampler.path">policy/pdp/engine/topics/sources/dmaap/dcae_topic/events</stringProp>
1871           <stringProp name="HTTPSampler.method">PUT</stringProp>
1872           <boolProp name="HTTPSampler.follow_redirects">false</boolProp>
1873           <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
1874           <boolProp name="HTTPSampler.use_keepalive">false</boolProp>
1875           <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
1876           <boolProp name="HTTPSampler.BROWSER_COMPATIBLE_MULTIPART">false</boolProp>
1877           <boolProp name="HTTPSampler.image_parser">false</boolProp>
1878           <boolProp name="HTTPSampler.concurrentDwn">false</boolProp>
1879           <stringProp name="HTTPSampler.concurrentPool">6</stringProp>
1880           <boolProp name="HTTPSampler.md5">false</boolProp>
1881           <intProp name="HTTPSampler.ipSourceType">0</intProp>
1882         </HTTPSamplerProxy>
1883         <hashTree>
1884           <HeaderManager guiclass="HeaderPanel" testclass="HeaderManager" testname="HTTP Header Manager" enabled="true">
1885             <collectionProp name="HeaderManager.headers">
1886               <elementProp name="" elementType="Header">
1887                 <stringProp name="Header.name">Content-Type</stringProp>
1888                 <stringProp name="Header.value">text/plain</stringProp>
1889               </elementProp>
1890             </collectionProp>
1891           </HeaderManager>
1892           <hashTree/>
1893         </hashTree>
1894         <JSR223Sampler guiclass="TestBeanGUI" testclass="JSR223Sampler" testname="Init DMaaP Counter" enabled="true">
1895           <stringProp name="scriptLanguage">groovy</stringProp>
1896           <stringProp name="parameters"></stringProp>
1897           <stringProp name="filename"></stringProp>
1898           <stringProp name="cacheKey">true</stringProp>
1899           <stringProp name="script">vars.put(&quot;counterA1&quot;, &quot;0&quot;);</stringProp>
1900         </JSR223Sampler>
1901         <hashTree/>
1902         <WhileController guiclass="WhileControllerGui" testclass="WhileController" testname="SDNR-CL ModifyA1Config" enabled="true">
1903           <stringProp name="WhileController.condition">${__javaScript(${counterA1} &lt; 10)}</stringProp>
1904         </WhileController>
1905         <hashTree>
1906           <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="POLICY[SDNR-CL]: ModifyA1Config" enabled="true">
1907             <boolProp name="HTTPSampler.postBodyRaw">false</boolProp>
1908             <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
1909               <collectionProp name="Arguments.arguments">
1910                 <elementProp name="filter" elementType="HTTPArgument">
1911                   <boolProp name="HTTPArgument.always_encode">true</boolProp>
1912                   <stringProp name="Argument.value">{&quot;class&quot;:&quot;And&quot;, &quot;filters&quot;: [ { &quot;class&quot;:&quot;Equals&quot;, &quot;field&quot;:&quot;request-id&quot;, &quot;value&quot;:&quot;${requestId}&quot; }, { &quot;class&quot;:&quot;Equals&quot;, &quot;field&quot;:&quot;rpc-name&quot;, &quot;value&quot;:&quot;modifya1config&quot; }]}</stringProp>
1913                   <stringProp name="Argument.metadata">=</stringProp>
1914                   <boolProp name="HTTPArgument.use_equals">true</boolProp>
1915                   <stringProp name="Argument.name">filter</stringProp>
1916                 </elementProp>
1917               </collectionProp>
1918             </elementProp>
1919             <stringProp name="HTTPSampler.domain">${KAFKA_HOST}</stringProp>
1920             <stringProp name="HTTPSampler.port">${KAFKA_PORT}</stringProp>
1921             <stringProp name="HTTPSampler.protocol">${HTTP}</stringProp>
1922             <stringProp name="HTTPSampler.path">events/SDNR-CL/${consumerGroup}/1?timeout=15000&amp;limit=1</stringProp>
1923             <stringProp name="HTTPSampler.method">GET</stringProp>
1924             <boolProp name="HTTPSampler.follow_redirects">false</boolProp>
1925             <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
1926             <boolProp name="HTTPSampler.use_keepalive">false</boolProp>
1927             <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
1928             <boolProp name="HTTPSampler.BROWSER_COMPATIBLE_MULTIPART">false</boolProp>
1929             <boolProp name="HTTPSampler.image_parser">false</boolProp>
1930             <boolProp name="HTTPSampler.concurrentDwn">false</boolProp>
1931             <stringProp name="HTTPSampler.concurrentPool">6</stringProp>
1932             <boolProp name="HTTPSampler.md5">false</boolProp>
1933             <intProp name="HTTPSampler.ipSourceType">0</intProp>
1934           </HTTPSamplerProxy>
1935           <hashTree>
1936             <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="No []" enabled="true">
1937               <collectionProp name="Asserion.test_strings">
1938                 <stringProp name="2914">[]</stringProp>
1939               </collectionProp>
1940               <stringProp name="Assertion.custom_message"></stringProp>
1941               <stringProp name="Assertion.test_field">Assertion.response_data</stringProp>
1942               <boolProp name="Assertion.assume_success">false</boolProp>
1943               <intProp name="Assertion.test_type">12</intProp>
1944             </ResponseAssertion>
1945             <hashTree/>
1946             <RegexExtractor guiclass="RegexExtractorGui" testclass="RegexExtractor" testname="request-id extractor" enabled="true">
1947               <stringProp name="RegexExtractor.useHeaders">false</stringProp>
1948               <stringProp name="RegexExtractor.refname">requestIdOnset</stringProp>
1949               <stringProp name="RegexExtractor.regex">\\&quot;RequestID\\&quot;: \\&quot;(.+?)\\&quot;</stringProp>
1950               <stringProp name="RegexExtractor.template">$1$</stringProp>
1951               <stringProp name="RegexExtractor.default">none</stringProp>
1952               <boolProp name="RegexExtractor.default_empty_value">false</boolProp>
1953             </RegexExtractor>
1954             <hashTree/>
1955             <RegexExtractor guiclass="RegexExtractorGui" testclass="RegexExtractor" testname="correlation-id extractor" enabled="true">
1956               <stringProp name="RegexExtractor.useHeaders">false</stringProp>
1957               <stringProp name="RegexExtractor.refname">correlationId</stringProp>
1958               <stringProp name="RegexExtractor.regex">correlation-id\\&quot;: \\&quot;(.+?)\\&quot;</stringProp>
1959               <stringProp name="RegexExtractor.template">$1$</stringProp>
1960               <stringProp name="RegexExtractor.default">none</stringProp>
1961               <boolProp name="RegexExtractor.default_empty_value">false</boolProp>
1962             </RegexExtractor>
1963             <hashTree/>
1964             <RegexExtractor guiclass="RegexExtractorGui" testclass="RegexExtractor" testname="sub-request-id extractor" enabled="true">
1965               <stringProp name="RegexExtractor.useHeaders">false</stringProp>
1966               <stringProp name="RegexExtractor.refname">subRequestId</stringProp>
1967               <stringProp name="RegexExtractor.regex">SubRequestID\\&quot;: \\&quot;(.+?)\\&quot;</stringProp>
1968               <stringProp name="RegexExtractor.template">$1$</stringProp>
1969               <stringProp name="RegexExtractor.default">none</stringProp>
1970               <boolProp name="RegexExtractor.default_empty_value">false</boolProp>
1971             </RegexExtractor>
1972             <hashTree/>
1973             <JSR223Assertion guiclass="TestBeanGUI" testclass="JSR223Assertion" testname="JSR223 Assertion" enabled="true">
1974               <stringProp name="scriptLanguage">groovy</stringProp>
1975               <stringProp name="parameters"></stringProp>
1976               <stringProp name="filename"></stringProp>
1977               <stringProp name="cacheKey">true</stringProp>
1978               <stringProp name="script">String requestIdOnset =  vars.get(&quot;requestIdOnset&quot;);
1979 String requestId =  vars.get(&quot;requestId&quot;);
1980 String correlationId =  vars.get(&quot;correlationId&quot;);
1981 String subRequestId =  vars.get(&quot;subRequestId&quot;);
1982 String counter =  vars.get(&quot;counterA1&quot;);
1983
1984 String transaction = &quot;none&quot;;
1985
1986 log.info (&quot;The requestId id is &quot; + requestId);
1987 log.info (&quot;The requestIdOnset id is &quot; + requestIdOnset);
1988 log.info (&quot;The correlation id is &quot; + correlationId);
1989 log.info (&quot;The subrequest id is &quot; + subRequestId);
1990 log.info (&quot;The counter is &quot; + counter);       
1991
1992 if (    requestId == requestIdOnset ) {
1993         if (    correlationId == &quot;none&quot; || subRequestId == &quot;none&quot; ) {
1994                 transaction = &quot;FINAL&quot;;
1995                 log.info (&quot;Final Failure Transaction&quot;);
1996                 AssertionResult.setFailureMessage(&quot;Missing correlationId or subRequestId&quot;);
1997                 AssertionResult.setFailure(true);
1998         } else {
1999                 transaction = &quot;FINAL&quot;;
2000                 vars.put(&quot;transaction&quot;, &quot;FINAL&quot;);
2001                 log.info (&quot;Final Success Transaction&quot;);
2002         }
2003 }
2004
2005 int counterTemp = Integer.parseInt(counter) +1;
2006 if (transaction == &quot;FINAL&quot;) {
2007         counterTemp = 99;
2008 } else if (counterTemp &gt;= 10) {
2009         AssertionResult.setFailureMessage(&quot;SON A1 Success SDNR-CL Failure, reached maximum number of 10 attempts &quot;);
2010         AssertionResult.setFailure(true);               
2011 }
2012
2013 vars.put(&quot;counterA1&quot;, Integer.toString(counterTemp));
2014
2015 </stringProp>
2016             </JSR223Assertion>
2017             <hashTree/>
2018           </hashTree>
2019         </hashTree>
2020         <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="SDNR[SDNR-CL-RSP]: SUCCESS" enabled="true">
2021           <boolProp name="HTTPSampler.postBodyRaw">true</boolProp>
2022           <elementProp name="HTTPsampler.Arguments" elementType="Arguments">
2023             <collectionProp name="Arguments.arguments">
2024               <elementProp name="" elementType="HTTPArgument">
2025                 <boolProp name="HTTPArgument.always_encode">false</boolProp>
2026                 <stringProp name="Argument.value">{&#xd;
2027     &quot;body&quot;: {&#xd;
2028         &quot;output&quot;: {&#xd;
2029             &quot;CommonHeader&quot;: {&#xd;
2030                 &quot;TimeStamp&quot;: &quot;2022-09-10T07:10:05.614Z&quot;,&#xd;
2031                 &quot;APIver&quot;: &quot;1.0&quot;,&#xd;
2032                 &quot;RequestID&quot;: &quot;${requestId}&quot;,&#xd;
2033                 &quot;SubRequestID&quot;: &quot;${subRequestId}&quot;,&#xd;
2034                 &quot;RequestTrack&quot;: [],&#xd;
2035                 &quot;Flags&quot;: []&#xd;
2036             },&#xd;
2037             &quot;Status&quot;: {&#xd;
2038                 &quot;Code&quot;: 200,&#xd;
2039                 &quot;Value&quot;: &quot;SUCCESS&quot;&#xd;
2040             },&#xd;
2041             &quot;Payload&quot;: &quot;{ \&quot;Configurations\&quot;:[ { \&quot;Status\&quot;: { \&quot;Code\&quot;: 200, \&quot;Value\&quot;: \&quot;SUCCESS\&quot; }, \&quot;data\&quot;:{ \&quot;FAPService\&quot;:{ \&quot;alias\&quot;:\&quot;Cell1\&quot;, \&quot;CellConfig\&quot;:{ \&quot;LTE\&quot;:{ \&quot;RAN\&quot;:{ \&quot;Common\&quot;:{ \&quot;CellIdentity\&quot;:\&quot;1\&quot; }, \&quot;NeighborListInUse\&quot; : { \&quot;LTECellNumberOfEntries\&quot; : \&quot;1\&quot; , \&quot;LTECell\&quot; : [{ \&quot;PLMNID\&quot; :\&quot;plmnid1\&quot;, \&quot;CID\&quot;:\&quot;Chn0001\&quot;, \&quot;PhyCellID\&quot;:\&quot;3\&quot;, \&quot;PNFName\&quot;:\&quot;ncserver01\&quot;, \&quot;Blacklisted\&quot;:\&quot;false\&quot;}] } } } } } } } ] }&quot;&#xd;
2042         }&#xd;
2043     },&#xd;
2044     &quot;version&quot;: &quot;1.0&quot;,&#xd;
2045     &quot;rpc-name&quot;: &quot;ModifyA1Policy&quot;,&#xd;
2046     &quot;correlation-id&quot;: &quot;${correlationId}&quot;,&#xd;
2047     &quot;type&quot;: &quot;response&quot;&#xd;
2048 }</stringProp>
2049                 <stringProp name="Argument.metadata">=</stringProp>
2050               </elementProp>
2051             </collectionProp>
2052           </elementProp>
2053           <stringProp name="HTTPSampler.domain">${DROOLS_HOST}</stringProp>
2054           <stringProp name="HTTPSampler.port">${DROOLS_PORT}</stringProp>
2055           <stringProp name="HTTPSampler.protocol">${HTTP}</stringProp>
2056           <stringProp name="HTTPSampler.path">policy/pdp/engine/topics/sources/dmaap/sdnr-cl-rsp/events</stringProp>
2057           <stringProp name="HTTPSampler.method">PUT</stringProp>
2058           <boolProp name="HTTPSampler.follow_redirects">false</boolProp>
2059           <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
2060           <boolProp name="HTTPSampler.use_keepalive">false</boolProp>
2061           <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
2062           <boolProp name="HTTPSampler.BROWSER_COMPATIBLE_MULTIPART">false</boolProp>
2063           <boolProp name="HTTPSampler.image_parser">false</boolProp>
2064           <boolProp name="HTTPSampler.concurrentDwn">false</boolProp>
2065           <stringProp name="HTTPSampler.concurrentPool">6</stringProp>
2066           <boolProp name="HTTPSampler.md5">false</boolProp>
2067           <intProp name="HTTPSampler.ipSourceType">0</intProp>
2068         </HTTPSamplerProxy>
2069         <hashTree>
2070           <HeaderManager guiclass="HeaderPanel" testclass="HeaderManager" testname="HTTP Header Manager" enabled="true">
2071             <collectionProp name="HeaderManager.headers">
2072               <elementProp name="" elementType="Header">
2073                 <stringProp name="Header.name">Content-Type</stringProp>
2074                 <stringProp name="Header.value">text/plain</stringProp>
2075               </elementProp>
2076             </collectionProp>
2077           </HeaderManager>
2078           <hashTree/>
2079         </hashTree>
2080         <JSR223Sampler guiclass="TestBeanGUI" testclass="JSR223Sampler" testname="Init DMaaP Counter" enabled="true">
2081           <stringProp name="scriptLanguage">groovy</stringProp>
2082           <stringProp name="parameters"></stringProp>
2083           <stringProp name="filename"></stringProp>
2084           <stringProp name="cacheKey">true</stringProp>
2085           <stringProp name="script">vars.put(&quot;counterA1&quot;, &quot;0&quot;);</stringProp>
2086         </JSR223Sampler>
2087         <hashTree/>
2088         <WhileController guiclass="WhileControllerGui" testclass="WhileController" testname="Final Success Controller" enabled="true">
2089           <stringProp name="WhileController.condition">${__javaScript(${counterA1} &lt; 60)}</stringProp>
2090         </WhileController>
2091         <hashTree>
2092           <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="POLICY[policy-cl-mgt]: FINAL_SUCCESS" enabled="true">
2093             <boolProp name="HTTPSampler.postBodyRaw">false</boolProp>
2094             <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
2095               <collectionProp name="Arguments.arguments">
2096                 <elementProp name="filter" elementType="HTTPArgument">
2097                   <boolProp name="HTTPArgument.always_encode">true</boolProp>
2098                   <stringProp name="Argument.value">{&quot;class&quot;:&quot;And&quot;, &quot;filters&quot;: [ { &quot;class&quot;:&quot;Equals&quot;, &quot;field&quot;:&quot;requestId&quot;, &quot;value&quot;:&quot;${requestId}&quot; }, { &quot;class&quot;:&quot;Equals&quot;, &quot;field&quot;:&quot;notification&quot;, &quot;value&quot;:&quot;FINAL: SUCCESS&quot; }]}</stringProp>
2099                   <stringProp name="Argument.metadata">=</stringProp>
2100                   <boolProp name="HTTPArgument.use_equals">true</boolProp>
2101                   <stringProp name="Argument.name">filter</stringProp>
2102                 </elementProp>
2103               </collectionProp>
2104             </elementProp>
2105             <stringProp name="HTTPSampler.domain">${KAFKA_HOST}</stringProp>
2106             <stringProp name="HTTPSampler.port">${KAFKA_PORT}</stringProp>
2107             <stringProp name="HTTPSampler.protocol">${HTTP}</stringProp>
2108             <stringProp name="HTTPSampler.path">events/policy-cl-mgt/${consumerGroup}/1?timeout=15000&amp;limit=1</stringProp>
2109             <stringProp name="HTTPSampler.method">GET</stringProp>
2110             <boolProp name="HTTPSampler.follow_redirects">false</boolProp>
2111             <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
2112             <boolProp name="HTTPSampler.use_keepalive">false</boolProp>
2113             <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
2114             <boolProp name="HTTPSampler.BROWSER_COMPATIBLE_MULTIPART">false</boolProp>
2115             <boolProp name="HTTPSampler.image_parser">false</boolProp>
2116             <boolProp name="HTTPSampler.concurrentDwn">false</boolProp>
2117             <stringProp name="HTTPSampler.concurrentPool">6</stringProp>
2118             <boolProp name="HTTPSampler.md5">false</boolProp>
2119             <intProp name="HTTPSampler.ipSourceType">0</intProp>
2120           </HTTPSamplerProxy>
2121           <hashTree>
2122             <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="No []" enabled="true">
2123               <collectionProp name="Asserion.test_strings">
2124                 <stringProp name="2914">[]</stringProp>
2125               </collectionProp>
2126               <stringProp name="Assertion.custom_message"></stringProp>
2127               <stringProp name="Assertion.test_field">Assertion.response_data</stringProp>
2128               <boolProp name="Assertion.assume_success">false</boolProp>
2129               <intProp name="Assertion.test_type">12</intProp>
2130             </ResponseAssertion>
2131             <hashTree/>
2132             <RegexExtractor guiclass="RegexExtractorGui" testclass="RegexExtractor" testname="requestId extractor" enabled="true">
2133               <stringProp name="RegexExtractor.useHeaders">false</stringProp>
2134               <stringProp name="RegexExtractor.refname">requestIdOnset</stringProp>
2135               <stringProp name="RegexExtractor.regex">requestId\\&quot;: \\&quot;(.+?)\\&quot;</stringProp>
2136               <stringProp name="RegexExtractor.template">$1$</stringProp>
2137               <stringProp name="RegexExtractor.default">none</stringProp>
2138               <boolProp name="RegexExtractor.default_empty_value">false</boolProp>
2139             </RegexExtractor>
2140             <hashTree/>
2141             <RegexExtractor guiclass="RegexExtractorGui" testclass="RegexExtractor" testname="notification extractor" enabled="true">
2142               <stringProp name="RegexExtractor.useHeaders">false</stringProp>
2143               <stringProp name="RegexExtractor.refname">notification</stringProp>
2144               <stringProp name="RegexExtractor.regex">notification\\&quot;: \\&quot;FINAL: (.+?)\\&quot;</stringProp>
2145               <stringProp name="RegexExtractor.template">$1$</stringProp>
2146               <stringProp name="RegexExtractor.default">none</stringProp>
2147               <boolProp name="RegexExtractor.default_empty_value">false</boolProp>
2148             </RegexExtractor>
2149             <hashTree/>
2150             <JSR223Assertion guiclass="TestBeanGUI" testclass="JSR223Assertion" testname="JSR223 Assertion" enabled="true">
2151               <stringProp name="scriptLanguage">groovy</stringProp>
2152               <stringProp name="parameters"></stringProp>
2153               <stringProp name="filename"></stringProp>
2154               <stringProp name="cacheKey">true</stringProp>
2155               <stringProp name="script">String requestIdOnset =  vars.get(&quot;requestIdOnset&quot;);
2156 String requestId =  vars.get(&quot;requestId&quot;);
2157 String notification =  vars.get(&quot;notification&quot;);
2158 String counter =  vars.get(&quot;counterA1&quot;);
2159
2160 String transaction = &quot;none&quot;;
2161
2162 log.info (&quot;The requestId id is &quot; + requestId);
2163 log.info (&quot;The requestIdOnset id is &quot; + requestIdOnset);
2164 log.info (&quot;The notification is &quot; + notification);
2165 log.info (&quot;The transaction is &quot; + transaction);
2166 log.info (&quot;The counter is &quot; + counter);
2167
2168 if (    requestId == requestIdOnset ) {
2169         if ( notification == &quot;SUCCESS&quot; ) {
2170                 transaction = &quot;FINAL&quot;;
2171                 log.info (&quot;Final Success Transaction&quot;);
2172                 log.info (&quot;The notification is SUCCESS&quot;);
2173         } else if ( notification == &quot;FAILURE&quot; ) {
2174                 transaction = &quot;FINAL&quot;;
2175                 log.info (&quot;Final Failure Transaction&quot;);
2176                 AssertionResult.setFailureMessage(&quot;Bad final notification&quot;);
2177                 AssertionResult.setFailure(true);
2178         } 
2179 }
2180
2181 int counterTemp = Integer.parseInt(counter) +1;
2182 if (transaction == &quot;FINAL&quot;) {
2183         counterTemp = 99;
2184 } else if (counterTemp &gt;= 60) {
2185         AssertionResult.setFailureMessage(&quot;vCPE Success POLICYCL Failure, reached maximum number of attempts &quot;);
2186         AssertionResult.setFailure(true);               
2187 }
2188
2189 vars.put(&quot;counterA1&quot;, Integer.toString(counterTemp));</stringProp>
2190             </JSR223Assertion>
2191             <hashTree/>
2192           </hashTree>
2193         </hashTree>
2194         <TestAction guiclass="TestActionGui" testclass="TestAction" testname="Flow Control Action" enabled="true">
2195           <intProp name="ActionProcessor.action">1</intProp>
2196           <intProp name="ActionProcessor.target">0</intProp>
2197           <stringProp name="ActionProcessor.duration">250</stringProp>
2198         </TestAction>
2199         <hashTree/>
2200       </hashTree>
2201       <PostThreadGroup guiclass="PostThreadGroupGui" testclass="PostThreadGroup" testname="Tear down" enabled="true">
2202         <stringProp name="ThreadGroup.on_sample_error">continue</stringProp>
2203         <elementProp name="ThreadGroup.main_controller" elementType="LoopController" guiclass="LoopControlPanel" testclass="LoopController" testname="Loop Controller" enabled="true">
2204           <stringProp name="LoopController.loops">1</stringProp>
2205           <boolProp name="LoopController.continue_forever">false</boolProp>
2206         </elementProp>
2207         <stringProp name="ThreadGroup.num_threads">1</stringProp>
2208         <stringProp name="ThreadGroup.ramp_time">1</stringProp>
2209         <boolProp name="ThreadGroup.scheduler">false</boolProp>
2210         <stringProp name="ThreadGroup.duration"></stringProp>
2211         <stringProp name="ThreadGroup.delay"></stringProp>
2212         <boolProp name="ThreadGroup.same_user_on_next_iteration">true</boolProp>
2213       </PostThreadGroup>
2214       <hashTree>
2215         <GenericController guiclass="LogicControllerGui" testclass="GenericController" testname="PAP" enabled="true"/>
2216         <hashTree>
2217           <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Undeploy vCPE Policy" enabled="true">
2218             <boolProp name="HTTPSampler.postBodyRaw">false</boolProp>
2219             <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
2220               <collectionProp name="Arguments.arguments"/>
2221             </elementProp>
2222             <stringProp name="HTTPSampler.domain">${PAP_HOST}</stringProp>
2223             <stringProp name="HTTPSampler.port">${PAP_PORT}</stringProp>
2224             <stringProp name="HTTPSampler.protocol">${HTTP}</stringProp>
2225             <stringProp name="HTTPSampler.path">policy/pap/v1/pdps/policies/operational.restart/versions/1.0.0</stringProp>
2226             <stringProp name="HTTPSampler.method">DELETE</stringProp>
2227             <boolProp name="HTTPSampler.follow_redirects">false</boolProp>
2228             <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
2229             <boolProp name="HTTPSampler.use_keepalive">false</boolProp>
2230             <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
2231             <boolProp name="HTTPSampler.BROWSER_COMPATIBLE_MULTIPART">false</boolProp>
2232             <boolProp name="HTTPSampler.image_parser">false</boolProp>
2233             <boolProp name="HTTPSampler.concurrentDwn">false</boolProp>
2234             <stringProp name="HTTPSampler.concurrentPool">6</stringProp>
2235             <boolProp name="HTTPSampler.md5">false</boolProp>
2236             <intProp name="HTTPSampler.ipSourceType">0</intProp>
2237           </HTTPSamplerProxy>
2238           <hashTree>
2239             <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Response Assertion" enabled="true">
2240               <collectionProp name="Asserion.test_strings">
2241                 <stringProp name="49588">202</stringProp>
2242               </collectionProp>
2243               <stringProp name="Assertion.custom_message"></stringProp>
2244               <stringProp name="Assertion.test_field">Assertion.response_code</stringProp>
2245               <boolProp name="Assertion.assume_success">false</boolProp>
2246               <intProp name="Assertion.test_type">16</intProp>
2247             </ResponseAssertion>
2248             <hashTree/>
2249           </hashTree>
2250           <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Undeploy 5G SON A1" enabled="true">
2251             <boolProp name="HTTPSampler.postBodyRaw">false</boolProp>
2252             <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
2253               <collectionProp name="Arguments.arguments"/>
2254             </elementProp>
2255             <stringProp name="HTTPSampler.domain">${PAP_HOST}</stringProp>
2256             <stringProp name="HTTPSampler.port">${PAP_PORT}</stringProp>
2257             <stringProp name="HTTPSampler.protocol">${HTTP}</stringProp>
2258             <stringProp name="HTTPSampler.path">policy/pap/v1/pdps/policies/op.5g.son.a1/versions/1.0.0</stringProp>
2259             <stringProp name="HTTPSampler.method">DELETE</stringProp>
2260             <boolProp name="HTTPSampler.follow_redirects">false</boolProp>
2261             <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
2262             <boolProp name="HTTPSampler.use_keepalive">false</boolProp>
2263             <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
2264             <boolProp name="HTTPSampler.BROWSER_COMPATIBLE_MULTIPART">false</boolProp>
2265             <boolProp name="HTTPSampler.image_parser">false</boolProp>
2266             <boolProp name="HTTPSampler.concurrentDwn">false</boolProp>
2267             <stringProp name="HTTPSampler.concurrentPool">6</stringProp>
2268             <boolProp name="HTTPSampler.md5">false</boolProp>
2269             <intProp name="HTTPSampler.ipSourceType">0</intProp>
2270           </HTTPSamplerProxy>
2271           <hashTree>
2272             <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Response Assertion" enabled="true">
2273               <collectionProp name="Asserion.test_strings">
2274                 <stringProp name="49588">202</stringProp>
2275               </collectionProp>
2276               <stringProp name="Assertion.custom_message"></stringProp>
2277               <stringProp name="Assertion.test_field">Assertion.response_code</stringProp>
2278               <boolProp name="Assertion.assume_success">false</boolProp>
2279               <intProp name="Assertion.test_type">16</intProp>
2280             </ResponseAssertion>
2281             <hashTree/>
2282           </hashTree>
2283           <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Undeploy 5G SON O1" enabled="true">
2284             <boolProp name="HTTPSampler.postBodyRaw">false</boolProp>
2285             <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
2286               <collectionProp name="Arguments.arguments"/>
2287             </elementProp>
2288             <stringProp name="HTTPSampler.domain">${PAP_HOST}</stringProp>
2289             <stringProp name="HTTPSampler.port">${PAP_PORT}</stringProp>
2290             <stringProp name="HTTPSampler.protocol">${HTTP}</stringProp>
2291             <stringProp name="HTTPSampler.path">policy/pap/v1/pdps/policies/op.5g.son.o1/versions/1.0.0</stringProp>
2292             <stringProp name="HTTPSampler.method">DELETE</stringProp>
2293             <boolProp name="HTTPSampler.follow_redirects">false</boolProp>
2294             <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
2295             <boolProp name="HTTPSampler.use_keepalive">false</boolProp>
2296             <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
2297             <boolProp name="HTTPSampler.BROWSER_COMPATIBLE_MULTIPART">false</boolProp>
2298             <boolProp name="HTTPSampler.image_parser">false</boolProp>
2299             <boolProp name="HTTPSampler.concurrentDwn">false</boolProp>
2300             <stringProp name="HTTPSampler.concurrentPool">6</stringProp>
2301             <boolProp name="HTTPSampler.md5">false</boolProp>
2302             <intProp name="HTTPSampler.ipSourceType">0</intProp>
2303           </HTTPSamplerProxy>
2304           <hashTree>
2305             <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Response Assertion" enabled="true">
2306               <collectionProp name="Asserion.test_strings">
2307                 <stringProp name="49588">202</stringProp>
2308               </collectionProp>
2309               <stringProp name="Assertion.custom_message"></stringProp>
2310               <stringProp name="Assertion.test_field">Assertion.response_code</stringProp>
2311               <boolProp name="Assertion.assume_success">false</boolProp>
2312               <intProp name="Assertion.test_type">16</intProp>
2313             </ResponseAssertion>
2314             <hashTree/>
2315           </hashTree>
2316         </hashTree>
2317         <GenericController guiclass="LogicControllerGui" testclass="GenericController" testname="API" enabled="true"/>
2318         <hashTree>
2319           <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Delete vCPE Policy" enabled="true">
2320             <boolProp name="HTTPSampler.postBodyRaw">false</boolProp>
2321             <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
2322               <collectionProp name="Arguments.arguments"/>
2323             </elementProp>
2324             <stringProp name="HTTPSampler.domain">${API_HOST}</stringProp>
2325             <stringProp name="HTTPSampler.port">${API_PORT}</stringProp>
2326             <stringProp name="HTTPSampler.protocol">${HTTP}</stringProp>
2327             <stringProp name="HTTPSampler.path">policy/api/v1/policytypes/onap.policies.controlloop.operational.common.Drools/versions/1.0.0/policies/operational.restart/versions/1.0.0</stringProp>
2328             <stringProp name="HTTPSampler.method">DELETE</stringProp>
2329             <boolProp name="HTTPSampler.follow_redirects">false</boolProp>
2330             <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
2331             <boolProp name="HTTPSampler.use_keepalive">false</boolProp>
2332             <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
2333             <boolProp name="HTTPSampler.BROWSER_COMPATIBLE_MULTIPART">false</boolProp>
2334             <boolProp name="HTTPSampler.image_parser">false</boolProp>
2335             <boolProp name="HTTPSampler.concurrentDwn">false</boolProp>
2336             <stringProp name="HTTPSampler.concurrentPool">6</stringProp>
2337             <boolProp name="HTTPSampler.md5">false</boolProp>
2338             <intProp name="HTTPSampler.ipSourceType">0</intProp>
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">16</intProp>
2349             </ResponseAssertion>
2350             <hashTree/>
2351           </hashTree>
2352           <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Delete 5G SON A1" enabled="true">
2353             <boolProp name="HTTPSampler.postBodyRaw">false</boolProp>
2354             <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
2355               <collectionProp name="Arguments.arguments"/>
2356             </elementProp>
2357             <stringProp name="HTTPSampler.domain">${API_HOST}</stringProp>
2358             <stringProp name="HTTPSampler.port">${API_PORT}</stringProp>
2359             <stringProp name="HTTPSampler.protocol">${HTTP}</stringProp>
2360             <stringProp name="HTTPSampler.path">policy/api/v1/policytypes/onap.policies.controlloop.operational.common.Drools/versions/1.0.0/policies/op.5g.son.a1/versions/1.0.0</stringProp>
2361             <stringProp name="HTTPSampler.method">DELETE</stringProp>
2362             <boolProp name="HTTPSampler.follow_redirects">false</boolProp>
2363             <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
2364             <boolProp name="HTTPSampler.use_keepalive">false</boolProp>
2365             <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
2366             <boolProp name="HTTPSampler.BROWSER_COMPATIBLE_MULTIPART">false</boolProp>
2367             <boolProp name="HTTPSampler.image_parser">false</boolProp>
2368             <boolProp name="HTTPSampler.concurrentDwn">false</boolProp>
2369             <stringProp name="HTTPSampler.concurrentPool">6</stringProp>
2370             <boolProp name="HTTPSampler.md5">false</boolProp>
2371             <intProp name="HTTPSampler.ipSourceType">0</intProp>
2372           </HTTPSamplerProxy>
2373           <hashTree>
2374             <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Response Assertion" enabled="true">
2375               <collectionProp name="Asserion.test_strings">
2376                 <stringProp name="49586">200</stringProp>
2377               </collectionProp>
2378               <stringProp name="Assertion.custom_message"></stringProp>
2379               <stringProp name="Assertion.test_field">Assertion.response_code</stringProp>
2380               <boolProp name="Assertion.assume_success">false</boolProp>
2381               <intProp name="Assertion.test_type">16</intProp>
2382             </ResponseAssertion>
2383             <hashTree/>
2384           </hashTree>
2385           <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Delete 5G SON O1" enabled="true">
2386             <boolProp name="HTTPSampler.postBodyRaw">false</boolProp>
2387             <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
2388               <collectionProp name="Arguments.arguments"/>
2389             </elementProp>
2390             <stringProp name="HTTPSampler.domain">${API_HOST}</stringProp>
2391             <stringProp name="HTTPSampler.port">${API_PORT}</stringProp>
2392             <stringProp name="HTTPSampler.protocol">${HTTP}</stringProp>
2393             <stringProp name="HTTPSampler.path">policy/api/v1/policytypes/onap.policies.controlloop.operational.common.Drools/versions/1.0.0/policies/op.5g.son.o1/versions/1.0.0</stringProp>
2394             <stringProp name="HTTPSampler.method">DELETE</stringProp>
2395             <boolProp name="HTTPSampler.follow_redirects">false</boolProp>
2396             <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
2397             <boolProp name="HTTPSampler.use_keepalive">false</boolProp>
2398             <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
2399             <boolProp name="HTTPSampler.BROWSER_COMPATIBLE_MULTIPART">false</boolProp>
2400             <boolProp name="HTTPSampler.image_parser">false</boolProp>
2401             <boolProp name="HTTPSampler.concurrentDwn">false</boolProp>
2402             <stringProp name="HTTPSampler.concurrentPool">6</stringProp>
2403             <boolProp name="HTTPSampler.md5">false</boolProp>
2404             <intProp name="HTTPSampler.ipSourceType">0</intProp>
2405           </HTTPSamplerProxy>
2406           <hashTree>
2407             <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Response Assertion" enabled="true">
2408               <collectionProp name="Asserion.test_strings">
2409                 <stringProp name="49586">200</stringProp>
2410               </collectionProp>
2411               <stringProp name="Assertion.custom_message"></stringProp>
2412               <stringProp name="Assertion.test_field">Assertion.response_code</stringProp>
2413               <boolProp name="Assertion.assume_success">false</boolProp>
2414               <intProp name="Assertion.test_type">16</intProp>
2415             </ResponseAssertion>
2416             <hashTree/>
2417           </hashTree>
2418         </hashTree>
2419       </hashTree>
2420     </hashTree>
2421   </hashTree>
2422 </jmeterTestPlan>