nixosTests/rss-bridge: improve and add caddy

This commit is contained in:
Felix Buehler 2025-02-03 22:25:20 +01:00
parent 3cade1b5ac
commit 874d00ecf4
6 changed files with 62 additions and 24 deletions

View File

@ -921,7 +921,7 @@ in {
rshim = handleTest ./rshim.nix {};
rspamd = handleTest ./rspamd.nix {};
rspamd-trainer = handleTest ./rspamd-trainer.nix {};
rss-bridge = handleTest ./web-apps/rss-bridge.nix {};
rss-bridge = handleTest ./web-apps/rss-bridge {};
rss2email = handleTest ./rss2email.nix {};
rstudio-server = handleTest ./rstudio-server.nix {};
rsyncd = handleTest ./rsyncd.nix {};

View File

@ -1,22 +0,0 @@
{ pkgs, ... }:
{
name = "rss-bridge";
meta.maintainers = with pkgs.lib.maintainers; [ mynacol ];
nodes.machine =
{ ... }:
{
services.rss-bridge = {
enable = true;
};
};
testScript = ''
start_all()
machine.wait_for_unit("nginx.service")
machine.wait_for_unit("phpfpm-rss-bridge.service")
# check for successful feed download
machine.succeed("curl -sS -f 'http://localhost/?action=display&bridge=DemoBridge&context=testCheckbox&format=Atom'")
'';
}

View File

@ -0,0 +1,28 @@
import ../../make-test-python.nix (
{ lib, pkgs, ... }:
{
name = "rss-bridge-caddy";
meta.maintainers = with lib.maintainers; [ mynacol ];
nodes.machine =
{ ... }:
{
services.rss-bridge = {
enable = true;
webserver = "caddy";
virtualHost = "localhost:80";
config.system.enabled_bridges = [ "DemoBridge" ];
};
};
testScript = ''
machine.wait_for_unit("caddy.service")
machine.wait_for_unit("phpfpm-rss-bridge.service")
machine.wait_for_open_port(80)
# check for successful feed download
response = machine.succeed("curl -f 'http://localhost:80/?action=display&bridge=DemoBridge&context=testCheckbox&format=Atom'")
assert '<title type="html">Test</title>' in response, "Feed didn't load successfully"
'';
}
)

View File

@ -0,0 +1,5 @@
{ system, pkgs, ... }:
{
nginx = import ./nginx.nix { inherit system pkgs; };
caddy = import ./caddy.nix { inherit system pkgs; };
}

View File

@ -0,0 +1,27 @@
import ../../make-test-python.nix (
{ lib, pkgs, ... }:
{
name = "rss-bridge-nginx";
meta.maintainers = with lib.maintainers; [ mynacol ];
nodes.machine =
{ ... }:
{
services.rss-bridge = {
enable = true;
webserver = "nginx";
config.system.enabled_bridges = [ "DemoBridge" ];
};
};
testScript = ''
machine.wait_for_unit("nginx.service")
machine.wait_for_unit("phpfpm-rss-bridge.service")
machine.wait_for_open_port(80)
# check for successful feed download
response = machine.succeed("curl -f 'http://localhost:80/?action=display&bridge=DemoBridge&context=testCheckbox&format=Atom'")
assert '<title type="html">Test</title>' in response, "Feed didn't load successfully"
'';
}
)

View File

@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
passthru = {
tests = {
basic-functionality = nixosTests.rss-bridge;
inherit (nixosTests.rss-bridge) caddy nginx;
};
updateScript = nix-update-script { };
};