This tests the error-return pathway introduced in the previous commit. (Thanks to Paolo for the help with the Meson magic.)
Signed-off-by: John Snow <js...@redhat.com> --- This went after the previous patch instead of before because prior to removing the sys.argv[0] bit from QAPISourceInfo, I can't filter the test to pass the diff. Instead of writing something new to get a better patch ordering, just add the test after. Signed-off-by: John Snow <js...@redhat.com> --- tests/qapi-schema/meson.build | 7 ++++++- tests/qapi-schema/missing-schema.err | 1 + tests/qapi-schema/missing-schema.out | 0 3 files changed, 7 insertions(+), 1 deletion(-) create mode 100644 tests/qapi-schema/missing-schema.err create mode 100644 tests/qapi-schema/missing-schema.out diff --git a/tests/qapi-schema/meson.build b/tests/qapi-schema/meson.build index d7163e6601c..dc448e8f74d 100644 --- a/tests/qapi-schema/meson.build +++ b/tests/qapi-schema/meson.build @@ -199,11 +199,16 @@ schemas = [ 'unknown-escape.json', 'unknown-expr-key.json', ] +schemas = files(schemas) + +# Intentionally missing schema file test -- not passed through files(): +schemas += [meson.current_source_dir() / 'missing-schema.json'] # Because people may want to use test-qapi.py from the command line, we # are not using the "#! /usr/bin/env python3" trick here. See # docs/devel/build-system.txt -test('QAPI schema regression tests', python, args: files('test-qapi.py', schemas), +test('QAPI schema regression tests', python, + args: files('test-qapi.py') + schemas, env: test_env, suite: ['qapi-schema', 'qapi-frontend']) diff = find_program('diff') diff --git a/tests/qapi-schema/missing-schema.err b/tests/qapi-schema/missing-schema.err new file mode 100644 index 00000000000..b4d9ff1fb2b --- /dev/null +++ b/tests/qapi-schema/missing-schema.err @@ -0,0 +1 @@ +can't read schema file 'missing-schema.json': No such file or directory diff --git a/tests/qapi-schema/missing-schema.out b/tests/qapi-schema/missing-schema.out new file mode 100644 index 00000000000..e69de29bb2d -- 2.30.2