Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
openSUSE:Leap:16.0:FactoryCandidates
virt-manager
070-uitests-Handle-slow-app-launch-on-fedora-39...
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File 070-uitests-Handle-slow-app-launch-on-fedora-39.patch of Package virt-manager
Subject: uitests: Handle slow app launch on fedora 39 From: Cole Robinson crobinso@redhat.com Sun Mar 3 10:17:02 2024 -0500 Date: Sun Mar 3 10:43:30 2024 -0500: Git: 0c899a7ccd246a6e444c6827e85bbc49fb186362 Not quite sure what's going on here, I think it has something to do with slowness when the accessibility bus is being polled. Add some infrastructure to increase the timeout while we wait for the app to pop up Signed-off-by: Cole Robinson <crobinso@redhat.com> diff --git a/tests/uitests/lib/app.py b/tests/uitests/lib/app.py index 672b5ced..9c4bfbf5 100644 --- a/tests/uitests/lib/app.py +++ b/tests/uitests/lib/app.py @@ -347,6 +347,11 @@ class VMMDogtailApp(object): if check_already_running: self.error_if_already_running() self._proc = subprocess.Popen(cmd, stdout=stdout, stderr=stderr) - if not will_fail: + if will_fail: + return + + with utils.dogtail_timeout(10): + # On Fedora 39 sometimes app launch from the test suite + # takes a while for reasons I can't quite figure self._root = dogtail.tree.root.application("virt-manager") self._topwin = self.find_window(window_name) diff --git a/tests/uitests/lib/utils.py b/tests/uitests/lib/utils.py index 80ed3773..fdeac0a7 100644 --- a/tests/uitests/lib/utils.py +++ b/tests/uitests/lib/utils.py @@ -3,6 +3,8 @@ import time +import dogtail.config + def check(func, timeout=2): """ @@ -19,6 +21,26 @@ def check(func, timeout=2): time.sleep(interval) +class dogtail_timeout: + """ + Context helper to run a specific check with custom timeout, in seconds + """ + def __init__(self, timeout): + backoff = dogtail.config.config.searchBackoffDuration + self._tmpval = int(timeout / backoff) + self._origval = dogtail.config.config.searchCutoffCount + + def _set(self, val): + dogtail.config.config.searchCutoffCount = val + + def __enter__(self): + self._set(self._tmpval) + return self + + def __exit__(self, exc_type, exc_val, exc_tb): + self._set(self._origval) + + def walkUIList(app, win, lst, error_cb, reverse=False): """ Toggle down through a UI list like addhardware, net/storage/iface
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor