at 25.11-pre 1.7 kB view raw
1import ./make-test-python.nix ( 2 { pkgs, lib, ... }: 3 { 4 name = "deepin"; 5 6 meta.maintainers = lib.teams.deepin.members; 7 8 nodes.machine = 9 { ... }: 10 { 11 imports = [ 12 ./common/user-account.nix 13 ]; 14 15 virtualisation.memorySize = 2048; 16 17 services.xserver.enable = true; 18 19 services.xserver.displayManager = { 20 lightdm.enable = true; 21 autoLogin = { 22 enable = true; 23 user = "alice"; 24 }; 25 }; 26 27 services.xserver.desktopManager.deepin.enable = true; 28 }; 29 30 testScript = 31 { nodes, ... }: 32 let 33 user = nodes.machine.users.users.alice; 34 in 35 '' 36 with subtest("Wait for login"): 37 machine.wait_for_x() 38 machine.wait_for_file("${user.home}/.Xauthority") 39 machine.succeed("xauth merge ${user.home}/.Xauthority") 40 41 with subtest("Check that logging in has given the user ownership of devices"): 42 machine.succeed("getfacl -p /dev/snd/timer | grep -q ${user.name}") 43 44 with subtest("Check if Deepin session components actually start"): 45 machine.wait_until_succeeds("pgrep -f dde-session-daemon") 46 machine.wait_for_window("dde-session-daemon") 47 machine.wait_until_succeeds("pgrep -f dde-desktop") 48 machine.wait_for_window("dde-desktop") 49 50 with subtest("Open deepin-terminal"): 51 machine.succeed("su - ${user.name} -c 'DISPLAY=:0 deepin-terminal >&2 &'") 52 machine.wait_for_window("deepin-terminal") 53 machine.sleep(20) 54 machine.screenshot("screen") 55 ''; 56 } 57)