xemu/tests
Sascha Silbe 5a8fabf333 qemu-iotests: iotests: fail hard if not run via "check"
Running an iotests-based Python test directly might appear to work,
but may fail in subtle ways and is insecure:

- It creates files with predictable file names in a world-writable
  location (/var/tmp).

- Tests expect the environment to be set up by check. E.g. 041 and 055
  may take the wrong code paths if QEMU_DEFAULT_MACHINE is not
  set. This can lead to false negatives.

Instead fail hard and tell the user we want to be run via "check".

The actual environment expected by the tests is currently only defined
by the implementation of "check". We use two of the environment
variables set by "check" as indication of whether we're being run via
"check". Anyone writing their own test runner (replacing "check") will
need to replicate the full environment (in a broader sense, not just
environment variables) provided by "check" anyway, including setting
the two environment variables we check. Whereas a regular developer
just trying to invoke the tests usually won't have both of these
defined in their environment so we can catch their mistake and give
out useful advice.

Signed-off-by: Sascha Silbe <silbe@linux.vnet.ibm.com>
Reviewed-by: Bo Tu <tubo@linux.vnet.ibm.com>
Message-id: 1461094442-16014-1-git-send-email-silbe@linux.vnet.ibm.com
Signed-off-by: Max Reitz <mreitz@redhat.com>
2016-05-12 15:33:24 +02:00
..
acpi-test-data acpi-test: update UID for GSI links 2016-03-15 23:25:52 +02:00
guest-debug tests/guest-debug: introduce basic gdbstub tests 2015-12-17 13:37:15 +00:00
image-fuzzer tests: Use Python 2.6 "except E as ..." syntax 2016-02-08 17:29:54 +01:00
libqos * Log filtering from Alex and Peter 2016-03-24 21:42:40 +00:00
multiboot tests/multiboot: Add test for modules 2015-01-26 12:22:44 +01:00
qapi-schema qapi: Allow anonymous base for flat union 2016-03-18 10:29:26 +01:00
qemu-iotests qemu-iotests: iotests: fail hard if not run via "check" 2016-05-12 15:33:24 +02:00
rocker rocker: tests: don't need to specify master/self when setting vlans 2015-07-07 13:13:22 +01:00
tcg util: move declarations out of qemu-common.h 2016-03-22 22:20:17 +01:00
vmstate-static-checker-data tests: vmstate static checker: add size mismatch inside substructure 2014-06-23 19:14:52 +02:00
.gitignore tests: ignore test-logging 2016-04-08 00:07:56 +02:00
Makefile qemu-ga: do not run qga test when guest agent disabled 2016-04-19 16:51:15 -05:00
ac97-test.c tests: Clean up includes 2016-02-16 14:29:27 +00:00
ahci-test.c ide: Clean up includes 2016-01-29 15:07:23 +00:00
bios-tables-test.c tests/bios-tables-test: fix assert 2016-04-07 19:57:33 +03:00
boot-order-test.c fw_cfg: Split fw_cfg_keys.h off fw_cfg.h 2016-03-22 22:20:16 +01:00
boot-sector.c all: Clean up includes 2016-02-23 12:43:05 +00:00
boot-sector.h tests: add pxe e1000 and virtio-pci tests 2016-02-16 12:05:18 +02:00
check-block.sh qemu-iotests: make check-block.sh work on out-of-tree builds 2016-01-07 21:30:16 +01:00
check-qdict.c tests: Clean up includes 2016-02-16 14:29:27 +00:00
check-qfloat.c tests: Clean up includes 2016-02-16 14:29:27 +00:00
check-qint.c tests: Clean up includes 2016-02-16 14:29:27 +00:00
check-qjson.c tests: Clean up includes 2016-02-16 14:29:27 +00:00
check-qlist.c tests: Clean up includes 2016-02-16 14:29:27 +00:00
check-qom-interface.c tests: Clean up includes 2016-02-16 14:29:27 +00:00
check-qom-proplist.c include/qemu/osdep.h: Don't include qapi/error.h 2016-03-22 22:20:15 +01:00
check-qstring.c tests: Clean up includes 2016-02-16 14:29:27 +00:00
crypto-tls-x509-helpers.c tests: Clean up includes 2016-02-16 14:29:27 +00:00
crypto-tls-x509-helpers.h crypto: add sanity checking of TLS x509 credentials 2015-09-15 15:05:09 +01:00
device-introspect-test.c tests: Clean up includes 2016-02-16 14:29:27 +00:00
display-vga-test.c tests: Clean up includes 2016-02-16 14:29:27 +00:00
drive_del-test.c tests: Clean up includes 2016-02-16 14:29:27 +00:00
ds1338-test.c tests: Clean up includes 2016-02-16 14:29:27 +00:00
e1000-test.c tests: Clean up includes 2016-02-16 14:29:27 +00:00
eepro100-test.c tests: Clean up includes 2016-02-16 14:29:27 +00:00
endianness-test.c tests: Clean up includes 2016-02-16 14:29:27 +00:00
es1370-test.c tests: Clean up includes 2016-02-16 14:29:27 +00:00
fdc-test.c tests: Clean up includes 2016-02-16 14:29:27 +00:00
fw_cfg-test.c fw_cfg: Split fw_cfg_keys.h off fw_cfg.h 2016-03-22 22:20:16 +01:00
hd-geo-test.c tests: Clean up includes 2016-02-16 14:29:27 +00:00
i440fx-test.c tests: Clean up includes 2016-02-16 14:29:27 +00:00
i82801b11-test.c tests: Clean up includes 2016-02-16 14:29:27 +00:00
ide-test.c ide: Clean up includes 2016-01-29 15:07:23 +00:00
intel-hda-test.c tests: Clean up includes 2016-02-16 14:29:27 +00:00
io-channel-helpers.c include/qemu/osdep.h: Don't include qapi/error.h 2016-03-22 22:20:15 +01:00
io-channel-helpers.h io: add QIOChannelSocket class 2015-12-18 12:18:31 +00:00
ioh3420-test.c tests: Clean up includes 2016-02-16 14:29:27 +00:00
ipmi-bt-test.c tests: Clean up includes 2016-02-16 14:29:27 +00:00
ipmi-kcs-test.c tests: Clean up includes 2016-02-16 14:29:27 +00:00
ipoctal232-test.c tests: Clean up includes 2016-02-16 14:29:27 +00:00
ivshmem-test.c ivshmem: Split ivshmem-plain, ivshmem-doorbell off ivshmem 2016-03-21 21:29:03 +01:00
libqtest.c tests: Clean up includes 2016-02-16 14:29:27 +00:00
libqtest.h all: Clean up includes 2016-02-23 12:43:05 +00:00
m48t59-test.c tests: Clean up includes 2016-02-16 14:29:27 +00:00
ne2000-test.c tests: Clean up includes 2016-02-16 14:29:27 +00:00
nvme-test.c tests: Clean up includes 2016-02-16 14:29:27 +00:00
pc-cpu-test.c tests: Clean up includes 2016-02-16 14:29:27 +00:00
pcnet-test.c tests: Clean up includes 2016-02-16 14:29:27 +00:00
pkix_asn1_tab.c tests: Clean up includes 2016-02-16 14:29:27 +00:00
pvpanic-test.c tests: Clean up includes 2016-02-16 14:29:27 +00:00
pxe-test.c all: Clean up includes 2016-02-23 12:43:05 +00:00
q35-test.c tests: Clean up includes 2016-02-16 14:29:27 +00:00
qemu-iotests-quick.sh qemu-iotests: Speed up make check-block 2015-01-13 11:47:55 +00:00
qom-test.c util: move declarations out of qemu-common.h 2016-03-22 22:20:17 +01:00
rcutorture.c tests: Clean up includes 2016-02-16 14:29:27 +00:00
rtc-test.c tests: Clean up includes 2016-02-16 14:29:27 +00:00
rtl8139-test.c tests: Clean up includes 2016-02-16 14:29:27 +00:00
spapr-phb-test.c tests: Clean up includes 2016-02-16 14:29:27 +00:00
tco-test.c tests: Clean up includes 2016-02-16 14:29:27 +00:00
test-aio.c include/qemu/osdep.h: Don't include qapi/error.h 2016-03-22 22:20:15 +01:00
test-base64.c include/qemu/osdep.h: Don't include qapi/error.h 2016-03-22 22:20:15 +01:00
test-bitops.c tests: Clean up includes 2016-02-16 14:29:27 +00:00
test-blockjob-txn.c include/qemu/osdep.h: Don't include qapi/error.h 2016-03-22 22:20:15 +01:00
test-coroutine.c tests: Clean up includes 2016-02-16 14:29:27 +00:00
test-crypto-afsplit.c include/qemu/osdep.h: Don't include qapi/error.h 2016-03-22 22:20:15 +01:00
test-crypto-block.c include/qemu/osdep.h: Don't include qapi/error.h 2016-03-22 22:20:15 +01:00
test-crypto-cipher.c include/qemu/osdep.h: Don't include qapi/error.h 2016-03-22 22:20:15 +01:00
test-crypto-hash.c tests: Clean up includes 2016-02-16 14:29:27 +00:00
test-crypto-ivgen.c include/qemu/osdep.h: Don't include qapi/error.h 2016-03-22 22:20:15 +01:00
test-crypto-pbkdf.c include/qemu/osdep.h: Don't include qapi/error.h 2016-03-22 22:20:15 +01:00
test-crypto-secret.c include/crypto: Include qapi-types.h or qemu/bswap.h instead of qemu-common.h 2016-03-22 22:20:16 +01:00
test-crypto-tlscredsx509.c include/qemu/osdep.h: Don't include qapi/error.h 2016-03-22 22:20:15 +01:00
test-crypto-tlssession.c include/qemu/osdep.h: Don't include qapi/error.h 2016-03-22 22:20:15 +01:00
test-crypto-xts.c crypto: import an implementation of the XTS cipher mode 2016-03-17 14:41:15 +00:00
test-cutils.c util: move declarations out of qemu-common.h 2016-03-22 22:20:17 +01:00
test-filter-mirror.c tests/test-filter-mirror:add filter-mirror unit test 2016-03-30 08:57:16 +08:00
test-filter-redirector.c tests/test-filter-redirector: Add unit test for filter-redirector 2016-03-30 08:57:33 +08:00
test-hbitmap.c tests: Clean up includes 2016-02-16 14:29:27 +00:00
test-int128.c tests: Clean up includes 2016-02-16 14:29:27 +00:00
test-io-channel-buffer.c tests: Clean up includes 2016-02-16 14:29:27 +00:00
test-io-channel-command.c include/qemu/osdep.h: Don't include qapi/error.h 2016-03-22 22:20:15 +01:00
test-io-channel-file.c include/qemu/osdep.h: Don't include qapi/error.h 2016-03-22 22:20:15 +01:00
test-io-channel-socket.c util: retry getaddrinfo if getting EAI_BADFLAGS with AI_V4MAPPED 2016-04-05 11:46:52 +02:00
test-io-channel-tls.c tests: Clean up includes 2016-02-16 14:29:27 +00:00
test-io-task.c include/qemu/osdep.h: Don't include qapi/error.h 2016-03-22 22:20:15 +01:00
test-iov.c tests: Clean up includes 2016-02-16 14:29:27 +00:00
test-logging.c qemu-log: support simple pid substitution for logs 2016-03-22 22:20:18 +01:00
test-mul64.c tests: Clean up includes 2016-02-16 14:29:27 +00:00
test-netfilter.c tests: Clean up includes 2016-02-16 14:29:27 +00:00
test-opts-visitor.c include/qemu/osdep.h: Don't include qapi/error.h 2016-03-22 22:20:15 +01:00
test-qdev-global-props.c tests: Clean up includes 2016-02-16 14:29:27 +00:00
test-qemu-opts.c include/qemu/osdep.h: Don't include qapi/error.h 2016-03-22 22:20:15 +01:00
test-qga.c qga: Support enum names in guest-file-seek 2016-02-25 09:48:50 -06:00
test-qmp-commands.c qapi: Don't special-case simple union wrappers 2016-03-18 10:29:26 +01:00
test-qmp-event.c tests: Clean up includes 2016-02-16 14:29:27 +00:00
test-qmp-input-strict.c include/qemu/osdep.h: Don't include qapi/error.h 2016-03-22 22:20:15 +01:00
test-qmp-input-visitor.c include/qemu/osdep.h: Don't include qapi/error.h 2016-03-22 22:20:15 +01:00
test-qmp-output-visitor.c include/qemu/osdep.h: Don't include qapi/error.h 2016-03-22 22:20:15 +01:00
test-rcu-list.c tests: Clean up includes 2016-02-16 14:29:27 +00:00
test-rfifolock.c tests: Clean up includes 2016-02-16 14:29:27 +00:00
test-string-input-visitor.c include/qemu/osdep.h: Don't include qapi/error.h 2016-03-22 22:20:15 +01:00
test-string-output-visitor.c include/qemu/osdep.h: Don't include qapi/error.h 2016-03-22 22:20:15 +01:00
test-thread-pool.c include/qemu/osdep.h: Don't include qapi/error.h 2016-03-22 22:20:15 +01:00
test-throttle.c include/qemu/osdep.h: Don't include qapi/error.h 2016-03-22 22:20:15 +01:00
test-timed-average.c tests: Clean up includes 2016-02-16 14:29:27 +00:00
test-visitor-serialization.c include/qemu/osdep.h: Don't include qapi/error.h 2016-03-22 22:20:15 +01:00
test-vmstate.c tests: Clean up includes 2016-02-16 14:29:27 +00:00
test-write-threshold.c tests: Clean up includes 2016-02-16 14:29:27 +00:00
test-x86-cpuid.c tests: Clean up includes 2016-02-16 14:29:27 +00:00
test-xbzrle.c util: move declarations out of qemu-common.h 2016-03-22 22:20:17 +01:00
tmp105-test.c tests: Clean up includes 2016-02-16 14:29:27 +00:00
tpci200-test.c tests: Clean up includes 2016-02-16 14:29:27 +00:00
usb-hcd-ehci-test.c usb: Clean up includes 2016-01-29 15:07:23 +00:00
usb-hcd-ohci-test.c usb: Clean up includes 2016-01-29 15:07:23 +00:00
usb-hcd-uhci-test.c usb: Clean up includes 2016-01-29 15:07:23 +00:00
usb-hcd-xhci-test.c usb: Clean up includes 2016-01-29 15:07:23 +00:00
vhost-user-bridge.c tests/vhost-user-bridge: fix build on 32 bit systems 2016-02-25 13:14:19 +02:00
vhost-user-test.c tests: Clean up includes 2016-02-16 14:29:27 +00:00
virtio-9p-test.c 9pfs: Clean up includes 2016-01-29 15:07:23 +00:00
virtio-balloon-test.c tests: Clean up includes 2016-02-16 14:29:27 +00:00
virtio-blk-test.c tests: Clean up includes 2016-02-16 14:29:27 +00:00
virtio-console-test.c tests: Clean up includes 2016-02-16 14:29:27 +00:00
virtio-net-test.c tests: Clean up includes 2016-02-16 14:29:27 +00:00
virtio-rng-test.c tests: Clean up includes 2016-02-16 14:29:27 +00:00
virtio-scsi-test.c tests: Clean up includes 2016-02-16 14:29:27 +00:00
virtio-serial-test.c tests: Clean up includes 2016-02-16 14:29:27 +00:00
vmxnet3-test.c tests: Clean up includes 2016-02-16 14:29:27 +00:00
wdt_ib700-test.c tests: Clean up includes 2016-02-16 14:29:27 +00:00