nixosTests.postgresql-wal2json: avoid manual imports

Same reasoning as commit before.
This commit is contained in:
Wolfgang Walther 2024-11-01 19:33:14 +01:00
parent 65ef7381c8
commit 319d82d5c2
No known key found for this signature in database
GPG Key ID: B39893FA5F65CAE1
2 changed files with 9 additions and 21 deletions

View File

@ -2,16 +2,12 @@
system ? builtins.currentSystem,
config ? { },
pkgs ? import ../.. { inherit system config; },
postgresql ? null,
}:
with import ../lib/testing-python.nix { inherit system pkgs; };
let
makeTest = import ./make-test-python.nix;
# Makes a test for a PostgreSQL package, given by name and looked up from `pkgs`.
makeTestAttribute = name: {
inherit name;
value = makePostgresqlWal2jsonTest pkgs."${name}";
};
inherit (pkgs) lib;
makePostgresqlWal2jsonTest =
postgresqlPackage:
@ -50,11 +46,7 @@ let
};
in
# By default, create one test per postgresql version
if postgresql == null then
builtins.listToAttrs (
map makeTestAttribute (builtins.attrNames (import ../../pkgs/servers/sql/postgresql pkgs))
)
# but if postgresql is set, we're being made as a passthru test for a specific postgres + wal2json version, just run one
else
makePostgresqlWal2jsonTest postgresql
lib.concatMapAttrs (n: p: { ${n} = makePostgresqlWal2jsonTest p; }) pkgs.postgresqlVersions
// {
passthru.override = p: makePostgresqlWal2jsonTest p;
}

View File

@ -4,6 +4,7 @@
callPackage,
fetchFromGitHub,
postgresql,
nixosTests,
}:
stdenv.mkDerivation rec {
@ -26,12 +27,7 @@ stdenv.mkDerivation rec {
install -D -t $out/share/postgresql/extension sql/*.sql
'';
passthru.tests.wal2json = lib.recurseIntoAttrs (
callPackage ../../../../../nixos/tests/postgresql-wal2json.nix {
inherit (stdenv) system;
inherit postgresql;
}
);
passthru.tests = nixosTests.postgresql-wal2json.passthru.override postgresql;
meta = with lib; {
description = "PostgreSQL JSON output plugin for changeset extraction";