aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTerry Chia <terrycwk1994@gmail.com>2015-03-22 11:49:08 +0800
committerTerry Chia <terrycwk1994@gmail.com>2015-09-26 22:31:53 +0800
commit5cec1bf1b644c33cffe96e8f8ebd11a1a343bc6d (patch)
tree0950e4607d93287bc0f48b51e2c3b82b9e686ed5
parent3f3f20c7b429a19819e90e0bb181c5895e18c7dc (diff)
downloadcryptography-5cec1bf1b644c33cffe96e8f8ebd11a1a343bc6d.tar.gz
cryptography-5cec1bf1b644c33cffe96e8f8ebd11a1a343bc6d.tar.bz2
cryptography-5cec1bf1b644c33cffe96e8f8ebd11a1a343bc6d.zip
Add plumbing for hypothesis.
-rw-r--r--.gitignore1
-rw-r--r--dev-requirements.txt2
-rw-r--r--setup.py4
-rw-r--r--tox.ini25
4 files changed, 31 insertions, 1 deletions
diff --git a/.gitignore b/.gitignore
index 8a870e05..bf1a504a 100644
--- a/.gitignore
+++ b/.gitignore
@@ -11,3 +11,4 @@ htmlcov/
*.egg
.eggs/
*.py[co]
+./hypothesis
diff --git a/dev-requirements.txt b/dev-requirements.txt
index 440d3b0f..55aebd4f 100644
--- a/dev-requirements.txt
+++ b/dev-requirements.txt
@@ -12,5 +12,7 @@ sphinx_rtd_theme
sphinxcontrib-spelling
tox
twine
+hypothesis
+hypothesis-pytest
-e .
-e vectors
diff --git a/setup.py b/setup.py
index b36f3de6..ea2ea181 100644
--- a/setup.py
+++ b/setup.py
@@ -62,6 +62,10 @@ test_requirements = [
"iso8601",
]
+if sys.version_info[:2] == (2, 6):
+ test_requirements.append("hypothesis")
+ test_requirements.append("hypothesis-pytest")
+
# If there's no vectors locally that probably means we are in a tarball and
# need to go and get the matching vectors package from PyPi
if not os.path.exists(os.path.join(base_dir, "vectors/setup.py")):
diff --git a/tox.ini b/tox.ini
index a890e38a..1c15abff 100644
--- a/tox.ini
+++ b/tox.ini
@@ -8,6 +8,29 @@ deps =
iso8601
pretend
pytest<2.8
+ hypothesis
+ hypothesis-pytest
+ ./vectors
+passenv = ARCHFLAGS LDFLAGS CFLAGS INCLUDE LIB LD_LIBRARY_PATH USERNAME
+commands =
+ pip list
+ python -c "from cryptography.hazmat.backends.openssl.backend import backend; print(backend.openssl_version_text())"
+ # We use parallel mode and then combine here so that coverage.py will take
+ # the paths like .tox/py34/lib/python3.4/site-packages/cryptography/__init__.py
+ # and collapse them into src/cryptography/__init__.py.
+ coverage run --parallel-mode -m pytest --capture=no --strict {posargs}
+ coverage combine
+ coverage report -m
+
+[testenv:py26]
+# This mirrors the testenv minus the hypothesis and hypothesis-test deps.
+deps =
+ coverage
+ iso8601
+ pretend
+ pytest<2.8
+ hypothesis
+ hypothesis-pytest
./vectors
passenv = ARCHFLAGS LDFLAGS CFLAGS INCLUDE LIB LD_LIBRARY_PATH USERNAME
commands =
@@ -85,7 +108,7 @@ commands =
py.test --capture=no --strict --random {posargs}
[flake8]
-exclude = .tox,*.egg,.git,_build
+exclude = .tox,*.egg,.git,_build,.hypothesis
select = E,W,F,N,I
application-import-names = cryptography,cryptography_vectors,tests