tox.ini
author Philippe Pepiot <philippe.pepiot@logilab.fr>
Tue, 19 Mar 2019 14:26:51 +0100
changeset 12515 2d43c8b30ef0
parent 12491 540904e0ff0f
child 12517 34c4157b1071
permissions -rw-r--r--
[server/test] do not depend on third party cubes Drop requirement of basket, card, comment, file, localperms and tag cubes for cubicweb.server tests. Copy needed part of schema, entities, views, hooks into the cubicweb/server/test/data directory (which is included in PYTHONPATH for CubicWebTC tests). For migration tests which use different "datapath", use symlinks to have dependent cubes importables.

[tox]
envlist =
  check-manifest,flake8,
  py{27,3}-{server,web,misc}

[testenv]
deps =
  -r{toxinidir}/requirements/dev.txt
  py27: backports.tempfile
  misc: -r{toxinidir}/requirements/test-misc.txt
  server: -r{toxinidir}/requirements/test-server.txt
  web: -r{toxinidir}/requirements/test-web.txt
commands =
  misc: {envpython} -m pip install --upgrade --no-deps --quiet git+git://github.com/logilab/yapps@master#egg=yapps
  misc: {envpython} -m pytest {posargs} {toxinidir}/cubicweb/test {toxinidir}/cubicweb/dataimport/test {toxinidir}/cubicweb/devtools/test {toxinidir}/cubicweb/entities/test {toxinidir}/cubicweb/ext/test {toxinidir}/cubicweb/hooks/test {toxinidir}/cubicweb/sobjects/test {toxinidir}/cubicweb/wsgi/test {toxinidir}/cubicweb/pyramid/test
  py27-misc: {envpython} -m pytest {posargs} {toxinidir}/cubicweb/etwist/test
  server: {envpython} -m pytest {posargs} {toxinidir}/cubicweb/server/test
  web: {envpython} -m pytest {posargs} {toxinidir}/cubicweb/web/test

[testenv:flake8]
basepython=python3
skip_install = true
deps =
  flake8 >= 3.6
whitelist_externals =
  /bin/sh
commands = /bin/sh -c "flake8 `xargs -a {toxinidir}/flake8-ok-files.txt`"

[testenv:doc]
skip_install = true
changedir = doc
deps =
  sphinx
  -r{toxinidir}/requirements/doc.txt
commands =
  {envpython} -m sphinx -b html -d {envtmpdir}/doctrees .  {envtmpdir}/html

[testenv:check-manifest]
skip_install = true
deps =
  check-manifest
commands =
  {envpython} -m check_manifest {toxinidir} \
# ignore symlinks that are not recognized by check-manifest, see
# https://github.com/mgedmin/check-manifest/issues/69
    --ignore cubicweb/devtools/test/data/cubes/i18ntestcube*,cubicweb/test/data/legacy_cubes*,cubicweb/server/test/data-migractions/cubicweb_*,cubicweb/server/test/data-migractions/migratedapp/cubicweb_*

[pytest]
python_files = *test_*.py
log_print = false

[flake8]
format = pylint
ignore = W503
max-line-length = 100
exclude = doc/*,.tox/*


# vim: wrap sts=2 sw=2