Browse Source

tests/extra: add vm.run(..., gui=) argument

A convenient (and compatible) option to wait for user session before
starting the command.
Marek Marczykowski-Górecki 3 years ago
parent
commit
c425df6c57
1 changed files with 8 additions and 1 deletions
  1. 8 1
      qubes/tests/extra.py

+ 8 - 1
qubes/tests/extra.py

@@ -80,7 +80,14 @@ class VMWrapper(object):
         return self._loop.run_until_complete(self._vm.shutdown())
 
     def run(self, command, wait=False, user=None, passio_popen=False,
-            passio_stderr=False, **kwargs):
+            passio_stderr=False, gui=False, **kwargs):
+        if gui:
+            try:
+                self._loop.run_until_complete(
+                    self._vm.run_service_for_stdio('qubes.WaitForSession',
+                                                   user=user))
+            except subprocess.CalledProcessError as err:
+                return err.returncode
         if wait:
             try:
                 self._loop.run_until_complete(