1 import ./make-test-python.nix ({ pkgs, ...} :
3 name = "enlightenment";
5 meta = with pkgs.lib.maintainers; {
6 maintainers = [ romildo ];
12 nodes.machine = { ... }:
14 imports = [ ./common/user-account.nix ];
15 services.xserver.enable = true;
16 services.xserver.desktopManager.enlightenment.enable = true;
17 services.xserver.displayManager = {
18 lightdm.enable = true;
24 environment.systemPackages = [ pkgs.xdotool ];
25 services.acpid.enable = true;
26 services.connman.enable = true;
27 services.connman.package = pkgs.connmanMinimal;
32 testScript = { nodes, ... }: let
33 user = nodes.machine.config.users.users.alice;
35 with subtest("Ensure x starts"):
37 machine.wait_for_file("${user.home}/.Xauthority")
38 machine.succeed("xauth merge ${user.home}/.Xauthority")
40 with subtest("Check that logging in has given the user ownership of devices"):
41 machine.succeed("getfacl -p /dev/snd/timer | grep -q ${user.name}")
43 with subtest("First time wizard"):
44 machine.wait_for_text("Default") # Language
45 machine.screenshot("wizard1")
46 machine.succeed("xdotool mousemove 512 740 click 1") # Next
47 machine.screenshot("wizard2")
49 machine.wait_for_text("English") # Keyboard (default)
50 machine.screenshot("wizard3")
51 machine.succeed("xdotool mousemove 512 740 click 1") # Next
53 machine.wait_for_text("Standard") # Profile (default)
54 machine.screenshot("wizard4")
55 machine.succeed("xdotool mousemove 512 740 click 1") # Next
57 machine.wait_for_text("Title") # Sizing (default)
58 machine.screenshot("wizard5")
59 machine.succeed("xdotool mousemove 512 740 click 1") # Next
61 machine.wait_for_text("clicked") # Windows Focus
62 machine.succeed("xdotool mousemove 512 370 click 1") # Click
63 machine.screenshot("wizard6")
64 machine.succeed("xdotool mousemove 512 740 click 1") # Next
66 machine.wait_for_text("Connman") # Network Management (default)
67 machine.screenshot("wizard7")
68 machine.succeed("xdotool mousemove 512 740 click 1") # Next
70 machine.wait_for_text("BlusZ") # Bluetooth Management (default)
71 machine.screenshot("wizard8")
72 machine.succeed("xdotool mousemove 512 740 click 1") # Next
74 machine.wait_for_text("OpenGL") # Compositing (default)
75 machine.screenshot("wizard9")
76 machine.succeed("xdotool mousemove 512 740 click 1") # Next
78 machine.wait_for_text("update") # Updates
79 machine.succeed("xdotool mousemove 512 495 click 1") # Disable
80 machine.screenshot("wizard10")
81 machine.succeed("xdotool mousemove 512 740 click 1") # Next
83 machine.wait_for_text("taskbar") # Taskbar
84 machine.succeed("xdotool mousemove 480 410 click 1") # Enable
85 machine.screenshot("wizard11")
86 machine.succeed("xdotool mousemove 512 740 click 1") # Next
88 machine.wait_for_text("Home") # The desktop
89 machine.screenshot("wizard12")
91 with subtest("Run Terminology"):
92 machine.succeed("terminology >&2 &")
94 machine.send_chars("ls --color -alF\n")
96 machine.screenshot("terminology")