[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH v2 for-2.9 09/47] qapi: Fix to reject empty union ba
From: |
Markus Armbruster |
Subject: |
[Qemu-devel] [PATCH v2 for-2.9 09/47] qapi: Fix to reject empty union base gracefully |
Date: |
Wed, 15 Mar 2017 13:56:58 +0100 |
Common Python pitfall: 'assert base_members' fires on [] in addition
to None. Correct to 'assert base_members is not None'.
Signed-off-by: Markus Armbruster <address@hidden>
Reviewed-by: Marc-André Lureau <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
---
scripts/qapi.py | 2 +-
tests/qapi-schema/union-base-empty.err | 11 +----------
2 files changed, 2 insertions(+), 11 deletions(-)
diff --git a/scripts/qapi.py b/scripts/qapi.py
index 78db319..f4c8210 100644
--- a/scripts/qapi.py
+++ b/scripts/qapi.py
@@ -735,7 +735,7 @@ def check_union(expr, info):
raise QAPISemError(info, "Flat union '%s' must have a base"
% name)
base_members = find_base_members(base)
- assert base_members
+ assert base_members is not None
# The value of member 'discriminator' must name a non-optional
# member of the base struct.
diff --git a/tests/qapi-schema/union-base-empty.err
b/tests/qapi-schema/union-base-empty.err
index 26bfa07..7695806 100644
--- a/tests/qapi-schema/union-base-empty.err
+++ b/tests/qapi-schema/union-base-empty.err
@@ -1,10 +1 @@
-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
+tests/qapi-schema/union-base-empty.json:5: Discriminator 'type' is not a
member of base struct 'Empty'
--
2.7.4
- [Qemu-devel] [PATCH v2 for-2.9 00/47] qapi: Put type information back into QMP documentation, Markus Armbruster, 2017/03/15
- [Qemu-devel] [PATCH v2 for-2.9 01/47] qapi: Factor QAPISchemaParser._include() out of .__init__(), Markus Armbruster, 2017/03/15
- [Qemu-devel] [PATCH v2 for-2.9 10/47] qapi2texi: Fix up output around #optional, Markus Armbruster, 2017/03/15
- [Qemu-devel] [PATCH v2 for-2.9 08/47] tests/qapi-schema: Cover empty union base, Markus Armbruster, 2017/03/15
- [Qemu-devel] [PATCH v2 for-2.9 09/47] qapi: Fix to reject empty union base gracefully,
Markus Armbruster <=
- [Qemu-devel] [PATCH v2 for-2.9 13/47] qapi: Fix QAPISchemaEnumType.is_implicit() for 'QType', Markus Armbruster, 2017/03/15
- [Qemu-devel] [PATCH v2 for-2.9 06/47] qapi: Have each QAPI schema declare its name rule violations, Markus Armbruster, 2017/03/15
- [Qemu-devel] [PATCH v2 for-2.9 04/47] docs/qapi-code-gen.txt: Drop confusing reference to 'gen', Markus Armbruster, 2017/03/15
- [Qemu-devel] [PATCH v2 for-2.9 12/47] qapi/rocker: Fix up doc comment notes on optional members, Markus Armbruster, 2017/03/15
- [Qemu-devel] [PATCH v2 for-2.9 23/47] qapi2texi: Don't hide undocumented members and arguments, Markus Armbruster, 2017/03/15
- [Qemu-devel] [PATCH v2 for-2.9 15/47] qapi: Conjure up QAPIDoc.ArgSection for undocumented members, Markus Armbruster, 2017/03/15
- [Qemu-devel] [PATCH v2 for-2.9 16/47] qapi2texi: Convert to QAPISchemaVisitor, Markus Armbruster, 2017/03/15
- [Qemu-devel] [PATCH v2 for-2.9 32/47] qapi: Move detection of doc / expression name mismatch, Markus Armbruster, 2017/03/15
- [Qemu-devel] [PATCH v2 for-2.9 22/47] qapi2texi: Explain enum value undocumentedness more clearly, Markus Armbruster, 2017/03/15