diff --git a/nixos/tests/lightdm.nix b/nixos/tests/lightdm.nix new file mode 100644 index 000000000000..dba20a49dbd6 --- /dev/null +++ b/nixos/tests/lightdm.nix @@ -0,0 +1,25 @@ +import ./make-test.nix { + name = "lightdm"; + + machine = { lib, ... }: { + imports = [ ./common/user-account.nix ]; + services.xserver.enable = true; + services.xserver.displayManager.lightdm.enable = true; + services.xserver.windowManager.default = "icewm"; + services.xserver.windowManager.icewm.enable = true; + services.xserver.desktopManager.default = "none"; + }; + + enableOCR = true; + + testScript = { nodes, ... }: let + user = nodes.machine.config.users.extraUsers.alice; + in '' + startAll; + $machine->waitForText(qr/${user.description}/); + $machine->screenshot("lightdm"); + $machine->sendChars("${user.password}\n"); + $machine->waitForText(qr/^\d{2}(?::\d{2}){2} (?:AM|PM)$/m); + $machine->screenshot("session"); + ''; +}