diff options
author | Mario Rodas <marsam@users.noreply.github.com> | 2023-12-24 12:59:22 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-12-24 12:59:22 -0500 |
commit | 6dca6ac7b9a5d8dee7905a2fab52da1cebfc1188 (patch) | |
tree | b76c68d7bf2a1e41b1e68c4dbdf52d8a397b55af | |
parent | 4cf470c97cd9d78c31610fdf0806e402a3ffb667 (diff) | |
parent | fc92e8a6893fa38534edc1fdecd843b65079f570 (diff) |
Merge pull request #276486 from marsam/update-pgtap
postgresqlPackages.pgtap: 1.3.0 -> 1.3.1
-rw-r--r-- | pkgs/servers/sql/postgresql/ext/pgtap.nix | 41 |
1 files changed, 38 insertions, 3 deletions
diff --git a/pkgs/servers/sql/postgresql/ext/pgtap.nix b/pkgs/servers/sql/postgresql/ext/pgtap.nix index 24c0e3e59b8a7..c51de681a3cca 100644 --- a/pkgs/servers/sql/postgresql/ext/pgtap.nix +++ b/pkgs/servers/sql/postgresql/ext/pgtap.nix @@ -1,22 +1,57 @@ -{ lib, stdenv, fetchFromGitHub, postgresql, perl, perlPackages, which }: +{ lib +, stdenv +, fetchFromGitHub +, perl +, perlPackages +, postgresql +, postgresqlTestHook +, which +}: stdenv.mkDerivation rec { pname = "pgtap"; - version = "1.3.0"; + version = "1.3.1"; src = fetchFromGitHub { owner = "theory"; repo = "pgtap"; rev = "v${version}"; - sha256 = "sha256-RaafUnrMRbvyf2m2Z+tK6XxVXDGnaOkYkSMxIJLnf6A="; + sha256 = "sha256-HOgCb1CCfsfbMbMMWuzFJ4B8CfVm9b0sI2zBY3/kqyI="; }; nativeBuildInputs = [ postgresql perl perlPackages.TAPParserSourceHandlerpgTAP which ]; installPhase = '' + install -D src/pgtap.so -t $out/lib install -D {sql/pgtap--${version}.sql,pgtap.control} -t $out/share/postgresql/extension ''; + passthru.tests.extension = stdenv.mkDerivation { + name = "pgtap-test"; + dontUnpack = true; + doCheck = true; + buildInputs = [ postgresqlTestHook ]; + nativeCheckInputs = [ (postgresql.withPackages (ps: [ ps.pgtap ])) ]; + postgresqlTestUserOptions = "LOGIN SUPERUSER"; + passAsFile = [ "sql" ]; + sql = '' + CREATE EXTENSION pgtap; + + BEGIN; + SELECT plan(1); + SELECT pass('Test passed'); + SELECT * FROM finish(); + ROLLBACK; + ''; + failureHook = "postgresqlStop"; + checkPhase = '' + runHook preCheck + psql -a -v ON_ERROR_STOP=1 -f $sqlPath + runHook postCheck + ''; + installPhase = "touch $out"; + }; + meta = with lib; { description = "A unit testing framework for PostgreSQL"; longDescription = '' |