1import ./make-test-python.nix ({ pkgs, lib, ...} :
2
3let
4 secretsConfigFile = pkgs.writeText "secrets.json" (builtins.toJSON {
5 securityKeys = {
6 "S0_Legacy" = "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA";
7 };
8 });
9in {
10 name = "zwave-js";
11 meta.maintainers = with lib.maintainers; [ graham33 ];
12
13 nodes = {
14 machine = { config, ... }: {
15 services.zwave-js = {
16 enable = true;
17 serialPort = "/dev/null";
18 extraFlags = ["--mock-driver"];
19 inherit secretsConfigFile;
20 };
21 };
22 };
23
24 testScript = ''
25 start_all()
26
27 machine.wait_for_unit("zwave-js.service")
28 machine.wait_for_open_port(3000)
29 machine.wait_until_succeeds("journalctl --since -1m --unit zwave-js --grep 'ZwaveJS server listening'")
30 '';
31})