{ system ? builtins.currentSystem, pkgs, lib ? pkgs.lib, }: let inherit (import ../lib/testing-python.nix { inherit system pkgs; }) makeTest; inherit (lib) recursiveUpdate; baseTestConfig = { meta.maintainers = with lib.maintainers; [ ratcornu ]; nodes.machine = { pkgs, ... }: { services.suwayomi-server = { enable = true; settings.server.port = 1234; }; }; testScript = '' machine.wait_for_unit("suwayomi-server.service") machine.wait_for_open_port(1234) machine.succeed("curl --fail http://localhost:1234/") ''; }; in { without-auth = makeTest ( recursiveUpdate baseTestConfig { name = "suwayomi-server-without-auth"; } ); with-auth = makeTest ( recursiveUpdate baseTestConfig { name = "suwayomi-server-with-auth"; nodes.machine = { pkgs, ... }: { services.suwayomi-server = { enable = true; settings.server = { port = 1234; basicAuthEnabled = true; basicAuthUsername = "alice"; basicAuthPasswordFile = pkgs.writeText "snakeoil-pass.txt" "pass"; }; }; }; } ); }