cactus-test-definitions 1.6.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of cactus-test-definitions might be problematic. Click here for more details.

Files changed (139) hide show
  1. cactus_test_definitions/__init__.py +39 -0
  2. cactus_test_definitions/__pycache__/__init__.cpython-312.pyc +0 -0
  3. cactus_test_definitions/__pycache__/actions.cpython-312.pyc +0 -0
  4. cactus_test_definitions/__pycache__/checks.cpython-312.pyc +0 -0
  5. cactus_test_definitions/__pycache__/csipaus.cpython-312.pyc +0 -0
  6. cactus_test_definitions/__pycache__/errors.cpython-312.pyc +0 -0
  7. cactus_test_definitions/__pycache__/events.cpython-312.pyc +0 -0
  8. cactus_test_definitions/__pycache__/parameters.cpython-312.pyc +0 -0
  9. cactus_test_definitions/__pycache__/schema.cpython-312.pyc +0 -0
  10. cactus_test_definitions/__pycache__/test_procedures.cpython-312-pytest-8.3.5.pyc +0 -0
  11. cactus_test_definitions/__pycache__/test_procedures.cpython-312.pyc +0 -0
  12. cactus_test_definitions/__pycache__/variable_expressions.cpython-312.pyc +0 -0
  13. cactus_test_definitions/__pycache__/version.cpython-312.pyc +0 -0
  14. cactus_test_definitions/client/__init__.py +26 -0
  15. cactus_test_definitions/client/__pycache__/__init__.cpython-312.pyc +0 -0
  16. cactus_test_definitions/client/__pycache__/actions.cpython-312.pyc +0 -0
  17. cactus_test_definitions/client/__pycache__/checks.cpython-312.pyc +0 -0
  18. cactus_test_definitions/client/__pycache__/events.cpython-312.pyc +0 -0
  19. cactus_test_definitions/client/__pycache__/test_procedures.cpython-312-pytest-8.3.5.pyc +0 -0
  20. cactus_test_definitions/client/__pycache__/validate.cpython-312.pyc +0 -0
  21. cactus_test_definitions/client/actions.py +98 -0
  22. cactus_test_definitions/client/checks.py +127 -0
  23. cactus_test_definitions/client/events.py +71 -0
  24. cactus_test_definitions/client/procedures/ALL-01.yaml +94 -0
  25. cactus_test_definitions/client/procedures/ALL-02.yaml +113 -0
  26. cactus_test_definitions/client/procedures/ALL-03-REJ.yaml +69 -0
  27. cactus_test_definitions/client/procedures/ALL-03.yaml +110 -0
  28. cactus_test_definitions/client/procedures/ALL-04.yaml +69 -0
  29. cactus_test_definitions/client/procedures/ALL-05.yaml +117 -0
  30. cactus_test_definitions/client/procedures/ALL-06.yaml +128 -0
  31. cactus_test_definitions/client/procedures/ALL-07.yaml +76 -0
  32. cactus_test_definitions/client/procedures/ALL-08.yaml +78 -0
  33. cactus_test_definitions/client/procedures/ALL-09.yaml +111 -0
  34. cactus_test_definitions/client/procedures/ALL-10.yaml +128 -0
  35. cactus_test_definitions/client/procedures/ALL-11.yaml +111 -0
  36. cactus_test_definitions/client/procedures/ALL-12.yaml +108 -0
  37. cactus_test_definitions/client/procedures/ALL-13.yaml +112 -0
  38. cactus_test_definitions/client/procedures/ALL-14.yaml +165 -0
  39. cactus_test_definitions/client/procedures/ALL-15.yaml +109 -0
  40. cactus_test_definitions/client/procedures/ALL-16.yaml +102 -0
  41. cactus_test_definitions/client/procedures/ALL-17.yaml +63 -0
  42. cactus_test_definitions/client/procedures/ALL-18.yaml +288 -0
  43. cactus_test_definitions/client/procedures/ALL-19.yaml +78 -0
  44. cactus_test_definitions/client/procedures/ALL-20.yaml +136 -0
  45. cactus_test_definitions/client/procedures/ALL-21.yaml +203 -0
  46. cactus_test_definitions/client/procedures/ALL-22.yaml +82 -0
  47. cactus_test_definitions/client/procedures/ALL-23.yaml +158 -0
  48. cactus_test_definitions/client/procedures/ALL-24.yaml +132 -0
  49. cactus_test_definitions/client/procedures/ALL-25-EXT.yaml +228 -0
  50. cactus_test_definitions/client/procedures/ALL-25.yaml +136 -0
  51. cactus_test_definitions/client/procedures/ALL-26.yaml +147 -0
  52. cactus_test_definitions/client/procedures/ALL-27.yaml +144 -0
  53. cactus_test_definitions/client/procedures/ALL-28.yaml +274 -0
  54. cactus_test_definitions/client/procedures/ALL-29.yaml +87 -0
  55. cactus_test_definitions/client/procedures/ALL-30.yaml +188 -0
  56. cactus_test_definitions/client/procedures/BES-01.yaml +136 -0
  57. cactus_test_definitions/client/procedures/BES-02.yaml +137 -0
  58. cactus_test_definitions/client/procedures/BES-03.yaml +135 -0
  59. cactus_test_definitions/client/procedures/BES-04.yaml +228 -0
  60. cactus_test_definitions/client/procedures/DRA-01.yaml +54 -0
  61. cactus_test_definitions/client/procedures/DRA-02.yaml +64 -0
  62. cactus_test_definitions/client/procedures/DRD-01.yaml +667 -0
  63. cactus_test_definitions/client/procedures/DRL-01.yaml +327 -0
  64. cactus_test_definitions/client/procedures/GEN-01.yaml +73 -0
  65. cactus_test_definitions/client/procedures/GEN-02.yaml +72 -0
  66. cactus_test_definitions/client/procedures/GEN-03.yaml +160 -0
  67. cactus_test_definitions/client/procedures/GEN-04.yaml +161 -0
  68. cactus_test_definitions/client/procedures/GEN-05.yaml +89 -0
  69. cactus_test_definitions/client/procedures/GEN-06.yaml +90 -0
  70. cactus_test_definitions/client/procedures/GEN-07.yaml +145 -0
  71. cactus_test_definitions/client/procedures/GEN-08.yaml +145 -0
  72. cactus_test_definitions/client/procedures/GEN-09.yaml +117 -0
  73. cactus_test_definitions/client/procedures/GEN-10.yaml +739 -0
  74. cactus_test_definitions/client/procedures/GEN-11.yaml +378 -0
  75. cactus_test_definitions/client/procedures/GEN-12.yaml +378 -0
  76. cactus_test_definitions/client/procedures/GEN-13.yaml +70 -0
  77. cactus_test_definitions/client/procedures/LOA-01.yaml +73 -0
  78. cactus_test_definitions/client/procedures/LOA-02.yaml +73 -0
  79. cactus_test_definitions/client/procedures/LOA-03.yaml +160 -0
  80. cactus_test_definitions/client/procedures/LOA-04.yaml +161 -0
  81. cactus_test_definitions/client/procedures/LOA-05.yaml +89 -0
  82. cactus_test_definitions/client/procedures/LOA-06.yaml +89 -0
  83. cactus_test_definitions/client/procedures/LOA-07.yaml +145 -0
  84. cactus_test_definitions/client/procedures/LOA-08.yaml +145 -0
  85. cactus_test_definitions/client/procedures/LOA-09.yaml +117 -0
  86. cactus_test_definitions/client/procedures/LOA-10.yaml +741 -0
  87. cactus_test_definitions/client/procedures/LOA-11.yaml +378 -0
  88. cactus_test_definitions/client/procedures/LOA-12.yaml +378 -0
  89. cactus_test_definitions/client/procedures/LOA-13.yaml +71 -0
  90. cactus_test_definitions/client/procedures/MUL-01.yaml +92 -0
  91. cactus_test_definitions/client/procedures/MUL-02.yaml +80 -0
  92. cactus_test_definitions/client/procedures/MUL-03.yaml +74 -0
  93. cactus_test_definitions/client/test_procedures.py +185 -0
  94. cactus_test_definitions/client/validate.py +98 -0
  95. cactus_test_definitions/csipaus.py +81 -0
  96. cactus_test_definitions/errors.py +15 -0
  97. cactus_test_definitions/parameters.py +153 -0
  98. cactus_test_definitions/py.typed +0 -0
  99. cactus_test_definitions/schema.py +22 -0
  100. cactus_test_definitions/server/README.md +170 -0
  101. cactus_test_definitions/server/__init__.py +23 -0
  102. cactus_test_definitions/server/__pycache__/__init__.cpython-312.pyc +0 -0
  103. cactus_test_definitions/server/__pycache__/actions.cpython-312.pyc +0 -0
  104. cactus_test_definitions/server/__pycache__/checks.cpython-312.pyc +0 -0
  105. cactus_test_definitions/server/__pycache__/test_procedures.cpython-312-pytest-8.3.5.pyc +0 -0
  106. cactus_test_definitions/server/__pycache__/validate.cpython-312.pyc +0 -0
  107. cactus_test_definitions/server/actions.py +139 -0
  108. cactus_test_definitions/server/checks.py +117 -0
  109. cactus_test_definitions/server/procedures/S-ALL-01.yaml +42 -0
  110. cactus_test_definitions/server/procedures/S-ALL-02.yaml +65 -0
  111. cactus_test_definitions/server/procedures/S-ALL-03.yaml +65 -0
  112. cactus_test_definitions/server/procedures/S-ALL-04.yaml +137 -0
  113. cactus_test_definitions/server/procedures/S-ALL-05.yaml +111 -0
  114. cactus_test_definitions/server/procedures/S-OPT-01.yaml +42 -0
  115. cactus_test_definitions/server/procedures/S-OPT-02.yaml +40 -0
  116. cactus_test_definitions/server/procedures/S-OPT-03.yaml +44 -0
  117. cactus_test_definitions/server/procedures/S-OPT-04.yaml +32 -0
  118. cactus_test_definitions/server/test_procedures.py +122 -0
  119. cactus_test_definitions/server/validate.py +30 -0
  120. cactus_test_definitions/variable_expressions.py +419 -0
  121. cactus_test_definitions-1.6.0.dist-info/METADATA +289 -0
  122. cactus_test_definitions-1.6.0.dist-info/RECORD +139 -0
  123. cactus_test_definitions-1.6.0.dist-info/WHEEL +5 -0
  124. cactus_test_definitions-1.6.0.dist-info/licenses/LICENSE.txt +22 -0
  125. cactus_test_definitions-1.6.0.dist-info/top_level.txt +2 -0
  126. tests/__init__.py +0 -0
  127. tests/unit/__init__.py +0 -0
  128. tests/unit/client/__init__.py +0 -0
  129. tests/unit/client/test_actions.py +72 -0
  130. tests/unit/client/test_checks.py +71 -0
  131. tests/unit/client/test_events.py +36 -0
  132. tests/unit/client/test_test_procedures.py +103 -0
  133. tests/unit/client/test_validate.py +153 -0
  134. tests/unit/server/__init__.py +0 -0
  135. tests/unit/server/test_test_procedures.py +60 -0
  136. tests/unit/server/test_validate.py +62 -0
  137. tests/unit/test_csipaus.py +49 -0
  138. tests/unit/test_parameters.py +197 -0
  139. tests/unit/test_variable_expressions.py +402 -0
@@ -0,0 +1,741 @@
1
+ Description: Primacy Validation for loads
2
+ Category: DER
3
+ Classes:
4
+ - DER-L
5
+
6
+ TargetVersions:
7
+ - v1.2
8
+ - v1.3-beta/storage
9
+
10
+ Criteria:
11
+ checks:
12
+ - type: all-steps-complete
13
+ parameters: {}
14
+
15
+ Preconditions:
16
+ init_actions:
17
+ - type: set-comms-rate
18
+ parameters:
19
+ dcap_poll_seconds: 60
20
+ edev_list_poll_seconds: 60
21
+ fsa_list_poll_seconds: 60
22
+ der_list_poll_seconds: 60
23
+ derp_list_poll_seconds: 60
24
+ mup_post_seconds: 60
25
+
26
+ checks:
27
+ - type: end-device-contents
28
+ parameters: {}
29
+ - type: der-settings-contents
30
+ parameters: {}
31
+
32
+ actions:
33
+ # FSA1 has 5 DERPrograms at higher PRIORITY (lower primacy)
34
+ - type: create-der-program
35
+ parameters:
36
+ primacy: 1
37
+ fsa_id: 1
38
+ - type: create-der-program
39
+ parameters:
40
+ primacy: 1
41
+ fsa_id: 1
42
+ - type: create-der-program
43
+ parameters:
44
+ primacy: 1
45
+ fsa_id: 1
46
+ - type: create-der-program
47
+ parameters:
48
+ primacy: 1
49
+ fsa_id: 1
50
+ - type: create-der-program
51
+ parameters:
52
+ primacy: 1
53
+ fsa_id: 1
54
+
55
+ # FSA2 has 10 DERPrograms at lower PRIORITY (higher primacy)
56
+ - type: create-der-program
57
+ parameters:
58
+ primacy: 2
59
+ fsa_id: 2
60
+ - type: create-der-program
61
+ parameters:
62
+ primacy: 2
63
+ fsa_id: 2
64
+ - type: create-der-program
65
+ parameters:
66
+ primacy: 2
67
+ fsa_id: 2
68
+ - type: create-der-program
69
+ parameters:
70
+ primacy: 2
71
+ fsa_id: 2
72
+ - type: create-der-program
73
+ parameters:
74
+ primacy: 2
75
+ fsa_id: 2
76
+ - type: create-der-program
77
+ parameters:
78
+ primacy: 2
79
+ fsa_id: 2
80
+ - type: create-der-program
81
+ parameters:
82
+ primacy: 2
83
+ fsa_id: 2
84
+ - type: create-der-program
85
+ parameters:
86
+ primacy: 2
87
+ fsa_id: 2
88
+ - type: create-der-program
89
+ parameters:
90
+ primacy: 2
91
+ fsa_id: 2
92
+ - type: create-der-program
93
+ parameters:
94
+ primacy: 2
95
+ fsa_id: 2
96
+ - type: set-default-der-control
97
+ parameters:
98
+ derp_id: 1
99
+ opModImpLimW: 0
100
+
101
+ Steps:
102
+
103
+ # (a, b) - Create a Default DERControl at DERP 1 - set to 30% of max
104
+ GET-DEFAULT-DERC:
105
+ event:
106
+ type: GET-request-received
107
+ parameters:
108
+ endpoint: /edev/1/derp/1/dderc
109
+ actions:
110
+ - type: set-default-der-control
111
+ parameters:
112
+ derp_id: 1
113
+ opModImpLimW: $(setMaxW * 0.3)
114
+ - type: enable-steps
115
+ parameters:
116
+ steps:
117
+ - GET-DERC-1
118
+ - type: remove-steps
119
+ parameters:
120
+ steps:
121
+ - GET-DEFAULT-DERC
122
+
123
+ # (c, d) - Create a DERControl at DERP 6 - set to 200% of max
124
+ GET-DERC-1:
125
+ event:
126
+ type: GET-request-received
127
+ parameters:
128
+ endpoint: /edev/1/derp/6/derc
129
+ actions:
130
+ - type: create-der-control
131
+ parameters:
132
+ start: $(now)
133
+ duration_seconds: 600
134
+ opModImpLimW: $(setMaxW * 2)
135
+ fsa_id: 2
136
+ primacy: 2
137
+ - type: enable-steps
138
+ parameters:
139
+ steps:
140
+ - POST-DERC-1-RESPONSE-STARTED
141
+ - type: remove-steps
142
+ parameters:
143
+ steps:
144
+ - GET-DERC-1
145
+
146
+ # (d) Wait for "Started" response from DERC-1
147
+ POST-DERC-1-RESPONSE-STARTED:
148
+ event:
149
+ type: POST-request-received
150
+ parameters:
151
+ endpoint: /edev/1/rsps/site_control/rsp
152
+ serve_request_first: true
153
+ checks:
154
+ - type: response-contents
155
+ parameters:
156
+ latest: true
157
+ status: 2
158
+ actions:
159
+ - type: enable-steps
160
+ parameters:
161
+ steps:
162
+ - WAIT-DERC-2
163
+ - type: remove-steps
164
+ parameters:
165
+ steps:
166
+ - POST-DERC-1-RESPONSE-STARTED
167
+
168
+ # (e) Wait for a short period
169
+ WAIT-DERC-2:
170
+ event:
171
+ type: wait
172
+ parameters:
173
+ duration_seconds: 60
174
+ actions:
175
+ - type: enable-steps
176
+ parameters:
177
+ steps:
178
+ - GET-DERC-2
179
+ - type: remove-steps
180
+ parameters:
181
+ steps:
182
+ - WAIT-DERC-2
183
+
184
+ # (e) After the short period - configure a DERControl on DERP 1 - set to 0%
185
+ GET-DERC-2:
186
+ event:
187
+ type: GET-request-received
188
+ parameters:
189
+ endpoint: /edev/1/derp/1/derc
190
+ actions:
191
+ - type: create-der-control
192
+ parameters:
193
+ start: $(now)
194
+ duration_seconds: 840 # Should run for 5 minutes after DERC 1 is due to expire
195
+ opModImpLimW: 0
196
+ fsa_id: 1
197
+ primacy: 1
198
+ - type: enable-steps
199
+ parameters:
200
+ steps:
201
+ - POST-DERC-2-RESPONSE-STARTED
202
+ - POST-DERC-1-RESPONSE-SUPERSEDED
203
+ - POST-DERC-2-RESPONSE-COMPLETED
204
+ - type: remove-steps
205
+ parameters:
206
+ steps:
207
+ - GET-DERC-2
208
+
209
+ # (f) Receive response started for DERControl 2
210
+ POST-DERC-2-RESPONSE-STARTED:
211
+ event:
212
+ type: POST-request-received
213
+ parameters:
214
+ endpoint: /edev/1/rsps/site_control/rsp
215
+ serve_request_first: true
216
+ checks:
217
+ - type: response-contents
218
+ parameters:
219
+ latest: true
220
+ status: 2
221
+ actions:
222
+ - type: remove-steps
223
+ parameters:
224
+ steps:
225
+ - POST-DERC-2-RESPONSE-STARTED
226
+
227
+ # (g) Client should get a superseded response for DERControl 1
228
+ POST-DERC-1-RESPONSE-SUPERSEDED:
229
+ event:
230
+ type: POST-request-received
231
+ parameters:
232
+ endpoint: /edev/1/rsps/site_control/rsp
233
+ serve_request_first: true
234
+ checks:
235
+ - type: response-contents
236
+ parameters:
237
+ latest: true
238
+ status: 7
239
+ actions:
240
+ - type: remove-steps
241
+ parameters:
242
+ steps:
243
+ - POST-DERC-1-RESPONSE-SUPERSEDED
244
+
245
+
246
+ # (h) Client should get a completed response for DERControl 2
247
+ POST-DERC-2-RESPONSE-COMPLETED:
248
+ event:
249
+ type: POST-request-received
250
+ parameters:
251
+ endpoint: /edev/1/rsps/site_control/rsp
252
+ serve_request_first: true
253
+ checks:
254
+ - type: response-contents
255
+ parameters:
256
+ latest: true
257
+ status: 3
258
+ actions:
259
+ - type: enable-steps
260
+ parameters:
261
+ steps:
262
+ - GET-DERC-3
263
+ - type: remove-steps
264
+ parameters:
265
+ steps:
266
+ - POST-DERC-2-RESPONSE-COMPLETED
267
+
268
+ # (i) Create a new DERControl on DERP6 - set to 200%
269
+ GET-DERC-3:
270
+ event:
271
+ type: GET-request-received
272
+ parameters:
273
+ endpoint: /edev/1/derp/6/derc
274
+ actions:
275
+ - type: create-der-control
276
+ parameters:
277
+ start: $(now)
278
+ duration_seconds: 300
279
+ opModImpLimW: $(setMaxW * 2)
280
+ fsa_id: 2
281
+ primacy: 2
282
+ - type: enable-steps
283
+ parameters:
284
+ steps:
285
+ - POST-DERC-3-RESPONSE-STARTED
286
+ - type: remove-steps
287
+ parameters:
288
+ steps:
289
+ - GET-DERC-3
290
+
291
+ # (j) Receive response started for DERControl 2
292
+ POST-DERC-3-RESPONSE-STARTED:
293
+ event:
294
+ type: POST-request-received
295
+ parameters:
296
+ endpoint: /edev/1/rsps/site_control/rsp
297
+ serve_request_first: true
298
+ checks:
299
+ - type: response-contents
300
+ parameters:
301
+ latest: true
302
+ status: 2
303
+ actions:
304
+ - type: enable-steps
305
+ parameters:
306
+ steps:
307
+ - POST-DERC-3-RESPONSE-COMPLETED
308
+ - type: remove-steps
309
+ parameters:
310
+ steps:
311
+ - POST-DERC-3-RESPONSE-STARTED
312
+
313
+ # (k, l) Wait for completed response on DERC 3
314
+ POST-DERC-3-RESPONSE-COMPLETED:
315
+ event:
316
+ type: POST-request-received
317
+ parameters:
318
+ endpoint: /edev/1/rsps/site_control/rsp
319
+ serve_request_first: true
320
+ checks:
321
+ - type: response-contents
322
+ parameters:
323
+ latest: true
324
+ status: 3
325
+ actions:
326
+ - type: enable-steps
327
+ parameters:
328
+ steps:
329
+ - GET-DERC-4
330
+ - GET-DERC-5
331
+ - type: remove-steps
332
+ parameters:
333
+ steps:
334
+ - POST-DERC-3-RESPONSE-COMPLETED
335
+
336
+ # (m) (i) Configure the first DERControl on DERP1
337
+ # (n)
338
+ GET-DERC-4:
339
+ event:
340
+ type: GET-request-received
341
+ parameters:
342
+ endpoint: /edev/1/derp/1/derc
343
+ actions:
344
+ - type: create-der-control
345
+ parameters:
346
+ start: $(now)
347
+ duration_seconds: 300
348
+ opModLoadLimW: 0
349
+ opModConnect: false
350
+ fsa_id: 1
351
+ primacy: 1
352
+ - type: enable-steps
353
+ parameters:
354
+ steps:
355
+ - POST-DERC-4-RESPONSE-STARTED
356
+ - type: remove-steps
357
+ parameters:
358
+ steps:
359
+ - GET-DERC-4
360
+
361
+ # (m) (ii) Configure the second DERControl on DERP6
362
+ # (n)
363
+ GET-DERC-5:
364
+ event:
365
+ type: GET-request-received
366
+ parameters:
367
+ endpoint: /edev/1/derp/6/derc
368
+ actions:
369
+ - type: create-der-control
370
+ parameters:
371
+ start: $(now)
372
+ duration_seconds: 1200 # 20 minutes
373
+ opModImpLimW: $(setMaxW * 2)
374
+ fsa_id: 1
375
+ primacy: 1
376
+ - type: enable-steps
377
+ parameters:
378
+ steps:
379
+ - POST-DERC-5-RESPONSE-STARTED
380
+ - type: remove-steps
381
+ parameters:
382
+ steps:
383
+ - GET-DERC-5
384
+
385
+ # (o) Receive response started for DERControl 2
386
+ POST-DERC-4-RESPONSE-STARTED:
387
+ event:
388
+ type: POST-request-received
389
+ parameters:
390
+ endpoint: /edev/1/rsps/site_control/rsp
391
+ serve_request_first: true
392
+ checks:
393
+ - type: response-contents
394
+ parameters:
395
+ latest: true
396
+ status: 2
397
+ actions:
398
+ - type: enable-steps
399
+ parameters:
400
+ steps:
401
+ - POST-DERC-4-RESPONSE-COMPLETED
402
+ - type: remove-steps
403
+ parameters:
404
+ steps:
405
+ - POST-DERC-4-RESPONSE-STARTED
406
+
407
+ # (o) Receive response started for DERControl 2
408
+ POST-DERC-5-RESPONSE-STARTED:
409
+ event:
410
+ type: POST-request-received
411
+ parameters:
412
+ endpoint: /edev/1/rsps/site_control/rsp
413
+ serve_request_first: true
414
+ checks:
415
+ - type: response-contents
416
+ parameters:
417
+ latest: true
418
+ status: 2
419
+ actions:
420
+ - type: remove-steps
421
+ parameters:
422
+ steps:
423
+ - POST-DERC-5-RESPONSE-STARTED
424
+
425
+
426
+ # (p, q, r) Do nothing but wait for DERControl 4 to complete
427
+ POST-DERC-4-RESPONSE-COMPLETED:
428
+ event:
429
+ type: POST-request-received
430
+ parameters:
431
+ endpoint: /edev/1/rsps/site_control/rsp
432
+ serve_request_first: true
433
+ checks:
434
+ - type: response-contents
435
+ parameters:
436
+ latest: true
437
+ status: 3
438
+ actions:
439
+ - type: enable-steps
440
+ parameters:
441
+ steps:
442
+ - GET-DERC-6
443
+ - type: remove-steps
444
+ parameters:
445
+ steps:
446
+ - POST-DERC-4-RESPONSE-COMPLETED
447
+
448
+ # (s) Create a DERControl on DERP6 at 50%
449
+ GET-DERC-6:
450
+ event:
451
+ type: GET-request-received
452
+ parameters:
453
+ endpoint: /edev/1/derp/6/derc
454
+ actions:
455
+ - type: create-der-control
456
+ parameters:
457
+ start: $(now)
458
+ duration_seconds: 300 # 20 minutes
459
+ opModImpLimW: $(setMaxW * 0.5)
460
+ fsa_id: 2
461
+ primacy: 2
462
+ - type: enable-steps
463
+ parameters:
464
+ steps:
465
+ - POST-DERC-5-RESPONSE-SUPERSEDED
466
+ - POST-DERC-6-RESPONSE-STARTED
467
+ - type: remove-steps
468
+ parameters:
469
+ steps:
470
+ - GET-DERC-6
471
+
472
+ # (t) Receive started Response for DERControl 6
473
+ POST-DERC-6-RESPONSE-STARTED:
474
+ event:
475
+ type: POST-request-received
476
+ parameters:
477
+ endpoint: /edev/1/rsps/site_control/rsp
478
+ serve_request_first: true
479
+ checks:
480
+ - type: response-contents
481
+ parameters:
482
+ latest: true
483
+ status: 2
484
+ actions:
485
+ - type: enable-steps
486
+ parameters:
487
+ steps:
488
+ - GET-DERC-7
489
+ - GET-DERC-8
490
+ - type: remove-steps
491
+ parameters:
492
+ steps:
493
+ - POST-DERC-6-RESPONSE-STARTED
494
+
495
+ # (u) Receive started Response for DERControl 5
496
+ POST-DERC-5-RESPONSE-SUPERSEDED:
497
+ event:
498
+ type: POST-request-received
499
+ parameters:
500
+ endpoint: /edev/1/rsps/site_control/rsp
501
+ serve_request_first: true
502
+ checks:
503
+ - type: response-contents
504
+ parameters:
505
+ latest: true
506
+ status: 7
507
+ actions:
508
+ - type: remove-steps
509
+ parameters:
510
+ steps:
511
+ - POST-DERC-5-RESPONSE-SUPERSEDED
512
+
513
+ # (v) (i) Create a DERControl on DERP1 at 0%
514
+ GET-DERC-7:
515
+ event:
516
+ type: GET-request-received
517
+ parameters:
518
+ endpoint: /edev/1/derp/1/derc
519
+ actions:
520
+ - type: create-der-control
521
+ parameters:
522
+ start: $(now)
523
+ duration_seconds: 300
524
+ opModImpLimW: 0
525
+ fsa_id: 1
526
+ primacy: 1
527
+ - type: enable-steps
528
+ parameters:
529
+ steps:
530
+ - POST-DERC-7-RESPONSE-STARTED
531
+ - type: remove-steps
532
+ parameters:
533
+ steps:
534
+ - GET-DERC-7
535
+
536
+ # (v) (ii) Create a DERControl on DERP6 at 50% / 30%
537
+ GET-DERC-8:
538
+ event:
539
+ type: GET-request-received
540
+ parameters:
541
+ endpoint: /edev/1/derp/6/derc
542
+ actions:
543
+ - type: create-der-control
544
+ parameters:
545
+ start: $(now)
546
+ duration_seconds: 300
547
+ opModImpLimW: $(setMaxW * 0.5)
548
+ opModLoadLimW: $(setMaxW * 0.3)
549
+ fsa_id: 2
550
+ primacy: 2
551
+ - type: enable-steps
552
+ parameters:
553
+ steps:
554
+ - POST-DERC-8-RESPONSE-STARTED
555
+ - type: remove-steps
556
+ parameters:
557
+ steps:
558
+ - GET-DERC-8
559
+
560
+ # (w, x) Receive the DERControl Response started for DERControl 7
561
+ POST-DERC-7-RESPONSE-STARTED:
562
+ event:
563
+ type: POST-request-received
564
+ parameters:
565
+ endpoint: /edev/1/rsps/site_control/rsp
566
+ serve_request_first: true
567
+ checks:
568
+ - type: response-contents
569
+ parameters:
570
+ latest: true
571
+ status: 2
572
+ actions:
573
+ - type: enable-steps
574
+ parameters:
575
+ steps:
576
+ - GET-DERC-9
577
+ - GET-DERC-10
578
+ - type: remove-steps
579
+ parameters:
580
+ steps:
581
+ - POST-DERC-7-RESPONSE-STARTED
582
+
583
+ # (w, x) Receive the DERControl Response started for DERControl 8
584
+ POST-DERC-8-RESPONSE-STARTED:
585
+ event:
586
+ type: POST-request-received
587
+ parameters:
588
+ endpoint: /edev/1/rsps/site_control/rsp
589
+ serve_request_first: true
590
+ checks:
591
+ - type: response-contents
592
+ parameters:
593
+ latest: true
594
+ status: 2
595
+ actions:
596
+ - type: remove-steps
597
+ parameters:
598
+ steps:
599
+ - POST-DERC-8-RESPONSE-STARTED
600
+
601
+ # (y) (i) Configure DERControl on DERP1
602
+ GET-DERC-9:
603
+ event:
604
+ type: GET-request-received
605
+ parameters:
606
+ endpoint: /edev/1/derp/1/derc
607
+ actions:
608
+ - type: create-der-control
609
+ parameters:
610
+ start: $(now)
611
+ duration_seconds: 300
612
+ opModLoadLimW: $(setMaxW * 0.5)
613
+ fsa_id: 1
614
+ primacy: 1
615
+ - type: enable-steps
616
+ parameters:
617
+ steps:
618
+ - POST-DERC-9-RESPONSE-STARTED
619
+ - type: remove-steps
620
+ parameters:
621
+ steps:
622
+ - GET-DERC-9
623
+
624
+ # (y) (ii) Configure DERControl on DERP6
625
+ GET-DERC-10:
626
+ event:
627
+ type: GET-request-received
628
+ parameters:
629
+ endpoint: /edev/1/derp/6/derc
630
+ actions:
631
+ - type: create-der-control
632
+ parameters:
633
+ start: $(now)
634
+ duration_seconds: 300
635
+ opModImpLimW: $(setMaxW * 0.2)
636
+ fsa_id: 2
637
+ primacy: 2
638
+ - type: enable-steps
639
+ parameters:
640
+ steps:
641
+ - POST-DERC-10-RESPONSE-STARTED
642
+ - type: remove-steps
643
+ parameters:
644
+ steps:
645
+ - GET-DERC-10
646
+
647
+ # (z, aa) Wait for Response started for DERControl 9
648
+ POST-DERC-9-RESPONSE-STARTED:
649
+ event:
650
+ type: POST-request-received
651
+ parameters:
652
+ endpoint: /edev/1/rsps/site_control/rsp
653
+ serve_request_first: true
654
+ checks:
655
+ - type: response-contents
656
+ parameters:
657
+ latest: true
658
+ status: 2
659
+ actions:
660
+ - type: enable-steps
661
+ parameters:
662
+ steps:
663
+ - GET-UPDATED-DEFAULT-DERP-1
664
+ - GET-UPDATED-DEFAULT-DERP-6
665
+ - type: remove-steps
666
+ parameters:
667
+ steps:
668
+ - POST-DERC-9-RESPONSE-STARTED
669
+
670
+ # (z, aa) Wait for Response started for DERControl 10
671
+ POST-DERC-10-RESPONSE-STARTED:
672
+ event:
673
+ type: POST-request-received
674
+ parameters:
675
+ endpoint: /edev/1/rsps/site_control/rsp
676
+ serve_request_first: true
677
+ checks:
678
+ - type: response-contents
679
+ parameters:
680
+ latest: true
681
+ status: 2
682
+ actions:
683
+ - type: remove-steps
684
+ parameters:
685
+ steps:
686
+ - POST-DERC-10-RESPONSE-STARTED
687
+
688
+ # (bb) (i) Create an updated default for DERProgram 1 at 50%
689
+ # (cc)
690
+ GET-UPDATED-DEFAULT-DERP-1:
691
+ event:
692
+ type: GET-request-received
693
+ parameters:
694
+ endpoint: /edev/1/derp/1/dderc
695
+ actions:
696
+ - type: set-default-der-control
697
+ parameters:
698
+ derp_id: 1
699
+ opModImpLimW: $(setMaxW * 0.5)
700
+ - type: remove-steps
701
+ parameters:
702
+ steps:
703
+ - GET-UPDATED-DEFAULT-DERP-1
704
+
705
+ # (bb) (ii) Create an updated default for DERProgram 6 at 20%
706
+ # (cc)
707
+ # (dd) - Also cancel active controls
708
+ GET-UPDATED-DEFAULT-DERP-6:
709
+ event:
710
+ type: GET-request-received
711
+ parameters:
712
+ endpoint: /edev/1/derp/6/dderc
713
+ actions:
714
+ - type: set-default-der-control
715
+ parameters:
716
+ derp_id: 6
717
+ opModImpLimW: $(setMaxW * 0.2)
718
+ - type: cancel-active-der-controls
719
+ parameters: {}
720
+ - type: enable-steps
721
+ parameters:
722
+ steps:
723
+ - WAIT-TEST-FINISH
724
+ - type: remove-steps
725
+ parameters:
726
+ steps:
727
+ - GET-UPDATED-DEFAULT-DERP-6
728
+
729
+ # (ee) Wait for DER to increase to 50%
730
+ WAIT-TEST-FINISH:
731
+ event:
732
+ type: wait
733
+ parameters:
734
+ duration_seconds: 60
735
+ actions:
736
+ - type: remove-steps
737
+ parameters:
738
+ steps:
739
+ - WAIT-TEST-FINISH
740
+ - type: finish-test
741
+ parameters: {}