Am 03.06.2019 um 08:35 hat Markus Armbruster geschrieben: > Kevin Wolf <kw...@redhat.com> 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.
Well, adding a command can't hurt anyway, so doing both in parallel seemed like a good option. :-) > 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? Ah, so basically we don't fully check the correctness of the introspection output, but just that two different generated files are consistent with each other. Yes, makes sense. I just didn't realise that the generated code is actually compiled and linked to some other test cases. My expectation was the schema testing was only in tests/qapi-schema/. Kevin