From: Markus Armbruster <armbru@redhat.com>
To: qemu-devel@nongnu.org
Cc: michael.roth@amd.com, marcandre.lureau@redhat.com,
berrange@redhat.com, eblake@redhat.com, jsnow@redhat.com
Subject: [PATCH 11/14] tests/qapi-schema: Clean up positive test for conditionals
Date: Thu, 16 Mar 2023 08:13:22 +0100 [thread overview]
Message-ID: <20230316071325.492471-12-armbru@redhat.com> (raw)
In-Reply-To: <20230316071325.492471-1-armbru@redhat.com>
Union TestIfUnion is conditional on macros TEST_IF_UNION and
TEST_IF_STRUCT. It uses TestIfEnum, which is conditional on macro
TEST_IF_ENUM. If TEST_IF_ENUM and TEST_IF_STRUCT are defined, but
TEST_IF_ENUM isn't, the generated code won't compile.
Command test-if-cmd is conditional an macros TEST_IF_CMD and
TEST_IF_STRUCT, and uses TestIfEnum. Similar issue.
Event TEST_IF_EVENT is conditional an macros TEST_IF_EVT and
TEST_IF_STRUCT, and uses TestIfEnum. Similar issue.
Replace the uses of TestIfEnum in the latter two by str.
TestIfUnion is now TestIfEnum's only user. Change TestIfEnum's
condition to TEST_IF_UNION.
Signed-off-by: Markus Armbruster <armbru@redhat.com>
---
tests/qapi-schema/qapi-schema-test.json | 6 +++---
tests/qapi-schema/qapi-schema-test.out | 8 +++-----
2 files changed, 6 insertions(+), 8 deletions(-)
diff --git a/tests/qapi-schema/qapi-schema-test.json b/tests/qapi-schema/qapi-schema-test.json
index 5728d4de38..8f0ee95d23 100644
--- a/tests/qapi-schema/qapi-schema-test.json
+++ b/tests/qapi-schema/qapi-schema-test.json
@@ -225,7 +225,7 @@
{ 'enum': 'TestIfEnum',
'data': [ 'foo', { 'name' : 'bar', 'if': 'TEST_IF_ENUM_MEMBER' } ],
- 'if': 'TEST_IF_ENUM' }
+ 'if': 'TEST_IF_UNION' }
{ 'union': 'TestIfUnion',
'base': { 'type': 'TestIfEnum' },
@@ -250,7 +250,7 @@
{ 'command': 'test-if-cmd',
'data': {
'foo': 'TestIfStruct',
- 'bar': { 'type': 'TestIfEnum', 'if': 'TEST_IF_CMD_ARG' } },
+ 'bar': { 'type': 'str', 'if': 'TEST_IF_CMD_ARG' } },
'returns': 'UserDefThree',
'if': { 'all': ['TEST_IF_CMD', 'TEST_IF_STRUCT'] } }
@@ -258,7 +258,7 @@
{ 'event': 'TEST_IF_EVENT',
'data': { 'foo': 'TestIfStruct',
- 'bar': { 'type': ['TestIfEnum'], 'if': 'TEST_IF_EVT_ARG' } },
+ 'bar': { 'type': ['str'], 'if': 'TEST_IF_EVT_ARG' } },
'if': { 'all': ['TEST_IF_EVT', 'TEST_IF_STRUCT'] } }
{ 'event': 'TEST_IF_EVENT2', 'data': {},
diff --git a/tests/qapi-schema/qapi-schema-test.out b/tests/qapi-schema/qapi-schema-test.out
index cbd96f0b24..715f3a3f23 100644
--- a/tests/qapi-schema/qapi-schema-test.out
+++ b/tests/qapi-schema/qapi-schema-test.out
@@ -252,7 +252,7 @@ enum TestIfEnum
member foo
member bar
if TEST_IF_ENUM_MEMBER
- if TEST_IF_ENUM
+ if TEST_IF_UNION
object q_obj_TestIfUnion-base
member type: TestIfEnum optional=False
if {'all': ['TEST_IF_UNION', 'TEST_IF_STRUCT']}
@@ -283,7 +283,7 @@ command test-if-alternate-cmd q_obj_test-if-alternate-cmd-arg -> None
if {'all': ['TEST_IF_ALT', 'TEST_IF_STRUCT']}
object q_obj_test-if-cmd-arg
member foo: TestIfStruct optional=False
- member bar: TestIfEnum optional=False
+ member bar: str optional=False
if TEST_IF_CMD_ARG
if {'all': ['TEST_IF_CMD', 'TEST_IF_STRUCT']}
command test-if-cmd q_obj_test-if-cmd-arg -> UserDefThree
@@ -291,11 +291,9 @@ command test-if-cmd q_obj_test-if-cmd-arg -> UserDefThree
if {'all': ['TEST_IF_CMD', 'TEST_IF_STRUCT']}
command test-cmd-return-def-three None -> UserDefThree
gen=True success_response=True boxed=False oob=False preconfig=False
-array TestIfEnumList TestIfEnum
- if TEST_IF_ENUM
object q_obj_TEST_IF_EVENT-arg
member foo: TestIfStruct optional=False
- member bar: TestIfEnumList optional=False
+ member bar: strList optional=False
if TEST_IF_EVT_ARG
if {'all': ['TEST_IF_EVT', 'TEST_IF_STRUCT']}
event TEST_IF_EVENT q_obj_TEST_IF_EVENT-arg
--
2.39.2
next prev parent reply other threads:[~2023-03-16 7:15 UTC|newest]
Thread overview: 36+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-03-16 7:13 [PATCH 00/14] qapi: Fix minor bugs, require boxed for conditional arguments Markus Armbruster
2023-03-16 7:13 ` [PATCH 01/14] qapi: Fix error message format regression Markus Armbruster
2023-03-16 21:56 ` Eric Blake
2023-03-16 7:13 ` [PATCH 02/14] qapi/schema: Use super() Markus Armbruster
2023-03-16 7:40 ` Philippe Mathieu-Daudé
2023-03-16 7:13 ` [PATCH 03/14] qapi: Clean up after removal of simple unions Markus Armbruster
2023-03-17 0:38 ` Eric Blake
2023-03-16 7:13 ` [PATCH 04/14] qapi: Split up check_type() Markus Armbruster
2023-03-17 0:53 ` Eric Blake
2023-03-17 5:36 ` Markus Armbruster
2023-03-16 7:13 ` [PATCH 05/14] qapi: Improve error message for unexpected array types Markus Armbruster
2023-03-16 7:41 ` Philippe Mathieu-Daudé
2023-03-16 7:13 ` [PATCH 06/14] qapi: Simplify code a bit after previous commit Markus Armbruster
2023-03-17 0:55 ` Eric Blake
2023-03-17 5:42 ` Markus Armbruster
2023-03-16 7:13 ` [PATCH 07/14] qapi: Fix error message when type name or array is expected Markus Armbruster
2023-03-17 0:57 ` Eric Blake
2023-03-16 7:13 ` [PATCH 08/14] qapi: Fix to reject 'data': 'mumble' in struct Markus Armbruster
2023-03-17 1:02 ` Eric Blake
2023-03-17 5:48 ` Markus Armbruster
2023-03-16 7:13 ` [PATCH 09/14] tests/qapi-schema: Improve union discriminator coverage Markus Armbruster
2023-03-17 1:06 ` Eric Blake
2023-03-17 5:51 ` Markus Armbruster
2023-03-16 7:13 ` [PATCH 10/14] tests/qapi-schema: Rename a few conditionals Markus Armbruster
2023-03-16 7:45 ` Philippe Mathieu-Daudé
2023-03-16 7:13 ` Markus Armbruster [this message]
2023-03-17 1:09 ` [PATCH 11/14] tests/qapi-schema: Clean up positive test for conditionals Eric Blake
2023-03-17 6:10 ` Markus Armbruster
2023-03-17 12:29 ` Eric Blake
2023-03-17 14:14 ` Markus Armbruster
2023-03-16 7:13 ` [PATCH 12/14] tests/qapi-schema: Cover optional conditional struct member Markus Armbruster
2023-03-16 7:45 ` Philippe Mathieu-Daudé
2023-03-16 7:13 ` [PATCH 13/14] qapi: Fix code generated for " Markus Armbruster
2023-03-17 1:13 ` Eric Blake
2023-03-16 7:13 ` [PATCH 14/14] qapi: Require boxed for conditional command and event arguments Markus Armbruster
2023-03-17 1:17 ` Eric Blake
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20230316071325.492471-12-armbru@redhat.com \
--to=armbru@redhat.com \
--cc=berrange@redhat.com \
--cc=eblake@redhat.com \
--cc=jsnow@redhat.com \
--cc=marcandre.lureau@redhat.com \
--cc=michael.roth@amd.com \
--cc=qemu-devel@nongnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).