summary refs log tree commit diff
path: root/pkgs/build-support/testers/default.nix
diff options
context:
space:
mode:
authorArtturi <Artturin@artturin.com>2022-04-23 06:06:16 +0300
committerGitHub <noreply@github.com>2022-04-23 06:06:16 +0300
commit62866bc35264510ec4a9cc67b84759db64417ac9 (patch)
tree8c629c1a488308274d07732cfc98c61abf3a16b3 /pkgs/build-support/testers/default.nix
parent747594d85322e7395839d58c7aae3c8c90bfa817 (diff)
parent41808d42d21f685e3fd3cdb2c9f04082f0818e30 (diff)
downloadnixpkgs-62866bc35264510ec4a9cc67b84759db64417ac9.tar
nixpkgs-62866bc35264510ec4a9cc67b84759db64417ac9.tar.gz
nixpkgs-62866bc35264510ec4a9cc67b84759db64417ac9.tar.bz2
nixpkgs-62866bc35264510ec4a9cc67b84759db64417ac9.tar.lz
nixpkgs-62866bc35264510ec4a9cc67b84759db64417ac9.tar.xz
nixpkgs-62866bc35264510ec4a9cc67b84759db64417ac9.tar.zst
nixpkgs-62866bc35264510ec4a9cc67b84759db64417ac9.zip
Merge pull request #169449 from Artturin/movetesting1
testers.testVersion: move from trivial-builders.nix
Diffstat (limited to 'pkgs/build-support/testers/default.nix')
-rw-r--r--pkgs/build-support/testers/default.nix16
1 files changed, 15 insertions, 1 deletions
diff --git a/pkgs/build-support/testers/default.nix b/pkgs/build-support/testers/default.nix
index 1d1effa3730..8b79843b833 100644
--- a/pkgs/build-support/testers/default.nix
+++ b/pkgs/build-support/testers/default.nix
@@ -1,4 +1,18 @@
-{ pkgs, lib, callPackage }:
+{ pkgs, lib, callPackage, runCommand }:
+# Documentation is in doc/builders/testers.chapter.md
 {
   testEqualDerivation = callPackage ./test-equal-derivation.nix { };
+
+  testVersion =
+    { package,
+      command ? "${package.meta.mainProgram or package.pname or package.name} --version",
+      version ? package.version,
+    }: runCommand "${package.name}-test-version" { nativeBuildInputs = [ package ]; meta.timeout = 60; } ''
+      if output=$(${command} 2>&1); then
+        grep -Fw "${version}" - <<< "$output"
+        touch $out
+      else
+        echo "$output" >&2 && exit 1
+      fi
+    '';
 }