summary refs log tree commit diff stats
path: root/tests/functional/qemu_test/decorators.py
diff options
context:
space:
mode:
authorThomas Huth <thuth@redhat.com>2025-01-28 16:28:35 +0100
committerThomas Huth <thuth@redhat.com>2025-01-30 10:50:56 +0100
commit4ae633b012210452b68dc20238fe4edd41d2635b (patch)
treeaf5de85610c9eafb93a8082b7e4bed00facd2038 /tests/functional/qemu_test/decorators.py
parentfc9fea48be250ad3e51ddaea9508a320896c094b (diff)
downloadfocaccia-qemu-4ae633b012210452b68dc20238fe4edd41d2635b.tar.gz
focaccia-qemu-4ae633b012210452b68dc20238fe4edd41d2635b.zip
tests/functional: Add a decorator for skipping long running tests
Some tests have a very long runtime and might run into timeout issues
e.g. when QEMU has been compiled with --enable-debug. Add a decorator
for marking them more easily. Rename the corresponding environment
variable to be more in sync with the other QEMU_TEST_ALLOW_* switches
that we already have, and add a paragraph about it in the documentation.

Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
Message-ID: <20250128152839.184599-2-thuth@redhat.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>
Diffstat (limited to 'tests/functional/qemu_test/decorators.py')
-rw-r--r--tests/functional/qemu_test/decorators.py14
1 files changed, 14 insertions, 0 deletions
diff --git a/tests/functional/qemu_test/decorators.py b/tests/functional/qemu_test/decorators.py
index 3d9c02fd59..1651eb739a 100644
--- a/tests/functional/qemu_test/decorators.py
+++ b/tests/functional/qemu_test/decorators.py
@@ -87,6 +87,20 @@ def skipBigDataTest():
                       'Test requires large host storage space')
 
 '''
+Decorator to skip execution of tests which have a really long
+runtime (and might e.g. time out if QEMU has been compiled with
+debugging enabled) unless the $QEMU_TEST_ALLOW_SLOW
+environment variable is set
+
+Example:
+
+  @skipSlowTest()
+'''
+def skipSlowTest():
+    return skipUnless(os.getenv('QEMU_TEST_ALLOW_SLOW'),
+                      'Test has a very long runtime and might time out')
+
+'''
 Decorator to skip execution of a test if the list
 of python imports is not available.
 Example: