diff options
Diffstat (limited to 'lib_pgsql.sh')
-rw-r--r-- | lib_pgsql.sh | 60 |
1 files changed, 60 insertions, 0 deletions
diff --git a/lib_pgsql.sh b/lib_pgsql.sh new file mode 100644 index 0000000..6997827 --- /dev/null +++ b/lib_pgsql.sh @@ -0,0 +1,60 @@ +# PostgreSQL related helper functions. + +# PostgreSQL tests require beakerlib: +# https://fedorahosted.org/beakerlib/ + +. /usr/share/beakerlib/beakerlib.sh || exit 1 + +dtf_postgresql_check_started() +{ + service postgresql status &>/dev/null + rlAssertEquals "service postgresql should be started" $? 0 +} + +dtf_postgresql_check_stopped() +{ + service postgresql status &>/dev/null + rlAssertEquals "service postgresql should be stopped" $? 3 +} + +dtf_postgresql_phase_cleanup() +{ + rlPhaseStartCleanup + rlServiceStop postgresql + dtf_postgresql_check_stopped + rlRun "rm -r /var/lib/pgsql/data" + rlPhaseEnd +} + +dtf_postgresql_checkphase() +{ + rlPhaseStart FAIL "Check" + rlAssertRpm postgresql-server + + dtf_postgresql_check_stopped + + rlAssertNotExists "/var/lib/pgsql/data" + + rlAssert0 "run under root user" `id -u` + + rlGetPhaseState + test $? -gt 0 \ + && echo >&2 "Check phase failed." && exit 1 + rlPhaseEnd +} + +dtf_postgresql_test_init() +{ + rlJournalStart + dtf_postgresql_checkphase + rlPhaseStartTest +} + +dtf_postgresql_test_finish() +{ + rlPhaseEnd + dtf_generate_results_tarball "$BEAKERLIB_DIR" + dtf_postgresql_phase_cleanup + rlJournalEnd + rlGetTestState || return 1 +} |