Bläddra i källkod

Adds tox for 2.3 branch

Ask Solem 14 år sedan
förälder
incheckning
d067fe8e96
3 ändrade filer med 92 tillägg och 20 borttagningar
  1. 3 0
      contrib/release/removepyc.sh
  2. 4 0
      requirements/test-pypy.txt
  3. 85 20
      tox.ini

+ 3 - 0
contrib/release/removepyc.sh

@@ -0,0 +1,3 @@
+#!/bin/bash
+(cd "${1:-.}";
+        find . -name "*.pyc" | xargs rm -- 2>/dev/null) || echo "ok"

+ 4 - 0
requirements/test-pypy.txt

@@ -0,0 +1,4 @@
+nose
+nose-cover3
+coverage>=3.0
+mock>=0.7.0

+ 85 - 20
tox.ini

@@ -1,33 +1,98 @@
 [tox]
-envlist = py25,py26,py27
+envlist = py25,py26,py27,pypy
 
 [testenv]
 distribute = True
 sitepackages = False
 commands = nosetests
 
-[testenv:py25]
-basepython = python2.5
-commands = pip -E {envdir} install -r contrib/requirements/default.txt
-           pip -E {envdir} install -r contrib/requirements/py25.txt
-           pip -E {envdir} install -r contrib/requirements/test.txt
-           nosetests --with-xunit --xunit-file=nosetests.xml \
-                     --with-coverage3  --cover3-xml          \
-                     --cover3-xml-file=coverage.xml
+[testenv:py32]
+recreate = True
+basepython = python3.2
+changedir = .tox
+deps = -r{toxinidir}/requirements/default.txt
+       -r{toxinidir}/requirements/test-py3k.txt
+commands = {toxinidir}/contrib/release/removepyc.sh {toxinidir}
+           nosetests -vd celery.tests                           \
+                --with-coverage3                                \
+                --cover3-branch                                 \
+                --cover3-xml                                    \
+                --cover3-xml-file={toxinidir}/coverage.xml      \
+                --cover3-html                                   \
+                --cover3-html-dir={toxinidir}/cover             \
+                --cover3-package=celery                         \
+                --cover3-exclude="celery celery.tests.*         \
+                        celery.bin.celeryd_multi                \
+                        celery.bin.celeryd_detach               \
+                        celery.bin.celeryctl                    \
+                        celery.bin.camqadm                      \
+                        celery.execute                          \
+                        celery.local                            \
+                        celery.platforms                        \
+                        celery.utils.patch                      \
+                        celery.utils.compat                     \
+                        celery.utils.mail                       \
+                        celery.utils.functional                 \
+                        celery.utils.dispatch*                  \
+                        celery.utils.term                       \
+                        celery.db.a805d4bd                      \
+                        celery.db.dfd042c7                      \
+                        celery.contrib*                         \
+                        celery.concurrency.threads              \
+                        celery.concurrency.processes.pool       \
+                        celery.concurrency.gevent               \
+                        celery.backends.mongodb                 \
+                        celery.backends.tyrant                  \
+                        celery.backends.cassandra               \
+                        celery.events.dumper                    \
+                        celery.events.cursesmon"                \
+                --with-xunit                                    \
+                --xunit-file={toxinidir}/nosetests.xml
+
+[testenv:py27]
+basepython = python2.7
+deps = -r{toxinidir}/requirements/default.txt
+       -r{toxinidir}/requirements/test.txt
+commands = {toxinidir}/contrib/release/removepyc.sh {toxinidir}
+           nosetests --with-xunit                               \
+                     --xunit-file={toxinidir}/nosetests.xml     \
+                     --with-coverage3 --cover3-xml              \
+                     --cover3-html-dir={toxinidir}/cover        \
+                     --cover3-xml-file={toxinidir}/coverage.xml
 
 [testenv:py26]
 basepython = python2.6
-commands = pip -E {envdir} install -r contrib/requirements/default.txt
+deps = -r{toxinidir}/requirements/default.txt
+       -r{toxinidir}/requirements/py26.txt
+       -r{toxinidir}/requirements/test.txt
+commands = {toxinidir}/contrib/release/removepyc.sh {toxinidir}
            pip -E {envdir} install -r contrib/requirements/py26.txt
            pip -E {envdir} install -r contrib/requirements/test.txt
-           nosetests --with-xunit --xunit-file=nosetests.xml \
-                     --with-coverage3  --cover3-xml          \
-                     --cover3-xml-file=coverage.xml
+           nosetests --with-xunit                               \
+                     --xunit-file={toxinidir}/nosetests.xml     \
+                     --with-coverage3 --cover3-xml              \
+                     --cover3-html-dir={toxinidir}/cover        \
+                     --cover3-xml-file={toxinidir}/coverage.xml
 
-[testenv:py27]
-basepython = python2.7
-commands = pip -E {envdir} install -r contrib/requirements/default.txt
-           pip -E {envdir} install -r contrib/requirements/test.txt
-           nosetests --with-xunit --xunit-file=nosetests.xml \
-                     --with-coverage3  --cover3-xml          \
-                     --cover3-xml-file=coverage.xml
+[testenv:py25]
+basepython = python2.5
+deps = -r{toxinidir}/requirements/default.txt
+       -r{toxinidir}/requirements/py25.txt
+       -r{toxinidir}/requirements/test.txt
+commands = {toxinidir}/contrib/release/removepyc.sh {toxinidir}
+           nosetests --with-xunit                               \
+                     --xunit-file={toxinidir}/nosetests.xml     \
+                     --with-coverage3 --cover3-xml              \
+                     --cover3-html-dir={toxinidir}/cover        \
+                     --cover3-xml-file={toxinidir}/coverage.xml
+
+[testenv:pypy]
+basepython = pypy
+deps = -r{toxinidir}/requirements/default.txt
+       -r{toxinidir}/requirements/test-pypy.txt
+commands = {toxinidir}/contrib/release/removepyc.sh {toxinidir}
+           nosetests --with-xunit                               \
+                     --xunit-file={toxinidir}/nosetests.xml     \
+                     --with-coverage3 --cover3-xml              \
+                     --cover3-html-dir={toxinidir}/cover        \
+                     --cover3-xml-file={toxinidir}/coverage.xml