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,376 @@
1
+ Description: Variable Generation Limit
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
+ - type: create-der-program
26
+ parameters:
27
+ primacy: 0
28
+
29
+ checks:
30
+ - type: end-device-contents
31
+ parameters: {}
32
+
33
+ Steps:
34
+
35
+ # (precondition) - Create a DERControl - set to 200% of max
36
+ GET-DERC-1:
37
+ event:
38
+ type: GET-request-received
39
+ parameters:
40
+ endpoint: /edev/1/derp/1/derc
41
+ actions:
42
+ - type: create-der-control
43
+ parameters:
44
+ start: $(now)
45
+ duration_seconds: 60
46
+ opModGenLimW: $(setMaxW * 2)
47
+ - type: enable-steps
48
+ parameters:
49
+ steps:
50
+ - GET-DERC-2
51
+ - type: remove-steps
52
+ parameters:
53
+ steps:
54
+ - GET-DERC-1
55
+
56
+ # (a,b) - Create a DERControl - set to 100% of max
57
+ GET-DERC-2:
58
+ event:
59
+ type: GET-request-received
60
+ parameters:
61
+ endpoint: /edev/1/derp/1/derc
62
+ actions:
63
+ - type: create-der-control
64
+ parameters:
65
+ start: $(now)
66
+ duration_seconds: 60
67
+ opModGenLimW: $(setMaxW)
68
+ - type: enable-steps
69
+ parameters:
70
+ steps:
71
+ - POST-DERC-2-RESPONSE-RECEIVED
72
+ - POST-DERC-2-RESPONSE-STARTED
73
+ - POST-DERC-2-RESPONSE-COMPLETE
74
+ - type: remove-steps
75
+ parameters:
76
+ steps:
77
+ - GET-DERC-2
78
+
79
+ # (b) Wait for "received" response from DERC-2
80
+ POST-DERC-2-RESPONSE-RECEIVED:
81
+ event:
82
+ type: POST-request-received
83
+ parameters:
84
+ endpoint: /edev/1/rsps/site_control/rsp
85
+ serve_request_first: true
86
+ checks:
87
+ - type: response-contents
88
+ parameters:
89
+ latest: true
90
+ status: 1
91
+ actions:
92
+ - type: remove-steps
93
+ parameters:
94
+ steps:
95
+ - POST-DERC-2-RESPONSE-RECEIVED
96
+
97
+ # (b) Wait for "Started" response from DERC-2
98
+ POST-DERC-2-RESPONSE-STARTED:
99
+ event:
100
+ type: POST-request-received
101
+ parameters:
102
+ endpoint: /edev/1/rsps/site_control/rsp
103
+ serve_request_first: true
104
+ checks:
105
+ - type: response-contents
106
+ parameters:
107
+ latest: true
108
+ status: 2
109
+ actions:
110
+ - type: remove-steps
111
+ parameters:
112
+ steps:
113
+ - POST-DERC-2-RESPONSE-STARTED
114
+
115
+ # (b) Wait for "complete" response from DERC-2 - this will trigger the injection of the next control
116
+ POST-DERC-2-RESPONSE-COMPLETE:
117
+ event:
118
+ type: POST-request-received
119
+ parameters:
120
+ endpoint: /edev/1/rsps/site_control/rsp
121
+ serve_request_first: true
122
+ checks:
123
+ - type: response-contents
124
+ parameters:
125
+ latest: true
126
+ status: 3
127
+ actions:
128
+ - type: enable-steps
129
+ parameters:
130
+ steps:
131
+ - GET-DERC-3
132
+ - type: remove-steps
133
+ parameters:
134
+ steps:
135
+ - POST-DERC-2-RESPONSE-COMPLETE
136
+
137
+ # (c,d) - Create a DERControl - set to 40% of max
138
+ GET-DERC-3:
139
+ event:
140
+ type: GET-request-received
141
+ parameters:
142
+ endpoint: /edev/1/derp/1/derc
143
+ actions:
144
+ - type: create-der-control
145
+ parameters:
146
+ start: $(now)
147
+ duration_seconds: 60
148
+ opModGenLimW: $(setMaxW * 0.4)
149
+ - type: enable-steps
150
+ parameters:
151
+ steps:
152
+ - POST-DERC-3-RESPONSE-RECEIVED
153
+ - POST-DERC-3-RESPONSE-STARTED
154
+ - POST-DERC-3-RESPONSE-COMPLETE
155
+ - type: remove-steps
156
+ parameters:
157
+ steps:
158
+ - GET-DERC-3
159
+
160
+ # (b) Wait for "received" response from DERC-3
161
+ POST-DERC-3-RESPONSE-RECEIVED:
162
+ event:
163
+ type: POST-request-received
164
+ parameters:
165
+ endpoint: /edev/1/rsps/site_control/rsp
166
+ serve_request_first: true
167
+ checks:
168
+ - type: response-contents
169
+ parameters:
170
+ latest: true
171
+ status: 1
172
+ actions:
173
+ - type: remove-steps
174
+ parameters:
175
+ steps:
176
+ - POST-DERC-3-RESPONSE-RECEIVED
177
+
178
+ # (b) Wait for "Started" response from DERC-3
179
+ POST-DERC-3-RESPONSE-STARTED:
180
+ event:
181
+ type: POST-request-received
182
+ parameters:
183
+ endpoint: /edev/1/rsps/site_control/rsp
184
+ serve_request_first: true
185
+ checks:
186
+ - type: response-contents
187
+ parameters:
188
+ latest: true
189
+ status: 2
190
+ actions:
191
+ - type: remove-steps
192
+ parameters:
193
+ steps:
194
+ - POST-DERC-3-RESPONSE-STARTED
195
+
196
+ # (b) Wait for "complete" response from DERC-3
197
+ POST-DERC-3-RESPONSE-COMPLETE:
198
+ event:
199
+ type: POST-request-received
200
+ parameters:
201
+ endpoint: /edev/1/rsps/site_control/rsp
202
+ serve_request_first: true
203
+ checks:
204
+ - type: response-contents
205
+ parameters:
206
+ latest: true
207
+ status: 3
208
+ actions:
209
+ - type: enable-steps
210
+ parameters:
211
+ steps:
212
+ - GET-DERC-4
213
+ - type: remove-steps
214
+ parameters:
215
+ steps:
216
+ - POST-DERC-3-RESPONSE-COMPLETE
217
+
218
+ # (e, f) - Create a DERControl - set to 25% of max
219
+ GET-DERC-4:
220
+ event:
221
+ type: GET-request-received
222
+ parameters:
223
+ endpoint: /edev/1/derp/1/derc
224
+ actions:
225
+ - type: create-der-control
226
+ parameters:
227
+ start: $(now)
228
+ duration_seconds: 60
229
+ opModGenLimW: $(setMaxW * 0.25)
230
+ - type: enable-steps
231
+ parameters:
232
+ steps:
233
+ - POST-DERC-4-RESPONSE-RECEIVED
234
+ - POST-DERC-4-RESPONSE-STARTED
235
+ - POST-DERC-4-RESPONSE-COMPLETE
236
+ - type: remove-steps
237
+ parameters:
238
+ steps:
239
+ - GET-DERC-4
240
+
241
+ # (f) Wait for "received" response from DERC-4
242
+ POST-DERC-4-RESPONSE-RECEIVED:
243
+ event:
244
+ type: POST-request-received
245
+ parameters:
246
+ endpoint: /edev/1/rsps/site_control/rsp
247
+ serve_request_first: true
248
+ checks:
249
+ - type: response-contents
250
+ parameters:
251
+ latest: true
252
+ status: 1
253
+ actions:
254
+ - type: remove-steps
255
+ parameters:
256
+ steps:
257
+ - POST-DERC-4-RESPONSE-RECEIVED
258
+
259
+ # (f) Wait for "Started" response from DERC-4
260
+ POST-DERC-4-RESPONSE-STARTED:
261
+ event:
262
+ type: POST-request-received
263
+ parameters:
264
+ endpoint: /edev/1/rsps/site_control/rsp
265
+ serve_request_first: true
266
+ checks:
267
+ - type: response-contents
268
+ parameters:
269
+ latest: true
270
+ status: 2
271
+ actions:
272
+ - type: remove-steps
273
+ parameters:
274
+ steps:
275
+ - POST-DERC-4-RESPONSE-STARTED
276
+
277
+ # (f) Wait for "complete" response from DERC-4
278
+ POST-DERC-4-RESPONSE-COMPLETE:
279
+ event:
280
+ type: POST-request-received
281
+ parameters:
282
+ endpoint: /edev/1/rsps/site_control/rsp
283
+ serve_request_first: true
284
+ checks:
285
+ - type: response-contents
286
+ parameters:
287
+ latest: true
288
+ status: 3
289
+ actions:
290
+ - type: enable-steps
291
+ parameters:
292
+ steps:
293
+ - GET-DERC-5
294
+ - type: remove-steps
295
+ parameters:
296
+ steps:
297
+ - POST-DERC-4-RESPONSE-COMPLETE
298
+
299
+ # (g, h) - Create a DERControl - set to 0% of max
300
+ GET-DERC-5:
301
+ event:
302
+ type: GET-request-received
303
+ parameters:
304
+ endpoint: /edev/1/derp/1/derc
305
+ actions:
306
+ - type: create-der-control
307
+ parameters:
308
+ start: $(now)
309
+ duration_seconds: 60
310
+ opModGenLimW: 0
311
+ - type: enable-steps
312
+ parameters:
313
+ steps:
314
+ - POST-DERC-5-RESPONSE-RECEIVED
315
+ - POST-DERC-5-RESPONSE-STARTED
316
+ - POST-DERC-5-RESPONSE-COMPLETE
317
+ - type: remove-steps
318
+ parameters:
319
+ steps:
320
+ - GET-DERC-5
321
+
322
+ # (h) Wait for "received" response from DERC-5
323
+ POST-DERC-5-RESPONSE-RECEIVED:
324
+ event:
325
+ type: POST-request-received
326
+ parameters:
327
+ endpoint: /edev/1/rsps/site_control/rsp
328
+ serve_request_first: true
329
+ checks:
330
+ - type: response-contents
331
+ parameters:
332
+ latest: true
333
+ status: 1
334
+ actions:
335
+ - type: remove-steps
336
+ parameters:
337
+ steps:
338
+ - POST-DERC-5-RESPONSE-RECEIVED
339
+
340
+ # (h) Wait for "Started" response from DERC-5
341
+ POST-DERC-5-RESPONSE-STARTED:
342
+ event:
343
+ type: POST-request-received
344
+ parameters:
345
+ endpoint: /edev/1/rsps/site_control/rsp
346
+ serve_request_first: true
347
+ checks:
348
+ - type: response-contents
349
+ parameters:
350
+ latest: true
351
+ status: 2
352
+ actions:
353
+ - type: remove-steps
354
+ parameters:
355
+ steps:
356
+ - POST-DERC-5-RESPONSE-STARTED
357
+
358
+ # (f) Wait for "complete" response from DERC-5
359
+ POST-DERC-5-RESPONSE-COMPLETE:
360
+ event:
361
+ type: POST-request-received
362
+ parameters:
363
+ endpoint: /edev/1/rsps/site_control/rsp
364
+ serve_request_first: true
365
+ checks:
366
+ - type: response-contents
367
+ parameters:
368
+ latest: true
369
+ status: 3
370
+ actions:
371
+ - type: remove-steps
372
+ parameters:
373
+ steps:
374
+ - POST-DERC-5-RESPONSE-COMPLETE
375
+ - type: finish-test
376
+ parameters: {}
@@ -0,0 +1,70 @@
1
+ Description: Tracking export-limit through variable load
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
+ checks:
26
+ - type: end-device-contents
27
+ parameters: {}
28
+ - type: der-settings-contents
29
+ parameters: {}
30
+ actions:
31
+ - type: create-der-control
32
+ parameters:
33
+ start: $(now)
34
+ duration_seconds: 60
35
+ opModExpLimW: $(setMaxW * 2)
36
+ - type: create-der-control
37
+ parameters:
38
+ start: $(now + '1 minute')
39
+ duration_seconds: 420
40
+ opModExpLimW: $(setMaxW * 0.2)
41
+ instructions:
42
+ - Connect a test load electrically in parallel with the DER.
43
+ - Set the load to consume 0W.
44
+
45
+ Steps:
46
+
47
+ # This test is purely following a sequence of DERControls. It's expected that the following events occurs out of band:
48
+ # at t=0 - Test load is consuming 0W
49
+ # at t=120s - Test load is consuming 20% of setMaxW
50
+ # at t=240s - Test load is consuming 10% of setMaxW
51
+ # at t=360s - Test load is consuming 0W
52
+ #
53
+ # Validation MUST be performed by power meter to ensure that the DER is adjusting its power in response to changing
54
+ # loads
55
+ WAIT-TEST-END:
56
+ instructions:
57
+ - At t=120s, set the load to consume 20% of the DER's rated active power.
58
+ - At t=240s, set the load to consume 10% of the DER's rated active power.
59
+ - At t=360s, set the load to consume 0W.
60
+ event:
61
+ type: wait
62
+ parameters:
63
+ duration_seconds: 500
64
+ actions:
65
+ - type: remove-steps
66
+ parameters:
67
+ steps:
68
+ - WAIT-TEST-END
69
+ - type: finish-test
70
+ parameters: {}
@@ -0,0 +1,73 @@
1
+ Description: Active Control – Import Limit
2
+ Category: Control
3
+ Classes:
4
+ - 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
+ checks:
26
+ - type: end-device-contents
27
+ parameters: {}
28
+ - type: der-settings-contents
29
+ parameters: {}
30
+ actions:
31
+ - type: create-der-control
32
+ parameters:
33
+ start: $(now)
34
+ duration_seconds: 300
35
+ opModImpLimW: $(setMaxW * 2)
36
+ instructions:
37
+ - DER shall be importing at the connection point with at least 50% of its active power rating.
38
+
39
+ Steps:
40
+ # (precondition)
41
+ GET-DERC-INITIAL:
42
+ event:
43
+ type: GET-request-received
44
+ parameters:
45
+ endpoint: /edev/1/derp/1/derc
46
+ actions:
47
+ - type: enable-steps
48
+ parameters:
49
+ steps:
50
+ - GET-DERC-ZERO
51
+ - type: remove-steps
52
+ parameters:
53
+ steps:
54
+ - GET-DERC-INITIAL
55
+
56
+ # (a, b, c)
57
+ GET-DERC-ZERO:
58
+ event:
59
+ type: GET-request-received
60
+ parameters:
61
+ endpoint: /edev/1/derp/1/derc
62
+ actions:
63
+ - type: create-der-control
64
+ parameters:
65
+ start: $(now)
66
+ duration_seconds: 300
67
+ opModImpLimW: 0
68
+ - type: remove-steps
69
+ parameters:
70
+ steps:
71
+ - GET-DERC-ZERO
72
+
73
+
@@ -0,0 +1,73 @@
1
+ Description: Active Control – Load Limit
2
+ Category: Control
3
+ Classes:
4
+ - 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
+ checks:
26
+ - type: end-device-contents
27
+ parameters: {}
28
+ - type: der-settings-contents
29
+ parameters: {}
30
+ actions:
31
+ - type: create-der-control
32
+ parameters:
33
+ start: $(now)
34
+ duration_seconds: 300
35
+ opModLoadLimW: $(setMaxW * 2)
36
+ instructions:
37
+ - DER shall be importing at the connection point with at least 50% of its active power rating.
38
+
39
+ Steps:
40
+ # (precondition)
41
+ GET-DERC-INITIAL:
42
+ event:
43
+ type: GET-request-received
44
+ parameters:
45
+ endpoint: /edev/1/derp/1/derc
46
+ actions:
47
+ - type: enable-steps
48
+ parameters:
49
+ steps:
50
+ - GET-DERC-ZERO
51
+ - type: remove-steps
52
+ parameters:
53
+ steps:
54
+ - GET-DERC-INITIAL
55
+
56
+ # (a, b, c)
57
+ GET-DERC-ZERO:
58
+ event:
59
+ type: GET-request-received
60
+ parameters:
61
+ endpoint: /edev/1/derp/1/derc
62
+ actions:
63
+ - type: create-der-control
64
+ parameters:
65
+ start: $(now)
66
+ duration_seconds: 300
67
+ opModLoadLimW: 0
68
+ - type: remove-steps
69
+ parameters:
70
+ steps:
71
+ - GET-DERC-ZERO
72
+
73
+