diff --git a/nixos/tests/ringboard.nix b/nixos/tests/ringboard.nix index a0bd26c25c51..96dc759fbf29 100644 --- a/nixos/tests/ringboard.nix +++ b/nixos/tests/ringboard.nix @@ -6,7 +6,7 @@ }: { name = "ringboard"; - meta = { inherit (pkgs.ringboard.meta) maintainers; }; + meta.maintainers = pkgs.ringboard.meta.maintainers ++ (with lib.maintainers; [ h7x4 ]); nodes.machine = { imports = [ @@ -17,12 +17,14 @@ test-support.displayManager.auto.user = "alice"; services.xserver.displayManager.sessionCommands = '' - '${lib.getExe pkgs.gedit}' & + '${lib.getExe pkgs.gedit}' my_document & ''; services.ringboard.x11.enable = true; }; + enableOCR = true; + testScript = { nodes, ... }: let @@ -31,7 +33,8 @@ '' @polling_condition def gedit_running(): - machine.succeed("pgrep gedit") + "Check that gedit is running and visible to the user" + machine.wait_for_text("my_document") with subtest("Wait for service startup"): machine.wait_for_unit("graphical.target") @@ -40,10 +43,12 @@ with subtest("Ensure clipboard is monitored"): with gedit_running: # type: ignore[union-attr] - machine.send_chars("Hello world!") + machine.send_chars("Hello world!", delay=0.1) + machine.sleep(1) machine.send_key("ctrl-a") + machine.sleep(1) machine.send_key("ctrl-c") - machine.wait_for_console_text("Small selection transfer complete") - machine.succeed("su - '${user}' -c 'ringboard search Hello | grep world!'") + machine.wait_until_succeeds("su - '${user}' -c 'journalctl --user -u ringboard-listener.service --grep \'Small selection transfer complete\'''", timeout=60) + machine.succeed("su - '${user}' -c 'ringboard search Hello | grep world!'") ''; }