tahoe-lafs/tox.ini
meejah 72f17afa76 Move check_magicfolder_smoke.py to proper integration tests
This introduces a py.test-based integration suite (currently just
containing magic-folder end-to-end tests). Also adds a tox environment
("integration") to run them.

The test setup is:

 - a "flogtool gather" instance
 - an Introducer
 - five Storage nodes
 - Alice and Bob client nodes
 - Alice and Bob have paired magic-folders
2016-08-30 20:47:47 -06:00

99 lines
3.5 KiB
INI

# Tox (http://tox.testrun.org/) is a tool for running tests
# in multiple virtualenvs. This configuration file will run the
# test suite on all supported python versions. To use it, "pip install tox"
# and then run "tox" from this directory.
[tox]
envlist = py27
[testenv]
passenv = USERPROFILE HOMEDRIVE HOMEPATH
# the default install is non-(--editable), and would displace our -e .[test]
skip_install = True
deps = --editable=.[test]
commands =
pyflakes src static misc setup.py
tahoe --version
trial --rterrors {posargs:allmydata}
[testenv:integration]
commands =
echo 'run with "py.test --keep-tempdir -s -v integration/" to debug failures'
py.test -v integration/
[testenv:coverage]
# coverage (with --branch) takes about 65% longer to run
passenv = USERPROFILE HOMEDRIVE HOMEPATH
skip_install = True
deps = --editable=.[test]
commands =
pyflakes src static misc setup.py
tahoe --version
coverage run --branch -m allmydata.test.run_trial --rterrors --reporter=timing {posargs:allmydata}
[testenv:codechecks]
passenv = USERPROFILE HOMEDRIVE HOMEPATH
skip_install = True
deps = --editable=.[test]
commands =
pyflakes src static misc setup.py
python misc/coding_tools/check-umids.py src
python misc/coding_tools/check-debugging.py
python misc/coding_tools/find-trailing-spaces.py -r src static misc setup.py
python misc/coding_tools/check-miscaptures.py
# note: check-interfaces.py imports everything, so it must be run
# from a populated virtualenv
python misc/coding_tools/check-interfaces.py
[testenv:deprecations]
basepython=python2.7
passenv = USERPROFILE HOMEDRIVE HOMEPATH
skip_install = True
deps = --editable=.[test]
setenv =
PYTHONWARNINGS=default::DeprecationWarning
commands =
python misc/build_helpers/run-deprecations.py --warnings=_trial_temp/deprecation-warnings.log trial --rterrors {posargs:allmydata}
[testenv:upcoming-deprecations]
basepython=python2.7
passenv = USERPROFILE HOMEDRIVE HOMEPATH
setenv =
PYTHONWARNINGS=default::DeprecationWarning
skip_install = True
deps =
--editable=.[test]
git+https://github.com/twisted/twisted
git+https://github.com/warner/foolscap
commands =
flogtool --version
python misc/build_helpers/run-deprecations.py --warnings=_trial_temp/deprecation-warnings.log trial --rterrors {posargs:allmydata}
[testenv:checkmemory]
commands =
rm -rf _test_memory
python src/allmydata/test/check_memory.py upload
python src/allmydata/test/check_memory.py upload-self
python src/allmydata/test/check_memory.py upload-POST
python src/allmydata/test/check_memory.py download
python src/allmydata/test/check_memory.py download-GET
python src/allmydata/test/check_memory.py download-GET-slow
python src/allmydata/test/check_memory.py receive
# Use 'tox -e docs' to check formatting and cross-references in docs .rst
# files. The published docs are built by code run over at readthedocs.org,
# which does not use this target (but does something similar).
#
# If you have "sphinx" installed in your virtualenv, you can just do "make -C
# docs html", or "cd docs; make html".
#
# You can also open docs/_build/html/index.html to see the rendered docs in
# your web browser.
[testenv:docs]
deps = sphinx
# normal install is not needed for docs, and slows things down
skip_install = True
commands =
sphinx-build -b html -d {toxinidir}/docs/_build/doctrees {toxinidir}/docs {toxinidir}/docs/_build/html