X-Git-Url: https://git.phdru.name/?a=blobdiff_plain;f=tox.ini;h=c318bdb3732af16be2514f48599877b750666285;hb=596c2e76a8806ed650116c082730439c4965b08a;hp=0574d8a58e902e1b1f7e53f0d2d5cf653be72f27;hpb=20afb1eb53ecd8387b2e8e6dbd60718538434068;p=sqlconvert.git diff --git a/tox.ini b/tox.ini index 0574d8a..c318bdb 100644 --- a/tox.ini +++ b/tox.ini @@ -1,41 +1,80 @@ [tox] -minversion = 1.8 -envlist = {py26,py27,py34},{py27,py34}-flake8 +minversion = 3.15 +envlist = py27,py3{4,5,6,7,8,9}{,-sqlite},py{27,39}-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} + py38: {env:TOXPYTHON:python3.8} + py39: {env:TOXPYTHON:python3.9} +commands = + {envpython} --version + {envpython} -c "import struct; print(struct.calcsize('P') * 8)" deps = - sqlparse - pytest - pytest-cov - py26: argparse - py26,py27: m_lib>=2.0 - py34: m_lib>=3.0 -sitepackages = True + pip < 19.2 + setuptools < 44 + -rdevscripts/requirements/requirements_tests.txt + postgres: psycopg2-binary +passenv = PGPASSWORD +setenv = + VIRTUALENV_PIP = 19.1.1 +platform = linux # Don't fail or warn on uninstalled commands whitelist_externals = - flake8 - py.test + createdb + dropdb -[general] +[testenv:{py27,py34,py35,py36,py37,py38,py39}] +platform = linux|win32 commands = - python -m pytest --cov=sqlconvert + {[testenv]commands} + {envpython} -m pytest --cov=sqlconvert + {envpython} {envbindir}/mysql2sql -P demo/demo.sql test.out + cmp.py -i tests/mysql2sql/test.out test.out + rm.py -f test.out -[testenv:py26] -commands = {[general]commands} +[testenv:{py27,py34,py35,py36,py37,py38,py39}-sqlite] +commands = + {[testenv]commands} + -rm.py -f /tmp/test.sqdb + {envpython} -m pytest --cov=sqlconvert -D sqlite:///tmp/test.sqdb + rm.py -f /tmp/test.sqdb + +[testenv:{py27,py34,py35,py36,py37,py38,py39}-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] -commands = {[general]commands} +[testenv:{py27,py34,py35,py36,py37,py38,py39}-postgres] +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:py34] -commands = {[general]commands} +[testenv:{py27,py34,py35,py36,py37,py38,py39}-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-flake8] +# flake8 +[testenv:{py27,py34,py35,py36,py37,py38,py39}-flake8] +platform = linux|win32 deps = flake8 -commands = flake8 demo scripts sqlconvert tests - -[testenv:py34-flake8] -deps = +commands = + {[testenv]commands} flake8 -commands = flake8 demo scripts sqlconvert tests