[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-block] [Qemu-devel] [PATCH v2 2/6] tests/qapi-schema: Test for
From: |
Markus Armbruster |
Subject: |
Re: [Qemu-block] [Qemu-devel] [PATCH v2 2/6] tests/qapi-schema: Test for good feature lists in structs |
Date: |
Mon, 03 Jun 2019 08:35:35 +0200 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/26.2 (gnu/linux) |
Kevin Wolf <address@hidden> writes:
> Am 24.05.2019 um 15:29 hat Markus Armbruster geschrieben:
>> Let's add
>>
>> { 'command': 'test-features',
>> 'data': { 'fs0': 'FeatureStruct0',
>> 'fs1': 'FeatureStruct1',
>> 'fs2': 'FeatureStruct2',
>> 'fs3': 'FeatureStruct3',
>> 'cfs1': 'CondFeatureStruct1',
>> 'cfs2': 'CondFeatureStruct2',
>> 'cfs3': 'CondFeatureStruct3' } }
>>
>> because without it, the feature test cases won't generate introspection
>> code.
>
> Of course, like everything else you requested, I'll just do this to get
> the series off my table, but I'm still curious: Where would
> introspection code ever be generated for the test cases? I saw neither
> test code that generates the source files nor reference output that it
> would be compared against.
Asking me to explain why I want something done when you can't see it
yourself is much, much better than blindly implementing it.
Makefile.include feeds the two positive tests qapi-schema-test.json and
doc-good.json to qapi-gen.py.
The .o for the former's .c get linked into a bunch of tests via Make
variable $(test-qapi-obj-y). One of them is test-qobject-input-visitor.
Its test case "/visitor/input/qapi-introspect" checks the generated
QObject conforms to the schema.
qapi-schema.json gets tested end-to-end instead: qmp-cmd-tests tests
query-qmp-schema.
Both tests only check schema conformance, they don't compare to expected
output. Perhaps they should. But I can still diff the generated
qmp-introspect.c manually, which I routinely do when messing with the
generator.
Makes sense?
- Re: [Qemu-block] [Qemu-devel] [PATCH v2 2/6] tests/qapi-schema: Test for good feature lists in structs,
Markus Armbruster <=