at master 1.7 kB view raw
1{ runTest }: 2{ 3 default = runTest { 4 name = "sddm"; 5 6 nodes.machine = { 7 imports = [ ./common/user-account.nix ]; 8 services.xserver.enable = true; 9 services.displayManager.sddm.enable = true; 10 services.displayManager.defaultSession = "none+icewm"; 11 services.xserver.windowManager.icewm.enable = true; 12 }; 13 14 enableOCR = true; 15 16 testScript = 17 { nodes, ... }: 18 let 19 user = nodes.machine.users.users.alice; 20 in 21 '' 22 start_all() 23 machine.wait_for_text("(?i)select your user") 24 machine.screenshot("sddm") 25 machine.send_chars("${user.password}\n") 26 machine.wait_for_file("/tmp/xauth_*") 27 machine.wait_until_succeeds("test -s /tmp/xauth_*") 28 machine.succeed("xauth merge /tmp/xauth_*") 29 machine.wait_for_window("^IceWM ") 30 ''; 31 }; 32 33 autoLogin = runTest ( 34 { lib, ... }: 35 { 36 name = "sddm-autologin"; 37 meta = with lib.maintainers; { 38 maintainers = [ ttuegel ]; 39 }; 40 41 nodes.machine = { 42 imports = [ ./common/user-account.nix ]; 43 services.xserver.enable = true; 44 services.displayManager = { 45 sddm.enable = true; 46 autoLogin = { 47 enable = true; 48 user = "alice"; 49 }; 50 }; 51 services.displayManager.defaultSession = "none+icewm"; 52 services.xserver.windowManager.icewm.enable = true; 53 }; 54 55 testScript = '' 56 start_all() 57 machine.wait_for_file("/tmp/xauth_*") 58 machine.wait_until_succeeds("test -s /tmp/xauth_*") 59 machine.succeed("xauth merge /tmp/xauth_*") 60 machine.wait_for_window("^IceWM ") 61 ''; 62 } 63 ); 64}