From 17940a11a8aa0276fb1e09dc3104eceb671bba2e Mon Sep 17 00:00:00 2001 From: Andrew McMillan Date: Wed, 19 May 2010 23:50:24 +1200 Subject: [PATCH] Add ability to start a regression suite from a DB dump. --- testing/run_regressions.sh | 46 +++++++++++++++++++++++++++----------- 1 file changed, 33 insertions(+), 13 deletions(-) diff --git a/testing/run_regressions.sh b/testing/run_regressions.sh index 6c6ee0bf..806afc98 100755 --- a/testing/run_regressions.sh +++ b/testing/run_regressions.sh @@ -16,9 +16,10 @@ export PGTZ=Pacific/Auckland [ -n "${ALTHOST}" ] && ALTHOST="--althost ${ALTHOST}" -UNTIL=${1:-"99999"} +SUITE=${1:-"regression-suite"} ACCEPT_ALL=${2:-""} +[ -z "${UNTIL}" ] && UNTIL=99999 [ -z "${SUITE}" ] && SUITE="regression-suite" REGRESSION="tests/${SUITE}" RESULTS="${REGRESSION}/results" @@ -85,22 +86,41 @@ drop_database() { fi } -drop_database ${DBNAME} + +restore_database() { + drop_database ${DBNAME} + + TEST="Restore-Database" + createdb --owner davical_dba --encoding UTF8 ${DBNAME} >"${RESULTS}/${TEST}" 2>&1 + pg_restore -Fc -d ${DBNAME} "${REGRESSION}/initial.pgdump" >>"${RESULTS}/${TEST}" 2>&1 + check_result "${TEST}" +} + + +initialise_regression() { + drop_database ${DBNAME} + + TEST="Create-Database" + ../dba/create-database.sh ${DBNAME} 'nimda' >"${RESULTS}/${TEST}" 2>&1 + check_result "${TEST}" + + TEST="Upgrade-Database" + ../dba/update-davical-database --dbname=${DBNAME} --nopatch --appuser davical_app --owner davical_dba >"${RESULTS}/${TEST}" 2>&1 + check_result "${TEST}" + + TEST="Load-Sample-Data" + psql -q -f "../dba/sample-data.sql" "${DBNAME}" >"${RESULTS}/${TEST}" 2>&1 + check_result "${TEST}" +} mkdir -p "${RESULTS}" mkdir -p "${REGRESSION}/diffs" -TEST="Create-Database" -../dba/create-database.sh ${DBNAME} 'nimda' >"${RESULTS}/${TEST}" 2>&1 -check_result "${TEST}" - -TEST="Upgrade-Database" -../dba/update-davical-database --dbname=${DBNAME} --nopatch --appuser davical_app --owner davical_dba >"${RESULTS}/${TEST}" 2>&1 -check_result "${TEST}" - -TEST="Load-Sample-Data" -psql -q -f "../dba/sample-data.sql" "${DBNAME}" >"${RESULTS}/${TEST}" 2>&1 -check_result "${TEST}" +if [ -f "${REGRESSION}/initial.pgdump" ]; then + restore_database +else + initialise_regression +fi TSTART="`date +%s`" TCOUNT=0