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; { with import ../lib/testing-python.nix { inherit system pkgs; };
name = "pgjwt";
meta = with lib.maintainers; {
maintainers = [ spinus willibutz ];
};
nodes = { let
master = { ... }: inherit (pkgs) lib;
{
services.postgresql = { makePgjwtTest = postgresqlPackage:
enable = true; makeTest {
extraPlugins = ps: with ps; [ pgjwt pgtap ]; name = "pgjwt-${postgresqlPackage.name}";
meta = with lib.maintainers; {
maintainers = [ spinus willibutz ];
}; };
};
};
testScript = { nodes, ... }: nodes = {
let master = { ... }:
sqlSU = "${nodes.master.services.postgresql.superUser}"; {
pgProve = "${pkgs.perlPackages.TAPParserSourceHandlerpgTAP}"; services.postgresql = {
inherit (nodes.master.services.postgresql.package.pkgs) pgjwt; enable = true;
in package = postgresqlPackage;
'' extraPlugins = ps: with ps; [ pgjwt pgtap ];
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"
) 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.updateScript = unstableGitUpdater { };
passthru.tests = { passthru.tests = lib.recurseIntoAttrs {
inherit (nixosTests) pgjwt; pgjwt = nixosTests.pgjwt.passthru.override postgresql;
extension = postgresqlTestExtension { extension = postgresqlTestExtension {
inherit (finalAttrs) finalPackage; inherit (finalAttrs) finalPackage;