Skip to content

Commit

Permalink
test: more generator.yaml tests
Browse files Browse the repository at this point in the history
  • Loading branch information
thorehusfeldt committed Dec 12, 2024
1 parent 38487e7 commit 61de441
Show file tree
Hide file tree
Showing 2 changed files with 94 additions and 7 deletions.
51 changes: 44 additions & 7 deletions test/generator_yaml/invalid_yaml/invalid.generators.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -103,11 +103,12 @@ data:
- true
---
# Unnumbered keys must not be empty.
# TODO not picked up by JSON schema
data:
sample: {data: []}
secret:
data:
'': str
'': str
---
data:
sample: {data: []}
Expand Down Expand Up @@ -161,6 +162,7 @@ data:
a: gen {seed:1} {seed:2}
---
# no empty string TODO
# TODO not picked up by JSON schema
data:
sample: {data: []}
secret:
Expand Down Expand Up @@ -220,6 +222,7 @@ data:
generate: []
---
# Copied cases must not have an absolute path. TODO
# TODO not picked up by JSON schema
data:
sample: {data: []}
secret:
Expand All @@ -228,6 +231,7 @@ data:
copy: /a/b/c
---
# Copied cases must not have an absolute path. TODO
# TODO not picked up by JSON schema
data:
sample: {data: []}
secret:
Expand All @@ -236,6 +240,7 @@ data:
copy: /testcase
---
# Copied cases must not have an absolute path. TODO
# TODO not picked up by JSON schema
data:
sample: {data: []}
secret:
Expand All @@ -244,6 +249,7 @@ data:
copy: /generators/a/b/c
---
# Generator invocations must not have an absolute path.
# TODO not picked up by JSON schema
data:
sample: {data: []}
secret:
Expand All @@ -252,6 +258,7 @@ data:
generate: /generators/gen_tree
---
# Generator invocations must not have an absolute path.
# TODO not picked up by JSON schema
data:
sample: {data: []}
secret:
Expand Down Expand Up @@ -339,35 +346,65 @@ data:
#---
# Numbered cases must contain exactly one testcase
data:
sample: {data: []}
sample: {}
secret:
data:
- {}
---
data:
sample: {data: []}
sample: {}
secret:
data:
- a: a
b: a
---
# Numbered testcases must contain a dict
data:
sample: {data: []}
sample: {}
secret:
data:
- 1
---
# Numbered testcases must contain a dict
data:
sample: {data: []}
sample: {}
secret:
data:
- foo
---
# Numbered testcases must contain a dict
data:
sample: {data: []}
sample: {}
secret:
data:
- []
---
# Count is at least 1
data:
sample: {}
secret:
data:
- '':
generate: my_generator {count}
count: 0
---
# Count is at most 100
data:
sample: {}
secret:
data:
- '':
generate: my_generator {count}
count: 101
---
# No testdata.yaml on testcase level
# TODO Not picked up by JSON schema
data:
sample: {}
secret:
data:
- []
- '':
in: '1 2'
visualizer: "/ab/c" # this is fine
testdata.yaml: # this is not
input_validator_flags: "connected"
50 changes: 50 additions & 0 deletions test/generator_yaml/valid_yaml/rich-generators.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
data:
sample: {}
secret:
data:
'nocount':
generate: my_generator {count}
'count-1':
generate: my_generator {count}
count: 1
'count-100':
generate: my_generator {count}
count: 100
'copied':
copy: ab
in: "1 2"
count: 100
'generage_and_copy':
generate: my_generator
copy: ab
in: "1 2"
'explicit':
in: "-1 2"
ans: "1"
desc: "Negative numbers"
hint: "Remember that a can be negative"
'curlies': my_generator {seed:1} --name {name}
'morecurlies':
generate: my_generator {seed:1} --name {name} --ctr {count} --arg {count}
count: 5
'group_with_testdata':
"testdata.yaml":
input_validator_flags: "--connected --max_n 2000"
visualizer: "/foo/bar/baz"
data:
'a': my_generator
invalid_inputs:
data:
- '':
in: "1 2 3"
invalid_answers:
data:
- '':
in: "1 2 3"
ans: "foo"
invalid_outputs:
data:
- '':
in: "1 2 3"
ans: "6"
out: "7"

0 comments on commit 61de441

Please sign in to comment.