From 569569666490524a99a1f64ee6f7f5ac18a9e609 Mon Sep 17 00:00:00 2001 From: Florian Klink Date: Thu, 23 May 2019 00:50:51 +0200 Subject: [PATCH] nixosTests.signal-desktop: add test --- nixos/tests/all-tests.nix | 1 + nixos/tests/signal-desktop.nix | 37 ++++++++++++++++++++++++++++++++++ 2 files changed, 38 insertions(+) create mode 100644 nixos/tests/signal-desktop.nix diff --git a/nixos/tests/all-tests.nix b/nixos/tests/all-tests.nix index c1c9e7e5037b..9bce49c9e302 100644 --- a/nixos/tests/all-tests.nix +++ b/nixos/tests/all-tests.nix @@ -222,6 +222,7 @@ in rxe = handleTest ./rxe.nix {}; samba = handleTest ./samba.nix {}; sddm = handleTest ./sddm.nix {}; + signal-desktop = handleTest ./signal-desktop.nix {}; simple = handleTest ./simple.nix {}; slim = handleTest ./slim.nix {}; slurm = handleTest ./slurm.nix {}; diff --git a/nixos/tests/signal-desktop.nix b/nixos/tests/signal-desktop.nix new file mode 100644 index 000000000000..605b9c3e1301 --- /dev/null +++ b/nixos/tests/signal-desktop.nix @@ -0,0 +1,37 @@ +import ./make-test.nix ({ pkgs, ...} : + +{ + name = "signal-desktop"; + meta = with pkgs.stdenv.lib.maintainers; { + maintainers = [ flokli ]; + }; + + machine = { ... }: + + { + imports = [ + ./common/user-account.nix + ./common/x11.nix + ]; + + services.xserver.enable = true; + services.xserver.displayManager.auto.user = "alice"; + environment.systemPackages = [ pkgs.signal-desktop ]; + }; + + enableOCR = true; + + testScript = { nodes, ... }: let + user = nodes.machine.config.users.users.alice; + in '' + startAll; + $machine->waitForX; + + # start signal desktop + $machine->execute("su - alice -c signal-desktop &"); + + # wait for the "Link your phone to Signal Desktop" message + $machine->waitForText(qr/Link your phone to Signal Desktop/); + $machine->screenshot("signal_desktop"); + ''; +})