Loading doc/hooks/postgresql-test-hook.section.md +6 −0 Original line number Diff line number Diff line Loading @@ -46,6 +46,12 @@ Bash-only variables: - `postgresqlEnableTCP`: set to `1` to enable TCP listening. Flaky; not recommended. - `postgresqlStartCommands`: defaults to `pg_ctl start`. ## Hooks {#sec-postgresqlTestHook-hooks} A number of additional hooks are ran in postgresqlTestHook - `postgresqlTestSetupPost`: ran after postgresql has been set up. ## TCP and the Nix sandbox {#sec-postgresqlTestHook-tcp} `postgresqlEnableTCP` relies on network sandboxing, which is not available on macOS and some custom Nix installations, resulting in flaky tests. Loading pkgs/build-support/setup-hooks/postgresql-test-hook/postgresql-test-hook.sh +2 −0 Original line number Diff line number Diff line Loading @@ -71,6 +71,8 @@ EOF header 'setting up postgresql' eval "$postgresqlTestSetupCommands" runHook postgresqlTestSetupPost } postgresqlStop() { Loading pkgs/build-support/setup-hooks/postgresql-test-hook/test.nix +4 −1 Original line number Diff line number Diff line Loading @@ -14,6 +14,9 @@ stdenv.mkDerivation { INSERT INTO hello VALUES ('it '||'worked'); SELECT * FROM hello; ''; postgresqlTestSetupPost = '' TEST_POST_HOOK_RAN=1 ''; checkPhase = '' runHook preCheck psql <$sqlPath | grep 'it worked' Loading @@ -21,7 +24,7 @@ stdenv.mkDerivation { runHook postCheck ''; installPhase = '' [[ $TEST_RAN == 1 ]] [[ $TEST_RAN == 1 && $TEST_POST_HOOK_RAN == 1 ]] touch $out ''; } Loading
doc/hooks/postgresql-test-hook.section.md +6 −0 Original line number Diff line number Diff line Loading @@ -46,6 +46,12 @@ Bash-only variables: - `postgresqlEnableTCP`: set to `1` to enable TCP listening. Flaky; not recommended. - `postgresqlStartCommands`: defaults to `pg_ctl start`. ## Hooks {#sec-postgresqlTestHook-hooks} A number of additional hooks are ran in postgresqlTestHook - `postgresqlTestSetupPost`: ran after postgresql has been set up. ## TCP and the Nix sandbox {#sec-postgresqlTestHook-tcp} `postgresqlEnableTCP` relies on network sandboxing, which is not available on macOS and some custom Nix installations, resulting in flaky tests. Loading
pkgs/build-support/setup-hooks/postgresql-test-hook/postgresql-test-hook.sh +2 −0 Original line number Diff line number Diff line Loading @@ -71,6 +71,8 @@ EOF header 'setting up postgresql' eval "$postgresqlTestSetupCommands" runHook postgresqlTestSetupPost } postgresqlStop() { Loading
pkgs/build-support/setup-hooks/postgresql-test-hook/test.nix +4 −1 Original line number Diff line number Diff line Loading @@ -14,6 +14,9 @@ stdenv.mkDerivation { INSERT INTO hello VALUES ('it '||'worked'); SELECT * FROM hello; ''; postgresqlTestSetupPost = '' TEST_POST_HOOK_RAN=1 ''; checkPhase = '' runHook preCheck psql <$sqlPath | grep 'it worked' Loading @@ -21,7 +24,7 @@ stdenv.mkDerivation { runHook postCheck ''; installPhase = '' [[ $TEST_RAN == 1 ]] [[ $TEST_RAN == 1 && $TEST_POST_HOOK_RAN == 1 ]] touch $out ''; }