diff --git a/pkgs/servers/sql/postgresql/pgtap/default.nix b/pkgs/servers/sql/postgresql/pgtap/default.nix new file mode 100644 index 000000000000..b17446ca7786 --- /dev/null +++ b/pkgs/servers/sql/postgresql/pgtap/default.nix @@ -0,0 +1,32 @@ +{ stdenv, fetchFromGitHub, postgresql, perl, perlPackages, which }: + +stdenv.mkDerivation rec { + name = "pgtap-${version}"; + version = "0.97.0"; + + src = fetchFromGitHub { + owner = "theory"; + repo = "pgtap"; + rev = "v${version}"; + sha256 = "1vzc8pxzi0rbywmrvx7i5awngsvzcz75i4jl9bk2vqr223chax6f"; + }; + + nativeBuildInputs = [ postgresql perl perlPackages.TAPParserSourceHandlerpgTAP which ]; + + installPhase = '' + install -D {sql/pgtap--${version}.sql,pgtap.control} -t $out/share/extension + ''; + + meta = with stdenv.lib; { + description = "pgTAP is a unit testing framework for PostgreSQL"; + longDescription = '' + pgTAP is a unit testing framework for PostgreSQL written in PL/pgSQL and PL/SQL. + It includes a comprehensive collection of TAP-emitting assertion functions, + as well as the ability to integrate with other TAP-emitting test frameworks. + It can also be used in the xUnit testing style. + ''; + maintainers = with maintainers; [ willibutz ]; + homepage = http://pgtap.org; + inherit (postgresql.meta) platforms; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index c945bbe40609..2b7803c61319 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -2475,6 +2475,8 @@ with pkgs; pgjwt = callPackage ../servers/sql/postgresql/pgjwt {}; + pgtap = callPackage ../servers/sql/postgresql/pgtap {}; + pigz = callPackage ../tools/compression/pigz { }; pixz = callPackage ../tools/compression/pixz { };