From e9007b3e3ebc31db7ae893f325e3824e91fe85dd Mon Sep 17 00:00:00 2001 From: davidak Date: Fri, 6 Dec 2019 21:04:09 +0100 Subject: [PATCH] phoronix-test-suite: add tests --- .../misc/phoronix-test-suite/default.nix | 6 +++++- pkgs/tools/misc/phoronix-test-suite/tests.nix | 20 +++++++++++++++++++ 2 files changed, 25 insertions(+), 1 deletion(-) create mode 100644 pkgs/tools/misc/phoronix-test-suite/tests.nix diff --git a/pkgs/tools/misc/phoronix-test-suite/default.nix b/pkgs/tools/misc/phoronix-test-suite/default.nix index 2436bbe4381f2..ebd317724f617 100644 --- a/pkgs/tools/misc/phoronix-test-suite/default.nix +++ b/pkgs/tools/misc/phoronix-test-suite/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, php, which, gnused, makeWrapper, gnumake, gcc }: +{ stdenv, fetchurl, php, which, gnused, makeWrapper, gnumake, gcc, callPackage }: stdenv.mkDerivation rec { pname = "phoronix-test-suite"; @@ -19,6 +19,10 @@ stdenv.mkDerivation rec { --prefix PATH : ${stdenv.lib.makeBinPath [ gnumake gcc ]} ''; + passthru.tests = { + simple-execution = callPackage ./tests.nix { }; + }; + meta = with stdenv.lib; { description = "Open-Source, Automated Benchmarking"; homepage = https://www.phoronix-test-suite.com/; diff --git a/pkgs/tools/misc/phoronix-test-suite/tests.nix b/pkgs/tools/misc/phoronix-test-suite/tests.nix new file mode 100644 index 0000000000000..06bd9def9aa69 --- /dev/null +++ b/pkgs/tools/misc/phoronix-test-suite/tests.nix @@ -0,0 +1,20 @@ +{ runCommand, phoronix-test-suite }: + +let + inherit (phoronix-test-suite) pname version; +in + +runCommand "${pname}-tests" { meta.timeout = 3; } + '' + # automatic initial setup to prevent interactive questions + ${phoronix-test-suite}/bin/phoronix-test-suite enterprise-setup >/dev/null + # get version of installed program and compare with package version + if [[ `${phoronix-test-suite}/bin/phoronix-test-suite version` != *"${version}"* ]]; then + echo "Error: program version does not match package version" + exit 1 + fi + # run dummy command + ${phoronix-test-suite}/bin/phoronix-test-suite dummy_module.dummy-command >/dev/null + # needed for Nix to register the command as successful + touch $out + ''