# Licensed under the Apache License: http://www.apache.org/licenses/LICENSE-2.0
# For details: https://bitbucket.org/ned/coveragepy/src/default/NOTICE.txt

[tox]
envlist = py26, py27, py33, py34, py35, pypy24, pypy26, pypy3_24
skip_missing_interpreters = True

[testenv]
commands =
    {envpython} setup.py --quiet clean develop

    # Create tests/zipmods.zip
    # Install the egg1 egg
    # Remove the C extension so that we can test the PyTracer
    {envpython} igor.py zip_mods install_egg remove_extension

    # Test with the PyTracer
    {envpython} igor.py test_with_tracer py {posargs}

    # Build the C extension and test with the CTracer
    {envpython} setup.py --quiet build_ext --inplace
    {envpython} igor.py test_with_tracer c {posargs}

deps =
    nose
    mock
    PyContracts
    py26: unittest2
    py26,py27: gevent
    py26,py27: eventlet
    py26,py27,py33,py34,py35: greenlet

setenv =
    pypy24,pypy26,pypy3_24: COVERAGE_NO_EXTENSION=no C extensions under PyPy

usedevelop = True
passenv = *

[testenv:pypy24]
basepython = pypy2.4

[testenv:pypy26]
basepython = pypy2.6

[testenv:pypy3_24]
basepython = pypy3-2.4


# Yes, pep8 will read its settings from tox.ini!
[pep8]
# E265: block comment should start with '# '
# E301 expected 1 blank line, found 0
# E401 multiple imports on one line
# The rest are the default ignored warnings.
ignore = E265,E123,E133,E226,E241,E242,E301,E401
max-line-length = 100
