nixos/gitea: simplify test
This reduces the length of the gitea-test by creating a single `makeGiteaTest` function which creates the configuration for a testcase with a given database driver.
This commit is contained in:
parent
34084d471e
commit
8264d7ed4c
|
@ -6,54 +6,18 @@
|
|||
with import ../lib/testing-python.nix { inherit system pkgs; };
|
||||
with pkgs.lib;
|
||||
|
||||
{
|
||||
mysql = makeTest {
|
||||
name = "gitea-mysql";
|
||||
meta.maintainers = with maintainers; [ aanderse kolaente ];
|
||||
|
||||
machine =
|
||||
{ config, pkgs, ... }:
|
||||
{ services.gitea.enable = true;
|
||||
services.gitea.database.type = "mysql";
|
||||
};
|
||||
|
||||
testScript = ''
|
||||
start_all()
|
||||
|
||||
machine.wait_for_unit("gitea.service")
|
||||
machine.wait_for_open_port(3000)
|
||||
machine.succeed("curl --fail http://localhost:3000/")
|
||||
'';
|
||||
};
|
||||
|
||||
postgres = makeTest {
|
||||
name = "gitea-postgres";
|
||||
meta.maintainers = [ maintainers.aanderse ];
|
||||
|
||||
machine =
|
||||
{ config, pkgs, ... }:
|
||||
{ services.gitea.enable = true;
|
||||
services.gitea.database.type = "postgres";
|
||||
};
|
||||
|
||||
testScript = ''
|
||||
start_all()
|
||||
|
||||
machine.wait_for_unit("gitea.service")
|
||||
machine.wait_for_open_port(3000)
|
||||
machine.succeed("curl --fail http://localhost:3000/")
|
||||
'';
|
||||
};
|
||||
|
||||
sqlite = makeTest {
|
||||
name = "gitea-sqlite";
|
||||
meta.maintainers = [ maintainers.aanderse ];
|
||||
|
||||
machine =
|
||||
{ config, pkgs, ... }:
|
||||
{ services.gitea.enable = true;
|
||||
services.gitea.disableRegistration = true;
|
||||
let
|
||||
supportedDbTypes = [ "mysql" "postgres" "sqlite3" ];
|
||||
makeGiteaTest = type: nameValuePair type (makeTest {
|
||||
name = "gitea-${type}";
|
||||
meta.maintainers = with maintainers; [ aanderse kolaente ma27 ];
|
||||
machine = { config, pkgs, ... }: {
|
||||
services.gitea = {
|
||||
enable = true;
|
||||
database = { inherit type; };
|
||||
disableRegistration = true;
|
||||
};
|
||||
};
|
||||
|
||||
testScript = ''
|
||||
start_all()
|
||||
|
@ -65,5 +29,7 @@ with pkgs.lib;
|
|||
"curl --fail http://localhost:3000/user/sign_up | grep 'Registration is disabled. Please contact your site administrator.'"
|
||||
)
|
||||
'';
|
||||
};
|
||||
}
|
||||
});
|
||||
in
|
||||
|
||||
listToAttrs (map makeGiteaTest supportedDbTypes)
|
||||
|
|
Loading…
Reference in a new issue