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