diff --git a/.travis.yml b/.travis.yml index c619787..2d1b2bc 100644 --- a/.travis.yml +++ b/.travis.yml @@ -6,8 +6,9 @@ python: env: matrix: - - BACKEND=hsqldb - - BACKEND=sqlitejdbc + - BACKEND=hsqldb TESTNAME=test_integration.HsqldbTest + - BACKEND=sqlitejdbc TESTNAME=test_integration.SqliteXerialTest + - BACKEND=sqlitepy TESTNAME=test_integration.SqlitePyTest matrix: # exclude: @@ -15,7 +16,7 @@ matrix: # env: BACKEND=sqlitejdbc include: - python: 2.7 - env: JYTHON=org.python:jython-installer:2.5.3 BACKEND=hsqldb + env: JYTHON=org.python:jython-installer:2.5.3 BACKEND=hsqldb TESTNAME=test_integration.HsqldbTest before_install: - ci/before_install.sh @@ -24,9 +25,10 @@ before_install: install: - pip install jip==0.7 - pip install -e . + - pip install -r requirements_test.txt - jip install org.xerial:sqlite-jdbc:3.7.2 - jip install org.hsqldb:hsqldb:1.8.0.10 script: - export CLASSPATH=$VIRTUAL_ENV/javalib/* - - python test.py + - python test/testsuite.py $TESTNAME diff --git a/requirements_test.txt b/requirements_test.txt new file mode 100644 index 0000000..ac86706 --- /dev/null +++ b/requirements_test.txt @@ -0,0 +1,2 @@ +unittest2==0.5.1 +xmlrunner==1.7.4 diff --git a/src/test/data/create.sql b/test/data/create.sql similarity index 100% rename from src/test/data/create.sql rename to test/data/create.sql diff --git a/src/test/data/create_hsqldb.sql b/test/data/create_hsqldb.sql similarity index 100% rename from src/test/data/create_hsqldb.sql rename to test/data/create_hsqldb.sql diff --git a/src/test/data/insert.sql b/test/data/insert.sql similarity index 100% rename from src/test/data/insert.sql rename to test/data/insert.sql diff --git a/src/test/test_integration.py b/test/test_integration.py similarity index 100% rename from src/test/test_integration.py rename to test/test_integration.py diff --git a/test.py b/test/testsuite.py similarity index 54% rename from test.py rename to test/testsuite.py index 6df418f..e505f9a 100644 --- a/test.py +++ b/test/testsuite.py @@ -2,33 +2,26 @@ """Run unittests in the `tests` directory.""" from optparse import OptionParser -import os import sys -def adjust_sys_path(dir_name='libs'): - """ - Patch to search the libs folder. At the moment, I believe it's unable to - find .egg's, but it does search libs for imports before anything else. - """ - root_dir = os.path.dirname(os.path.abspath(__file__)) - sys.path.insert(0, os.path.join(root_dir, dir_name)) - -adjust_sys_path('libs') -adjust_sys_path('src') - -import unittest2 +import unittest2 as unittest def main(): parser = OptionParser() parser.add_option("-x", "--xml", action="store_true", dest="xml", help="write test report in xunit file format") (options, args) = parser.parse_args(sys.argv) - suite = unittest2.loader.TestLoader().discover('src/test') + loader = unittest.defaultTestLoader + names = args[1:] + if names: + suite = loader.loadTestsFromNames(names) + else: + suite = loader.discover('test') if options.xml: import xmlrunner runner = xmlrunner.XMLTestRunner(output='build/test-reports') else: - runner = unittest2.TextTestRunner(verbosity=2) + runner = unittest.TextTestRunner(verbosity=2) result = runner.run(suite) if result.wasSuccessful(): return 0