[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH 2/3] qapi-schema: test: add a qapi-schema-test for array alternat
From: |
Paolo Bonzini |
Subject: |
[PATCH 2/3] qapi-schema: test: add a qapi-schema-test for array alternates |
Date: |
Mon, 21 Mar 2022 17:42:42 +0100 |
Check that conflicts among array alternates are detected correctly.
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
---
tests/qapi-schema/alternate-conflict-lists.err | 2 ++
tests/qapi-schema/alternate-conflict-lists.json | 6 +++++
tests/qapi-schema/alternate-conflict-lists.out | 0
tests/qapi-schema/meson.build | 1 +
4 files changed, 8 insertions(+)
create mode 100644 tests/qapi-schema/alternate-conflict-lists.err
create mode 100644 tests/qapi-schema/alternate-conflict-lists.json
create mode 100644 tests/qapi-schema/alternate-conflict-lists.out
diff --git a/tests/qapi-schema/alternate-conflict-lists.err
b/tests/qapi-schema/alternate-conflict-lists.err
new file mode 100644
index 0000000000..288b75a2ff
--- /dev/null
+++ b/tests/qapi-schema/alternate-conflict-lists.err
@@ -0,0 +1,2 @@
+alternate-conflict-lists.json: In alternate 'Alt':
+alternate-conflict-lists.json:5: branch 'two' can't be distinguished from 'one'
diff --git a/tests/qapi-schema/alternate-conflict-lists.json
b/tests/qapi-schema/alternate-conflict-lists.json
new file mode 100644
index 0000000000..90710da115
--- /dev/null
+++ b/tests/qapi-schema/alternate-conflict-lists.json
@@ -0,0 +1,6 @@
+# Two lists conflict even if their inner types would be compatible
+{ 'struct': 'One',
+ 'data': { 'name': 'str' } }
+{ 'alternate': 'Alt',
+ 'data': { 'one': [ 'int' ],
+ 'two': [ 'str' ] } }
diff --git a/tests/qapi-schema/alternate-conflict-lists.out
b/tests/qapi-schema/alternate-conflict-lists.out
new file mode 100644
index 0000000000..e69de29bb2
diff --git a/tests/qapi-schema/meson.build b/tests/qapi-schema/meson.build
index caf0791ba8..c18dd7d02f 100644
--- a/tests/qapi-schema/meson.build
+++ b/tests/qapi-schema/meson.build
@@ -11,6 +11,7 @@ schemas = [
'alternate-conflict-dict.json',
'alternate-conflict-enum-bool.json',
'alternate-conflict-enum-int.json',
+ 'alternate-conflict-lists.json',
'alternate-conflict-string.json',
'alternate-conflict-bool-string.json',
'alternate-conflict-num-string.json',
--
2.35.1