On 03/28/2012 08:42 AM, Paolo Bonzini wrote:
This is a rebase of qtest. I split the gtester infrastructure into
its own patch, and reorganized the tests by moving everything into
tests/.
Also, libqtest now has bindings for the clock management commands, and
I am using them in rtc-test. Finally, the accept is moved from qemu to
libqtest; tests need not sleep anymore until QEMU connects.
This is on top of Luiz's recent pull request.
Anthony Liguori (4):
qtest: add test framework
qtest: add C version of test infrastructure
rtc: split out macros into a header file and use in test case
qtest: add rtc-test test-case
Paolo Bonzini (3):
test makefile overhaul
qtest: IRQ interception infrastructure
qtest: add clock management
Applied. Thanks!
Regards,
Anthony Liguori
Makefile.objs | 2 +
cpu-exec.c | 1 +
cpus.c | 82 ++++-
cpus.h | 2 +
hw/irq.c | 17 +
hw/irq.h | 5 +
hw/mc146818rtc.c | 33 --
hw/mc146818rtc.h | 3 +-
hw/mc146818rtc_regs.h | 62 +++
hw/pc_piix.c | 5 +-
osdep.h | 2 +
qemu-common.h | 1 -
qemu-options.hx | 8 +
qemu-timer.c | 2 +-
qemu-timer.h | 1 +
qtest.c | 443 ++++++++++++++++++++
qtest.h | 35 ++
rules.mak | 2 +-
scripts/gtester-cat | 26 ++
scripts/qtest | 5 +
tests/Makefile | 165 ++++++--
check-qdict.c => tests/check-qdict.c | 0
check-qfloat.c => tests/check-qfloat.c | 0
check-qint.c => tests/check-qint.c | 0
check-qjson.c => tests/check-qjson.c | 0
check-qlist.c => tests/check-qlist.c | 0
check-qstring.c => tests/check-qstring.c | 0
tests/libqtest.c | 385 +++++++++++++++++
tests/libqtest.h | 333 +++++++++++++++
tests/rtc-test.c | 263 ++++++++++++
test-coroutine.c => tests/test-coroutine.c | 0
test-qmp-commands.c => tests/test-qmp-commands.c | 0
.../test-qmp-input-strict.c | 0
.../test-qmp-input-visitor.c | 0
.../test-qmp-output-visitor.c | 0
.../test-string-input-visitor.c | 0
.../test-string-output-visitor.c | 0
vl.c | 10 +-
38 files changed, 1806 insertions(+), 87 deletions(-)
create mode 100644 hw/mc146818rtc_regs.h
create mode 100644 qtest.c
create mode 100644 qtest.h
create mode 100755 scripts/gtester-cat
create mode 100755 scripts/qtest
rename check-qdict.c => tests/check-qdict.c (100%)
rename check-qfloat.c => tests/check-qfloat.c (100%)
rename check-qint.c => tests/check-qint.c (100%)
rename check-qjson.c => tests/check-qjson.c (100%)
rename check-qlist.c => tests/check-qlist.c (100%)
rename check-qstring.c => tests/check-qstring.c (100%)
create mode 100644 tests/libqtest.c
create mode 100644 tests/libqtest.h
create mode 100644 tests/rtc-test.c
rename test-coroutine.c => tests/test-coroutine.c (100%)
rename test-qmp-commands.c => tests/test-qmp-commands.c (100%)
rename test-qmp-input-strict.c => tests/test-qmp-input-strict.c (100%)
rename test-qmp-input-visitor.c => tests/test-qmp-input-visitor.c (100%)
rename test-qmp-output-visitor.c => tests/test-qmp-output-visitor.c (100%)
rename test-string-input-visitor.c => tests/test-string-input-visitor.c
(100%)
rename test-string-output-visitor.c => tests/test-string-output-visitor.c
(100%)