Instead of spawining a separate xmllint process for every file,
introduce virXMLValidator APIs and use them in a C test file.
Originally, the shell-based schema tests took about 15s in series
(with domainschematest making up for about 13s of that).
Now, all the tests run in series take ~.57 ms.
This reduces total make check time from ~16s to ~8s, making it
more fun to use with git rebase -x.
Ján Tomko (5):
Introduce virXMLValidator structure
Introduce virXMLValidatorFree
Introduce virXMLValidatorInit
Introduce virXMLValidatorValidate
Introduce virschematest
.gitignore | 1 -
src/libvirt_private.syms | 3 +
src/util/virxml.c | 102 ++++++++++++++++------
src/util/virxml.h | 19 +++++
tests/Makefile.am | 28 ++----
tests/capabilityschematest | 9 --
tests/domaincapsschematest | 10 ---
tests/domainschematest | 14 ---
tests/domainsnapshotschematest | 9 --
tests/interfaceschematest | 9 --
tests/networkschematest | 9 --
tests/nodedevschematest | 9 --
tests/nwfilterschematest | 9 --
tests/schematestutils.sh | 47 ----------
tests/secretschematest | 9 --
tests/storagepoolschematest | 9 --
tests/storagevolschematest | 9 --
tests/virschematest.c | 190 +++++++++++++++++++++++++++++++++++++++++
18 files changed, 293 insertions(+), 202 deletions(-)
delete mode 100755 tests/capabilityschematest
delete mode 100755 tests/domaincapsschematest
delete mode 100755 tests/domainschematest
delete mode 100755 tests/domainsnapshotschematest
delete mode 100755 tests/interfaceschematest
delete mode 100755 tests/networkschematest
delete mode 100755 tests/nodedevschematest
delete mode 100755 tests/nwfilterschematest
delete mode 100644 tests/schematestutils.sh
delete mode 100755 tests/secretschematest
delete mode 100755 tests/storagepoolschematest
delete mode 100755 tests/storagevolschematest
create mode 100644 tests/virschematest.c
--
2.7.3