]> git.phdru.name Git - sqlconvert.git/blobdiff - tox.ini
Add release script
[sqlconvert.git] / tox.ini
diff --git a/tox.ini b/tox.ini
index dec4e03af8da359af0d1d1b98dc8367158f3420e..65e5efff89eb06d861822cbfe2b668e07b12db2a 100644 (file)
--- a/tox.ini
+++ b/tox.ini
@@ -1,25 +1,42 @@
 [tox]
 minversion = 1.8
-envlist = {py26,py27,py34},{py27,py34}-flake8
+envlist = {py26,py27,py34,py35,py36},{py26,py27,py34,py35,py36}-{postgres,sqlite},{py27,py34}-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}
+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
+    sqlparse
+    py2{6,7}: SQLObject>=2.2.1
+    py3{4,5,6}: SQLObject>=3.0.0
+    m_lib>=3.1
+    m_lib.defenc>=1.0
+    ppu
+    postgres: psycopg2
 sitepackages = True
 # Don't fail or warn on uninstalled commands
 whitelist_externals =
     flake8
-    py.test
+    createdb
+    dropdb
 
 [general]
 commands =
-    python /usr/local/bin/py.test --cov={envsitepackagesdir}/sqlconvert
+    {[testenv]commands}
+    {envpython} -m pytest --cov=sqlconvert
+    {envpython} {envbindir}/mysql2sql -P demo/demo.sql test.out
+    {envpython} {envbindir}/cmp.py -i tests/mysql2sql/test.out test.out
+    {envpython} {envbindir}/rm.py test.out
 
 [testenv:py26]
 commands = {[general]commands}
@@ -30,12 +47,70 @@ commands = {[general]commands}
 [testenv:py34]
 commands = {[general]commands}
 
+[testenv:py35]
+commands = {[general]commands}
+
+[testenv:py36]
+commands = {[general]commands}
+
+# PostgreSQL test environments
+[postgresql]
+commands =
+    {[testenv]commands}
+    -dropdb test
+    createdb test
+    {envpython} -m pytest --cov=sqlconvert -D postgres:///test
+    dropdb test
+
+[testenv:py26-postgres]
+commands = {[postgresql]commands}
+
+[testenv:py27-postgres]
+commands = {[postgresql]commands}
+
+[testenv:py34-postgres]
+commands = {[postgresql]commands}
+
+[testenv:py35-postgres]
+commands = {[postgresql]commands}
+
+[testenv:py36-postgres]
+commands = {[postgresql]commands}
+
+# SQLite test environments
+[sqlite]
+commands =
+    {[testenv]commands}
+    -{envpython} {envbindir}/rm.py /tmp/test.sqdb
+    {envpython} -m pytest --cov=sqlconvert -D sqlite:///tmp/test.sqdb
+    {envpython} {envbindir}/rm.py /tmp/test.sqdb
+
+[testenv:py26-sqlite]
+commands = {[sqlite]commands}
+
+[testenv:py27-sqlite]
+commands = {[sqlite]commands}
+
+[testenv:py34-sqlite]
+commands = {[sqlite]commands}
+
+[testenv:py35-sqlite]
+commands = {[sqlite]commands}
+
+[testenv:py36-sqlite]
+commands = {[sqlite]commands}
+
+# flake8
 [testenv:py27-flake8]
 deps =
     flake8
-commands = flake8 demo scripts sqlconvert tests
+commands =
+    {[testenv]commands}
+    flake8
 
 [testenv:py34-flake8]
 deps =
     flake8
-commands = flake8 demo scripts sqlconvert tests
+commands =
+    {[testenv]commands}
+    flake8