diff options
Diffstat (limited to 'nixos/tests/mumble.nix')
-rw-r--r-- | nixos/tests/mumble.nix | 24 |
1 files changed, 18 insertions, 6 deletions
diff --git a/nixos/tests/mumble.nix b/nixos/tests/mumble.nix index e9b6d14c6a1..717f3c78928 100644 --- a/nixos/tests/mumble.nix +++ b/nixos/tests/mumble.nix @@ -5,17 +5,25 @@ let imports = [ ./common/x11.nix ]; environment.systemPackages = [ pkgs.mumble ]; }; + + # outside of tests, this file should obviously not come from the nix store + envFile = pkgs.writeText "nixos-test-mumble-murmurd.env" '' + MURMURD_PASSWORD=testpassword + ''; + in { name = "mumble"; - meta = with pkgs.stdenv.lib.maintainers; { + meta = with pkgs.lib.maintainers; { maintainers = [ thoughtpolice eelco ]; }; nodes = { server = { config, ... }: { - services.murmur.enable = true; + services.murmur.enable = true; services.murmur.registerName = "NixOS tests"; + services.murmur.password = "$MURMURD_PASSWORD"; + services.murmur.environmentFile = envFile; networking.firewall.allowedTCPPorts = [ config.services.murmur.port ]; }; @@ -30,8 +38,8 @@ in client1.wait_for_x() client2.wait_for_x() - client1.execute("mumble mumble://client1\@server/test &") - client2.execute("mumble mumble://client2\@server/test &") + client1.execute("mumble mumble://client1:testpassword\@server/test &") + client2.execute("mumble mumble://client2:testpassword\@server/test &") # cancel client audio configuration client1.wait_for_window(r"Audio Tuning Wizard") @@ -63,8 +71,12 @@ in client2.send_chars("y") # Find clients in logs - server.wait_until_succeeds("journalctl -eu murmur -o cat | grep -q client1") - server.wait_until_succeeds("journalctl -eu murmur -o cat | grep -q client2") + server.wait_until_succeeds( + "journalctl -eu murmur -o cat | grep -q 'client1.\+Authenticated'" + ) + server.wait_until_succeeds( + "journalctl -eu murmur -o cat | grep -q 'client2.\+Authenticated'" + ) server.sleep(5) # wait to get screenshot client1.screenshot("screen1") |