[libvirt] [PATCH 00/11] tests: Add QAPI schema validation (blockdev-add saga)

Peter Krempa pkrempa at redhat.com
Thu Mar 22 18:31:37 UTC 2018


The new test APIs allow to validate JSON objects against the QAPI
schema. The infrastructure was developed as part of not-yet-posted
blockdev JSON property generator. It is quite useful for developing
generators for complex objects against the schema.

Since it's kind of useful by itself I decided to post it prior to
finishing the blockdev work. It at least makes the 'simple' test cases
in the qemumonitorjsontest slightly useful.

Peter Krempa (11):
  util: buffer: Tolerate NULL 'buf' in virBufferStrcat
  qemu: caps: Move QAPI schema related code into separate file
  qemu: qapi: Fix naming of moved functions
  qemu: monitor: Move processing of QMP schema to the new file
  util: json: Add accessor for looking up JSON value type
  qemu: qapi: Return correct entry in virQEMUQapiSchemaTraverse
  tests: Add data file with QEMU QAPI schema
  tests: qemu: Add infrastructure for QAPI schema testing
  tests: qemumonitorjson: Fix few arguments of test cases
  tests: qemumonitor: Allow testing schema for fake monitor interactions
  tests: qemumonitorjson: Do some useful testing in the 'simple' tests

 po/POTFILES.in               |     1 +
 src/libvirt_private.syms     |     1 +
 src/qemu/Makefile.inc.am     |     2 +
 src/qemu/qemu_capabilities.c |   171 +-
 src/qemu/qemu_monitor.c      |     2 +-
 src/qemu/qemu_monitor.h      |     2 +-
 src/qemu/qemu_monitor_json.c |    41 +-
 src/qemu/qemu_monitor_json.h |     2 +-
 src/qemu/qemu_qapi.c         |   237 +
 src/qemu/qemu_qapi.h         |    40 +
 src/util/virbuffer.c         |     3 +
 src/util/virjson.c           |     7 +
 src/util/virjson.h           |     2 +
 tests/Makefile.am            |     3 +
 tests/qemuhotplugtest.c      |     3 +-
 tests/qemumonitorjsontest.c  |   117 +-
 tests/qemumonitortestutils.c |    85 +-
 tests/qemumonitortestutils.h |     7 +-
 tests/qemuqapischema.json    | 11364 +++++++++++++++++++++++++++++++++++++++++
 tests/testutilsqemuschema.c  |   536 ++
 tests/testutilsqemuschema.h  |    30 +
 21 files changed, 12446 insertions(+), 210 deletions(-)
 create mode 100644 src/qemu/qemu_qapi.c
 create mode 100644 src/qemu/qemu_qapi.h
 create mode 100644 tests/qemuqapischema.json
 create mode 100644 tests/testutilsqemuschema.c
 create mode 100644 tests/testutilsqemuschema.h

-- 
2.16.2




More information about the libvir-list mailing list