From 8b85031f0737ab839dad48e6b6377fdcb6c00d45 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Fri, 6 Apr 2018 17:31:40 +0200 Subject: [PATCH] python.pkgs.pyfakefs: run tests --- .../python-modules/pyfakefs/default.nix | 30 ++++++++++++++----- 1 file changed, 23 insertions(+), 7 deletions(-) diff --git a/pkgs/development/python-modules/pyfakefs/default.nix b/pkgs/development/python-modules/pyfakefs/default.nix index 0dc0ecf16200..cfb575c7675e 100644 --- a/pkgs/development/python-modules/pyfakefs/default.nix +++ b/pkgs/development/python-modules/pyfakefs/default.nix @@ -1,21 +1,37 @@ -{ stdenv, buildPythonPackage, fetchPypi, pytest, unittest2 }: +{ stdenv, buildPythonPackage, fetchFromGitHub, python, pytest, glibcLocales }: buildPythonPackage rec { version = "3.4.1"; pname = "pyfakefs"; - name = "${pname}-${version}"; - src = fetchPypi { - inherit pname version; - sha256 = "96f1d008ae6cc4d9866dd674ee852748a11c67784f1f369221a5fd2750cc0883"; + # no tests in PyPI tarball + # https://github.com/jmcgeheeiv/pyfakefs/pull/361 + src = fetchFromGitHub { + owner = "jmcgeheeiv"; + repo = pname; + rev = "v${version}"; + sha256 = "0i8kq7sl8bczr927hllgfhsmirjqjh89c9184kcqmprc13ac4kxy"; }; - propagatedBuildInputs = [ pytest unittest2 ]; + postPatch = '' + # test doesn't work in sandbox + substituteInPlace tests/fake_filesystem_test.py \ + --replace "test_expand_root" "notest_expand_root" + substituteInPlace tests/fake_os_test.py \ + --replace "test_append_mode" "notest_append_mode" + ''; + + checkInputs = [ pytest glibcLocales ]; + + checkPhase = '' + LC_ALL=en_US.UTF-8 ${python.interpreter} -m tests.all_tests + py.test tests/pytest_plugin_test.py + ''; meta = with stdenv.lib; { description = "Fake file system that mocks the Python file system modules"; license = licenses.asl20; - homepage = "http://pyfakefs.org/"; + homepage = http://pyfakefs.org/; maintainers = with maintainers; [ gebner ]; }; }