about summary refs log tree commit diff
path: root/pkgs/applications/misc/visidata
diff options
context:
space:
mode:
authorpacien <pacien.trangirard@pacien.net>2021-06-16 02:01:11 +0200
committerpacien <pacien.trangirard@pacien.net>2021-06-17 01:46:49 +0200
commit4a8d262c7c485caf9648acb0a6f757a1ccd9e1c3 (patch)
tree5470db5d3d25c4c5bec917e76952f2b5ca26d5de /pkgs/applications/misc/visidata
parentd29162388715cc85db7b3dcca9fe43432f81ff9e (diff)
visidata: enable tests
Diffstat (limited to 'pkgs/applications/misc/visidata')
-rw-r--r--pkgs/applications/misc/visidata/default.nix32
1 files changed, 30 insertions, 2 deletions
diff --git a/pkgs/applications/misc/visidata/default.nix b/pkgs/applications/misc/visidata/default.nix
index 237e5ee8ae55e..9663d09304f87 100644
--- a/pkgs/applications/misc/visidata/default.nix
+++ b/pkgs/applications/misc/visidata/default.nix
@@ -1,5 +1,6 @@
-{ buildPythonApplication
+{ stdenv
 , lib
+, buildPythonApplication
 , fetchFromGitHub
 , dateutil
 , pandas
@@ -18,6 +19,7 @@
 , wcwidth
 , zstandard
 , setuptools
+, git
 , withPcap ? true, dpkt, dnslib
 }:
 buildPythonApplication rec {
@@ -61,7 +63,33 @@ buildPythonApplication rec {
     setuptools
   ] ++ lib.optionals withPcap [ dpkt dnslib ];
 
-  doCheck = false;
+  checkInputs = [
+    git
+  ];
+
+  # check phase uses the output bin, which is not possible when cross-compiling
+  doCheck = stdenv.buildPlatform == stdenv.hostPlatform;
+
+  checkPhase = ''
+    # disable some tests which require access to the network
+    rm tests/load-http.vd            # http
+    rm tests/graph-cursor-nosave.vd  # http
+    rm tests/messenger-nosave.vd     # dns
+
+    # disable some tests which expect Python == 3.6 (not our current version)
+    # see https://github.com/saulpw/visidata/issues/1014
+    rm tests/describe.vd
+    rm tests/describe-error.vd
+    rm tests/edit-type.vd
+
+    # tests use git to compare outputs to references
+    git init -b "test-reference"
+    git config user.name "nobody"; git config user.email "no@where"
+    git add .; git commit -m "test reference"
+
+    substituteInPlace dev/test.sh --replace "bin/vd" "$out/bin/vd"
+    bash dev/test.sh
+  '';
 
   meta = {
     inherit version;