wisp-schema 1.14.0 → 1.15.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/canary-wisp.json +70 -0
- data/lib/version.rb +2 -2
- data/lib/wisp-schema.rb +11 -0
- data/stable/actions/conditional_observe.json +56 -0
- data/stable/blocks/conditional_block.json +15 -0
- data/stable/embeddings/embedded_test.json +26 -0
- data/stable/verbs.json +30 -0
- data/wisp.json +70 -0
- metadata +5 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 194d0f471fb9ec7fb6287734d98822176ac2c798a45d6bafb3143a61b2e87bc1
|
4
|
+
data.tar.gz: 12c361687b33d1c22638819d777221ab39bdefe081f1acf62e7563a045f3f42a
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: fb5dd9fdf8d0bf0b2545236c171697012ed65c810d7911e2932f9567958d64e21040b1222a96e79653ec540b6eb41e82cf26f21525ff3ad7139e93dfc77b00fb
|
7
|
+
data.tar.gz: d906c41b460d1c9891f57f356e23b130177d66c6ec9935b816197050c3d7f7362963afd4c7c77e8ddad34d9815948e41571efcc68e6a4ac3ee3fa41ab3184a26
|
data/canary-wisp.json
CHANGED
@@ -112,6 +112,7 @@
|
|
112
112
|
{"$ref": "#/definitions/ai_confirmation"},
|
113
113
|
{"$ref": "#/definitions/click"},
|
114
114
|
{"$ref": "#/definitions/comment"},
|
115
|
+
{"$ref": "#/definitions/conditional_observe"},
|
115
116
|
{"$ref": "#/definitions/double_click"},
|
116
117
|
{"$ref": "#/definitions/fill"},
|
117
118
|
{"$ref": "#/definitions/type"},
|
@@ -204,6 +205,75 @@
|
|
204
205
|
"additionalProperties": false,
|
205
206
|
"required": ["action", "text"]
|
206
207
|
},
|
208
|
+
"conditional_block": {
|
209
|
+
"type": "object",
|
210
|
+
"title": "Conditional Block",
|
211
|
+
"description": "Structure for a conditional block",
|
212
|
+
"properties": {
|
213
|
+
"id": {"title": "Conditional Block ID", "type": "integer"},
|
214
|
+
"verbs": {
|
215
|
+
"type": "array",
|
216
|
+
"title": "Verbs",
|
217
|
+
"items": {
|
218
|
+
"$ref": "#/definitions/verb"
|
219
|
+
}
|
220
|
+
}
|
221
|
+
},
|
222
|
+
"additionalProperties": false,
|
223
|
+
"required": ["verbs"]
|
224
|
+
},
|
225
|
+
"conditional_observe": {
|
226
|
+
"type": "object",
|
227
|
+
"action_type": "assertion",
|
228
|
+
"title": "Conditional Observe",
|
229
|
+
"description": "Checks if element of the UI is visible or not to decide if the test should execute conditional block or not.",
|
230
|
+
"properties": {
|
231
|
+
"action": {
|
232
|
+
"enum": ["conditional_observe"]
|
233
|
+
},
|
234
|
+
"embedded_test_id": {"title": "Embedded Test ID", "type": "integer"},
|
235
|
+
"id": {"title": "Action ID", "type": "integer"},
|
236
|
+
"job_step_id": {
|
237
|
+
"title": "The id of the action's related job step",
|
238
|
+
"type": "integer"
|
239
|
+
},
|
240
|
+
"delay_after": {"title": "Delay after in seconds", "type": "integer"},
|
241
|
+
"object": {
|
242
|
+
"title": "Object",
|
243
|
+
"$ref": "#/definitions/noun"
|
244
|
+
},
|
245
|
+
"seconds": {
|
246
|
+
"title": "seconds",
|
247
|
+
"type": "integer",
|
248
|
+
"minimum": 10,
|
249
|
+
"maximum": 3600
|
250
|
+
},
|
251
|
+
"visibility": {
|
252
|
+
"title": "Is the element visible?",
|
253
|
+
"type": "boolean",
|
254
|
+
"enum": [true, false]
|
255
|
+
},
|
256
|
+
"conditional_blocks": {
|
257
|
+
"title": "Conditional Blocks",
|
258
|
+
"type": "object",
|
259
|
+
"description": "Structure for conditional blocks",
|
260
|
+
"properties": {
|
261
|
+
"conditional_passed": {
|
262
|
+
"title": "Conditional Passed",
|
263
|
+
"$ref": "#/definitions/conditional_block"
|
264
|
+
},
|
265
|
+
"conditional_failed": {
|
266
|
+
"title": "Conditional Failed",
|
267
|
+
"$ref": "#/definitions/conditional_block"
|
268
|
+
}
|
269
|
+
},
|
270
|
+
"additionalProperties": false,
|
271
|
+
"required": ["conditional_passed"]
|
272
|
+
}
|
273
|
+
},
|
274
|
+
"additionalProperties": false,
|
275
|
+
"required": ["action", "object", "visibility", "version", "conditional_blocks"]
|
276
|
+
},
|
207
277
|
"double_click": {
|
208
278
|
"type": "object",
|
209
279
|
"action_type": "action",
|
data/lib/version.rb
CHANGED
data/lib/wisp-schema.rb
CHANGED
@@ -21,6 +21,7 @@ module Wisp
|
|
21
21
|
"click",
|
22
22
|
"close_tab",
|
23
23
|
"comment",
|
24
|
+
"conditional_observe",
|
24
25
|
"double_click",
|
25
26
|
"drag_and_drop",
|
26
27
|
"fill",
|
@@ -68,4 +69,14 @@ module Wisp
|
|
68
69
|
JSONSchemer.schema(Pathname.new(File.expand_path("../stable/actions/#{action}.json", __dir__)))
|
69
70
|
end
|
70
71
|
module_function :action_schemer
|
72
|
+
|
73
|
+
def verbs_schemer(_raw_version)
|
74
|
+
JSONSchemer.schema(Pathname.new(File.expand_path("../stable/verbs.json", __dir__)))
|
75
|
+
end
|
76
|
+
module_function :verbs_schemer
|
77
|
+
|
78
|
+
def embedded_test_schemer(_raw_version)
|
79
|
+
JSONSchemer.schema(Pathname.new(File.expand_path("../stable/embeddings/embedded_test.json", __dir__)))
|
80
|
+
end
|
81
|
+
module_function :embedded_test_schemer
|
71
82
|
end
|
@@ -0,0 +1,56 @@
|
|
1
|
+
{
|
2
|
+
"$schema": "http://json-schema.org/draft-07/schema#",
|
3
|
+
"type": "object",
|
4
|
+
"action_type": "assertion",
|
5
|
+
"title": "Conditional Observe",
|
6
|
+
"description": "Checks if element of the UI is visible or not to decide if the test should execute conditional block or not.",
|
7
|
+
"properties": {
|
8
|
+
"action": {
|
9
|
+
"enum": ["conditional_observe"]
|
10
|
+
},
|
11
|
+
"id": {"title": "Action ID", "type": "integer"},
|
12
|
+
"job_step_id": {
|
13
|
+
"title": "The id of the action's related job step",
|
14
|
+
"type": "integer"
|
15
|
+
},
|
16
|
+
"delay_after": {"title": "Delay after in seconds", "type": "integer"},
|
17
|
+
"object": {
|
18
|
+
"title": "Object",
|
19
|
+
"$ref": "ui_element_reference.json"
|
20
|
+
},
|
21
|
+
"seconds": {
|
22
|
+
"title": "seconds",
|
23
|
+
"type": "integer",
|
24
|
+
"minimum": 10,
|
25
|
+
"maximum": 3600
|
26
|
+
},
|
27
|
+
"visibility": {
|
28
|
+
"title": "Is the element visible?",
|
29
|
+
"type": "boolean",
|
30
|
+
"enum": [true, false]
|
31
|
+
},
|
32
|
+
"version": {
|
33
|
+
"type": "string",
|
34
|
+
"title": "Version"
|
35
|
+
},
|
36
|
+
"conditional_blocks": {
|
37
|
+
"title": "Conditional Blocks",
|
38
|
+
"type": "object",
|
39
|
+
"description": "Structure for conditional blocks",
|
40
|
+
"properties": {
|
41
|
+
"conditional_passed": {
|
42
|
+
"title": "Conditional Passed",
|
43
|
+
"$ref": "../blocks/conditional_block.json"
|
44
|
+
},
|
45
|
+
"conditional_failed": {
|
46
|
+
"title": "Conditional Failed",
|
47
|
+
"$ref": "../blocks/conditional_block.json"
|
48
|
+
}
|
49
|
+
},
|
50
|
+
"additionalProperties": false,
|
51
|
+
"required": ["conditional_passed"]
|
52
|
+
}
|
53
|
+
},
|
54
|
+
"additionalProperties": false,
|
55
|
+
"required": ["action", "object", "visibility", "version", "conditional_blocks"]
|
56
|
+
}
|
@@ -0,0 +1,15 @@
|
|
1
|
+
{
|
2
|
+
"$schema": "http://json-schema.org/draft-07/schema#",
|
3
|
+
"type": "object",
|
4
|
+
"title": "Conditional Block",
|
5
|
+
"description": "Structure for a conditional block",
|
6
|
+
"properties": {
|
7
|
+
"id": {"title": "Conditional Block ID", "type": "integer"},
|
8
|
+
"verbs": {
|
9
|
+
"title": "Verbs",
|
10
|
+
"$ref": "../verbs.json"
|
11
|
+
}
|
12
|
+
},
|
13
|
+
"additionalProperties": false,
|
14
|
+
"required": ["verbs"]
|
15
|
+
}
|
@@ -0,0 +1,26 @@
|
|
1
|
+
{
|
2
|
+
"$schema": "http://json-schema.org/draft-07/schema#",
|
3
|
+
"type": "object",
|
4
|
+
"action_type": "embedded_test",
|
5
|
+
"title": "Embedded Test",
|
6
|
+
"description": "Embeds a Test",
|
7
|
+
"properties": {
|
8
|
+
"action": {
|
9
|
+
"enum": ["embedded_test"]
|
10
|
+
},
|
11
|
+
"test_id": {
|
12
|
+
"title": "Test ID",
|
13
|
+
"type": "integer"
|
14
|
+
},
|
15
|
+
"id": {
|
16
|
+
"title": "Action ID",
|
17
|
+
"type": "integer"
|
18
|
+
},
|
19
|
+
"version": {
|
20
|
+
"type": "string",
|
21
|
+
"title": "Version"
|
22
|
+
}
|
23
|
+
},
|
24
|
+
"additionalProperties": false,
|
25
|
+
"required": ["action", "test_id"]
|
26
|
+
}
|
data/stable/verbs.json
ADDED
@@ -0,0 +1,30 @@
|
|
1
|
+
{
|
2
|
+
"$schema": "http://json-schema.org/draft-07/schema#",
|
3
|
+
"type": "array",
|
4
|
+
"title": "Verbs",
|
5
|
+
"items": {
|
6
|
+
"title": "Wisp Verb",
|
7
|
+
"oneOf": [
|
8
|
+
{"$ref": "actions/ai_confirmation.json"},
|
9
|
+
{"$ref": "actions/click.json"},
|
10
|
+
{"$ref": "actions/comment.json"},
|
11
|
+
{"$ref": "actions/conditional_observe.json"},
|
12
|
+
{"$ref": "actions/double_click.json"},
|
13
|
+
{"$ref": "actions/fill.json"},
|
14
|
+
{"$ref": "actions/type.json"},
|
15
|
+
{"$ref": "actions/send_key.json"},
|
16
|
+
{"$ref": "actions/hover.json"},
|
17
|
+
{"$ref": "actions/select.json"},
|
18
|
+
{"$ref": "actions/refresh.json"},
|
19
|
+
{"$ref": "actions/navigate.json"},
|
20
|
+
{"$ref": "actions/close_tab.json"},
|
21
|
+
{"$ref": "actions/scroll.json"},
|
22
|
+
{"$ref": "actions/wait.json"},
|
23
|
+
{"$ref": "actions/drag_and_drop.json"},
|
24
|
+
{"$ref": "actions/tester_instruction.json"},
|
25
|
+
{"$ref": "actions/observe.json"},
|
26
|
+
{"$ref": "actions/tester_confirmation.json"},
|
27
|
+
{"$ref": "embeddings/embedded_test.json"}
|
28
|
+
]
|
29
|
+
}
|
30
|
+
}
|
data/wisp.json
CHANGED
@@ -112,6 +112,7 @@
|
|
112
112
|
{"$ref": "#/definitions/ai_confirmation"},
|
113
113
|
{"$ref": "#/definitions/click"},
|
114
114
|
{"$ref": "#/definitions/comment"},
|
115
|
+
{"$ref": "#/definitions/conditional_observe"},
|
115
116
|
{"$ref": "#/definitions/double_click"},
|
116
117
|
{"$ref": "#/definitions/fill"},
|
117
118
|
{"$ref": "#/definitions/type"},
|
@@ -204,6 +205,75 @@
|
|
204
205
|
"additionalProperties": false,
|
205
206
|
"required": ["action", "text"]
|
206
207
|
},
|
208
|
+
"conditional_block": {
|
209
|
+
"type": "object",
|
210
|
+
"title": "Conditional Block",
|
211
|
+
"description": "Structure for a conditional block",
|
212
|
+
"properties": {
|
213
|
+
"id": {"title": "Conditional Block ID", "type": "integer"},
|
214
|
+
"verbs": {
|
215
|
+
"type": "array",
|
216
|
+
"title": "Verbs",
|
217
|
+
"items": {
|
218
|
+
"$ref": "#/definitions/verb"
|
219
|
+
}
|
220
|
+
}
|
221
|
+
},
|
222
|
+
"additionalProperties": false,
|
223
|
+
"required": ["verbs"]
|
224
|
+
},
|
225
|
+
"conditional_observe": {
|
226
|
+
"type": "object",
|
227
|
+
"action_type": "assertion",
|
228
|
+
"title": "Conditional Observe",
|
229
|
+
"description": "Checks if element of the UI is visible or not to decide if the test should execute conditional block or not.",
|
230
|
+
"properties": {
|
231
|
+
"action": {
|
232
|
+
"enum": ["conditional_observe"]
|
233
|
+
},
|
234
|
+
"embedded_test_id": {"title": "Embedded Test ID", "type": "integer"},
|
235
|
+
"id": {"title": "Action ID", "type": "integer"},
|
236
|
+
"job_step_id": {
|
237
|
+
"title": "The id of the action's related job step",
|
238
|
+
"type": "integer"
|
239
|
+
},
|
240
|
+
"delay_after": {"title": "Delay after in seconds", "type": "integer"},
|
241
|
+
"object": {
|
242
|
+
"title": "Object",
|
243
|
+
"$ref": "#/definitions/noun"
|
244
|
+
},
|
245
|
+
"seconds": {
|
246
|
+
"title": "seconds",
|
247
|
+
"type": "integer",
|
248
|
+
"minimum": 10,
|
249
|
+
"maximum": 3600
|
250
|
+
},
|
251
|
+
"visibility": {
|
252
|
+
"title": "Is the element visible?",
|
253
|
+
"type": "boolean",
|
254
|
+
"enum": [true, false]
|
255
|
+
},
|
256
|
+
"conditional_blocks": {
|
257
|
+
"title": "Conditional Blocks",
|
258
|
+
"type": "object",
|
259
|
+
"description": "Structure for conditional blocks",
|
260
|
+
"properties": {
|
261
|
+
"conditional_passed": {
|
262
|
+
"title": "Conditional Passed",
|
263
|
+
"$ref": "#/definitions/conditional_block"
|
264
|
+
},
|
265
|
+
"conditional_failed": {
|
266
|
+
"title": "Conditional Failed",
|
267
|
+
"$ref": "#/definitions/conditional_block"
|
268
|
+
}
|
269
|
+
},
|
270
|
+
"additionalProperties": false,
|
271
|
+
"required": ["conditional_passed"]
|
272
|
+
}
|
273
|
+
},
|
274
|
+
"additionalProperties": false,
|
275
|
+
"required": ["action", "object", "visibility", "version", "conditional_blocks"]
|
276
|
+
},
|
207
277
|
"double_click": {
|
208
278
|
"type": "object",
|
209
279
|
"action_type": "action",
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: wisp-schema
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.15.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jan Grodowski
|
@@ -83,6 +83,7 @@ files:
|
|
83
83
|
- stable/actions/click.json
|
84
84
|
- stable/actions/close_tab.json
|
85
85
|
- stable/actions/comment.json
|
86
|
+
- stable/actions/conditional_observe.json
|
86
87
|
- stable/actions/double_click.json
|
87
88
|
- stable/actions/drag_and_drop.json
|
88
89
|
- stable/actions/fill.json
|
@@ -98,6 +99,9 @@ files:
|
|
98
99
|
- stable/actions/type.json
|
99
100
|
- stable/actions/ui_element_reference.json
|
100
101
|
- stable/actions/wait.json
|
102
|
+
- stable/blocks/conditional_block.json
|
103
|
+
- stable/embeddings/embedded_test.json
|
104
|
+
- stable/verbs.json
|
101
105
|
- wisp.json
|
102
106
|
homepage: https://github.com/rainforestapp/wisp
|
103
107
|
licenses:
|