aboutsummaryrefslogtreecommitdiff
path: root/gnu/packages/check.scm
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/check.scm')
-rw-r--r--gnu/packages/check.scm287
1 files changed, 194 insertions, 93 deletions
diff --git a/gnu/packages/check.scm b/gnu/packages/check.scm
index 8e1eb127b2..50b4afcaf0 100644
--- a/gnu/packages/check.scm
+++ b/gnu/packages/check.scm
@@ -834,146 +834,231 @@ subprocess and see the output as well as any file modifications.")
(define-public python2-scripttest
(package-with-python2 python-scripttest))
-(define-public python-testtools
+(define-public python-testtools-bootstrap
(package
- (name "python-testtools")
- (version "1.4.0")
+ (name "python-testtools-bootstrap")
+ (version "2.3.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "testtools" version))
(sha256
(base32
- "1vw8yljnd75d396hhw6s2hrf4cclzy845ifd5am0lxsl235z3i8c"))))
+ "0n8519lk8aaa91vymz842831181wf7fss98hyllhygi3z1nfq9sq"))))
(build-system python-build-system)
- (arguments
- `(#:phases
- (modify-phases %standard-phases
- (add-after 'unpack 'fix-module-imports
- (lambda _
- (substitute* "setup.py"
- (("'unittest2>=0.8.0',") ""))
- (substitute* '("testtools/testcase.py"
- "testtools/testsuite.py"
- "testtools/run.py"
- "testtools/tests/test_run.py"
- "testtools/tests/test_testsuite.py"
- "testtools/tests/test_deferredruntest.py")
- ;; unittest2 is a backport of Python2.7 features to Python 2.4.
- (("import unittest2 as unittest") "import unittest")
- (("import unittest2") "import unittest as unittest2")
- (("from unittest2 import") "from unittest import"))
- (substitute* "testtools/tests/test_testresult.py"
- ;; NUL in source code is not allowed (raises ValueError).
- (("\\x00\\x04") "\\x04"))
- #t)))))
+ (arguments '(#:tests? #f))
(propagated-inputs
- `(("python-mimeparse" ,python-mimeparse)
- ("python-extras" ,python-extras)))
+ `(("python-extras" ,python-extras)
+ ("python-fixtures" ,python-fixtures-bootstrap)
+ ("python-mimeparse" ,python-mimeparse)
+ ("python-pbr" ,python-pbr-minimal)
+ ("python-six" ,python-six)
+ ("python-traceback2" ,python-traceback2)
+ ("python-unittest2" ,python-unittest2)))
(home-page "https://github.com/testing-cabal/testtools")
(synopsis
"Extensions to the Python standard library unit testing framework")
(description
+ "This package is only for bootstrapping. Do not use this.")
+ (license license:psfl)))
+
+(define-public python2-testtools-bootstrap
+ (package-with-python2 python-testtools-bootstrap))
+
+(define-public python-testtools
+ (package
+ (inherit python-testtools-bootstrap)
+ (name "python-testtools")
+ (arguments
+ `(#:phases (modify-phases %standard-phases
+ (replace 'check
+ (lambda _
+ (invoke "python" "-m" "testtools.run"
+ "testtools.tests.test_suite"))))))
+ (propagated-inputs
+ `(("python-extras" ,python-extras)
+ ("python-fixtures" ,python-fixtures)
+ ("python-mimeparse" ,python-mimeparse)
+ ("python-pbr" ,python-pbr)
+ ("python-six" ,python-six)
+ ("python-traceback2" ,python-traceback2)
+ ("python-unittest2" ,python-unittest2)))
+ (native-inputs
+ `(("python-testscenarios" ,python-testscenarios-bootstrap)))
+ (description
"Testtools extends the Python standard library unit testing framework to
provide matchers, more debugging information, and cross-Python
-compatibility.")
- (license license:psfl)))
+compatibility.")))
(define-public python2-testtools
(package-with-python2 python-testtools))
-(define-public python-testscenarios
+(define-public python-testscenarios-bootstrap
(package
- (name "python-testscenarios")
- (version "0.4")
+ (name "python-testscenarios-bootstrap")
+ (version "0.5.0")
(source
(origin
(method url-fetch)
- (uri (string-append
- "https://pypi.python.org/packages/source/t/testscenarios/testscenarios-"
- version ".tar.gz"))
+ (uri (pypi-uri "testscenarios" version))
(sha256
(base32
- "1671jvrvqlmbnc42j7pc5y6vc37q44aiwrq0zic652pxyy2fxvjg"))))
+ "1dm2aydqpv76vnsk1pw7k8n42hq58cfi4n1ixy7nyzpaj1mwnmy2"))))
(build-system python-build-system)
+ (arguments
+ `(#:phases (modify-phases %standard-phases
+ (replace 'check
+ (lambda _
+ (invoke "python" "-m" "testtools.run"
+ "testscenarios.test_suite"))))))
(propagated-inputs
- `(("python-testtools" ,python-testtools)))
+ `(("python-pbr" ,python-pbr-minimal)
+ ("python-testtools" ,python-testtools-bootstrap)))
(home-page "https://launchpad.net/testscenarios")
(synopsis "Pyunit extension for dependency injection")
(description
- "Testscenarios provides clean dependency injection for Python unittest
-style tests.")
+ "This package is only for bootstrapping. Don't use this.")
(license (list license:bsd-3 license:asl2.0)))) ; at the user's option
+(define-public python2-testscenarios-bootstrap
+ (package-with-python2 python-testscenarios-bootstrap))
+
+(define-public python-testscenarios
+ (package
+ (inherit python-testscenarios-bootstrap)
+ (name "python-testscenarios")
+ (propagated-inputs
+ `(("python-pbr" ,python-pbr)
+ ("python-testtools" ,python-testtools)))
+ (description
+ "Testscenarios provides clean dependency injection for Python unittest
+style tests.")))
+
(define-public python2-testscenarios
(package-with-python2 python-testscenarios))
-(define-public python-testresources
+;; Testresources requires python-pbr at runtime, but pbr needs it for its
+;; own tests. Hence this bootstrap variant.
+(define-public python-testresources-bootstrap
(package
- (name "python-testresources")
- (version "0.2.7")
- (source
- (origin
- (method url-fetch)
- (uri (string-append
- "https://pypi.python.org/packages/source/t/testresources/testresources-"
- version ".tar.gz"))
- (sha256
- (base32
- "0cbj3plbllyz42c4b5xxgwaa7mml54lakslrn4kkhinxhdri22md"))))
+ (name "python-testresources-bootstrap")
+ (version "2.0.1")
+ (source (origin
+ (method url-fetch)
+ (uri (pypi-uri "testresources" version))
+ (sha256
+ (base32
+ "05s4dsli9g17m1r3b1gvwicbbgq011hnpb2b9qnj27ja2n11k7gf"))))
(build-system python-build-system)
+ (arguments '(#:tests? #f))
+ (propagated-inputs
+ `(("python-pbr" ,python-pbr-minimal)))
(home-page "https://launchpad.net/testresources")
(synopsis
"Pyunit extension for managing test resources")
(description
- "Testresources is an extension to Python's unittest to allow declarative
-use of resources by test cases.")
+ "This package is only here for bootstrapping purposes. Use the regular
+testresources package instead.")
(license (list license:bsd-3 license:asl2.0)))) ; at the user's option
+(define-public python2-testresources-bootstrap
+ (package-with-python2 python-testresources-bootstrap))
+
+(define-public python-testresources
+ (package
+ (inherit python-testresources-bootstrap)
+ (name "python-testresources")
+ (propagated-inputs
+ `(("python-pbr" ,python-pbr)))
+ (arguments '())
+ (native-inputs
+ `(("python-fixtures" ,python-fixtures)
+ ("python-testtols" ,python-testtools)))
+ (description
+ "Testresources is an extension to Python's unittest to allow declarative
+use of resources by test cases.")))
+
(define-public python2-testresources
(package-with-python2 python-testresources))
-(define-public python-subunit
+(define-public python-subunit-bootstrap
(package
- (name "python-subunit")
- (version "0.0.21")
+ (name "python-subunit-bootstrap")
+ (version "1.2.0")
(source
(origin
(method url-fetch)
- (uri (string-append
- "https://pypi.python.org/packages/source/p/python-subunit/python-subunit-"
- version ".tar.gz"))
+ (uri (pypi-uri "python-subunit" version))
(sha256
(base32
- "1nkw9wfbvizmpajbj3in8ns07g7lwkiv8hip14jjlwk3cacls6jv"))))
+ "1yii2gx3z6323as3iraj1yphj76dy7i3h6kj63pnc5y0hwjs5sgx"))))
(build-system python-build-system)
(propagated-inputs
`(("python-extras" ,python-extras)
- ("python-mimeparse" ,python-mimeparse)))
+ ("python-testtools" ,python-testtools-bootstrap)))
(native-inputs
- `(("python-testscenarios" ,python-testscenarios)))
+ `(("python-fixtures" ,python-fixtures-bootstrap)
+ ("python-hypothesis" ,python-hypothesis)
+ ("python-testscenarios" ,python-testscenarios-bootstrap)))
(home-page "http://launchpad.net/subunit")
(synopsis "Python implementation of the subunit protocol")
(description
- "Python-subunit is a Python implementation of the subunit test streaming
-protocol.")
+ "This package is here for bootstrapping purposes only. Use the regular
+python-subunit package instead.")
(license (list license:bsd-3 license:asl2.0)))) ; at the user's option
+(define-public python2-subunit-bootstrap
+ (package-with-python2 python-subunit-bootstrap))
+
+(define-public python-subunit
+ (package
+ (inherit python-subunit-bootstrap)
+ (name "python-subunit")
+ (propagated-inputs
+ `(("python-extras" ,python-extras)
+ ("python-testtools" ,python-testtools)))
+ (native-inputs
+ `(("python-fixtures" ,python-fixtures)
+ ("python-hypothesis" ,python-hypothesis)
+ ("python-testscenarios" ,python-testscenarios)))
+ (description
+ "Python-subunit is a Python implementation of the subunit test streaming
+protocol.")))
+
(define-public python2-subunit
(package-with-python2 python-subunit))
+;; Fixtures requires python-pbr at runtime, but pbr uses fixtures for its
+;; own tests. Hence this bootstrap variant.
+(define-public python-fixtures-bootstrap
+ (package
+ (name "python-fixtures-bootstrap")
+ (version "3.0.0")
+ (source (origin
+ (method url-fetch)
+ (uri (pypi-uri "fixtures" version))
+ (sha256
+ (base32
+ "1vxj29bzz3rd4pcy51d05wng9q9dh4jq6wx92yklsm7i6h1ddw7w"))))
+ (build-system python-build-system)
+ (arguments `(#:tests? #f))
+ (propagated-inputs
+ `(("python-pbr-minimal" ,python-pbr-minimal)
+ ("python-six" ,python-six)))
+ (home-page "https://launchpad.net/python-fixtures")
+ (synopsis "Python test fixture library")
+ (description
+ "This package is only used for bootstrapping. Use the regular
+python-fixtures package instead.")
+ (license (list license:bsd-3 license:asl2.0)))) ; at user's option
+
+(define-public python2-fixtures-bootstrap
+ (package-with-python2 python-fixtures-bootstrap))
+
(define-public python-fixtures
(package
+ (inherit python-fixtures-bootstrap)
(name "python-fixtures")
- (version "1.4.0")
- (source
- (origin
- (method url-fetch)
- (uri (pypi-uri "fixtures" version))
- (sha256
- (base32
- "0djxvdwm8s60dbfn7bhf40x6g818p3b3mlwijm1c3bqg7msn271y"))))
- (build-system python-build-system)
(arguments
'(#:phases
(modify-phases %standard-phases
@@ -982,25 +1067,23 @@ protocol.")
(zero? (system* "python" "-m" "testtools.run"
"fixtures.test_suite")))))))
(propagated-inputs
- `(("python-six" ,python-six)))
+ ;; Fixtures uses pbr at runtime to check versions, etc.
+ `(("python-pbr" ,python-pbr)
+ ("python-six" ,python-six)))
(native-inputs
`(("python-mock" ,python-mock)
- ("python-pbr-minimal" ,python-pbr-minimal)
- ("python-testtools" ,python-testtools)))
- (home-page "https://launchpad.net/python-fixtures")
- (synopsis "Python test fixture library")
+ ("python-testtools" ,python-testtools-bootstrap)))
(description
"Fixtures provides a way to create reusable state, useful when writing
-Python tests.")
- (license (list license:bsd-3 license:asl2.0)))) ; at user's option
+Python tests.")))
(define-public python2-fixtures
(package-with-python2 python-fixtures))
-(define-public python-testrepository
+(define-public python-testrepository-bootstrap
(package
- (name "python-testrepository")
- (version "0.0.20")
+ (name "python-testrepository-bootstrap")
+ (version "0.0.20")
(source
(origin
(method url-fetch)
@@ -1011,6 +1094,26 @@ Python tests.")
(base32
"1ssqb07c277010i6gzzkbdd46gd9mrj0bi0i8vn560n2k2y4j93m"))))
(build-system python-build-system)
+ (arguments '(#:tests? #f))
+ (propagated-inputs
+ `(("python-fixtures" ,python-fixtures-bootstrap)
+ ("python-subunit" ,python-subunit-bootstrap)
+ ("python-testtools" ,python-testtools-bootstrap)))
+ (native-inputs
+ `(("python-mimeparse" ,python-mimeparse)))
+ (home-page "https://launchpad.net/testrepository")
+ (synopsis "Database for Python test results")
+ (description
+ "Bootstrap package for python-testrepository. Don't use this.")
+ (license (list license:bsd-3 license:asl2.0)))) ; at user's option
+
+(define-public python2-testrepository-bootstrap
+ (package-with-python2 python-testrepository-bootstrap))
+
+(define-public python-testrepository
+ (package
+ (inherit python-testrepository-bootstrap)
+ (name "python-testrepository")
(arguments
;; FIXME: Many tests are failing.
'(#:tests? #f))
@@ -1019,14 +1122,10 @@ Python tests.")
("python-subunit" ,python-subunit)
("python-testtools" ,python-testtools)))
(native-inputs
- `(("python-pbr-minimal" ,python-pbr-minimal) ;; same as for building fixture
- ("python-mimeparse" ,python-mimeparse)))
- (home-page "https://launchpad.net/testrepository")
- (synopsis "Database for Python test results")
+ `(("python-mimeparse" ,python-mimeparse)))
(description "Testrepository provides a database of test results which can
be used as part of a developer's workflow to check things such as what tests
-have failed since the last commit or what tests are currently failing.")
- (license (list license:bsd-3 license:asl2.0)))) ; at user's option
+have failed since the last commit or what tests are currently failing.")))
(define-public python2-testrepository
(package-with-python2 python-testrepository))
@@ -1629,18 +1728,20 @@ backported from Python 2.7 for Python 2.4+.")
(define-public behave
(package
(name "behave")
- (version "1.2.5")
+ (version "1.2.6")
(source (origin
(method url-fetch)
- (uri (pypi-uri "behave" version ".tar.bz2"))
+ (uri (pypi-uri "behave" version))
(sha256
(base32
- "1iypp6z46r19n4xmgx6m1lwmlpfjh8vapq8izigrqlaarvp2y64c"))))
+ "11hsz365qglvpp1m1w16239c3kiw15lw7adha49lqaakm8kj6rmr"))))
(build-system python-build-system)
(native-inputs
`(("python-mock" ,python-mock)
("python-nose" ,python-nose)
- ("python-pyhamcrest" ,python-pyhamcrest)))
+ ("python-pathpy" ,python-pathpy)
+ ("python-pyhamcrest" ,python-pyhamcrest)
+ ("python-pytest" ,python-pytest)))
(propagated-inputs
`(("python-six" ,python-six)
("python-parse" ,python-parse)