[tox] skipsdist = True skip_missing_interpreters = true envlist = py37,py38 [testenv] whitelist_externals = poetry skip_install = true envdir = {toxworkdir}/globalenv commands_pre = ./dev.sh install-all commands = poetry run pytest --cov=. {posargs} biscuit/ apps/official/ [testenv:selenium] setenv = TEST_SCREENSHOT_PATH = {env:TEST_SCREENSHOT_PATH:.tox/screenshots} TEST_SELENIUM_HUB = {env:TEST_SELENIUM_HUB:http://127.0.0.1:4444/wd/hub} TEST_SELENIUM_BROWSERS = {env:TEST_SELENIUM_BROWSERS:chrome,firefox} TEST_HOST = {env:TEST_HOST:172.17.0.1} [testenv:lint] commands = - poetry run black --check --diff biscuit/ apps/official/ - poetry run isort -c --diff --stdout -rc biscuit/ apps/official/ poetry run flake8 {posargs} biscuit/ apps/official/ [testenv:security] commands = poetry show --no-dev poetry run safety check --full-report [testenv:build] commands_pre = commands = poetry build [testenv:docs] commands = poetry run make -C docs/ html {posargs} [testenv:reformat] commands = poetry run isort -rc biscuit/ apps/official/ poetry run black biscuit/ apps/official/ [flake8] max_line_length = 100 exclude = migrations,tests ignore = E203,E231,W503 [isort] line_length = 100 multi_line_output = 3 include_trailing_comma = 1 use_parantheses = 1 default_section = THIRDPARTY known_first_party = biscuit known_django = django sections = FUTURE,STDLIB,DJANGO,THIRDPARTY,FIRSTPARTY,LOCALFOLDER [mypy] plugins = mypy_django_plugin.main python_version = 3.8 platform = linux show_column_numbers = True follow_imports = skip ignore_missing_imports = True cache_dir = /dev/null [mypy.plugins.django-stubs] django_settings_module = biscuit.core.settings [pytest] DJANGO_SETTINGS_MODULE = biscuit.core.settings junit_family = legacy [coverage:run] omit = */migrations/* */tests/* .tox/* manage.py