wisp-schema 1.0.3 → 1.2.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,22 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "type": "object",
4
+ "action_type": "action",
5
+ "title": "Hover",
6
+ "description": "Hovers over specified element",
7
+ "properties": {
8
+ "action": {
9
+ "enum": ["hover"]
10
+ },
11
+ "target": {
12
+ "title": "Target",
13
+ "$ref": "ui_element_reference.json"
14
+ },
15
+ "version": {
16
+ "type": "string",
17
+ "title": "Version"
18
+ }
19
+ },
20
+ "additionalProperties": false,
21
+ "required": ["action", "target", "version"]
22
+ }
@@ -0,0 +1,19 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "type": "object",
4
+ "action_type": "assertion",
5
+ "title": "Loaded",
6
+ "description": "Checks if specified page has loaded",
7
+ "properties": {
8
+ "action": {
9
+ "enum": ["loaded"]
10
+ },
11
+ "page": {"title": "Page", "type": "string"},
12
+ "version": {
13
+ "type": "string",
14
+ "title": "Version"
15
+ }
16
+ },
17
+ "additionalProperties": false,
18
+ "required": ["action", "page", "version"]
19
+ }
@@ -0,0 +1,20 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "type": "object",
4
+ "action_type": "action",
5
+ "title": "Navigate",
6
+ "description": "Navigates to specified URL",
7
+ "properties": {
8
+ "action": {
9
+ "enum": ["navigate"]
10
+ },
11
+ "url": {"title": "URL", "type": "string"},
12
+ "tab": {"title": "Tab", "type": "string", "enum": ["current", "new", "incognito"]},
13
+ "version": {
14
+ "type": "string",
15
+ "title": "Version"
16
+ }
17
+ },
18
+ "additionalProperties": false,
19
+ "required": ["action", "url", "tab", "version"]
20
+ }
@@ -0,0 +1,27 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "type": "object",
4
+ "action_type": "assertion",
5
+ "title": "Observe",
6
+ "description": "Checks if element of the UI is visible or not",
7
+ "properties": {
8
+ "action": {
9
+ "enum": ["observe"]
10
+ },
11
+ "object": {
12
+ "title": "Object",
13
+ "$ref": "ui_element_reference.json"
14
+ },
15
+ "visibility": {
16
+ "title": "Is the element visible?",
17
+ "type": "boolean",
18
+ "enum": [true, false]
19
+ },
20
+ "version": {
21
+ "type": "string",
22
+ "title": "Version"
23
+ }
24
+ },
25
+ "additionalProperties": false,
26
+ "required": ["action", "object", "visibility", "version"]
27
+ }
@@ -0,0 +1,18 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "type": "object",
4
+ "action_type": "action",
5
+ "title": "refresh",
6
+ "description": "refreshes the webpage",
7
+ "properties": {
8
+ "action": {
9
+ "enum": ["refresh"]
10
+ },
11
+ "version": {
12
+ "type": "string",
13
+ "title": "Version"
14
+ }
15
+ },
16
+ "additionalproperties": false,
17
+ "required": ["action", "version"]
18
+ }
@@ -0,0 +1,23 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "type": "object",
4
+ "action_type": "action",
5
+ "title": "Scroll",
6
+ "description": "Scrolls the page into specified direction until target is reached",
7
+ "properties": {
8
+ "action": {
9
+ "enum": ["scroll"]
10
+ },
11
+ "direction": {"title": "Direction", "type": "string", "enum": ["up", "down", "left", "right"]},
12
+ "target": {
13
+ "title": "Target",
14
+ "$ref": "ui_element_reference.json"
15
+ },
16
+ "version": {
17
+ "type": "string",
18
+ "title": "Version"
19
+ }
20
+ },
21
+ "additionalProperties": false,
22
+ "required": ["action", "direction", "target", "version"]
23
+ }
@@ -0,0 +1,26 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "type": "object",
4
+ "action_type": "action",
5
+ "title": "Select",
6
+ "description": "Selects specified item from the dropdown",
7
+ "properties": {
8
+ "action": {
9
+ "enum": ["select"]
10
+ },
11
+ "target": {
12
+ "title": "Target",
13
+ "$ref": "ui_element_reference.json"
14
+ },
15
+ "option": {
16
+ "title": "Option",
17
+ "$ref": "ui_element_reference.json"
18
+ },
19
+ "version": {
20
+ "type": "string",
21
+ "title": "Version"
22
+ }
23
+ },
24
+ "additionalProperties": false,
25
+ "required": ["action", "target", "option", "version"]
26
+ }
@@ -0,0 +1,20 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "type": "object",
4
+ "action_type": "action",
5
+ "title": "Press Key",
6
+ "description": "Press specified key or key combination.",
7
+ "properties": {
8
+ "action": {
9
+ "enum": ["send_key"]
10
+ },
11
+ "key": {"title": "Key", "type": "string"},
12
+ "modifier": {"title": "Modifier", "type": "string"},
13
+ "version": {
14
+ "type": "string",
15
+ "title": "Version"
16
+ }
17
+ },
18
+ "additionalProperties": false,
19
+ "required": ["action", "key", "version"]
20
+ }
@@ -0,0 +1,19 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "type": "object",
4
+ "action_type": "assertion",
5
+ "title": "Tester Confirmation",
6
+ "description": "Ask a question to confirm a behavior",
7
+ "properties": {
8
+ "action": {
9
+ "enum": ["tester_confirmation"]
10
+ },
11
+ "confirmation": {"title": "confirmation", "type": "string"},
12
+ "version": {
13
+ "type": "string",
14
+ "title": "Version"
15
+ }
16
+ },
17
+ "additionalProperties": false,
18
+ "required": ["action", "confirmation", "version"]
19
+ }
@@ -0,0 +1,19 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "type": "object",
4
+ "action_type": "action",
5
+ "title": "Tester Instruction",
6
+ "description": "An action for a human to complete",
7
+ "properties": {
8
+ "action": {
9
+ "enum": ["tester_instruction"]
10
+ },
11
+ "instruction": {"title": "Instruction", "type": "string"},
12
+ "version": {
13
+ "type": "string",
14
+ "title": "Version"
15
+ }
16
+ },
17
+ "additionalProperties": false,
18
+ "required": ["action", "instruction", "version"]
19
+ }
@@ -0,0 +1,19 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "type": "object",
4
+ "action_type": "action",
5
+ "title": "Type",
6
+ "description": "Types in specified text",
7
+ "properties": {
8
+ "action": {
9
+ "enum": ["type"]
10
+ },
11
+ "text": {"title": "Text", "type": "string"},
12
+ "version": {
13
+ "type": "string",
14
+ "title": "Version"
15
+ }
16
+ },
17
+ "additionalProperties": false,
18
+ "required": ["action", "text", "version"]
19
+ }
@@ -0,0 +1,14 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "type": "object",
4
+ "title": "UI Element Reference",
5
+ "description": "A UI Element stored in the database",
6
+ "properties": {
7
+ "type": {
8
+ "enum": ["ui_element_reference"]
9
+ },
10
+ "id": {"title": "UI Element ID", "type": "integer"}
11
+ },
12
+ "additionalProperties": false,
13
+ "required": ["type", "id"]
14
+ }
@@ -0,0 +1,20 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "type": "object",
4
+ "action_type": "action",
5
+ "title": "Wait",
6
+ "description": "Waits for a number of seconds",
7
+ "properties": {
8
+ "action": {
9
+ "enum": ["wait"]
10
+ },
11
+ "embedded_test_id": {"title": "Embedded Test ID", "type": "integer"},
12
+ "seconds": {"title": "seconds", "type": "integer"},
13
+ "version": {
14
+ "type": "string",
15
+ "title": "Version"
16
+ }
17
+ },
18
+ "additionalProperties": false,
19
+ "required": ["action", "seconds", "version"]
20
+ }
data/wisp.json CHANGED
@@ -67,56 +67,56 @@
67
67
  {"$ref": "#/definitions/type"},
68
68
  {"$ref": "#/definitions/send_key"},
69
69
  {"$ref": "#/definitions/hover"},
70
- {"$ref": "#/definitions/dropdown_select"},
71
- {"$ref": "#/definitions/checkbox_check"},
72
- {"$ref": "#/definitions/checkbox_uncheck"},
70
+ {"$ref": "#/definitions/select"},
73
71
  {"$ref": "#/definitions/refresh"},
74
72
  {"$ref": "#/definitions/navigate"},
75
- {"$ref": "#/definitions/navigate_new_tab"},
76
- {"$ref": "#/definitions/navigate_incognito_tab"},
77
73
  {"$ref": "#/definitions/close_tab"},
78
74
  {"$ref": "#/definitions/scroll"},
79
- {"$ref": "#/definitions/sleep"},
75
+ {"$ref": "#/definitions/wait"},
80
76
  {"$ref": "#/definitions/drag_and_drop"},
81
- {"$ref": "#/definitions/click_and_hold"},
82
- {"$ref": "#/definitions/plain_language"},
83
- {"$ref": "#/definitions/custom_action"},
84
- {"$ref": "#/definitions/see"},
85
- {"$ref": "#/definitions/disappear"},
77
+ {"$ref": "#/definitions/tester_instruction"},
78
+ {"$ref": "#/definitions/embedded_test"},
79
+ {"$ref": "#/definitions/observe"},
86
80
  {"$ref": "#/definitions/loaded"},
87
- {"$ref": "#/definitions/plain_language_assertion"}
81
+ {"$ref": "#/definitions/tester_confirmation"}
88
82
  ]
89
83
  },
90
84
  "click": {
91
85
  "type": "object",
86
+ "action_type": "action",
92
87
  "title": "Click",
93
88
  "description": "Clicks on the UI element",
94
89
  "properties": {
95
90
  "action": {
96
91
  "enum": ["click"]
97
92
  },
98
- "custom_action_id": {"title": "Custom Action ID", "type": "integer"},
93
+ "embedded_test_id": {"title": "Embedded Test ID", "type": "integer"},
99
94
  "target": {
100
95
  "title": "Target",
101
- "$ref": "#/definitions/noun"
96
+ "$ref": "#/definitions/noun",
97
+ "type": "ui_element_reference"
102
98
  },
103
- "button": {"title": "Mouse Button", "type": "string", "enum": ["left", "middle", "right"]}
99
+ "button": {"title": "Mouse Button", "type": "string", "enum": ["left", "middle", "right"]},
100
+ "hold": {"title": "And Hold", "type": "boolean"},
101
+ "hold_seconds": {"title": "Hold seconds", "type": "integer"}
104
102
  },
105
103
  "additionalProperties": false,
106
- "required": ["action", "target"]
104
+ "required": ["action", "target", "button", "hold"]
107
105
  },
108
106
  "double_click": {
109
107
  "type": "object",
108
+ "action_type": "action",
110
109
  "title": "Double Click",
111
110
  "description": "Double-clicks on the UI element",
112
111
  "properties": {
113
112
  "action": {
114
113
  "enum": ["double_click"]
115
114
  },
116
- "custom_action_id": {"title": "Custom Action ID", "type": "integer"},
115
+ "embedded_test_id": {"title": "Embedded Test ID", "type": "integer"},
117
116
  "target": {
118
117
  "title": "Target",
119
- "$ref": "#/definitions/noun"
118
+ "$ref": "#/definitions/noun",
119
+ "type": "ui_element_reference"
120
120
  }
121
121
  },
122
122
  "additionalProperties": false,
@@ -124,47 +124,49 @@
124
124
  },
125
125
  "fill": {
126
126
  "type": "object",
127
+ "action_type": "action",
127
128
  "title": "Fill",
128
129
  "description": "Fills the text field with specified content",
129
130
  "properties": {
130
131
  "action": {
131
132
  "enum": ["fill"]
132
133
  },
133
- "custom_action_id": {"title": "Custom Action ID", "type": "integer"},
134
+ "embedded_test_id": {"title": "Embedded Test ID", "type": "integer"},
134
135
  "target": {
135
136
  "title": "Target",
136
- "$ref": "#/definitions/noun"
137
+ "$ref": "#/definitions/noun",
138
+ "type": "ui_element_reference"
137
139
  },
138
- "text": {"title": "Text", "type": "string"},
139
- "method": { "title": "Text entry method", "type": "string", "enum": ["pasting", "typing"] }
140
+ "text": {"title": "Text", "type": "string"}
140
141
  },
141
142
  "additionalProperties": false,
142
143
  "required": ["action", "target", "text"]
143
144
  },
144
145
  "type": {
145
146
  "type": "object",
147
+ "action_type": "action",
146
148
  "title": "Type",
147
149
  "description": "Types in specified text",
148
150
  "properties": {
149
151
  "action": {
150
152
  "enum": ["type"]
151
153
  },
152
- "custom_action_id": {"title": "Custom Action ID", "type": "integer"},
153
- "text": {"title": "Text", "type": "string"},
154
- "method": { "title": "Text entry method", "type": "string", "enum": ["pasting", "typing"] }
154
+ "embedded_test_id": {"title": "Embedded Test ID", "type": "integer"},
155
+ "text": {"title": "Text", "type": "string"}
155
156
  },
156
157
  "additionalProperties": false,
157
158
  "required": ["action", "text"]
158
159
  },
159
160
  "send_key": {
160
161
  "type": "object",
162
+ "action_type": "action",
161
163
  "title": "Press Key",
162
164
  "description": "Press specified key or key combination.",
163
165
  "properties": {
164
166
  "action": {
165
167
  "enum": ["send_key"]
166
168
  },
167
- "custom_action_id": {"title": "Custom Action ID", "type": "integer"},
169
+ "embedded_test_id": {"title": "Embedded Test ID", "type": "integer"},
168
170
  "key": {"title": "Key", "type": "string"},
169
171
  "modifier": {"title": "Modifier", "type": "string"}
170
172
  },
@@ -173,33 +175,37 @@
173
175
  },
174
176
  "hover": {
175
177
  "type": "object",
178
+ "action_type": "action",
176
179
  "title": "Hover",
177
180
  "description": "Hovers over specified element",
178
181
  "properties": {
179
182
  "action": {
180
183
  "enum": ["hover"]
181
184
  },
182
- "custom_action_id": {"title": "Custom Action ID", "type": "integer"},
185
+ "embedded_test_id": {"title": "Embedded Test ID", "type": "integer"},
183
186
  "target": {
184
187
  "title": "Target",
185
- "$ref": "#/definitions/noun"
188
+ "$ref": "#/definitions/noun",
189
+ "type": "ui_element_reference"
186
190
  }
187
191
  },
188
192
  "additionalProperties": false,
189
193
  "required": ["action", "target"]
190
194
  },
191
- "dropdown_select": {
195
+ "select": {
192
196
  "type": "object",
193
- "title": "Dropdown Select",
197
+ "action_type": "action",
198
+ "title": "Select",
194
199
  "description": "Selects specified item from the dropdown",
195
200
  "properties": {
196
201
  "action": {
197
- "enum": ["dropdown_select"]
202
+ "enum": ["select"]
198
203
  },
199
- "custom_action_id": {"title": "Custom Action ID", "type": "integer"},
204
+ "embedded_test_id": {"title": "Embedded Test ID", "type": "integer"},
200
205
  "target": {
201
206
  "title": "Target",
202
- "$ref": "#/definitions/noun"
207
+ "$ref": "#/definitions/noun",
208
+ "type": "ui_element_reference"
203
209
  },
204
210
  "option": {
205
211
  "title": "Option",
@@ -209,135 +215,80 @@
209
215
  "additionalProperties": false,
210
216
  "required": ["action", "target", "option"]
211
217
  },
212
- "checkbox_check": {
213
- "type": "object",
214
- "title": "Checkbox Check",
215
- "description": "Checks specified checkbox",
216
- "properties": {
217
- "action": {
218
- "enum": ["checkbox_check"]
219
- },
220
- "custom_action_id": {"title": "Custom Action ID", "type": "integer"},
221
- "target": {
222
- "title": "Target",
223
- "$ref": "#/definitions/noun"
224
- }
225
- },
226
- "additionalProperties": false,
227
- "required": ["action", "target"]
228
- },
229
- "checkbox_uncheck": {
230
- "type": "object",
231
- "title": "Checkbox Uncheck",
232
- "description": "Unchecks specified checkbox",
233
- "properties": {
234
- "action": {
235
- "enum": ["checkbox_uncheck"]
236
- },
237
- "custom_action_id": {"title": "Custom Action ID", "type": "integer"},
238
- "target": {
239
- "title": "Target",
240
- "$ref": "#/definitions/noun"
241
- }
242
- },
243
- "additionalProperties": false,
244
- "required": ["action", "target"]
245
- },
246
218
  "refresh": {
247
219
  "type": "object",
220
+ "action_type": "action",
248
221
  "title": "Refresh",
249
222
  "description": "Refreshes the webpage",
250
223
  "properties": {
251
224
  "action": {
252
225
  "enum": ["refresh"]
253
226
  },
254
- "custom_action_id": {"title": "Custom Action ID", "type": "integer"}
227
+ "embedded_test_id": {"title": "Embedded Test ID", "type": "integer"}
255
228
  },
256
229
  "additionalProperties": false,
257
230
  "required": ["action"]
258
231
  },
259
232
  "navigate": {
260
233
  "type": "object",
234
+ "action_type": "action",
261
235
  "title": "Navigate",
262
236
  "description": "Navigates to specified URL",
263
237
  "properties": {
264
238
  "action": {
265
239
  "enum": ["navigate"]
266
240
  },
267
- "custom_action_id": {"title": "Custom Action ID", "type": "integer"},
268
- "url": {"title": "URL", "type": "string"}
269
- },
270
- "additionalProperties": false,
271
- "required": ["action", "url"]
272
- },
273
- "navigate_new_tab": {
274
- "type": "object",
275
- "title": "Navigate - New Tab",
276
- "description": "Navigates to specified URL in a new tab",
277
- "properties": {
278
- "action": {
279
- "enum": ["navigate_new_tab"]
280
- },
281
- "custom_action_id": {"title": "Custom Action ID", "type": "integer"},
282
- "url": {"title": "URL", "type": "string"}
283
- },
284
- "additionalProperties": false,
285
- "required": ["action", "url"]
286
- },
287
- "navigate_incognito_tab": {
288
- "type": "object",
289
- "title": "Navigate - Incognito Tab",
290
- "description": "Navigates to specified URL in a new incognito tab",
291
- "properties": {
292
- "action": {
293
- "enum": ["navigate_incognito_tab"]
294
- },
295
- "custom_action_id": {"title": "Custom Action ID", "type": "integer"},
296
- "url": {"title": "URL", "type": "string"}
241
+ "embedded_test_id": {"title": "Embedded Test ID", "type": "integer"},
242
+ "url": {"title": "URL", "type": "string"},
243
+ "tab": {"title": "Tab", "type": "string", "enum": ["current", "new", "incognito"]}
297
244
  },
298
245
  "additionalProperties": false,
299
- "required": ["action", "url"]
246
+ "required": ["action", "url", "tab"]
300
247
  },
301
248
  "close_tab": {
302
249
  "type": "object",
250
+ "action_type": "action",
303
251
  "title": "Close Tab",
304
252
  "description": "Closes current browser tab",
305
253
  "properties": {
306
254
  "action": {
307
255
  "enum": ["close_tab"]
308
256
  },
309
- "custom_action_id": {"title": "Custom Action ID", "type": "integer"}
257
+ "embedded_test_id": {"title": "Embedded Test ID", "type": "integer"}
310
258
  },
311
259
  "additionalProperties": false,
312
260
  "required": ["action"]
313
261
  },
314
262
  "scroll": {
315
263
  "type": "object",
264
+ "action_type": "action",
316
265
  "title": "Scroll",
317
266
  "description": "Scrolls the page into specified direction until target is reached",
318
267
  "properties": {
319
268
  "action": {
320
269
  "enum": ["scroll"]
321
270
  },
322
- "custom_action_id": {"title": "Custom Action ID", "type": "integer"},
271
+ "embedded_test_id": {"title": "Embedded Test ID", "type": "integer"},
323
272
  "direction": {"title": "Direction", "type": "string", "enum": ["up", "down", "left", "right"]},
324
273
  "target": {
325
274
  "title": "Target",
326
- "$ref": "#/definitions/noun"
275
+ "$ref": "#/definitions/noun",
276
+ "type": "ui_element_reference"
327
277
  }
328
278
  },
329
279
  "additionalProperties": false,
330
280
  "required": ["action", "direction", "target"]
331
281
  },
332
- "sleep": {
282
+ "wait": {
333
283
  "type": "object",
334
- "title": "Sleep",
284
+ "action_type": "action",
285
+ "title": "Wait",
335
286
  "description": "Waits for a number of seconds",
336
287
  "properties": {
337
288
  "action": {
338
- "enum": ["sleep"]
289
+ "enum": ["wait"]
339
290
  },
340
- "custom_action_id": {"title": "Custom Action ID", "type": "integer"},
291
+ "embedded_test_id": {"title": "Embedded Test ID", "type": "integer"},
341
292
  "seconds": {"title": "seconds", "type": "integer"}
342
293
  },
343
294
  "additionalProperties": false,
@@ -345,50 +296,35 @@
345
296
  },
346
297
  "drag_and_drop": {
347
298
  "type": "object",
299
+ "action_type": "action",
348
300
  "title": "Drag and drop",
349
301
  "description": "Drag and drop",
350
302
  "properties": {
351
303
  "action": {
352
304
  "enum": ["drag_and_drop"]
353
305
  },
354
- "custom_action_id": {"title": "Custom Action ID", "type": "integer"},
306
+ "embedded_test_id": {"title": "Embedded Test ID", "type": "integer"},
355
307
  "object": {
356
308
  "title": "Object",
357
309
  "$ref": "#/definitions/noun"
358
310
  },
359
311
  "target": {
360
312
  "title": "Target",
361
- "$ref": "#/definitions/noun"
313
+ "$ref": "#/definitions/noun",
314
+ "type": "ui_element_reference"
362
315
  }
363
316
  },
364
317
  "additionalProperties": false,
365
318
  "required": ["action", "target", "object"]
366
319
  },
367
- "click_and_hold": {
320
+ "embedded_test": {
368
321
  "type": "object",
369
- "title": "Click and Hold",
370
- "description": "Clicks and holds the left mouse button over object for a number of seconds",
322
+ "action_type": "embedded_test",
323
+ "title": "Embedded Test",
324
+ "description": "Embeds a Test",
371
325
  "properties": {
372
326
  "action": {
373
- "enum": ["click_and_hold"]
374
- },
375
- "custom_action_id": {"title": "Custom Action ID", "type": "integer"},
376
- "target": {
377
- "title": "Target",
378
- "$ref": "#/definitions/noun"
379
- },
380
- "seconds": {"title": "Seconds", "type": "integer"}
381
- },
382
- "additionalProperties": false,
383
- "required": ["action", "target", "seconds"]
384
- },
385
- "custom_action": {
386
- "type": "object",
387
- "title": "Custom Action",
388
- "description": "Reusable custom action",
389
- "properties": {
390
- "action": {
391
- "enum": ["custom_action"]
327
+ "enum": ["embedded_test"]
392
328
  },
393
329
  "test_id": {
394
330
  "title": "Test ID",
@@ -398,81 +334,73 @@
398
334
  "additionalProperties": false,
399
335
  "required": ["action", "test_id"]
400
336
  },
401
- "plain_language": {
337
+ "tester_instruction": {
402
338
  "type": "object",
403
- "title": "Plain Language",
404
- "description": "Allows to fallback to english",
339
+ "action_type": "action",
340
+ "title": "Tester Instruction",
341
+ "description": "An action for a human to complete",
405
342
  "properties": {
406
343
  "action": {
407
- "enum": ["plain_language"]
344
+ "enum": ["tester_instruction"]
408
345
  },
409
- "custom_action_id": {"title": "Custom Action ID", "type": "integer"},
346
+ "embedded_test_id": {"title": "Embedded Test ID", "type": "integer"},
410
347
  "instruction": {"title": "Instruction", "type": "string"}
411
348
  },
412
349
  "additionalProperties": false,
413
350
  "required": ["action", "instruction"]
414
351
  },
415
- "see": {
352
+ "observe": {
416
353
  "type": "object",
417
- "title": "See",
418
- "description": "Checks if element of the UI is visible",
354
+ "action_type": "assertion",
355
+ "title": "Observe",
356
+ "description": "Checks if element of the UI is visible or not",
419
357
  "properties": {
420
- "assertion": {
421
- "enum": ["see"]
358
+ "action": {
359
+ "enum": ["observe"]
422
360
  },
423
- "custom_action_id": {"title": "Custom Action ID", "type": "integer"},
361
+ "embedded_test_id": {"title": "Embedded Test ID", "type": "integer"},
424
362
  "object": {
425
363
  "title": "Object",
426
364
  "$ref": "#/definitions/noun"
427
- }
428
- },
429
- "additionalProperties": false,
430
- "required": ["assertion", "object"]
431
- },
432
- "disappear": {
433
- "type": "object",
434
- "title": "Disappear",
435
- "description": "Checks if element of the UI is no longer visible",
436
- "properties": {
437
- "assertion": {
438
- "enum": ["disappear"]
439
365
  },
440
- "custom_action_id": {"title": "Custom Action ID", "type": "integer"},
441
- "object": {
442
- "title": "Object",
443
- "$ref": "#/definitions/noun"
366
+ "visibility": {
367
+ "title": "Is the element visible?",
368
+ "type": "boolean",
369
+ "enum": [true, false]
444
370
  }
445
371
  },
446
372
  "additionalProperties": false,
447
- "required": ["assertion", "object"]
373
+ "required": ["action", "object", "visibility"]
448
374
  },
449
375
  "loaded": {
450
376
  "type": "object",
377
+ "action_type": "assertion",
451
378
  "title": "Loaded",
452
379
  "description": "Checks if specified page has loaded",
453
380
  "properties": {
454
- "assertion": {
381
+ "action": {
455
382
  "enum": ["loaded"]
456
383
  },
457
- "custom_action_id": {"title": "Custom Action ID", "type": "integer"},
384
+ "embedded_test_id": {"title": "Embedded Test ID", "type": "integer"},
458
385
  "page": {"title": "Page", "type": "string"}
459
386
  },
460
387
  "additionalProperties": false,
461
- "required": ["assertion", "page"]
388
+ "required": ["action", "page"]
462
389
  },
463
- "plain_language_assertion": {
390
+ "tester_confirmation": {
464
391
  "type": "object",
465
- "title": "Plain Language Assertion",
466
- "description": "Allows to fallback to english",
392
+ "action_type": "assertion",
393
+ "title": "Tester Confirmation",
394
+ "description": "Ask a question to confirm a behavior",
467
395
  "properties": {
468
- "assertion": {
469
- "enum": ["plain_language_assertion"]
396
+ "action": {
397
+ "enum": ["tester_confirmation"]
470
398
  },
471
- "custom_action_id": {"title": "Custom Action ID", "type": "integer"},
472
- "instruction": {"title": "Instruction", "type": "string"}
399
+ "embedded_test_id": {"title": "Embedded Test ID", "type": "integer"},
400
+ "confirmation": {"title": "confirmation", "type": "string"}
473
401
  },
474
402
  "additionalProperties": false,
475
- "required": ["assertion", "instruction"]
403
+ "required": ["action", "confirmation"]
476
404
  }
477
405
  },
478
406
  "type": "object",