nixos kde5: improve test

IceWM is not part of KDE 5 and is now no longer part of the test. KDE 5
applications: Dolphin, System Monitor, and System Settings are started
in this test.

+32 -9
+32 -9
nixos/tests/sddm-kde5.nix
··· 1 - import ./make-test.nix ({ pkgs, ...} : { 1 + import ./make-test.nix ({ pkgs, ...} : 2 + 3 + { 2 4 name = "sddm"; 3 5 meta = with pkgs.stdenv.lib.maintainers; { 4 6 maintainers = [ ttuegel ]; ··· 6 8 7 9 machine = { lib, ... }: { 8 10 imports = [ ./common/user-account.nix ]; 11 + virtualisation.memorySize = 1024; 9 12 services.xserver.enable = true; 10 13 services.xserver.displayManager.sddm = { 11 14 enable = true; ··· 14 17 user = "alice"; 15 18 }; 16 19 }; 17 - services.xserver.windowManager.default = "icewm"; 18 - services.xserver.windowManager.icewm.enable = true; 19 - services.xserver.desktopManager.default = "none"; 20 20 services.xserver.desktopManager.kde5.enable = true; 21 21 }; 22 22 23 23 enableOCR = true; 24 24 25 - testScript = { nodes, ... }: '' 26 - startAll; 27 - $machine->waitForFile("/home/alice/.Xauthority"); 28 - $machine->succeed("xauth merge ~alice/.Xauthority"); 29 - $machine->waitForWindow("^IceWM "); 25 + testScript = { nodes, ... }: 26 + let xdo = "${pkgs.xdotool}/bin/xdotool"; in 27 + '' 28 + sub krunner { 29 + my ($win,) = @_; 30 + $machine->execute("${xdo} key Alt+F2 sleep 1 type $win"); 31 + $machine->execute("${xdo} search --sync --onlyvisible --class krunner sleep 5 key Return"); 32 + } 33 + 34 + $machine->waitUntilSucceeds("pgrep plasmashell"); 35 + $machine->succeed("xauth merge ~alice/.Xauthority"); 36 + $machine->waitForWindow(qr/Desktop.*/); 37 + 38 + # Check that logging in has given the user ownership of devices. 39 + $machine->succeed("getfacl /dev/snd/timer | grep -q alice"); 40 + 41 + krunner("dolphin"); 42 + $machine->waitForWindow(qr/.*Dolphin/); 43 + 44 + krunner("konsole"); 45 + $machine->waitForWindow(qr/.*Konsole/); 46 + 47 + krunner("systemsettings5"); 48 + $machine->waitForWindow(qr/.*Settings/); 49 + $machine->sleep(20); 50 + 51 + $machine->execute("${xdo} key Alt+F1 sleep 10"); 52 + $machine->screenshot("screen"); 30 53 ''; 31 54 })