#!/bin/sh BASEDIR="$(dirname $(readlink -f $0))" # init and start postgresql server for testing PGDATA="/var/lib/postgresql/data" if [ -f "${PGDATA}/PG_VERSION" ]; then echo "Data directory is not empty! Skip initdb." else echo "Initializing database: " chown -R postgres:postgres ${PGDATA} su -l postgres -c "/usr/bin/initdb --pgdata='$PGDATA'" fi SYSV_INIT="/etc/init.d/postgresql-server" if [ -e ${SYSV_INIT} ]; then RESTART_POSTGRESQL="${SYSV_INIT} restart" STOP_POSTGRESQL="${SYSV_INIT} stop" else RESTART_POSTGRESQL="systemctl restart postgresql" STOP_POSTGRESQL="systemctl stop postgresql" fi ${RESTART_POSTGRESQL} || echo "Failed to restart postgresql, skip the tests." if [ ! -d ${BASEDIR}/results ]; then mkdir ${BASEDIR}/results fi # Generate odbc config files and reset db ${BASEDIR}/odbcini-gen.sh || echo "FAIL: Generate odbc config files" ODBCSYSINI=. ODBCINSTINI=./odbcinst.ini ODBCINI=./odbc.ini \ ${BASEDIR}/reset-db < ${BASEDIR}/sampletables.sql \ || echo "FAIL: reset db with sample tables" # Run the actual tests TESTS= for i in `ls ${BASEDIR}/exe/*-test`; do TESTS="$TESTS $(basename ${i%-test})" done ${BASEDIR}/runsuite ${TESTS} --inputdir=${BASEDIR} # Cleanup ${STOP_POSTGRESQL} rm -f regression.diffs odbcinst.ini odbc.ini