forked from MirrorHub/synapse
Merge pull request #2439 from matrix-org/rav/tox_tweaks
do tox install with pip -e
This commit is contained in:
commit
e2fcba038c
1 changed files with 29 additions and 5 deletions
34
tox.ini
34
tox.ini
|
@ -14,14 +14,38 @@ deps =
|
||||||
|
|
||||||
setenv =
|
setenv =
|
||||||
PYTHONDONTWRITEBYTECODE = no_byte_code
|
PYTHONDONTWRITEBYTECODE = no_byte_code
|
||||||
# As of twisted 16.4, trial tries to import the tests as a package, which
|
|
||||||
# means it needs to be on the pythonpath.
|
|
||||||
PYTHONPATH = {toxinidir}
|
|
||||||
commands =
|
commands =
|
||||||
/bin/sh -c "find {toxinidir} -name '*.pyc' -delete ; coverage run {env:COVERAGE_OPTS:} --source={toxinidir}/synapse \
|
/usr/bin/find "{toxinidir}" -name '*.pyc' -delete
|
||||||
{envbindir}/trial {env:TRIAL_FLAGS:} {posargs:tests} {env:TOXSUFFIX:}"
|
coverage run {env:COVERAGE_OPTS:} --source="{toxinidir}/synapse" \
|
||||||
|
"{envbindir}/trial" {env:TRIAL_FLAGS:} {posargs:tests} {env:TOXSUFFIX:}
|
||||||
{env:DUMP_COVERAGE_COMMAND:coverage report -m}
|
{env:DUMP_COVERAGE_COMMAND:coverage report -m}
|
||||||
|
|
||||||
|
[testenv:py27]
|
||||||
|
|
||||||
|
# As of twisted 16.4, trial tries to import the tests as a package (previously
|
||||||
|
# it loaded the files explicitly), which means they need to be on the
|
||||||
|
# pythonpath. Our sdist doesn't include the 'tests' package, so normally it
|
||||||
|
# doesn't work within the tox virtualenv.
|
||||||
|
#
|
||||||
|
# As a workaround, we tell tox to do install with 'pip -e', which just
|
||||||
|
# creates a symlink to the project directory instead of unpacking the sdist.
|
||||||
|
#
|
||||||
|
# (An alternative to this would be to set PYTHONPATH to include the project
|
||||||
|
# directory. Note two problems with this:
|
||||||
|
#
|
||||||
|
# - if you set it via `setenv`, then it is also set during the 'install'
|
||||||
|
# phase, which inhibits unpacking the sdist, so the virtualenv isn't
|
||||||
|
# useful for anything else without setting PYTHONPATH similarly.
|
||||||
|
#
|
||||||
|
# - `synapse` is also loaded from PYTHONPATH so even if you only set
|
||||||
|
# PYTHONPATH for the test phase, we're still running the tests against
|
||||||
|
# the working copy rather than the contents of the sdist. So frankly
|
||||||
|
# you might as well use -e in the first place.
|
||||||
|
#
|
||||||
|
# )
|
||||||
|
usedevelop=true
|
||||||
|
|
||||||
[testenv:packaging]
|
[testenv:packaging]
|
||||||
deps =
|
deps =
|
||||||
check-manifest
|
check-manifest
|
||||||
|
|
Loading…
Reference in a new issue