summaryrefslogtreecommitdiffstats
path: root/nixos/tests/tuptime.nix
blob: cf10211c45a9bba2107e8c4eb37f7a4731a03358 (plain)
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
29
30
{ ... }:
{
  name = "tuptime";
  meta = {
    maintainers = [ ];
  };

  nodes.machine =
    { pkgs, ... }:
    {
      imports = [ ../modules/profiles/minimal.nix ];
      services.tuptime.enable = true;
    };

  testScript = ''
    # see if it starts
    start_all()
    machine.wait_for_unit("multi-user.target")
    machine.succeed("tuptime | grep 'System startups:[[:blank:]]*1'")
    machine.succeed("tuptime | grep 'System uptime:[[:blank:]]*100.0%'")
    machine.shutdown()

    # restart machine and see if it correctly reports the reboot
    machine.start()
    machine.wait_for_unit("multi-user.target")
    machine.succeed("tuptime | grep 'System startups:[[:blank:]]*2'")
    machine.succeed("tuptime | grep 'System shutdowns:[[:blank:]]*1 ok'")
    machine.shutdown()
  '';
}