aboutsummaryrefslogtreecommitdiff
path: root/nixpkgs/pkgs/development/python-modules/pytest/5.nix
diff options
context:
space:
mode:
Diffstat (limited to 'nixpkgs/pkgs/development/python-modules/pytest/5.nix')
-rw-r--r--nixpkgs/pkgs/development/python-modules/pytest/5.nix80
1 files changed, 80 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/development/python-modules/pytest/5.nix b/nixpkgs/pkgs/development/python-modules/pytest/5.nix
new file mode 100644
index 00000000000..2b45c330cf3
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/pytest/5.nix
@@ -0,0 +1,80 @@
+{ stdenv, buildPythonPackage, pythonOlder, fetchPypi, isPy3k, isPyPy
+, atomicwrites
+, attrs
+, funcsigs
+, hypothesis
+, mock
+, more-itertools
+, packaging
+, pathlib2
+, pluggy
+, py
+, pygments
+, python
+, setuptools
+, setuptools_scm
+, six
+, toml
+, wcwidth
+, writeText
+}:
+
+buildPythonPackage rec {
+ version = "5.4.3";
+ pname = "pytest";
+
+ disabled = !isPy3k;
+
+ src = fetchPypi {
+ inherit pname version;
+ sha256 = "1n67lk8iwlsmfdm8663k8l7isllg1xd3n9p1yla7885szhdk6ybr";
+ };
+
+ checkInputs = [ hypothesis pygments ];
+ nativeBuildInputs = [ setuptools_scm ];
+ propagatedBuildInputs = [
+ atomicwrites
+ attrs
+ more-itertools
+ packaging
+ pluggy
+ py
+ setuptools
+ six
+ toml
+ wcwidth
+ ] ++ stdenv.lib.optionals (pythonOlder "3.6") [ pathlib2 ];
+
+ doCheck = !isPyPy; # https://github.com/pytest-dev/pytest/issues/3460
+
+ preCheck = ''
+ # don't test bash builtins
+ rm testing/test_argcomplete.py
+ '';
+
+ # Ignored file https://github.com/pytest-dev/pytest/pull/5605#issuecomment-522243929
+ checkPhase = ''
+ runHook preCheck
+ $out/bin/py.test -x testing/ -k "not test_collect_pyargs_with_testpaths" --ignore=testing/test_junitxml.py
+ runHook postCheck
+ '';
+
+ # Remove .pytest_cache when using py.test in a Nix build
+ setupHook = writeText "pytest-hook" ''
+ pytestcachePhase() {
+ find $out -name .pytest_cache -type d -exec rm -rf {} +
+ }
+ preDistPhases+=" pytestcachePhase"
+ '';
+
+ pythonImportsCheck = [
+ "pytest"
+ ];
+
+ meta = with stdenv.lib; {
+ homepage = "https://docs.pytest.org";
+ description = "Framework for writing tests";
+ maintainers = with maintainers; [ domenkozar lovek323 madjar lsix ];
+ license = licenses.mit;
+ };
+}