diff options
-rw-r--r-- | setup.cfg | 2 | ||||
-rw-r--r-- | tox.ini | 75 |
2 files changed, 31 insertions, 46 deletions
@@ -26,7 +26,7 @@ default=sqlite:///:memory: sqlite=sqlite:///:memory: sqlite_file=sqlite:///querytest.db postgresql=postgresql://scott:tiger@127.0.0.1:5432/test -mysql=mysql+pymysql://scott:tiger@127.0.0.1:3306/test +mysql=mysql://scott:tiger@127.0.0.1:3306/test?charset=utf8 mssql=mssql+pyodbc://scott:tiger@ms_2008 oracle=oracle://scott:tiger@127.0.0.1:1521 oracle8=oracle://scott:tiger@127.0.0.1:1521/?use_ansi=0 @@ -1,10 +1,12 @@ [tox] minversion=1.8.dev1 -envlist = py{27,33,34,35}-sqla{09,10,11}, py{27}-sqla{079,084}, coverage +envlist = py{27,33,34,35}-sqla{09,10,11}, py{27}-sqla{079,084} SQLA_REPO = {env:SQLA_REPO:git+http://git.sqlalchemy.org/sqlalchemy.git} [testenv] +cov_args=--cov=alembic --cov-report term --cov-report xml + deps=pytest pytest-xdist mock @@ -13,57 +15,40 @@ deps=pytest sqla09: {[tox]SQLA_REPO}@rel_0_9 sqla10: {[tox]SQLA_REPO}@rel_1_0 sqla11: {[tox]SQLA_REPO}@rel_1_1 + postgresql: psycopg2 + mysql: mysqlclient + oracle: cx_oracle + mssql: pymssql + coverage: pytest-cov sitepackages=True usedevelop=True -commands= - sqla{084,09,10,11}: python -m pytest -n 4 {posargs} - sqla{079}: python -m pytest {posargs} - - -[testenv:py27-sqla11] -recreate=True - -[testenv:py27-sqla10] -recreate=True - -[testenv:py27-sqla09] -recreate=True - -[testenv:py33-sqla11] -recreate=True - -[testenv:py33-sqla10] -recreate=True +setenv= + BASECOMMAND=python -m pytest --dropfirst + WORKERS=-n4 + sqla079: WORKERS= + oracle: WORKERS=-n2 + cov: COVERAGE={[testenv]cov_args} + sqlite: SQLITE=--db sqlite + postgresql: POSTGRESQL=--db postgresql + mysql: MYSQL=--db mysql + oracle: ORACLE=--db oracle --low-connections + mssql: MSSQL=--db pymssql + +# tox as of 2.0 blocks all environment variables from the +# outside, unless they are here (or in TOX_TESTENV_PASSENV, +# wildcards OK). Need at least these +passenv=ORACLE_HOME NLS_LANG -[testenv:py33-sqla09] -recreate=True - -[testenv:py34-sqla11] -recreate=True - -[testenv:py34-sqla10] -recreate=True - -[testenv:py34-sqla09] -recreate=True - -[testenv:py35-sqla11] -recreate=True - -[testenv:py35-sqla10] -recreate=True +commands= + {env:BASECOMMAND} {env:WORKERS} {env:SQLITE:} {env:POSTGRESQL:} {env:MYSQL:} {env:ORACLE:} {env:MSSQL:} {env:BACKENDONLY:} {env:COVERAGE:} {posargs} -[testenv:py35-sqla09] -recreate=True +# note: oracle will need newer provisioning logic for oracle to work +# +# {oracle}: python reap_oracle_dbs.py -[testenv:coverage] -# see also .coveragerc -deps=coverage -commands= - python -m pytest --cov=alembic --cov-report term --cov-report xml {posargs} [testenv:pep8] deps=flake8 @@ -73,7 +58,7 @@ commands = python -m flake8 {posargs} [flake8] show-source = True -ignore = E711,E712,E721 +ignore = E711,E712,E721,D # F841,F811,F401 exclude=.venv,.git,.tox,dist,doc,*egg,build |