[tox]
envlist =
    py27-mysql
    py27-sqlite
    py27-postgres
    py34-mysql
    py35-mysql
skipsdist=True

[global]
wheel_dir = {homedir}/.wheelhouse
find_links =
    {homedir}/.wheelhouse
    {homedir}/.pip-cache

[testenv]
deps =
    wheel
    coveralls
passenv =
    HOME
    TRAVIS
    TRAVIS_BRANCH
    TRAVIS_BUILD_DIR
    TRAVIS_JOB_ID
    USER
    TRAVIS_CACHE
    TRAVIS_PULL_REQUEST
    PATH
commands =
  python --version
  pip wheel -w {homedir}/.wheelhouse -f {homedir}/.wheelhouse .
  pip install --find-links={homedir}/.wheelhouse --no-index .
  pip install -r dev-reqs.txt
  {toxinidir}/run_tests.sh

[testenv:javascript]
commands = {toxinidir}/superset/assets/js_build.sh

[testenv:pylint]
commands =
  pip wheel -w {homedir}/.wheelhouse -f {homedir}/.wheelhouse .
  pip install --find-links={homedir}/.wheelhouse --no-index .
  pip install -r dev-reqs.txt
  {toxinidir}/pylint-errors.sh

[testenv:py27-mysql]
basepython = python2.7
setenv =
    SUPERSET__SQLALCHEMY_DATABASE_URI = mysql://mysqluser:mysqluserpassword@localhost/superset?charset=utf8

[testenv:py34-mysql]
basepython = python3.4
setenv =
    SUPERSET__SQLALCHEMY_DATABASE_URI = mysql://mysqluser:mysqluserpassword@localhost/superset

[testenv:py35-mysql]
basepython = python3.5
setenv =
    SUPERSET__SQLALCHEMY_DATABASE_URI = mysql://mysqluser:mysqluserpassword@localhost/superset

[testenv:py27-sqlite]
basepython = python2.7
setenv =
    SUPERSET__SQLALCHEMY_DATABASE_URI = sqlite:////tmp/superset.db

[testenv:py34-sqlite]
basepython = python3.4
setenv =
    SUPERSET__SQLALCHEMY_DATABASE_URI = sqlite:////tmp/superset.db

[testenv:py27-postgres]
basepython = python2.7
setenv =
    SUPERSET__SQLALCHEMY_DATABASE_URI = postgresql+psycopg2://postgresuser:pguserpassword@localhost/superset

[testenv:py34-postgres]
basepython = python3.4
setenv =
    SUPERSET__SQLALCHEMY_DATABASE_URI = postgresql+psycopg2://postgresuser:pguserpassword@localhost/superset
