X-Git-Url: https://git.phdru.name/?p=sqlconvert.git;a=blobdiff_plain;f=tox.ini;h=78de300d5adf462e62ec4e644b9d870291c6ab57;hp=7d25d514217d7001ada11703fea505d486d3d1f9;hb=7f200e601d03cf794c5a0504a2f69da3cf1d531a;hpb=422cbe094f2466133002bce7bc5a295a27416f75 diff --git a/tox.ini b/tox.ini index 7d25d51..78de300 100644 --- a/tox.ini +++ b/tox.ini @@ -1,37 +1,36 @@ [tox] -minversion = 1.8 -envlist = {py26,py27,py34,py35,py36},{py26,py27,py34,py35,py36}-{postgres,sqlite},{py27,py34}-flake8 +minversion = 2.0 +envlist = py{27,34,35,36,37}{,-sqlite},py{27,37}-flake8 # Base test environment settings [testenv] +basepython = + py27: {env:TOXPYTHON:python2.7} + py34: {env:TOXPYTHON:python3.4} + py35: {env:TOXPYTHON:python3.5} + py36: {env:TOXPYTHON:python3.6} + py37: {env:TOXPYTHON:python3.7} +commands = + {envpython} --version + {envpython} -c "import struct; print(struct.calcsize('P') * 8)" deps = - sqlparse - pytest - pytest-cov - py26: argparse - py2{6,7}: SQLObject>=2.2.1 - py3{4,5,6}: SQLObject>=3.0.0 - m_lib>=3.1 - m_lib.defenc>=1.0 - postgres: psycopg2 -sitepackages = True + -rdevscripts/requirements/requirements_tests.txt + postgres: psycopg2-binary +passenv = PGPASSWORD +platform = linux # Don't fail or warn on uninstalled commands whitelist_externals = - flake8 + cmd createdb dropdb - cmp - rm [general] commands = + {[testenv]commands} {envpython} -m pytest --cov=sqlconvert - mysql2sql demo/demo.sql test.out - cmp -s tests/mysql2sql/test.out test.out - rm test.out - -[testenv:py26] -commands = {[general]commands} + {envpython} {envbindir}/mysql2sql -P demo/demo.sql test.out + cmp.py -i tests/mysql2sql/test.out test.out + rm.py -f test.out [testenv:py27] commands = {[general]commands} @@ -45,16 +44,17 @@ commands = {[general]commands} [testenv:py36] commands = {[general]commands} +[testenv:py37] +commands = {[general]commands} + # PostgreSQL test environments [postgresql] commands = - -dropdb test - createdb test - {envpython} -m pytest --cov=sqlconvert -D postgres:///test - dropdb test - -[testenv:py26-postgres] -commands = {[postgresql]commands} + {[testenv]commands} + -dropdb -U postgres -w test + createdb -U postgres -w test + {envpython} -m pytest --cov=sqlconvert -D postgres://postgres:@localhost/test + dropdb -U postgres -w test [testenv:py27-postgres] commands = {[postgresql]commands} @@ -68,14 +68,47 @@ commands = {[postgresql]commands} [testenv:py36-postgres] commands = {[postgresql]commands} +[testenv:py37-postgres] +commands = {[postgresql]commands} + +[postgres-w32] +platform = win32 +commands = + {[testenv]commands} + -dropdb -U postgres -w test + createdb -U postgres -w test + pytest --cov=sqlconvert -D "postgres://postgres:Password12!@localhost/test" + dropdb -U postgres -w test + +[testenv:py27-postgres-w32] +platform = win32 +commands = {[postgres-w32]commands} + +[testenv:py34-postgres-w32] +platform = win32 +commands = {[postgres-w32]commands} + +[testenv:py35-postgres-w32] +platform = win32 +commands = {[postgres-w32]commands} + +[testenv:py36-postgres-w32] +platform = win32 +commands = {[postgres-w32]commands} + +[testenv:py37-postgres-w32] +platform = win32 +commands = + cmd /c "copy devscripts\\CI\\validators.py {envsitepackagesdir}\\formencode\\validators.py" + {[postgres-w32]commands} + # SQLite test environments [sqlite] commands = + {[testenv]commands} + -rm.py -f /tmp/test.sqdb {envpython} -m pytest --cov=sqlconvert -D sqlite:///tmp/test.sqdb - rm -f /tmp/test.sqdb - -[testenv:py26-sqlite] -commands = {[sqlite]commands} + rm.py -f /tmp/test.sqdb [testenv:py27-sqlite] commands = {[sqlite]commands} @@ -89,13 +122,50 @@ commands = {[sqlite]commands} [testenv:py36-sqlite] commands = {[sqlite]commands} +[testenv:py37-sqlite] +commands = {[sqlite]commands} + +[sqlite-w32] +platform = win32 +commands = + {[testenv]commands} + -rm.py -f C:/projects/sqlconvert/test.sqdb + pytest --cov=sqlconvert -D sqlite:/C:/projects/sqlconvert/test.sqdb?debug=1 + rm.py -f C:/projects/sqlconvert/test.sqdb + +[testenv:py27-sqlite-w32] +platform = win32 +commands = {[sqlite-w32]commands} + +[testenv:py34-sqlite-w32] +platform = win32 +commands = {[sqlite-w32]commands} + +[testenv:py35-sqlite-w32] +platform = win32 +commands = {[sqlite-w32]commands} + +[testenv:py36-sqlite-w32] +platform = win32 +commands = {[sqlite-w32]commands} + +[testenv:py37-sqlite-w32] +platform = win32 +commands = + cmd /c "copy validators.py {envsitepackagesdir}\\formencode\\validators.py" + {[sqlite-w32]commands} + # flake8 [testenv:py27-flake8] deps = flake8 -commands = flake8 +commands = + {[testenv]commands} + flake8 -[testenv:py34-flake8] +[testenv:py37-flake8] deps = flake8 -commands = flake8 +commands = + {[testenv]commands} + flake8