]> xenbits.xensource.com Git - libvirt.git/commitdiff
tests: poison $HOME and $XDG_RUNTIME_DIR env variables
authorDaniel P. Berrangé <berrange@redhat.com>
Mon, 4 May 2020 12:09:45 +0000 (13:09 +0100)
committerDaniel P. Berrangé <berrange@redhat.com>
Thu, 7 May 2020 12:39:52 +0000 (13:39 +0100)
To attempt to catch unit tests which accidentally create files in $HOME,
or $XDG_RUNTIME_DIR, poison these env vars by pointing them to
directories which don't exist. This should give easier to debug test
failures. For example:

$ VIR_TEST_DEBUG=1 ./qemuhotplugtest
Could not initialize HostdevManager - operation failed: Failed to create state dir '/bad-test-used-env-xdg-runtime-dir/libvirt/hostdevmgr'

Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
Reviewed-by: Andrea Bolognani <abologna@redhat.com>
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
tests/testutils.c

index 5fd81b70a26a6a2bdc593cf752c25ba0cc1deaf3..7f1776b2449b5b763f87bcd3b5ab5cc6b482691b 100644 (file)
@@ -767,6 +767,9 @@ int virTestMain(int argc,
         preloads[npreloads] = NULL;
     }
 
+    g_setenv("HOME", "/bad-test-used-env-home", TRUE);
+    g_setenv("XDG_RUNTIME_DIR", "/bad-test-used-env-xdg-runtime-dir", TRUE);
+
     va_start(ap, func);
     while ((lib = va_arg(ap, const char *))) {
         if (!virFileIsExecutable(lib)) {