mirror of https://github.com/xemu-project/xemu.git
tests/qapi-schema: Improve union discriminator coverage
A union's 'discriminator' must name one of the common members. QAPISchemaVariants.check() looks it up by its c_name(), then checks the name matches exactly (because c_name() is not injective). Tests union-base-empty and union-invalid-discriminator both cover the case where lookup fails. Repurpose the latter to cover the case where it succeeds and the name check fails. Signed-off-by: Markus Armbruster <armbru@redhat.com> Message-Id: <20230316071325.492471-10-armbru@redhat.com Reviewed-by: Eric Blake <eblake@redhat.com> [Commit message typo fixed]
This commit is contained in:
parent
e2050ef633
commit
8fba2f737a
|
@ -1,2 +1,2 @@
|
|||
union-invalid-discriminator.json: In union 'TestUnion':
|
||||
union-invalid-discriminator.json:10: discriminator 'enum_wrong' is not a member of 'base'
|
||||
union-invalid-discriminator.json:10: discriminator 'type_tag' is not a member of 'base'
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
'data': { 'integer': 'int' } }
|
||||
|
||||
{ 'union': 'TestUnion',
|
||||
'base': { 'enum1': 'TestEnum' },
|
||||
'discriminator': 'enum_wrong',
|
||||
'base': { 'type-tag': 'TestEnum' },
|
||||
'discriminator': 'type_tag',
|
||||
'data': { 'value1': 'TestTypeA',
|
||||
'value2': 'TestTypeB' } }
|
||||
|
|
Loading…
Reference in New Issue