{ lib , buildPythonPackage , pythonAtLeast , fetchFromGitHub , attrs , pexpect , doCheck ? true , pytestCheckHook , pytest-xdist , sortedcontainers , tzdata , pythonOlder }: buildPythonPackage rec { # https://hypothesis.readthedocs.org/en/latest/packaging.html # Hypothesis has optional dependencies on the following libraries # pytz fake_factory django numpy pytest # If you need these, you can just add them to your environment. pname = "hypothesis"; version = "6.40.0"; format = "setuptools"; disabled = pythonOlder "3.7"; src = fetchFromGitHub { owner = "HypothesisWorks"; repo = "hypothesis-python"; rev = "hypothesis-python-${version}"; hash = "sha256-6BC3CTotkMhguueH4NJM8VjbrYhofHqtZEUytcllMwQ="; }; postUnpack = "sourceRoot=$sourceRoot/hypothesis-python"; propagatedBuildInputs = [ attrs sortedcontainers ]; checkInputs = [ pexpect pytest-xdist pytestCheckHook ] ++ lib.optional (pythonAtLeast "3.9") [ tzdata ]; inherit doCheck; # This file changes how pytest runs and breaks it preCheck = '' rm tox.ini ''; pytestFlagsArray = [ "tests/cover" ]; pythonImportsCheck = [ "hypothesis" ]; meta = with lib; { description = "Library for property based testing"; homepage = "https://github.com/HypothesisWorks/hypothesis"; license = licenses.mpl20; maintainers = with maintainers; [ SuperSandro2000 ]; }; }