Commit d9658d58 authored by Markus Armbruster's avatar Markus Armbruster
Browse files

qapi-tests: New tests for union, alternate command arguments



A command's 'data' must be a struct type, given either as a
dictionary, or as struct type name.

Existing test case data-int.json covers simple type 'int'.  Add test
cases for type names referring to union and alternate types.

The latter is caught (good), but the former is not (bug).

Events have the same problem, but since they get checked by the same
code, we don't bother to duplicate the tests.

Signed-off-by: default avatarMarkus Armbruster <armbru@redhat.com>
Reviewed-by: default avatarEric Blake <eblake@redhat.com>
parent 6af9a8fc
Loading
Loading
Loading
Loading
+2 −1
Original line number Diff line number Diff line
@@ -231,7 +231,8 @@ check-qapi-schema-y := $(addprefix tests/qapi-schema/, \
	type-bypass.json type-bypass-no-gen.json type-bypass-bad-gen.json \
	args-array-empty.json args-array-unknown.json args-int.json \
	args-unknown.json args-member-unknown.json args-member-array.json \
	args-member-array-bad.json returns-array-bad.json returns-int.json \
	args-member-array-bad.json args-alternate.json args-union.json \
	returns-array-bad.json returns-int.json \
	returns-unknown.json returns-alternate.json returns-whitelist.json \
	missing-colon.json missing-comma-list.json missing-comma-object.json \
	nested-struct-data.json nested-struct-returns.json non-objects.json \
+1 −0
Original line number Diff line number Diff line
tests/qapi-schema/args-alternate.json:3: 'data' for command 'oops' cannot use alternate type 'Alt'
+1 −0
Original line number Diff line number Diff line
1
+3 −0
Original line number Diff line number Diff line
# we do not allow alternate arguments
{ 'alternate': 'Alt', 'data': { 'case1': 'int', 'case2': 'str' } }
{ 'command': 'oops', 'data': 'Alt' }
+0 −0

Empty file added.

Loading