2015-07-19 03:18:49 +00:00
|
|
|
[tox]
|
2017-06-01 19:07:51 +00:00
|
|
|
envlist = py{27,36},lint,docs
|
2015-07-19 03:18:49 +00:00
|
|
|
skipsdist = True
|
|
|
|
|
|
|
|
[testenv]
|
|
|
|
setenv =
|
|
|
|
PYTHONPATH={toxinidir}/readthedocs:{toxinidir}
|
|
|
|
DJANGO_SETTINGS_MODULE=settings.test
|
2015-07-20 08:07:40 +00:00
|
|
|
LANG=C
|
2015-07-27 19:39:23 +00:00
|
|
|
DJANGO_SETTINGS_SKIP_LOCAL=True
|
2017-05-24 20:46:40 +00:00
|
|
|
deps = -r{toxinidir}/requirements/testing.txt
|
2015-07-19 03:18:49 +00:00
|
|
|
changedir = {toxinidir}/readthedocs
|
|
|
|
commands =
|
2015-07-19 07:03:55 +00:00
|
|
|
py.test {posargs}
|
|
|
|
|
|
|
|
[testenv:docs]
|
|
|
|
changedir = {toxinidir}/docs
|
|
|
|
commands =
|
|
|
|
sphinx-build -b html -d {envtmpdir}/doctrees . {envtmpdir}/html
|
2015-07-19 03:18:49 +00:00
|
|
|
|
|
|
|
[testenv:lint]
|
2016-07-18 18:31:37 +00:00
|
|
|
deps = -r{toxinidir}/requirements/lint.txt
|
2015-07-19 03:18:49 +00:00
|
|
|
commands =
|
2017-03-21 18:39:00 +00:00
|
|
|
prospector \
|
|
|
|
--profile-path={toxinidir} \
|
|
|
|
--profile=prospector-more \
|
|
|
|
--die-on-tool-error
|
2015-07-19 03:18:49 +00:00
|
|
|
prospector \
|
|
|
|
--profile-path={toxinidir} \
|
|
|
|
--profile=prospector \
|
|
|
|
--die-on-tool-error
|
2017-05-23 18:17:48 +00:00
|
|
|
|
Add eslint using the airbnb config. (#2905)
* Add eslint using the airbnb config.
In an effort to make the JS consistent, this adds an ESLint gulp task. ESLint
is *very* configurable, and has no defaults. Instead, this reaches for
airbnb's legacy config (which covers ES5), which is one of the most popular
configurations. As a last step, it turns off all of the rules which currently
fail. We can turn them on piecemeal, or override the airbnb style to use a
different format.
Rules to prioritize (as they likely indicate bugs):
* "array-callback-return": "off",
* "eqeqeq": "off",
* "guard-for-in": "off",
* "no-inner-declarations": "off",
* "no-loop-func": "off",
* "no-mixed-operators": "off",
* "no-undef": "off",
* "no-use-before-define": "off",
* "one-var": "off",
* Lint frontend in Travis.
This adds an ESLint step to the CI service so we prevent unlinted code from
making its way in.
* Create an ESLint tox env.
By adding a tox env for eslint, we allow users to run it locally as part of
tox runs.
Thanks for the suggestion @ericholscher!
* Fix tox call to gulp lint task
2017-05-24 23:12:33 +00:00
|
|
|
[testenv:eslint]
|
|
|
|
commands =
|
|
|
|
gulp lint
|
2017-05-23 18:17:48 +00:00
|
|
|
|
|
|
|
[testenv:coverage]
|
|
|
|
deps =
|
|
|
|
-r{toxinidir}/requirements/pip.txt
|
2017-05-23 18:26:23 +00:00
|
|
|
pytest-cov
|
2017-05-23 18:17:48 +00:00
|
|
|
whitelist_externals = echo
|
|
|
|
commands =
|
|
|
|
py.test --disable-pytest-warnings \
|
|
|
|
--cov-report=term --cov-report=html --cov=. {posargs}
|
|
|
|
echo Annotated HTML coverage report is in {toxinidir}/readthedocs/htmlcov/index.html
|