From d7cad2b8f9a4d3c7ec89c3fb19d1b2c685e536ec Mon Sep 17 00:00:00 2001
From: Robert Scott <code@humanleg.org.uk>
Date: Sat, 14 Sep 2019 13:56:53 +0100
Subject: [PATCH] pythonPackages.hug: enable tests

---
 .../python-modules/hug/default.nix            | 22 ++++++++++++++-----
 1 file changed, 16 insertions(+), 6 deletions(-)

diff --git a/pkgs/development/python-modules/hug/default.nix b/pkgs/development/python-modules/hug/default.nix
index 5638447bceb..bb38c738760 100644
--- a/pkgs/development/python-modules/hug/default.nix
+++ b/pkgs/development/python-modules/hug/default.nix
@@ -1,7 +1,11 @@
-{ lib , buildPythonPackage, fetchPypi, isPy27
+{ lib , buildPythonPackage, fetchFromGitHub, isPy27
 , falcon
 , pytestrunner
 , requests
+, pytest
+, marshmallow
+, mock
+, numpy
 }:
 
 buildPythonPackage rec {
@@ -9,16 +13,22 @@ buildPythonPackage rec {
   version = "2.6.0";
   disabled = isPy27;
 
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "0iamrzjy8z1xibynkgfl6cn2sbm66awxbp75b26pi32fc41d0k50";
+  src = fetchFromGitHub {
+    owner = "hugapi";
+    repo = pname;
+    rev = version;
+    sha256 = "05rsv16g7ph100p8kl4l2jba0y4wcpp3xblc02mfp67zp1279vaq";
   };
 
   nativeBuildInputs = [ pytestrunner ];
   propagatedBuildInputs = [ falcon requests ];
 
-  # tests are not shipped in the tarball
-  doCheck = false;
+  checkInputs = [ mock marshmallow pytest numpy ];
+  checkPhase = ''
+    mv hug hug.hidden
+    # some tests attempt network access
+    PATH=$out/bin:$PATH pytest -k "not (test_request or test_datagram_request)"
+  '';
 
   meta = with lib; {
     description = "A Python framework that makes developing APIs as simple as possible, but no simpler";