[tox]
skipsdist = True
usedevelop = True

envlist = py{35,36,37}-dj{20,21,22,master}-{sqlite,postgres,mysql,mssql}-{elasticsearch7,elasticsearch6,elasticsearch5,elasticsearch2,noelasticsearch},

[testenv]
install_command = pip install -e ".[testing]" -U {opts} {packages}
commands =
    elasticsearch2: coverage run runtests.py wagtail.search wagtail.documents wagtail.images --elasticsearch2
    elasticsearch5: coverage run runtests.py wagtail.search wagtail.documents wagtail.images --elasticsearch5
    elasticsearch6: coverage run runtests.py wagtail.search wagtail.documents wagtail.images --elasticsearch6
    elasticsearch7: coverage run runtests.py wagtail.search wagtail.documents wagtail.images --elasticsearch7
    noelasticsearch: coverage run runtests.py {posargs}

basepython =
    py35: python3.5
    py36: python3.6
    py37: python3.7
    py38: python3.8

deps =
    django-sendfile==0.3.6
    Embedly

    dj20: Django>=2.0,<2.1
    dj21: Django>=2.1,<2.2
    dj22: Django>=2.2,<2.3
    dj22stable: git+https://github.com/django/django.git@stable/2.2.x#egg=Django
    djmaster: git+https://github.com/django/django.git@master#egg=Django
    djmaster: git+https://github.com/wagtail/django-modelcluster.git

    postgres: psycopg2>=2.6
    mysql: mysqlclient>=1.3.7,<1.4
    elasticsearch2: elasticsearch>=2,<3
    elasticsearch5: elasticsearch>=5,<6
    elasticsearch5: certifi
    elasticsearch6: elasticsearch>=6.4.0,<7
    elasticsearch6: certifi
    elasticsearch7: elasticsearch>=7,<8
    elasticsearch7: certifi

setenv =
    postgres: DATABASE_ENGINE=django.db.backends.postgresql

    mysql: DATABASE_ENGINE=django.db.backends.mysql
    mysql: DATABASE_HOST=localhost
    mysql: DATABASE_USER=root

    sqlite: DATABASE_NAME=wagtail.db

    # Specific for Appveyor, see:
    # https://www.appveyor.com/docs/services-databases/#sql-server-2016
    mssql: DATABASE_ENGINE=sql_server.pyodbc
    mssql: DATABASE_HOST=(local)\SQL2016
    mssql: DATABASE_NAME=master
    mssql: DATABASE_USER=sa
    mssql: DATABASE_PASS=Password12!

[testenv:flake8]
basepython=python3.5
deps=flake8>=2.2.0
commands=flake8 wagtail
