tests/qapi-schema: Cover empty union base
The new test case shows off qapi.py choking on an empty union base. Signed-off-by: Markus Armbruster <armbru@redhat.com> Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com> Reviewed-by: Eric Blake <eblake@redhat.com> Message-Id: <1489582656-31133-9-git-send-email-armbru@redhat.com>
This commit is contained in:
parent
bd7f974796
commit
707fb2d381
@ -476,6 +476,7 @@ qapi-schema += unclosed-list.json
|
||||
qapi-schema += unclosed-object.json
|
||||
qapi-schema += unclosed-string.json
|
||||
qapi-schema += unicode-str.json
|
||||
qapi-schema += union-base-empty.json
|
||||
qapi-schema += union-base-no-discriminator.json
|
||||
qapi-schema += union-branch-case.json
|
||||
qapi-schema += union-clash-branches.json
|
||||
|
10
tests/qapi-schema/union-base-empty.err
Normal file
10
tests/qapi-schema/union-base-empty.err
Normal file
@ -0,0 +1,10 @@
|
||||
Traceback (most recent call last):
|
||||
File "tests/qapi-schema/test-qapi.py", line 56, in <module>
|
||||
schema = QAPISchema(sys.argv[1])
|
||||
File "scripts/qapi.py", line 1487, in __init__
|
||||
self.exprs = check_exprs(parser.exprs)
|
||||
File "scripts/qapi.py", line 921, in check_exprs
|
||||
check_union(expr, info)
|
||||
File "scripts/qapi.py", line 738, in check_union
|
||||
assert base_members
|
||||
AssertionError
|
1
tests/qapi-schema/union-base-empty.exit
Normal file
1
tests/qapi-schema/union-base-empty.exit
Normal file
@ -0,0 +1 @@
|
||||
1
|
9
tests/qapi-schema/union-base-empty.json
Normal file
9
tests/qapi-schema/union-base-empty.json
Normal file
@ -0,0 +1,9 @@
|
||||
# Flat union with empty base and therefore without discriminator
|
||||
|
||||
{ 'struct': 'Empty', 'data': { } }
|
||||
|
||||
{ 'union': 'TestUnion',
|
||||
'base': 'Empty',
|
||||
'discriminator': 'type',
|
||||
'data': { 'value1': 'int',
|
||||
'value2': 'str' } }
|
0
tests/qapi-schema/union-base-empty.out
Normal file
0
tests/qapi-schema/union-base-empty.out
Normal file
Loading…
Reference in New Issue
Block a user