[tox] envlist = py27,pep8,functest minversion = 1.6 skipsdist = True [testenv] usedevelop = True install_command = pip install --allow-external netifaces --allow-insecure netifaces -U {opts} {packages} whitelist_externals=bash setenv = VIRTUAL_ENV={envdir} NOSE_WITH_COVERAGE=1 NOSE_COVER_BRANCHES=1 NOSE_COVER_PACKAGE=swiftonfile deps = # Note: pip supports installing from git repos. # https://pip.pypa.io/en/latest/reference/pip_install.html#git # Example: git+https://github.com/openstack/swift.git@2.0.0 https://launchpad.net/swift/liberty/2.5.0/+download/swift-2.5.0.tar.gz PyECLib==1.0.7 -r{toxinidir}/test-requirements.txt changedir = {toxinidir}/test/unit commands = nosetests -v {posargs} passenv = SWIFT_* *_proxy [testenv:cover] setenv = VIRTUAL_ENV={envdir} NOSE_WITH_COVERAGE=1 NOSE_COVER_BRANCHES=1 NOSE_COVER_HTML=1 NOSE_COVER_HTML_DIR={toxinidir}/cover [testenv:functest] changedir = {toxinidir} commands = bash ./.functests -q [testenv:pep8] changedir = {toxinidir} commands = flake8 swiftonfile test setup.py flake8 --filename=swiftonfile* bin [testenv:venv] changedir = {toxinidir} commands = {posargs} [flake8] # it's not a bug that we aren't using all of hacking, ignore: # F812: list comprehension redefines ... # H101: Use TODO(NAME) # H202: assertRaises Exception too broad # H233: Python 3.x incompatible use of print operator # H234: assertEquals is deprecated, use assertEqual # H301: one import per line # H306: imports not in alphabetical order (time, os) # H401: docstring should not start with a space # H403: multi line docstrings should end on a new line # H404: multi line docstring should start without a leading new line # H405: multi line docstring summary not separated with an empty line # H501: Do not use self.__dict__ for string formatting # H703: Multiple positional placeholders ignore = F812,H101,H202,H233,H234,H301,H306,H401,H403,H404,H405,H501,H703 exclude = .venv,.tox,dist,doc,*egg,test show-source = True [testenv:bindep] # Do not install any requirements. We want this to be fast and work even if # system dependencies are missing, since it's used to tell you what system # dependencies are missing! This also means that bindep must be installed # separately, outside of the requirements files. deps = bindep commands = bindep test