nixos/tests/chromium: Fix another potential race condition

The create_new_win() function could open multiple windows when used
incorrectly. This change makes sure that a new window will only be
created if the main window could be selected successfully.

This also ignores the out return values as they're never used.
This commit is contained in:
Michael Weiss 2021-01-23 12:06:09 +01:00
parent a6f6f739c8
commit 86897c8f63
No known key found for this signature in database
GPG Key ID: 5BE487C4D4771D83

View File

@ -77,7 +77,7 @@ mapAttrs (channel: chromiumPkg: makeTest rec {
def create_new_win():
with machine.nested("Creating a new Chromium window"):
machine.execute(
status, _ = machine.execute(
ru(
"${xdo "new-window" ''
search --onlyvisible --name "startup done"
@ -86,13 +86,14 @@ mapAttrs (channel: chromiumPkg: makeTest rec {
''}"
)
)
machine.execute(
ru(
"${xdo "new-window" ''
key Ctrl+n
''}"
if status == 0:
machine.execute(
ru(
"${xdo "new-window" ''
key Ctrl+n
''}"
)
)
)
def close_win():
@ -115,7 +116,7 @@ mapAttrs (channel: chromiumPkg: makeTest rec {
)
)
for _ in range(1, 20):
status, out = machine.execute(
status, _ = machine.execute(
ru(
"${xdo "wait-for-close" ''
search --onlyvisible --name "new tab"
@ -134,7 +135,7 @@ mapAttrs (channel: chromiumPkg: makeTest rec {
ret = False
with machine.nested("Waiting for new Chromium window to appear"):
for _ in range(1, 20):
status, out = machine.execute(
status, _ = machine.execute(
ru(
"${xdo "wait-for-window" ''
search --onlyvisible --name "new tab"