63cfa32cfcb4dded0dc277db90b789e738f0b321
[policy/pap.git] / testsuites / stability / src / main / resources / testplans / stability.jmx
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!--
3   ============LICENSE_START=======================================================
4   ONAP Policy PAP
5   ================================================================================
6   Copyright (C) 2019 AT&T Intellectual Property. All rights reserved.
7   Modifications Copyright (C) 2019 Nordix Foundation.
8   ================================================================================
9   Licensed under the Apache License, Version 2.0 (the "License");
10   you may not use this file except in compliance with the License.
11   You may obtain a copy of the License at
12
13        http://www.apache.org/licenses/LICENSE-2.0
14
15   Unless required by applicable law or agreed to in writing, software
16   distributed under the License is distributed on an "AS IS" BASIS,
17   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
18   See the License for the specific language governing permissions and
19   limitations under the License.
20   ============LICENSE_END=========================================================
21   -->
22 <jmeterTestPlan version="1.2" properties="5.0" jmeter="5.0 r1840935">
23   <hashTree>
24     <TestPlan guiclass="TestPlanGui" testclass="TestPlan" testname="Policy PAP Stability" enabled="true">
25       <stringProp name="TestPlan.comments">Policy PAP Stability Tests</stringProp>
26       <boolProp name="TestPlan.functional_mode">false</boolProp>
27       <boolProp name="TestPlan.tearDown_on_shutdown">true</boolProp>
28       <boolProp name="TestPlan.serialize_threadgroups">false</boolProp>
29       <elementProp name="TestPlan.user_defined_variables" elementType="Arguments" guiclass="ArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
30         <collectionProp name="Arguments.arguments">
31           <elementProp name="PAP_HOST" elementType="Argument">
32             <stringProp name="Argument.name">PAP_HOST</stringProp>
33             <stringProp name="Argument.value">10.2.0.43</stringProp>
34             <stringProp name="Argument.metadata">=</stringProp>
35           </elementProp>
36           <elementProp name="PAP_PORT" elementType="Argument">
37             <stringProp name="Argument.name">PAP_PORT</stringProp>
38             <stringProp name="Argument.value">6969</stringProp>
39             <stringProp name="Argument.metadata">=</stringProp>
40           </elementProp>
41           <elementProp name="API_HOST" elementType="Argument">
42             <stringProp name="Argument.name">API_HOST</stringProp>
43             <stringProp name="Argument.value">10.2.0.41</stringProp>
44             <stringProp name="Argument.metadata">=</stringProp>
45           </elementProp>
46           <elementProp name="API_PORT" elementType="Argument">
47             <stringProp name="Argument.name">API_PORT</stringProp>
48             <stringProp name="Argument.value">6969</stringProp>
49             <stringProp name="Argument.metadata">=</stringProp>
50           </elementProp>
51         </collectionProp>
52       </elementProp>
53       <stringProp name="TestPlan.user_define_classpath"></stringProp>
54     </TestPlan>
55     <hashTree>
56       <AuthManager guiclass="AuthPanel" testclass="AuthManager" testname="HTTP Authorization Manager" enabled="true">
57         <collectionProp name="AuthManager.auth_list">
58           <elementProp name="" elementType="Authorization">
59             <stringProp name="Authorization.url">https://${PAP_HOST}:6969/policy/pap/v1</stringProp>
60             <stringProp name="Authorization.username">healthcheck</stringProp>
61             <stringProp name="Authorization.password">zb!XztG34</stringProp>
62             <stringProp name="Authorization.domain"></stringProp>
63             <stringProp name="Authorization.realm"></stringProp>
64           </elementProp>
65           <elementProp name="" elementType="Authorization">
66             <stringProp name="Authorization.url">https://${API_HOST}:6969/policy/api/v1</stringProp>
67             <stringProp name="Authorization.username">healthcheck</stringProp>
68             <stringProp name="Authorization.password">zb!XztG34</stringProp>
69             <stringProp name="Authorization.domain"></stringProp>
70             <stringProp name="Authorization.realm"></stringProp>
71           </elementProp>
72         </collectionProp>
73         <boolProp name="AuthManager.clearEachIteration">true</boolProp>
74       </AuthManager>
75       <hashTree/>
76       <HeaderManager guiclass="HeaderPanel" testclass="HeaderManager" testname="HTTP Header Manager" enabled="true">
77         <collectionProp name="HeaderManager.headers">
78           <elementProp name="" elementType="Header">
79             <stringProp name="Header.name">Accept</stringProp>
80             <stringProp name="Header.value">application/json</stringProp>
81           </elementProp>
82           <elementProp name="" elementType="Header">
83             <stringProp name="Header.name">Content-Type</stringProp>
84             <stringProp name="Header.value">application/json</stringProp>
85           </elementProp>
86         </collectionProp>
87       </HeaderManager>
88       <hashTree/>
89       <SetupThreadGroup guiclass="SetupThreadGroupGui" testclass="SetupThreadGroup" testname="setUp Thread Group" enabled="true">
90         <stringProp name="ThreadGroup.on_sample_error">stoptest</stringProp>
91         <elementProp name="ThreadGroup.main_controller" elementType="LoopController" guiclass="LoopControlPanel" testclass="LoopController" testname="Loop Controller" enabled="true">
92           <boolProp name="LoopController.continue_forever">false</boolProp>
93           <stringProp name="LoopController.loops">1</stringProp>
94         </elementProp>
95         <stringProp name="ThreadGroup.num_threads">1</stringProp>
96         <stringProp name="ThreadGroup.ramp_time">1</stringProp>
97         <boolProp name="ThreadGroup.scheduler">false</boolProp>
98         <stringProp name="ThreadGroup.duration"></stringProp>
99         <stringProp name="ThreadGroup.delay"></stringProp>
100       </SetupThreadGroup>
101       <hashTree>
102         <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Create Policy Type" enabled="true">
103           <boolProp name="HTTPSampler.postBodyRaw">true</boolProp>
104           <elementProp name="HTTPsampler.Arguments" elementType="Arguments">
105             <collectionProp name="Arguments.arguments">
106               <elementProp name="" elementType="HTTPArgument">
107                 <boolProp name="HTTPArgument.always_encode">false</boolProp>
108                 <stringProp name="Argument.value">{&#xd;
109   &quot;tosca_definitions_version&quot;: &quot;tosca_simple_yaml_1_0_0&quot;,&#xd;
110   &quot;policy_types&quot;: [&#xd;
111     {&#xd;
112       &quot;onap.policies.controlloop.operational.Apex&quot;: {&#xd;
113         &quot;version&quot;: &quot;1.0.0&quot;,&#xd;
114         &quot;description&quot;: &quot;Operational Policy for Control Loops using the APEX PDP&quot;,&#xd;
115         &quot;properties&quot;: {&#xd;
116           &quot;engine_service&quot;: {&#xd;
117             &quot;type&quot;: &quot;onap.datatypes.policies.controlloop.operational.apex.EngineService&quot;,&#xd;
118             &quot;description&quot;: &quot;APEX Engine Service Parameters&quot;&#xd;
119           },&#xd;
120           &quot;inputs&quot;: {&#xd;
121             &quot;type&quot;: &quot;map&quot;,&#xd;
122             &quot;description&quot;: &quot;Inputs for handling events coming into the APEX engine&quot;,&#xd;
123             &quot;entry_schema&quot;: {&#xd;
124               &quot;type&quot;: &quot;onap.datatypes.policies.controlloop.operational.apex.EventHandler&quot;&#xd;
125             }&#xd;
126           },&#xd;
127           &quot;outputs&quot;: {&#xd;
128             &quot;type&quot;: &quot;map&quot;,&#xd;
129             &quot;description&quot;: &quot;Outputs for handling events going out of the APEX engine&quot;,&#xd;
130             &quot;entry_schema&quot;: {&#xd;
131               &quot;type&quot;: &quot;onap.datatypes.policies.controlloop.operational.apex.EventHandler&quot;&#xd;
132             }&#xd;
133           },&#xd;
134           &quot;environment&quot;: {&#xd;
135             &quot;type&quot;: &quot;list&quot;,&#xd;
136             &quot;description&quot;: &quot;Envioronmental parameters for the APEX engine&quot;,&#xd;
137             &quot;entry_schema&quot;: {&#xd;
138               &quot;type&quot;: &quot;onap.datatypes.policies.controlloop.operational.apex.Environment&quot;&#xd;
139             }&#xd;
140           }&#xd;
141         }&#xd;
142       }&#xd;
143     }&#xd;
144   ],&#xd;
145   &quot;data_types&quot;: [&#xd;
146     {&#xd;
147       &quot;onap.datatypes.policies.controlloop.operational.apex.EngineService&quot;: {&#xd;
148         &quot;derived_from&quot;: &quot;tosca.datatypes.Root&quot;,&#xd;
149         &quot;properties&quot;: {&#xd;
150           &quot;name&quot;: {&#xd;
151             &quot;type&quot;: &quot;string&quot;,&#xd;
152             &quot;description&quot;: &quot;Specifies the engine name&quot;,&#xd;
153             &quot;required&quot;: false,&#xd;
154             &quot;default&quot;: &quot;ApexEngineService&quot;&#xd;
155           },&#xd;
156           &quot;version&quot;: {&#xd;
157             &quot;type&quot;: &quot;string&quot;,&#xd;
158             &quot;description&quot;: &quot;Specifies the engine version in double dotted format&quot;,&#xd;
159             &quot;required&quot;: false,&#xd;
160             &quot;default&quot;: &quot;1.0.0&quot;&#xd;
161           },&#xd;
162           &quot;id&quot;: {&#xd;
163             &quot;type&quot;: &quot;int&quot;,&#xd;
164             &quot;description&quot;: &quot;Specifies the engine id&quot;,&#xd;
165             &quot;required&quot;: true&#xd;
166           },&#xd;
167           &quot;instance_count&quot;: {&#xd;
168             &quot;type&quot;: &quot;int&quot;,&#xd;
169             &quot;description&quot;: &quot;Specifies the number of engine threads that should be run&quot;,&#xd;
170             &quot;required&quot;: true&#xd;
171           },&#xd;
172           &quot;deployment_port&quot;: {&#xd;
173             &quot;type&quot;: &quot;int&quot;,&#xd;
174             &quot;description&quot;: &quot;Specifies the port to connect to for engine administration&quot;,&#xd;
175             &quot;required&quot;: false,&#xd;
176             &quot;default&quot;: 1&#xd;
177           },&#xd;
178           &quot;policy_model_file_name&quot;: {&#xd;
179             &quot;type&quot;: &quot;string&quot;,&#xd;
180             &quot;description&quot;: &quot;The name of the file from which to read the APEX policy model&quot;,&#xd;
181             &quot;required&quot;: false,&#xd;
182             &quot;default&quot;: &quot;&quot;&#xd;
183           },&#xd;
184           &quot;policy_type_impl&quot;: {&#xd;
185             &quot;type&quot;: &quot;string&quot;,&#xd;
186             &quot;description&quot;: &quot;The policy type implementation from which to read the APEX policy model&quot;,&#xd;
187             &quot;required&quot;: false,&#xd;
188             &quot;default&quot;: &quot;&quot;&#xd;
189           },&#xd;
190           &quot;periodic_event_period&quot;: {&#xd;
191             &quot;type&quot;: &quot;string&quot;,&#xd;
192             &quot;description&quot;: &quot;The time interval in milliseconds for the periodic scanning event, 0 means \&quot;don&apos;t scan\&quot;&quot;,&#xd;
193             &quot;required&quot;: false,&#xd;
194             &quot;default&quot;: 0&#xd;
195           },&#xd;
196           &quot;engine&quot;: {&#xd;
197             &quot;type&quot;: &quot;onap.datatypes.policies.controlloop.operational.apex.engineservice.Engine&quot;,&#xd;
198             &quot;description&quot;: &quot;The parameters for all engines in the APEX engine service&quot;,&#xd;
199             &quot;required&quot;: true&#xd;
200           }&#xd;
201         }&#xd;
202       }&#xd;
203     },&#xd;
204     {&#xd;
205       &quot;onap.datatypes.policies.controlloop.operational.apex.EventHandler&quot;: {&#xd;
206         &quot;derived_from&quot;: &quot;tosca.datatypes.Root&quot;,&#xd;
207         &quot;properties&quot;: {&#xd;
208           &quot;name&quot;: {&#xd;
209             &quot;type&quot;: &quot;string&quot;,&#xd;
210             &quot;description&quot;: &quot;Specifies the event handler name, if not specified this is set to the key name&quot;,&#xd;
211             &quot;required&quot;: false&#xd;
212           },&#xd;
213           &quot;carrier_technology&quot;: {&#xd;
214             &quot;type&quot;: &quot;onap.datatypes.policies.controlloop.operational.apex.CarrierTechnology&quot;,&#xd;
215             &quot;description&quot;: &quot;Specifies the carrier technology of the event handler (such as REST/Web Socket/Kafka)&quot;,&#xd;
216             &quot;required&quot;: true&#xd;
217           },&#xd;
218           &quot;event_protocol&quot;: {&#xd;
219             &quot;type&quot;: &quot;onap.datatypes.policies.controlloop.operational.apex.EventProtocol&quot;,&#xd;
220             &quot;description&quot;: &quot;Specifies the event protocol of events for the event handler (such as Yaml/JSON/XML/POJO)&quot;,&#xd;
221             &quot;required&quot;: true&#xd;
222           },&#xd;
223           &quot;event_name&quot;: {&#xd;
224             &quot;type&quot;: &quot;string&quot;,&#xd;
225             &quot;description&quot;: &quot;Specifies the event name for events on this event handler, if not specified, the event name is read from or written to the event being received or sent&quot;,&#xd;
226             &quot;required&quot;: false&#xd;
227           },&#xd;
228           &quot;event_name_filter&quot;: {&#xd;
229             &quot;type&quot;: &quot;string&quot;,&#xd;
230             &quot;description&quot;: &quot;Specifies a filter as a regular expression, events that do not match the filter are dropped, the default is to let all events through&quot;,&#xd;
231             &quot;required&quot;: false&#xd;
232           },&#xd;
233           &quot;synchronous_mode&quot;: {&#xd;
234             &quot;type&quot;: &quot;bool&quot;,&#xd;
235             &quot;description&quot;: &quot;Specifies the event handler is syncronous (receive event and send response)&quot;,&#xd;
236             &quot;required&quot;: false,&#xd;
237             &quot;default&quot;: false&#xd;
238           },&#xd;
239           &quot;synchronous_peer&quot;: {&#xd;
240             &quot;type&quot;: &quot;string&quot;,&#xd;
241             &quot;description&quot;: &quot;The peer event handler (output for input or input for output) of this event handler in synchronous mode, this parameter is mandatory if the event handler is in synchronous mode&quot;,&#xd;
242             &quot;required&quot;: false,&#xd;
243             &quot;default&quot;: &quot;&quot;&#xd;
244           },&#xd;
245           &quot;synchronous_timeout&quot;: {&#xd;
246             &quot;type&quot;: &quot;int&quot;,&#xd;
247             &quot;description&quot;: &quot;The timeout in milliseconds for responses to be issued by APEX torequests, this parameter is mandatory if the event handler is in synchronous mode&quot;,&#xd;
248             &quot;required&quot;: false,&#xd;
249             &quot;default&quot;: &quot;&quot;&#xd;
250           },&#xd;
251           &quot;requestor_mode&quot;: {&#xd;
252             &quot;type&quot;: &quot;bool&quot;,&#xd;
253             &quot;description&quot;: &quot;Specifies the event handler is in requestor mode (send event and wait for response mode)&quot;,&#xd;
254             &quot;required&quot;: false,&#xd;
255             &quot;default&quot;: false&#xd;
256           },&#xd;
257           &quot;requestor_peer&quot;: {&#xd;
258             &quot;type&quot;: &quot;string&quot;,&#xd;
259             &quot;description&quot;: &quot;The peer event handler (output for input or input for output) of this event handler in requestor mode, this parameter is mandatory if the event handler is in requestor mode&quot;,&#xd;
260             &quot;required&quot;: false,&#xd;
261             &quot;default&quot;: &quot;&quot;&#xd;
262           },&#xd;
263           &quot;requestor_timeout&quot;: {&#xd;
264             &quot;type&quot;: &quot;int&quot;,&#xd;
265             &quot;description&quot;: &quot;The timeout in milliseconds for wait for responses to requests, this parameter is mandatory if the event handler is in requestor mode&quot;,&#xd;
266             &quot;required&quot;: false,&#xd;
267             &quot;default&quot;: &quot;&quot;&#xd;
268           }&#xd;
269         }&#xd;
270       }&#xd;
271     },&#xd;
272     {&#xd;
273       &quot;onap.datatypes.policies.controlloop.operational.apex.CarrierTechnology&quot;: {&#xd;
274         &quot;derived_from&quot;: &quot;tosca.datatypes.Root&quot;,&#xd;
275         &quot;properties&quot;: {&#xd;
276           &quot;label&quot;: {&#xd;
277             &quot;type&quot;: &quot;string&quot;,&#xd;
278             &quot;description&quot;: &quot;The label (name) of the carrier technology (such as REST, Kafka, WebSocket)&quot;,&#xd;
279             &quot;required&quot;: true&#xd;
280           },&#xd;
281           &quot;plugin_parameter_class_name&quot;: {&#xd;
282             &quot;type&quot;: &quot;string&quot;,&#xd;
283             &quot;description&quot;: &quot;The class name of the class that overrides default handling of event input or output for this carrier technology, defaults to the supplied input or output class&quot;,&#xd;
284             &quot;required&quot;: false&#xd;
285           }&#xd;
286         }&#xd;
287       }&#xd;
288     },&#xd;
289     {&#xd;
290       &quot;onap.datatypes.policies.controlloop.operational.apex.EventProtocol&quot;: {&#xd;
291         &quot;derived_from&quot;: &quot;tosca.datatypes.Root&quot;,&#xd;
292         &quot;properties&quot;: {&#xd;
293           &quot;label&quot;: {&#xd;
294             &quot;type&quot;: &quot;string&quot;,&#xd;
295             &quot;description&quot;: &quot;The label (name) of the event protocol (such as Yaml, JSON, XML, or POJO)&quot;,&#xd;
296             &quot;required&quot;: true&#xd;
297           },&#xd;
298           &quot;event_protocol_plugin_class&quot;: {&#xd;
299             &quot;type&quot;: &quot;string&quot;,&#xd;
300             &quot;description&quot;: &quot;The class name of the class that overrides default handling of the event protocol for this carrier technology, defaults to the supplied event protocol class&quot;,&#xd;
301             &quot;required&quot;: false&#xd;
302           }&#xd;
303         }&#xd;
304       }&#xd;
305     },&#xd;
306     {&#xd;
307       &quot;onap.datatypes.policies.controlloop.operational.apex.Environmental&quot;: {&#xd;
308         &quot;derived_from&quot;: &quot;tosca.datatypes.Root&quot;,&#xd;
309         &quot;properties&quot;: {&#xd;
310           &quot;name&quot;: {&#xd;
311             &quot;type&quot;: &quot;string&quot;,&#xd;
312             &quot;description&quot;: &quot;The name of the environment variable&quot;,&#xd;
313             &quot;required&quot;: true&#xd;
314           },&#xd;
315           &quot;value&quot;: {&#xd;
316             &quot;type&quot;: &quot;string&quot;,&#xd;
317             &quot;description&quot;: &quot;The value of the environment variable&quot;,&#xd;
318             &quot;required&quot;: true&#xd;
319           }&#xd;
320         }&#xd;
321       }&#xd;
322     },&#xd;
323     {&#xd;
324       &quot;onap.datatypes.policies.controlloop.operational.apex.engineservice.Engine&quot;: {&#xd;
325         &quot;derived_from&quot;: &quot;tosca.datatypes.Root&quot;,&#xd;
326         &quot;properties&quot;: {&#xd;
327           &quot;context&quot;: {&#xd;
328             &quot;type&quot;: &quot;onap.datatypes.policies.controlloop.operational.apex.engineservice.engine.Context&quot;,&#xd;
329             &quot;description&quot;: &quot;The properties for handling context in APEX engines, defaults to using Java maps for context&quot;,&#xd;
330             &quot;required&quot;: false&#xd;
331           },&#xd;
332           &quot;executors&quot;: {&#xd;
333             &quot;type&quot;: &quot;map&quot;,&#xd;
334             &quot;description&quot;: &quot;The plugins for policy executors used in engines such as javascript, MVEL, Jython&quot;,&#xd;
335             &quot;required&quot;: true,&#xd;
336             &quot;entry_schema&quot;: {&#xd;
337               &quot;description&quot;: &quot;The plugin class path for this policy executor&quot;,&#xd;
338               &quot;type&quot;: &quot;string&quot;&#xd;
339             }&#xd;
340           }&#xd;
341         }&#xd;
342       }&#xd;
343     },&#xd;
344     {&#xd;
345       &quot;onap.datatypes.policies.controlloop.operational.apex.engineservice.engine.Context&quot;: {&#xd;
346         &quot;derived_from&quot;: &quot;tosca.datatypes.Root&quot;,&#xd;
347         &quot;properties&quot;: {&#xd;
348           &quot;distributor&quot;: {&#xd;
349             &quot;type&quot;: &quot;onap.datatypes.policies.controlloop.operational.apex.Plugin&quot;,&#xd;
350             &quot;description&quot;: &quot;The plugin to be used for distributing context between APEX PDPs at runtime&quot;,&#xd;
351             &quot;required&quot;: false&#xd;
352           },&#xd;
353           &quot;schemas&quot;: {&#xd;
354             &quot;type&quot;: &quot;map&quot;,&#xd;
355             &quot;description&quot;: &quot;The plugins for context schemas available in APEX PDPs such as Java and Avro&quot;,&#xd;
356             &quot;required&quot;: false,&#xd;
357             &quot;entry_schema&quot;: {&#xd;
358               &quot;type&quot;: &quot;onap.datatypes.policies.controlloop.operational.apex.Plugin&quot;&#xd;
359             }&#xd;
360           },&#xd;
361           &quot;locking&quot;: {&#xd;
362             &quot;type&quot;: &quot;onap.datatypes.policies.controlloop.operational.apex.plugin&quot;,&#xd;
363             &quot;description&quot;: &quot;The plugin to be used for locking context in and between APEX PDPs at runtime&quot;,&#xd;
364             &quot;required&quot;: false&#xd;
365           },&#xd;
366           &quot;persistence&quot;: {&#xd;
367             &quot;type&quot;: &quot;onap.datatypes.policies.controlloop.operational.apex.Plugin&quot;,&#xd;
368             &quot;description&quot;: &quot;The plugin to be used for persisting context for APEX PDPs at runtime&quot;,&#xd;
369             &quot;required&quot;: false&#xd;
370           }&#xd;
371         }&#xd;
372       }&#xd;
373     },&#xd;
374     {&#xd;
375       &quot;onap.datatypes.policies.controlloop.operational.apex.Plugin&quot;: {&#xd;
376         &quot;derived_from&quot;: &quot;tosca.datatypes.Root&quot;,&#xd;
377         &quot;properties&quot;: {&#xd;
378           &quot;name&quot;: {&#xd;
379             &quot;type&quot;: &quot;string&quot;,&#xd;
380             &quot;description&quot;: &quot;The name of the executor such as Javascript, Jython or MVEL&quot;,&#xd;
381             &quot;required&quot;: true&#xd;
382           },&#xd;
383           &quot;plugin_class_name&quot;: {&#xd;
384             &quot;type&quot;: &quot;string&quot;,&#xd;
385             &quot;description&quot;: &quot;The class path of the plugin class for this executor&quot;&#xd;
386           }&#xd;
387         }&#xd;
388       }&#xd;
389     }&#xd;
390   ]&#xd;
391 }</stringProp>
392                 <stringProp name="Argument.metadata">=</stringProp>
393               </elementProp>
394             </collectionProp>
395           </elementProp>
396           <stringProp name="HTTPSampler.domain">${API_HOST}</stringProp>
397           <stringProp name="HTTPSampler.port">${API_PORT}</stringProp>
398           <stringProp name="HTTPSampler.protocol">https</stringProp>
399           <stringProp name="HTTPSampler.contentEncoding"></stringProp>
400           <stringProp name="HTTPSampler.path">policy/api/v1/policytypes</stringProp>
401           <stringProp name="HTTPSampler.method">POST</stringProp>
402           <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
403           <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
404           <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
405           <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
406           <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
407           <stringProp name="HTTPSampler.connect_timeout"></stringProp>
408           <stringProp name="HTTPSampler.response_timeout"></stringProp>
409         </HTTPSamplerProxy>
410         <hashTree>
411           <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Response Assertion" enabled="true">
412             <collectionProp name="Asserion.test_strings">
413               <stringProp name="49586">200</stringProp>
414             </collectionProp>
415             <stringProp name="Assertion.custom_message"></stringProp>
416             <stringProp name="Assertion.test_field">Assertion.response_code</stringProp>
417             <boolProp name="Assertion.assume_success">false</boolProp>
418             <intProp name="Assertion.test_type">1</intProp>
419           </ResponseAssertion>
420           <hashTree/>
421         </hashTree>
422         <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Create Policy" enabled="true">
423           <boolProp name="HTTPSampler.postBodyRaw">true</boolProp>
424           <elementProp name="HTTPsampler.Arguments" elementType="Arguments">
425             <collectionProp name="Arguments.arguments">
426               <elementProp name="" elementType="HTTPArgument">
427                 <boolProp name="HTTPArgument.always_encode">false</boolProp>
428                 <stringProp name="Argument.value">{&#xd;
429   &quot;tosca_definitions_version&quot;: &quot;tosca_simple_yaml_1_0_0&quot;,&#xd;
430   &quot;topology_template&quot;: {&#xd;
431     &quot;policies&quot;: [&#xd;
432       {&#xd;
433         &quot;operational.apex.sampledomain&quot;: {&#xd;
434           &quot;type&quot;: &quot;onap.policies.controlloop.operational.Apex&quot;,&#xd;
435           &quot;typeVersion&quot;: &quot;1.0.0&quot;,&#xd;
436           &quot;name&quot;: &quot;onap.policies.controlloop.operational.apex.Sampledomain&quot;,&#xd;
437           &quot;version&quot;: &quot;1.0.0&quot;,&#xd;
438           &quot;properties&quot;: {&#xd;
439             &quot;content&quot;: {&#xd;
440               &quot;engineServiceParameters&quot;: {&#xd;
441                 &quot;name&quot;: &quot;MyApexEngine&quot;,&#xd;
442                 &quot;version&quot;: &quot;0.0.1&quot;,&#xd;
443                 &quot;id&quot;: 45,&#xd;
444                 &quot;instanceCount&quot;: 4,&#xd;
445                 &quot;deploymentPort&quot;: 12561,&#xd;
446                 &quot;policy_type_impl&quot;: {&#xd;
447                   &quot;policy_impl&quot;: &quot;There will be an actual policy impl in production&quot;&#xd;
448                 },&#xd;
449                 &quot;engineParameters&quot;: {&#xd;
450                   &quot;executorParameters&quot;: {&#xd;
451                     &quot;JAVASCRIPT&quot;: {&#xd;
452                       &quot;parameterClassName&quot;: &quot;org.onap.policy.apex.plugins.executor.javascript.JavascriptExecutorParameters&quot;&#xd;
453                     }&#xd;
454                   }&#xd;
455                 }&#xd;
456               },&#xd;
457               &quot;eventInputParameters&quot;: {&#xd;
458                 &quot;FirstConsumer&quot;: {&#xd;
459                   &quot;carrierTechnologyParameters&quot;: {&#xd;
460                     &quot;carrierTechnology&quot;: &quot;RESTSERVER&quot;,&#xd;
461                     &quot;parameterClassName&quot;: &quot;org.onap.policy.apex.plugins.event.carrier.restserver.RestServerCarrierTechnologyParameters&quot;,&#xd;
462                     &quot;parameters&quot;: {&#xd;
463                       &quot;standalone&quot;: true,&#xd;
464                       &quot;host&quot;: &quot;0.0.0.0&quot;,&#xd;
465                       &quot;port&quot;: 23324&#xd;
466                     }&#xd;
467                   },&#xd;
468                   &quot;eventProtocolParameters&quot;: {&#xd;
469                     &quot;eventProtocol&quot;: &quot;JSON&quot;&#xd;
470                   },&#xd;
471                   &quot;synchronousMode&quot;: true,&#xd;
472                   &quot;synchronousPeer&quot;: &quot;FirstProducer&quot;,&#xd;
473                   &quot;synchronousTimeout&quot;: 2000&#xd;
474                 }&#xd;
475               },&#xd;
476               &quot;eventOutputParameters&quot;: {&#xd;
477                 &quot;FirstProducer&quot;: {&#xd;
478                   &quot;carrierTechnologyParameters&quot;: {&#xd;
479                     &quot;carrierTechnology&quot;: &quot;RESTSERVER&quot;,&#xd;
480                     &quot;parameterClassName&quot;: &quot;org.onap.policy.apex.plugins.event.carrier.restserver.RestServerCarrierTechnologyParameters&quot;&#xd;
481                   },&#xd;
482                   &quot;eventProtocolParameters&quot;: {&#xd;
483                     &quot;eventProtocol&quot;: &quot;JSON&quot;&#xd;
484                   },&#xd;
485                   &quot;synchronousMode&quot;: true,&#xd;
486                   &quot;synchronousPeer&quot;: &quot;FirstConsumer&quot;,&#xd;
487                   &quot;synchronousTimeout&quot;: 2000&#xd;
488                 }&#xd;
489               }&#xd;
490             }&#xd;
491           }&#xd;
492         }&#xd;
493       }&#xd;
494     ]&#xd;
495   }&#xd;
496 }</stringProp>
497                 <stringProp name="Argument.metadata">=</stringProp>
498               </elementProp>
499             </collectionProp>
500           </elementProp>
501           <stringProp name="HTTPSampler.domain">${API_HOST}</stringProp>
502           <stringProp name="HTTPSampler.port">${API_PORT}</stringProp>
503           <stringProp name="HTTPSampler.protocol">https</stringProp>
504           <stringProp name="HTTPSampler.contentEncoding"></stringProp>
505           <stringProp name="HTTPSampler.path">/policy/api/v1/policytypes/onap.policies.controlloop.operational.Apex/versions/1.0.0/policies</stringProp>
506           <stringProp name="HTTPSampler.method">POST</stringProp>
507           <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
508           <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
509           <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
510           <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
511           <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
512           <stringProp name="HTTPSampler.connect_timeout"></stringProp>
513           <stringProp name="HTTPSampler.response_timeout"></stringProp>
514         </HTTPSamplerProxy>
515         <hashTree>
516           <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Response Assertion" enabled="true">
517             <collectionProp name="Asserion.test_strings">
518               <stringProp name="49586">200</stringProp>
519             </collectionProp>
520             <stringProp name="Assertion.custom_message"></stringProp>
521             <stringProp name="Assertion.test_field">Assertion.response_code</stringProp>
522             <boolProp name="Assertion.assume_success">false</boolProp>
523             <intProp name="Assertion.test_type">1</intProp>
524           </ResponseAssertion>
525           <hashTree/>
526         </hashTree>
527       </hashTree>
528       <ThreadGroup guiclass="ThreadGroupGui" testclass="ThreadGroup" testname="PAP Test Flow" enabled="true">
529         <stringProp name="ThreadGroup.on_sample_error">stoptest</stringProp>
530         <elementProp name="ThreadGroup.main_controller" elementType="LoopController" guiclass="LoopControlPanel" testclass="LoopController" testname="Loop Controller" enabled="true">
531           <boolProp name="LoopController.continue_forever">false</boolProp>
532           <stringProp name="LoopController.loops">1</stringProp>
533         </elementProp>
534         <stringProp name="ThreadGroup.num_threads">1</stringProp>
535         <stringProp name="ThreadGroup.ramp_time">1</stringProp>
536         <boolProp name="ThreadGroup.scheduler">false</boolProp>
537         <stringProp name="ThreadGroup.duration"></stringProp>
538         <stringProp name="ThreadGroup.delay"></stringProp>
539       </ThreadGroup>
540       <hashTree>
541         <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Check Health" enabled="true">
542           <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
543             <collectionProp name="Arguments.arguments"/>
544           </elementProp>
545           <stringProp name="HTTPSampler.domain">${PAP_HOST}</stringProp>
546           <stringProp name="HTTPSampler.port">${PAP_PORT}</stringProp>
547           <stringProp name="HTTPSampler.protocol">https</stringProp>
548           <stringProp name="HTTPSampler.contentEncoding"></stringProp>
549           <stringProp name="HTTPSampler.path">/policy/pap/v1/healthcheck</stringProp>
550           <stringProp name="HTTPSampler.method">GET</stringProp>
551           <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
552           <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
553           <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
554           <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
555           <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
556           <stringProp name="HTTPSampler.connect_timeout"></stringProp>
557           <stringProp name="HTTPSampler.response_timeout"></stringProp>
558           <stringProp name="TestPlan.comments">Basic Health Check</stringProp>
559         </HTTPSamplerProxy>
560         <hashTree>
561           <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Response Assertion" enabled="true">
562             <collectionProp name="Asserion.test_strings">
563               <stringProp name="49586">200</stringProp>
564             </collectionProp>
565             <stringProp name="Assertion.custom_message"></stringProp>
566             <stringProp name="Assertion.test_field">Assertion.response_code</stringProp>
567             <boolProp name="Assertion.assume_success">false</boolProp>
568             <intProp name="Assertion.test_type">1</intProp>
569           </ResponseAssertion>
570           <hashTree/>
571           <JSR223Assertion guiclass="TestBeanGUI" testclass="JSR223Assertion" testname="JSR223 Assertion" enabled="true">
572             <stringProp name="scriptLanguage">groovy</stringProp>
573             <stringProp name="parameters"></stringProp>
574             <stringProp name="filename"></stringProp>
575             <stringProp name="cacheKey">true</stringProp>
576             <stringProp name="script">import groovy.json.JsonSlurper;
577
578 def res = [];
579 if (prev.getResponseCode() == &apos;200&apos;) {
580     def jsonSlurper = new JsonSlurper();
581     res = jsonSlurper.parseText(prev.getResponseDataAsString());
582
583     assert res instanceof Map;
584     assert res.code == 200;
585     assert res.name == &quot;Policy PAP&quot;;
586     assert res.healthy==true;
587     assert res.message==&quot;alive&quot;;
588 }
589 </stringProp>
590           </JSR223Assertion>
591           <hashTree/>
592         </hashTree>
593         <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Check Statistics" enabled="true">
594           <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
595             <collectionProp name="Arguments.arguments"/>
596           </elementProp>
597           <stringProp name="HTTPSampler.domain">${PAP_HOST}</stringProp>
598           <stringProp name="HTTPSampler.port">${PAP_PORT}</stringProp>
599           <stringProp name="HTTPSampler.protocol">https</stringProp>
600           <stringProp name="HTTPSampler.contentEncoding"></stringProp>
601           <stringProp name="HTTPSampler.path">policy/pap/v1/statistics</stringProp>
602           <stringProp name="HTTPSampler.method">GET</stringProp>
603           <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
604           <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
605           <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
606           <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
607           <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
608           <stringProp name="HTTPSampler.connect_timeout"></stringProp>
609           <stringProp name="HTTPSampler.response_timeout"></stringProp>
610           <stringProp name="TestPlan.comments">Check Statistics</stringProp>
611         </HTTPSamplerProxy>
612         <hashTree>
613           <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Response Assertion" enabled="true">
614             <collectionProp name="Asserion.test_strings">
615               <stringProp name="49586">200</stringProp>
616             </collectionProp>
617             <stringProp name="Assertion.custom_message"></stringProp>
618             <stringProp name="Assertion.test_field">Assertion.response_code</stringProp>
619             <boolProp name="Assertion.assume_success">false</boolProp>
620             <intProp name="Assertion.test_type">1</intProp>
621           </ResponseAssertion>
622           <hashTree/>
623           <JSR223Assertion guiclass="TestBeanGUI" testclass="JSR223Assertion" testname="JSR223 Assertion" enabled="true">
624             <stringProp name="scriptLanguage">groovy</stringProp>
625             <stringProp name="parameters"></stringProp>
626             <stringProp name="filename"></stringProp>
627             <stringProp name="cacheKey">true</stringProp>
628             <stringProp name="script">import groovy.json.JsonSlurper;
629
630 def res = [];
631 if (prev.getResponseCode() == &apos;200&apos;) {
632     def jsonSlurper = new JsonSlurper();
633     res = jsonSlurper.parseText(prev.getResponseDataAsString());
634
635     assert res instanceof Map;
636     assert res.code == 200;
637     assert res.totalPdpCount == 0;
638     assert res.totalPdpGroupCount==0;
639     assert res.totalPolicyDeployCount==0;
640     assert res.policyDeploySuccessCount==0;
641
642 }
643 </stringProp>
644           </JSR223Assertion>
645           <hashTree/>
646         </hashTree>
647         <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Change State to ACTIVE" enabled="true">
648           <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
649             <collectionProp name="Arguments.arguments"/>
650           </elementProp>
651           <stringProp name="HTTPSampler.domain">${PAP_HOST}</stringProp>
652           <stringProp name="HTTPSampler.port">${PAP_PORT}</stringProp>
653           <stringProp name="HTTPSampler.protocol">https</stringProp>
654           <stringProp name="HTTPSampler.contentEncoding"></stringProp>
655           <stringProp name="HTTPSampler.path">policy/pap/v1/pdps/groups/defaultGroup?state=ACTIVE</stringProp>
656           <stringProp name="HTTPSampler.method">PUT</stringProp>
657           <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
658           <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
659           <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
660           <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
661           <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
662           <stringProp name="HTTPSampler.connect_timeout"></stringProp>
663           <stringProp name="HTTPSampler.response_timeout"></stringProp>
664         </HTTPSamplerProxy>
665         <hashTree>
666           <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Response Assertion" enabled="true">
667             <collectionProp name="Asserion.test_strings">
668               <stringProp name="49586">200</stringProp>
669             </collectionProp>
670             <stringProp name="Assertion.custom_message"></stringProp>
671             <stringProp name="Assertion.test_field">Assertion.response_code</stringProp>
672             <boolProp name="Assertion.assume_success">false</boolProp>
673             <intProp name="Assertion.test_type">1</intProp>
674           </ResponseAssertion>
675           <hashTree/>
676         </hashTree>
677         <ConstantTimer guiclass="ConstantTimerGui" testclass="ConstantTimer" testname="Constant Timer" enabled="true">
678           <stringProp name="ConstantTimer.delay">200</stringProp>
679         </ConstantTimer>
680         <hashTree/>
681         <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Check PdpGroup Query" enabled="true">
682           <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
683             <collectionProp name="Arguments.arguments"/>
684           </elementProp>
685           <stringProp name="HTTPSampler.domain">${PAP_HOST}</stringProp>
686           <stringProp name="HTTPSampler.port">${PAP_PORT}</stringProp>
687           <stringProp name="HTTPSampler.protocol">https</stringProp>
688           <stringProp name="HTTPSampler.contentEncoding"></stringProp>
689           <stringProp name="HTTPSampler.path">/policy/pap/v1/pdps</stringProp>
690           <stringProp name="HTTPSampler.method">GET</stringProp>
691           <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
692           <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
693           <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
694           <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
695           <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
696           <stringProp name="HTTPSampler.connect_timeout"></stringProp>
697           <stringProp name="HTTPSampler.response_timeout"></stringProp>
698           <stringProp name="TestPlan.comments">Check PdpGroup Query</stringProp>
699         </HTTPSamplerProxy>
700         <hashTree>
701           <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Response Assertion" enabled="true">
702             <collectionProp name="Asserion.test_strings">
703               <stringProp name="49586">200</stringProp>
704             </collectionProp>
705             <stringProp name="Assertion.custom_message"></stringProp>
706             <stringProp name="Assertion.test_field">Assertion.response_code</stringProp>
707             <boolProp name="Assertion.assume_success">false</boolProp>
708             <intProp name="Assertion.test_type">1</intProp>
709           </ResponseAssertion>
710           <hashTree/>
711           <JSR223Assertion guiclass="TestBeanGUI" testclass="JSR223Assertion" testname="JSR223 Assertion" enabled="true">
712             <stringProp name="scriptLanguage">groovy</stringProp>
713             <stringProp name="parameters"></stringProp>
714             <stringProp name="filename"></stringProp>
715             <stringProp name="cacheKey">true</stringProp>
716             <stringProp name="script">import groovy.json.JsonSlurper;
717
718 def res = [];
719 if (prev.getResponseCode() == &apos;200&apos;) {
720     def jsonSlurper = new JsonSlurper();
721     res = jsonSlurper.parseText(prev.getResponseDataAsString());
722
723     assert res instanceof Map;
724     assert res.groups.size &gt; 0;
725     assert res.groups[0].pdpGroupState== &apos;ACTIVE&apos;;
726 }
727 </stringProp>
728           </JSR223Assertion>
729           <hashTree/>
730         </hashTree>
731         <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Deploy Policy" enabled="true">
732           <boolProp name="HTTPSampler.postBodyRaw">true</boolProp>
733           <elementProp name="HTTPsampler.Arguments" elementType="Arguments">
734             <collectionProp name="Arguments.arguments">
735               <elementProp name="" elementType="HTTPArgument">
736                 <boolProp name="HTTPArgument.always_encode">false</boolProp>
737                 <stringProp name="Argument.value">{&#xd;
738   &quot;policies&quot; : [&#xd;
739     {&#xd;
740       &quot;policy-id&quot;: &quot;onap.policies.controlloop.operational.apex.Sampledomain&quot;,&#xd;
741       &quot;policy-version&quot;: 1&#xd;
742     }&#xd;
743     ]&#xd;
744 }</stringProp>
745                 <stringProp name="Argument.metadata">=</stringProp>
746               </elementProp>
747             </collectionProp>
748           </elementProp>
749           <stringProp name="HTTPSampler.domain">${PAP_HOST}</stringProp>
750           <stringProp name="HTTPSampler.port">${PAP_PORT}</stringProp>
751           <stringProp name="HTTPSampler.protocol">https</stringProp>
752           <stringProp name="HTTPSampler.contentEncoding"></stringProp>
753           <stringProp name="HTTPSampler.path">policy/pap/v1/pdps/policies</stringProp>
754           <stringProp name="HTTPSampler.method">POST</stringProp>
755           <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
756           <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
757           <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
758           <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
759           <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
760           <stringProp name="HTTPSampler.connect_timeout"></stringProp>
761           <stringProp name="HTTPSampler.response_timeout"></stringProp>
762         </HTTPSamplerProxy>
763         <hashTree>
764           <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Response Assertion" enabled="true">
765             <collectionProp name="Asserion.test_strings">
766               <stringProp name="49586">200</stringProp>
767             </collectionProp>
768             <stringProp name="Assertion.custom_message"></stringProp>
769             <stringProp name="Assertion.test_field">Assertion.response_code</stringProp>
770             <boolProp name="Assertion.assume_success">false</boolProp>
771             <intProp name="Assertion.test_type">1</intProp>
772           </ResponseAssertion>
773           <hashTree/>
774         </hashTree>
775         <ConstantTimer guiclass="ConstantTimerGui" testclass="ConstantTimer" testname="Constant Timer" enabled="true">
776           <stringProp name="ConstantTimer.delay">500</stringProp>
777         </ConstantTimer>
778         <hashTree/>
779         <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Undeploy Policy" enabled="true">
780           <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
781             <collectionProp name="Arguments.arguments"/>
782           </elementProp>
783           <stringProp name="HTTPSampler.domain">${PAP_HOST}</stringProp>
784           <stringProp name="HTTPSampler.port">${PAP_PORT}</stringProp>
785           <stringProp name="HTTPSampler.protocol">https</stringProp>
786           <stringProp name="HTTPSampler.contentEncoding"></stringProp>
787           <stringProp name="HTTPSampler.path">policy/pap/v1/pdps/policies/onap.policies.controlloop.operational.apex.Sampledomain</stringProp>
788           <stringProp name="HTTPSampler.method">DELETE</stringProp>
789           <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
790           <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
791           <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
792           <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
793           <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
794           <stringProp name="HTTPSampler.connect_timeout"></stringProp>
795           <stringProp name="HTTPSampler.response_timeout"></stringProp>
796         </HTTPSamplerProxy>
797         <hashTree>
798           <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Response Assertion" enabled="true">
799             <collectionProp name="Asserion.test_strings">
800               <stringProp name="49586">200</stringProp>
801             </collectionProp>
802             <stringProp name="Assertion.custom_message"></stringProp>
803             <stringProp name="Assertion.test_field">Assertion.response_code</stringProp>
804             <boolProp name="Assertion.assume_success">false</boolProp>
805             <intProp name="Assertion.test_type">1</intProp>
806           </ResponseAssertion>
807           <hashTree/>
808         </hashTree>
809         <ConstantTimer guiclass="ConstantTimerGui" testclass="ConstantTimer" testname="Constant Timer" enabled="true">
810           <stringProp name="ConstantTimer.delay">500</stringProp>
811         </ConstantTimer>
812         <hashTree/>
813         <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Change State to PASSIVE" enabled="true">
814           <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
815             <collectionProp name="Arguments.arguments"/>
816           </elementProp>
817           <stringProp name="HTTPSampler.domain">${PAP_HOST}</stringProp>
818           <stringProp name="HTTPSampler.port">${PAP_PORT}</stringProp>
819           <stringProp name="HTTPSampler.protocol">https</stringProp>
820           <stringProp name="HTTPSampler.contentEncoding"></stringProp>
821           <stringProp name="HTTPSampler.path">policy/pap/v1/pdps/groups/defaultGroup?state=PASSIVE</stringProp>
822           <stringProp name="HTTPSampler.method">PUT</stringProp>
823           <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
824           <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
825           <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
826           <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
827           <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
828           <stringProp name="HTTPSampler.connect_timeout"></stringProp>
829           <stringProp name="HTTPSampler.response_timeout"></stringProp>
830         </HTTPSamplerProxy>
831         <hashTree>
832           <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Response Assertion" enabled="true">
833             <collectionProp name="Asserion.test_strings">
834               <stringProp name="49586">200</stringProp>
835             </collectionProp>
836             <stringProp name="Assertion.custom_message"></stringProp>
837             <stringProp name="Assertion.test_field">Assertion.response_code</stringProp>
838             <boolProp name="Assertion.assume_success">false</boolProp>
839             <intProp name="Assertion.test_type">1</intProp>
840           </ResponseAssertion>
841           <hashTree/>
842         </hashTree>
843         <ConstantTimer guiclass="ConstantTimerGui" testclass="ConstantTimer" testname="Constant Timer" enabled="true">
844           <stringProp name="ConstantTimer.delay">200</stringProp>
845         </ConstantTimer>
846         <hashTree/>
847         <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Check PdpGroup Query" enabled="true">
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">${PAP_HOST}</stringProp>
852           <stringProp name="HTTPSampler.port">${PAP_PORT}</stringProp>
853           <stringProp name="HTTPSampler.protocol">https</stringProp>
854           <stringProp name="HTTPSampler.contentEncoding"></stringProp>
855           <stringProp name="HTTPSampler.path">/policy/pap/v1/pdps</stringProp>
856           <stringProp name="HTTPSampler.method">GET</stringProp>
857           <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
858           <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
859           <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
860           <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
861           <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
862           <stringProp name="HTTPSampler.connect_timeout"></stringProp>
863           <stringProp name="HTTPSampler.response_timeout"></stringProp>
864           <stringProp name="TestPlan.comments">Check PdpGroup Query</stringProp>
865         </HTTPSamplerProxy>
866         <hashTree>
867           <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Response Assertion" enabled="true">
868             <collectionProp name="Asserion.test_strings">
869               <stringProp name="49586">200</stringProp>
870             </collectionProp>
871             <stringProp name="Assertion.custom_message"></stringProp>
872             <stringProp name="Assertion.test_field">Assertion.response_code</stringProp>
873             <boolProp name="Assertion.assume_success">false</boolProp>
874             <intProp name="Assertion.test_type">1</intProp>
875           </ResponseAssertion>
876           <hashTree/>
877           <JSR223Assertion guiclass="TestBeanGUI" testclass="JSR223Assertion" testname="JSR223 Assertion" enabled="true">
878             <stringProp name="scriptLanguage">groovy</stringProp>
879             <stringProp name="parameters"></stringProp>
880             <stringProp name="filename"></stringProp>
881             <stringProp name="cacheKey">true</stringProp>
882             <stringProp name="script">import groovy.json.JsonSlurper;
883
884 def res = [];
885 if (prev.getResponseCode() == &apos;200&apos;) {
886     def jsonSlurper = new JsonSlurper();
887     res = jsonSlurper.parseText(prev.getResponseDataAsString());
888
889     assert res instanceof Map;
890     assert res.groups.size &gt; 0;
891     assert res.groups[0].pdpGroupState== &apos;PASSIVE&apos;;
892 }
893 </stringProp>
894           </JSR223Assertion>
895           <hashTree/>
896         </hashTree>
897       </hashTree>
898       <PostThreadGroup guiclass="PostThreadGroupGui" testclass="PostThreadGroup" testname="tearDown Thread Group" enabled="true">
899         <stringProp name="ThreadGroup.on_sample_error">stoptest</stringProp>
900         <elementProp name="ThreadGroup.main_controller" elementType="LoopController" guiclass="LoopControlPanel" testclass="LoopController" testname="Loop Controller" enabled="true">
901           <boolProp name="LoopController.continue_forever">false</boolProp>
902           <stringProp name="LoopController.loops">1</stringProp>
903         </elementProp>
904         <stringProp name="ThreadGroup.num_threads">1</stringProp>
905         <stringProp name="ThreadGroup.ramp_time">1</stringProp>
906         <boolProp name="ThreadGroup.scheduler">false</boolProp>
907         <stringProp name="ThreadGroup.duration"></stringProp>
908         <stringProp name="ThreadGroup.delay"></stringProp>
909       </PostThreadGroup>
910       <hashTree>
911         <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Delete Policy" enabled="true">
912           <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
913             <collectionProp name="Arguments.arguments"/>
914           </elementProp>
915           <stringProp name="HTTPSampler.domain">${API_HOST}</stringProp>
916           <stringProp name="HTTPSampler.port">${API_PORT}</stringProp>
917           <stringProp name="HTTPSampler.protocol">https</stringProp>
918           <stringProp name="HTTPSampler.contentEncoding"></stringProp>
919           <stringProp name="HTTPSampler.path">/policy/api/v1/policytypes/onap.policies.controlloop.operational.Apex/versions/1.0.0/policies/onap.policies.controlloop.operational.apex.Sampledomain/versions/1.0.0</stringProp>
920           <stringProp name="HTTPSampler.method">DELETE</stringProp>
921           <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
922           <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
923           <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
924           <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
925           <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
926           <stringProp name="HTTPSampler.connect_timeout"></stringProp>
927           <stringProp name="HTTPSampler.response_timeout"></stringProp>
928         </HTTPSamplerProxy>
929         <hashTree>
930           <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Response Assertion" enabled="true">
931             <collectionProp name="Asserion.test_strings">
932               <stringProp name="49586">200</stringProp>
933             </collectionProp>
934             <stringProp name="Assertion.custom_message"></stringProp>
935             <stringProp name="Assertion.test_field">Assertion.response_code</stringProp>
936             <boolProp name="Assertion.assume_success">false</boolProp>
937             <intProp name="Assertion.test_type">1</intProp>
938           </ResponseAssertion>
939           <hashTree/>
940         </hashTree>
941         <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Delete Policy Type" enabled="true">
942           <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
943             <collectionProp name="Arguments.arguments"/>
944           </elementProp>
945           <stringProp name="HTTPSampler.domain">${API_HOST}</stringProp>
946           <stringProp name="HTTPSampler.port">${API_PORT}</stringProp>
947           <stringProp name="HTTPSampler.protocol">https</stringProp>
948           <stringProp name="HTTPSampler.contentEncoding"></stringProp>
949           <stringProp name="HTTPSampler.path">/policy/api/v1/policytypes/onap.policies.controlloop.operational.Apex/versions/1.0.0</stringProp>
950           <stringProp name="HTTPSampler.method">DELETE</stringProp>
951           <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
952           <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
953           <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
954           <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
955           <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
956           <stringProp name="HTTPSampler.connect_timeout"></stringProp>
957           <stringProp name="HTTPSampler.response_timeout"></stringProp>
958         </HTTPSamplerProxy>
959         <hashTree>
960           <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Response Assertion" enabled="true">
961             <collectionProp name="Asserion.test_strings">
962               <stringProp name="49586">200</stringProp>
963             </collectionProp>
964             <stringProp name="Assertion.custom_message"></stringProp>
965             <stringProp name="Assertion.test_field">Assertion.response_code</stringProp>
966             <boolProp name="Assertion.assume_success">false</boolProp>
967             <intProp name="Assertion.test_type">1</intProp>
968           </ResponseAssertion>
969           <hashTree/>
970         </hashTree>
971       </hashTree>
972       <ResultCollector guiclass="SummaryReport" testclass="ResultCollector" testname="Summary Report" enabled="true">
973         <boolProp name="ResultCollector.error_logging">false</boolProp>
974         <objProp>
975           <name>saveConfig</name>
976           <value class="SampleSaveConfiguration">
977             <time>true</time>
978             <latency>true</latency>
979             <timestamp>true</timestamp>
980             <success>true</success>
981             <label>true</label>
982             <code>true</code>
983             <message>true</message>
984             <threadName>true</threadName>
985             <dataType>true</dataType>
986             <encoding>false</encoding>
987             <assertions>true</assertions>
988             <subresults>true</subresults>
989             <responseData>false</responseData>
990             <samplerData>false</samplerData>
991             <xml>false</xml>
992             <fieldNames>true</fieldNames>
993             <responseHeaders>false</responseHeaders>
994             <requestHeaders>false</requestHeaders>
995             <responseDataOnError>false</responseDataOnError>
996             <saveAssertionResultsFailureMessage>true</saveAssertionResultsFailureMessage>
997             <assertionsResultsToSave>0</assertionsResultsToSave>
998             <bytes>true</bytes>
999             <sentBytes>true</sentBytes>
1000             <url>true</url>
1001             <threadCounts>true</threadCounts>
1002             <idleTime>true</idleTime>
1003             <connectTime>true</connectTime>
1004           </value>
1005         </objProp>
1006         <stringProp name="filename">C:\Users\eramkve\Desktop\stability.log</stringProp>
1007       </ResultCollector>
1008       <hashTree/>
1009       <ResultCollector guiclass="ViewResultsFullVisualizer" testclass="ResultCollector" testname="View Results Tree" enabled="true">
1010         <boolProp name="ResultCollector.error_logging">false</boolProp>
1011         <objProp>
1012           <name>saveConfig</name>
1013           <value class="SampleSaveConfiguration">
1014             <time>true</time>
1015             <latency>true</latency>
1016             <timestamp>true</timestamp>
1017             <success>true</success>
1018             <label>true</label>
1019             <code>true</code>
1020             <message>true</message>
1021             <threadName>true</threadName>
1022             <dataType>true</dataType>
1023             <encoding>false</encoding>
1024             <assertions>true</assertions>
1025             <subresults>true</subresults>
1026             <responseData>false</responseData>
1027             <samplerData>false</samplerData>
1028             <xml>false</xml>
1029             <fieldNames>true</fieldNames>
1030             <responseHeaders>false</responseHeaders>
1031             <requestHeaders>false</requestHeaders>
1032             <responseDataOnError>false</responseDataOnError>
1033             <saveAssertionResultsFailureMessage>true</saveAssertionResultsFailureMessage>
1034             <assertionsResultsToSave>0</assertionsResultsToSave>
1035             <bytes>true</bytes>
1036             <sentBytes>true</sentBytes>
1037             <url>true</url>
1038             <threadCounts>true</threadCounts>
1039             <idleTime>true</idleTime>
1040             <connectTime>true</connectTime>
1041           </value>
1042         </objProp>
1043         <stringProp name="filename">C:\Users\eramkve\Desktop\stability.log</stringProp>
1044       </ResultCollector>
1045       <hashTree/>
1046       <ResultCollector guiclass="TableVisualizer" testclass="ResultCollector" testname="View Results in Table" enabled="true">
1047         <boolProp name="ResultCollector.error_logging">false</boolProp>
1048         <objProp>
1049           <name>saveConfig</name>
1050           <value class="SampleSaveConfiguration">
1051             <time>true</time>
1052             <latency>true</latency>
1053             <timestamp>true</timestamp>
1054             <success>true</success>
1055             <label>true</label>
1056             <code>true</code>
1057             <message>true</message>
1058             <threadName>true</threadName>
1059             <dataType>true</dataType>
1060             <encoding>false</encoding>
1061             <assertions>true</assertions>
1062             <subresults>true</subresults>
1063             <responseData>false</responseData>
1064             <samplerData>false</samplerData>
1065             <xml>false</xml>
1066             <fieldNames>true</fieldNames>
1067             <responseHeaders>false</responseHeaders>
1068             <requestHeaders>false</requestHeaders>
1069             <responseDataOnError>false</responseDataOnError>
1070             <saveAssertionResultsFailureMessage>true</saveAssertionResultsFailureMessage>
1071             <assertionsResultsToSave>0</assertionsResultsToSave>
1072             <bytes>true</bytes>
1073             <sentBytes>true</sentBytes>
1074             <url>true</url>
1075             <threadCounts>true</threadCounts>
1076             <idleTime>true</idleTime>
1077             <connectTime>true</connectTime>
1078           </value>
1079         </objProp>
1080         <stringProp name="filename">C:\Users\eramkve\Desktop\stability.log</stringProp>
1081       </ResultCollector>
1082       <hashTree/>
1083     </hashTree>
1084   </hashTree>
1085 </jmeterTestPlan>