summaryrefslogtreecommitdiff
path: root/scripts/travis_test.sh
diff options
context:
space:
mode:
Diffstat (limited to 'scripts/travis_test.sh')
-rwxr-xr-xscripts/travis_test.sh70
1 files changed, 56 insertions, 14 deletions
diff --git a/scripts/travis_test.sh b/scripts/travis_test.sh
index 0c60b93..5daa9ba 100755
--- a/scripts/travis_test.sh
+++ b/scripts/travis_test.sh
@@ -2,29 +2,71 @@
# Run the tests in all the databases
# The script is designed for a Trusty environment.
+#
+# The variables TEST_PAST, TEST_FUTURE, DONT_TEST_PRESENT can be used to test
+# against unsupported Postgres versions and skip tests with supported ones.
+#
+# The variables TEST_VERBOSE enables verbose test log.
+#
+# The variables can be set in the travis configuration
+# (https://travis-ci.org/psycopg/psycopg2/settings)
-set -e
+set -e -x
run_test () {
- version=$1
- port=$2
- dbname=psycopg2_test
+ VERSION=$1
+ DBNAME=psycopg2_test
+ if [[ -n "$TEST_VERBOSE" ]]; then
+ VERBOSE=--verbose
+ else
+ VERBOSE=
+ fi
- printf "\n\nRunning tests against PostgreSQL $version\n\n"
- export PSYCOPG2_TESTDB=$dbname
+ # Port number: 9.6 -> 50906
+ port=$(( 50000 + $(echo $VERSION \
+ | sed 's/\(.\+\)\.\(.\+\)/100 * \1 + \2/') ))
+
+ printf "\n\nRunning tests against PostgreSQL $VERSION (port $port)\n\n"
+ export PSYCOPG2_TESTDB=$DBNAME
+ export PSYCOPG2_TESTDB_HOST=localhost
export PSYCOPG2_TESTDB_PORT=$port
export PSYCOPG2_TESTDB_USER=travis
export PSYCOPG2_TEST_REPL_DSN=
unset PSYCOPG2_TEST_GREEN
- python -c "from psycopg2 import tests; tests.unittest.main(defaultTest='tests.test_suite')"
+ python -c \
+ "from psycopg2 import tests; tests.unittest.main(defaultTest='tests.test_suite')" \
+ $VERBOSE
- printf "\n\nRunning tests against PostgreSQL $version (green mode)\n\n"
+ printf "\n\nRunning tests against PostgreSQL $VERSION (green mode)\n\n"
export PSYCOPG2_TEST_GREEN=1
- python -c "from psycopg2 import tests; tests.unittest.main(defaultTest='tests.test_suite')"
+ python -c \
+ "from psycopg2 import tests; tests.unittest.main(defaultTest='tests.test_suite')" \
+ $VERBOSE
}
-run_test 9.6 54396
-run_test 9.5 54395
-run_test 9.4 54394
-run_test 9.3 54393
-run_test 9.2 54392
+# Postgres versions supported by Travis CI
+if [[ -z "$DONT_TEST_PRESENT" ]]; then
+ run_test 9.6
+ run_test 9.5
+ run_test 9.4
+ run_test 9.3
+ run_test 9.2
+fi
+
+# Unsupported postgres versions that we still support
+# Images built by https://github.com/psycopg/psycopg2-wheels/tree/build-dinosaurs
+if [[ -n "$TEST_PAST" ]]; then
+ run_test 7.4
+ run_test 8.0
+ run_test 8.1
+ run_test 8.2
+ run_test 8.3
+ run_test 8.4
+ run_test 9.0
+ run_test 9.1
+fi
+
+# Postgres built from master
+if [[ -n "$TEST_FUTURE" ]]; then
+ run_test 10.0
+fi