postgresqlPackages.pgjwt: make passthru.tests work with correct package

Same reasoning as commit before.
This commit is contained in:
Wolfgang Walther 2024-11-01 19:34:26 +01:00
parent ecffab1fda
commit 0af934adf7
No known key found for this signature in database
GPG key ID: B39893FA5F65CAE1
2 changed files with 45 additions and 30 deletions

View file

@ -1,32 +1,47 @@
import ./make-test-python.nix ({ pkgs, lib, ...}:
{ system ? builtins.currentSystem
, config ? {}
, pkgs ? import ../.. { inherit system config; }
}:
with pkgs; {
name = "pgjwt";
meta = with lib.maintainers; {
maintainers = [ spinus willibutz ];
};
with import ../lib/testing-python.nix { inherit system pkgs; };
nodes = {
master = { ... }:
{
services.postgresql = {
enable = true;
extraPlugins = ps: with ps; [ pgjwt pgtap ];
let
inherit (pkgs) lib;
makePgjwtTest = postgresqlPackage:
makeTest {
name = "pgjwt-${postgresqlPackage.name}";
meta = with lib.maintainers; {
maintainers = [ spinus willibutz ];
};
};
};
testScript = { nodes, ... }:
let
sqlSU = "${nodes.master.services.postgresql.superUser}";
pgProve = "${pkgs.perlPackages.TAPParserSourceHandlerpgTAP}";
inherit (nodes.master.services.postgresql.package.pkgs) pgjwt;
in
''
start_all()
master.wait_for_unit("postgresql")
master.succeed(
"${pkgs.sudo}/bin/sudo -u ${sqlSU} ${pgProve}/bin/pg_prove -d postgres -v -f ${pgjwt.src}/test.sql"
)
'';
})
nodes = {
master = { ... }:
{
services.postgresql = {
enable = true;
package = postgresqlPackage;
extraPlugins = ps: with ps; [ pgjwt pgtap ];
};
};
};
testScript = { nodes, ... }:
let
sqlSU = "${nodes.master.services.postgresql.superUser}";
pgProve = "${pkgs.perlPackages.TAPParserSourceHandlerpgTAP}";
inherit (nodes.master.services.postgresql.package.pkgs) pgjwt;
in
''
start_all()
master.wait_for_unit("postgresql")
master.succeed(
"${pkgs.sudo}/bin/sudo -u ${sqlSU} ${pgProve}/bin/pg_prove -d postgres -v -f ${pgjwt.src}/test.sql"
)
'';
};
in
lib.concatMapAttrs (n: p: { ${n} = makePgjwtTest p; }) pkgs.postgresqlVersions
// {
passthru.override = p: makePgjwtTest p;
}

View file

@ -19,8 +19,8 @@ stdenv.mkDerivation (finalAttrs: {
passthru.updateScript = unstableGitUpdater { };
passthru.tests = {
inherit (nixosTests) pgjwt;
passthru.tests = lib.recurseIntoAttrs {
pgjwt = nixosTests.pgjwt.passthru.override postgresql;
extension = postgresqlTestExtension {
inherit (finalAttrs) finalPackage;