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