First attempt to run tox on travix.

master
baztian 2017-03-08 14:54:19 +01:00
parent d90e1f66d9
commit 7c2a48f75c
7 changed files with 29 additions and 49 deletions

View File

@ -19,34 +19,16 @@ python:
- '3.4' - '3.4'
env: env:
matrix:
- TESTNAME=test_mock JDBC_DRIVER=org.jaydebeapi:mockdriver:1.0-SNAPSHOT
- TESTNAME="test_integration.HsqldbTest test_integration.PropertiesDriverArgsPassingTest" JDBC_DRIVER=org.hsqldb:hsqldb:1.8.0.10
- TESTNAME=test_integration.SqliteXerialTest JDBC_DRIVER=org.xerial:sqlite-jdbc:3.7.2
matrix: matrix:
include: include:
- python: 2.7 - python: 3.4
env: TESTNAME=test_integration.SqlitePyTest env: JYTHON="org.python;jython-installer;2.7.0"
- python: 2.7
env: JYTHON=org.python:jython-installer:2.7.0 TESTNAME="test_integration.HsqldbTest test_integration.PropertiesDriverArgsPassingTest" JDBC_DRIVER=org.hsqldb:hsqldb:1.8.0.10
- python: 2.7
env: JYTHON=org.python:jython-installer:2.7.0 TESTNAME=test_mock JDBC_DRIVER=org.jaydebeapi:mockdriver:1.0-SNAPSHOT
before_install: before_install:
- ci/before_install.sh - ci/before_install.sh
- export PATH="$HOME/bin:$PATH"
install: install:
- if [ "$JDBC_DRIVER" == "org.jaydebeapi:mockdriver:1.0-SNAPSHOT" ]; then (cd mockdriver && mvn -Dmaven.repo.local=$VIRTUAL_ENV/.m2/repository install) ;fi - pip install tox-travis
- if [ -n "$JDBC_DRIVER" ]; then python ci/jipconf_subst.py $VIRTUAL_ENV $VIRTUAL_ENV && pip install jip==0.9.9 && jip install $JDBC_DRIVER && export CLASSPATH=$VIRTUAL_ENV/javalib/* ;fi # TODO: Fix jip to search for local maven repo without twaking .jip
- source $HOME/myvirtualenv/bin/activate
- pip install -e .
- if [ -z "$JYTHON" ]; then pip install coveralls ;fi
script: script: tox
- if [ -z "$JYTHON" ]; then PY="coverage run --source jaydebeapi"; else PY="python" ;fi
- $PY test/testsuite.py $TESTNAME
- if [ "$JDBC_DRIVER" == "org.hsqldb:hsqldb:1.8.0.10" ] ; then $PY test/doctests.py ;fi
after_success:
- if [ -z "$JYTHON" ]; then coveralls ;fi

View File

@ -1,11 +1,4 @@
#!/bin/sh #!/bin/sh
set -e set -e
[ -n "$JYTHON" ] && "${TRAVIS_BUILD_DIR}/ci/before_install_jython.sh" || "${TRAVIS_BUILD_DIR}/ci/before_install_nonjython.sh" [ -n "$JYTHON" ] && "${TRAVIS_BUILD_DIR}/ci/before_install_jython.sh" || true
[ -n "$JYTHON" ] && cp requirements-jython.txt requirements.txt || cp requirements-python-${TRAVIS_PYTHON_VERSION}.txt requirements.txt
if [ -f requirements.txt ]
then
pip install -r requirements.txt
fi

View File

@ -1,8 +1,7 @@
#!/bin/sh #!/bin/sh
set -e set -e
JYTHON_JAR=$(${TRAVIS_BUILD_DIR}/ci/mvnget.sh $JYTHON) JYTHON_JAR=$(${TRAVIS_BUILD_DIR}/ci/mvnget.sh "$JYTHON")
java -jar ${JYTHON_JAR} -s -d $HOME/jython java -jar ${JYTHON_JAR} -s -d $HOME/jython
mkdir -p $HOME/bin
$HOME/jython/bin/pip install virtualenv ln -s $HOME/jython/bin/jython $HOME/bin/
$HOME/jython/bin/virtualenv $HOME/myvirtualenv

View File

@ -1,4 +0,0 @@
#!/bin/sh
set -e
ln -s $VIRTUAL_ENV $HOME/myvirtualenv

View File

@ -1,13 +1,13 @@
#!/bin/bash #!/bin/bash
set -e set -e
ARTIFACT_SPEC=$1 ARTIFACT_SPEC="$1"
GROUP_ID=${ARTIFACT_SPEC%%:*} GROUP_ID=${ARTIFACT_SPEC%%;*}
NON_GROUP_ID=${ARTIFACT_SPEC#*:} NON_GROUP_ID=${ARTIFACT_SPEC#*;}
ARTIFACT_NAME=`python -c "import re;print(re.search(r':(.*):', '$ARTIFACT_SPEC').group(1))"` ARTIFACT_NAME=`python -c "import re;print(re.search(r';(.*);', '$ARTIFACT_SPEC').group(1))"`
_PATH=${GROUP_ID/./\/}/$ARTIFACT_NAME _PATH=${GROUP_ID/./\/}/$ARTIFACT_NAME
_ARTIFACT_SPEC_BASENAME=${NON_GROUP_ID/:/-} _ARTIFACT_SPEC_BASENAME=${NON_GROUP_ID/;/-}
VERSION=${ARTIFACT_SPEC##*:} VERSION=${ARTIFACT_SPEC##*;}
echo "Downloading ${ARTIFACT_NAME} version ${VERSION} group id ${GROUP_ID}..." >&2 echo "Downloading ${ARTIFACT_NAME} version ${VERSION} group id ${GROUP_ID}..." >&2
wget http://search.maven.org/remotecontent?filepath=${_PATH}/$VERSION/${_ARTIFACT_SPEC_BASENAME}.jar -O ${_ARTIFACT_SPEC_BASENAME}.jar wget http://search.maven.org/remotecontent?filepath=${_PATH}/$VERSION/${_ARTIFACT_SPEC_BASENAME}.jar -O ${_ARTIFACT_SPEC_BASENAME}.jar
echo "...download of ${_ARTIFACT_SPEC_BASENAME}.jar finished." >&2 echo "...download of ${_ARTIFACT_SPEC_BASENAME}.jar finished." >&2

View File

@ -1 +0,0 @@
unittest2==0.5.1

17
tox.ini
View File

@ -1,8 +1,20 @@
[tox] [tox]
envlist = py{26,27,3}-driver-{hsqldb,mock,sqliteXerial},py27-driver-sqlitePy,jython-driver-{hsqldb,mock} envlist = py{26,27,3}-driver-{hsqldb,mock,sqliteXerial},py27-driver-sqlitePy,jython-driver-{hsqldb,mock}
[travis]
python =
2.6: py26-driver-{hsqldb,mock,sqliteXerial}
2.7: py27-driver-{hsqldb,mock,sqliteXerial,sqlitePy}
3.4: py34-driver-{hsqldb,mock,sqliteXerial}
[travis:env]
JYTHON =
org.python;jython-installer;2.7.0: jython-driver-{hsqldb,mock}
[testenv] [testenv]
whitelist_externals = mvn whitelist_externals = mvn
setenv = CLASSPATH = {envdir}/javalib/* setenv =
CLASSPATH = {envdir}/javalib/*
driver-mock: TESTNAME=test_mock driver-mock: TESTNAME=test_mock
driver-hsqldb: TESTNAME=test_integration.HsqldbTest driver-hsqldb: TESTNAME=test_integration.HsqldbTest
driver-sqliteXerial: TESTNAME=test_integration.SqliteXerialTest driver-sqliteXerial: TESTNAME=test_integration.SqliteXerialTest
@ -11,8 +23,7 @@ deps =
py26: -rrequirements-python-2.6.txt py26: -rrequirements-python-2.6.txt
py27: -rrequirements-python-2.7.txt py27: -rrequirements-python-2.7.txt
py3: -rrequirements-python-3.4.txt py3: -rrequirements-python-3.4.txt
# not required for jython >= 2.7 anymore jython: -rrequirements-jython.txt jip==0.9.10
jip==0.9.9
commands = commands =
python ci/jipconf_subst.py {envdir} {toxworkdir}/shared python ci/jipconf_subst.py {envdir} {toxworkdir}/shared
driver-hsqldb: jip install org.hsqldb:hsqldb:1.8.0.10 driver-hsqldb: jip install org.hsqldb:hsqldb:1.8.0.10