xdot: fix tests

`nix-shell -p xdot` was failing, with an error like:

    builder for '/nix/store/n3yjqssn531c52sbkmpqvczmy5c0lm8n-python3.8-xdot-1.2.drv' failed with exit code 1; last 10 log lines:
          import numpy
      ModuleNotFoundError: No module named 'numpy'

Adding numpy uncovered another error, about not being able to initialize
gtk:

    error: Test failed: <unittest.runner.TextTestResult run=1 errors=1 failures=0>
    error: --- Error -------------------------------------------------------------------------------------------------------------------------------------------- nix-shell
    builder for '/nix/store/brz6q1ri12z51z3l2p5d6ny2jsf3qkjg-python3.8-xdot-1.2.drv' failed with exit code 1; last 10 log lines:
          raise RuntimeError(
      RuntimeError: Gtk couldn't be initialized. Use Gtk.init_check() if you want to handle this case.
This commit is contained in:
Robert K. Bell 2020-12-29 20:48:13 +11:00
parent 1aa915c09d
commit 6d355e44f8
No known key found for this signature in database
GPG key ID: 8A68AF21E4E214E2

View file

@ -1,5 +1,5 @@
{ lib, buildPythonPackage, fetchPypi, isPy3k
, wrapGAppsHook, gobject-introspection, pygobject3, graphviz, gtk3 }:
{ lib, buildPythonPackage, fetchPypi, isPy3k, python3, xvfb_run, stdenv
, wrapGAppsHook, gobject-introspection, pygobject3, graphviz, gtk3, numpy }:
buildPythonPackage rec {
pname = "xdot";
@ -11,9 +11,16 @@ buildPythonPackage rec {
};
disabled = !isPy3k;
nativeBuildInputs = [ wrapGAppsHook ];
propagatedBuildInputs = [ gobject-introspection pygobject3 graphviz gtk3 ];
propagatedBuildInputs = [ gobject-introspection pygobject3 graphviz gtk3 numpy ];
checkInputs = [ xvfb_run ];
checkPhase = ''
xvfb-run -s '-screen 0 800x600x24' ${python3.interpreter} nix_run_setup test
'';
# https://github.com/NixOS/nixpkgs/pull/107872#issuecomment-752175866
doCheck = stdenv.isLinux;
meta = with lib; {
description = "An interactive viewer for graphs written in Graphviz's dot";