diff options
author | Robert Scott <code@humanleg.org.uk> | 2023-04-13 23:42:13 +0100 |
---|---|---|
committer | Robert Scott <code@humanleg.org.uk> | 2023-04-14 00:26:58 +0100 |
commit | 95e44ea66827853dae277e6974e17842869d0288 (patch) | |
tree | 69f6ddae3a16ac5a3c5bfc14f2d6377d83b487f3 | |
parent | 99910f07fb677c46823258eb38168409095f8910 (diff) | |
download | nixpkgs-95e44ea66827853dae277e6974e17842869d0288.tar nixpkgs-95e44ea66827853dae277e6974e17842869d0288.tar.gz nixpkgs-95e44ea66827853dae277e6974e17842869d0288.tar.bz2 nixpkgs-95e44ea66827853dae277e6974e17842869d0288.tar.lz nixpkgs-95e44ea66827853dae277e6974e17842869d0288.tar.xz nixpkgs-95e44ea66827853dae277e6974e17842869d0288.tar.zst nixpkgs-95e44ea66827853dae277e6974e17842869d0288.zip |
libde265: add tests.test-corpus-decode
based on libde265's own test files
-rw-r--r-- | pkgs/development/libraries/libde265/default.nix | 10 | ||||
-rw-r--r-- | pkgs/development/libraries/libde265/test-corpus-decode.nix | 48 |
2 files changed, 56 insertions, 2 deletions
diff --git a/pkgs/development/libraries/libde265/default.nix b/pkgs/development/libraries/libde265/default.nix index e75393fd919..c7a5a85ae6b 100644 --- a/pkgs/development/libraries/libde265/default.nix +++ b/pkgs/development/libraries/libde265/default.nix @@ -5,6 +5,8 @@ , autoreconfHook , pkg-config +, callPackage + # for passthru.tests , imagemagick , libheif @@ -12,7 +14,7 @@ , gst_all_1 }: -stdenv.mkDerivation rec { +stdenv.mkDerivation (finalAttrs: rec { version = "1.0.11"; pname = "libde265"; @@ -43,6 +45,10 @@ stdenv.mkDerivation rec { passthru.tests = { inherit imagemagick libheif imlib2Full; inherit (gst_all_1) gst-plugins-bad; + + test-corpus-decode = callPackage ./test-corpus-decode.nix { + libde265 = finalAttrs.finalPackage; + }; }; meta = { @@ -52,4 +58,4 @@ stdenv.mkDerivation rec { platforms = lib.platforms.unix; maintainers = with lib.maintainers; [ gebner ]; }; -} +}) diff --git a/pkgs/development/libraries/libde265/test-corpus-decode.nix b/pkgs/development/libraries/libde265/test-corpus-decode.nix new file mode 100644 index 00000000000..763c93e6a99 --- /dev/null +++ b/pkgs/development/libraries/libde265/test-corpus-decode.nix @@ -0,0 +1,48 @@ +{ lib +, stdenv +, fetchFromGitHub +, libde265 +}: + +stdenv.mkDerivation { + pname = "libde265-test-corpus-decode"; + version = "unstable-2020-02-19"; + + src = fetchFromGitHub { + owner = "strukturag"; + repo = "libde265-data"; + rev = "bdfdfdbe682f514c5185c270c74eac42731a7fa8"; + sha256 = "sha256-fOgu7vMoyH30Zzbkfm4a6JVDZtYLO/0R2syC2Wux+Z8="; + }; + + dontConfigure = true; + dontBuild = true; + + doCheck = true; + nativeCheckInputs = [ libde265 ]; + # based on invocations in https://github.com/strukturag/libde265/blob/0b1752abff97cb542941d317a0d18aa50cb199b1/scripts/ci-run.sh + checkPhase = '' + echo "Single-threaded:" + find . -name '*.bin' | while read f; do + echo "Decoding $f" + dec265 -q -c $f + dec265 -0 -q -c $f + dec265 -q --disable-deblocking --disable-sao $f + done + echo "Multi-threaded:" + find RandomAccess/ -name '*.bin' | while read f; do + echo "Decoding $f" + dec265 -t 4 -q -c $f + dec265 -t 4 -0 -q -c $f + dec265 -t 4 -q --disable-deblocking --disable-sao $f + done + ''; + # a larger corpus of files can be found + # as an ubuntu package libde265-teststreams @ + # https://launchpad.net/~strukturag/+archive/ubuntu/libde265/+packages + # but it is *much* larger + + installPhase = '' + touch $out + ''; +} |