about summary refs log tree commit diff
path: root/nixos/tests/plotinus.nix
blob: b6ebab9b019895b631d9040ab0f05f0ca42a6dc1 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
import ./make-test-python.nix ({ pkgs, ... }: {
  name = "plotinus";
  meta = {
    maintainers = pkgs.plotinus.meta.maintainers;
  };

  nodes.machine =
    { pkgs, ... }:

    { imports = [ ./common/x11.nix ];
      programs.plotinus.enable = true;
      environment.systemPackages = [ pkgs.gnome.gnome-calculator pkgs.xdotool ];
    };

  testScript = ''
    machine.wait_for_x()
    machine.succeed("gnome-calculator >&2 &")
    machine.wait_for_window("gnome-calculator")
    machine.succeed(
        "xdotool search --sync --onlyvisible --class gnome-calculator "
        + "windowfocus --sync key --clearmodifiers --delay 1 'ctrl+shift+p'"
    )
    machine.sleep(5)  # wait for the popup
    machine.succeed("xdotool key --delay 100 p r e f e r e n c e s Return")
    machine.wait_for_window("Preferences")
    machine.screenshot("screen")
  '';
})