diff --git a/nixos/tests/all-tests.nix b/nixos/tests/all-tests.nix index 4fd1c64693ac..b63a2c7ccd0a 100644 --- a/nixos/tests/all-tests.nix +++ b/nixos/tests/all-tests.nix @@ -1454,7 +1454,7 @@ in tracee = handleTestOn [ "x86_64-linux" ] ./tracee.nix { }; trezord = runTest ./trezord.nix; trickster = runTest ./trickster.nix; - trilium-server = handleTestOn [ "x86_64-linux" ] ./trilium-server.nix { }; + trilium-server = runTestOn [ "x86_64-linux" ] ./trilium-server.nix; tsm-client-gui = runTest ./tsm-client-gui.nix; ttyd = runTest ./web-servers/ttyd.nix; tt-rss = runTest ./web-apps/tt-rss.nix; diff --git a/nixos/tests/trilium-server.nix b/nixos/tests/trilium-server.nix index e20e38610220..e3abcec85c46 100644 --- a/nixos/tests/trilium-server.nix +++ b/nixos/tests/trilium-server.nix @@ -1,55 +1,52 @@ -import ./make-test-python.nix ( - { ... }: - { - name = "trilium-server"; - nodes = { - default = { - services.trilium-server.enable = true; - }; - configured = { - services.trilium-server = { - enable = true; - dataDir = "/data/trilium"; - }; - }; - - nginx = { - services.trilium-server = { - enable = true; - nginx.enable = true; - nginx.hostName = "trilium.example.com"; - }; +{ + name = "trilium-server"; + nodes = { + default = { + services.trilium-server.enable = true; + }; + configured = { + services.trilium-server = { + enable = true; + dataDir = "/data/trilium"; }; }; - testScript = '' - start_all() + nginx = { + services.trilium-server = { + enable = true; + nginx.enable = true; + nginx.hostName = "trilium.example.com"; + }; + }; + }; - with subtest("by default works without configuration"): - default.wait_for_unit("trilium-server.service") + testScript = '' + start_all() - with subtest("by default available on port 8080"): - default.wait_for_unit("trilium-server.service") - default.wait_for_open_port(8080) - # we output to /dev/null here to avoid a python UTF-8 decode error - # but the check will still fail if the service doesn't respond - default.succeed("curl --fail -o /dev/null 127.0.0.1:8080") + with subtest("by default works without configuration"): + default.wait_for_unit("trilium-server.service") - with subtest("by default creates empty document"): - default.wait_for_unit("trilium-server.service") - default.succeed("test -f /var/lib/trilium/document.db") + with subtest("by default available on port 8080"): + default.wait_for_unit("trilium-server.service") + default.wait_for_open_port(8080) + # we output to /dev/null here to avoid a python UTF-8 decode error + # but the check will still fail if the service doesn't respond + default.succeed("curl --fail -o /dev/null 127.0.0.1:8080") - with subtest("configured with custom data store"): - configured.wait_for_unit("trilium-server.service") - configured.succeed("test -f /data/trilium/document.db") + with subtest("by default creates empty document"): + default.wait_for_unit("trilium-server.service") + default.succeed("test -f /var/lib/trilium/document.db") - with subtest("nginx with custom host name"): - nginx.wait_for_unit("trilium-server.service") - nginx.wait_for_unit("nginx.service") + with subtest("configured with custom data store"): + configured.wait_for_unit("trilium-server.service") + configured.succeed("test -f /data/trilium/document.db") - nginx.succeed( - "curl --resolve 'trilium.example.com:80:127.0.0.1' http://trilium.example.com/" - ) - ''; - } -) + with subtest("nginx with custom host name"): + nginx.wait_for_unit("trilium-server.service") + nginx.wait_for_unit("nginx.service") + + nginx.succeed( + "curl --resolve 'trilium.example.com:80:127.0.0.1' http://trilium.example.com/" + ) + ''; +}