summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristian Grothoff <christian@grothoff.org>2023-06-03 12:53:41 +0200
committerChristian Grothoff <christian@grothoff.org>2023-06-03 12:53:45 +0200
commitf8fd492e9eb226776a06c5e32673e1b1037c1918 (patch)
treef2a29d39b467941eac3cd3a9a6fa09b8d7230407
parent2ea3ae1008020589b43a51663c45556a08547212 (diff)
downloadexchange-f8fd492e9eb226776a06c5e32673e1b1037c1918.tar.gz
exchange-f8fd492e9eb226776a06c5e32673e1b1037c1918.tar.bz2
exchange-f8fd492e9eb226776a06c5e32673e1b1037c1918.zip
add DB idempotency test
-rw-r--r--src/exchangedb/Makefile.am5
-rwxr-xr-xsrc/exchangedb/test_idempotency.sh10
2 files changed, 15 insertions, 0 deletions
diff --git a/src/exchangedb/Makefile.am b/src/exchangedb/Makefile.am
index 4df9cb406..c2e87e5da 100644
--- a/src/exchangedb/Makefile.am
+++ b/src/exchangedb/Makefile.am
@@ -65,6 +65,9 @@ exchange-0004.sql: exchange-0004.sql.in 0004-*.sql
gcc -E -P -undef - < exchange-0004.sql.in 2>/dev/null | sed -e "s/--.*//" | awk 'NF' - >$@
chmod ugo-w $@
+check_SCRIPTS = \
+ test_idempotency.sh
+
EXTRA_DIST = \
exchangedb.conf \
exchangedb-postgres.conf \
@@ -72,6 +75,7 @@ EXTRA_DIST = \
test-exchange-db-postgres.conf \
$(sqlinputs) \
$(sql_DATA) \
+ $(check_SCRIPTS) \
pg_template.h pg_template.c \
pg_template.sh
@@ -311,6 +315,7 @@ noinst_PROGRAMS = \
AM_TESTS_ENVIRONMENT=export TALER_PREFIX=$${TALER_PREFIX:-@libdir@};export PATH=$${TALER_PREFIX:-@prefix@}/bin:$$PATH;
TESTS = \
+ $(check_SCRIPTS) \
$(check_PROGRAMS)
test_exchangedb_postgres_SOURCES = \
diff --git a/src/exchangedb/test_idempotency.sh b/src/exchangedb/test_idempotency.sh
new file mode 100755
index 000000000..1f42e67aa
--- /dev/null
+++ b/src/exchangedb/test_idempotency.sh
@@ -0,0 +1,10 @@
+#!/bin/sh
+# This file is in the public domain.
+set -eu
+echo "Initializing DB"
+taler-exchange-dbinit -r test-exchange-db-postgres.conf
+echo "Re-initializing DB"
+taler-exchange-dbinit test-exchange-db-postgres.conf
+echo "Re-loading procedures"
+psql talercheck < procedures.sql
+exit 0