core/pkgs/build-support/setup-hooks/postgresql-test-hook/test.nix
2024-06-30 09:16:52 +01:00

35 lines
674 B
Nix

{
postgresql,
postgresqlTestHook,
stdenv,
}:
stdenv.mkDerivation {
name = "postgresql-test-hook-test";
buildInputs = [ postgresqlTestHook ];
nativeCheckInputs = [ postgresql ];
dontUnpack = true;
doCheck = true;
passAsFile = [ "sql" ];
sql = ''
CREATE TABLE hello (
message text
);
INSERT INTO hello VALUES ('it '||'worked');
SELECT * FROM hello;
'';
postgresqlTestSetupPost = ''
TEST_POST_HOOK_RAN=1
'';
checkPhase = ''
runHook preCheck
psql <$sqlPath | grep 'it worked'
TEST_RAN=1
runHook postCheck
'';
installPhase = ''
[[ $TEST_RAN == 1 && $TEST_POST_HOOK_RAN == 1 ]]
touch $out
'';
}