import ./make-test-python.nix ({ lib, ... }:
let
  port = 5678;
  webhookUrl = "http://example.com";
in
{
  name = "n8n";
  meta.maintainers = with lib.maintainers; [ freezeboy k900 ];

  nodes.machine =
    { pkgs, ... }:
    {
      services.n8n = {
        enable = true;
        webhookUrl = webhookUrl;
      };
    };

  testScript = ''
    machine.wait_for_unit("n8n.service")
    machine.wait_for_console_text("Editor is now accessible via")
    machine.succeed("curl --fail -vvv http://localhost:${toString port}/")
    machine.succeed("grep -qF ${webhookUrl} /etc/systemd/system/n8n.service")
  '';
})
