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