aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTom Lane <tgl@sss.pgh.pa.us>2005-05-11 21:52:03 +0000
committerTom Lane <tgl@sss.pgh.pa.us>2005-05-11 21:52:03 +0000
commit34b788d67498f476b539550c2b76e13ae70a53b4 (patch)
tree911085ff4e9a90ba8d2796d1906d0204717b8fb1
parentcc99c57e1e67bcee47b45d83834d09ce4488bee2 (diff)
downloadpostgresql-34b788d67498f476b539550c2b76e13ae70a53b4.tar.gz
postgresql-34b788d67498f476b539550c2b76e13ae70a53b4.zip
Give pg_regress a --load-language option, so that it can be used to test
other PLs besides plpgsql. Andrew Dunstan
-rw-r--r--src/test/regress/GNUmakefile12
-rw-r--r--src/test/regress/pg_regress.sh26
2 files changed, 25 insertions, 13 deletions
diff --git a/src/test/regress/GNUmakefile b/src/test/regress/GNUmakefile
index 4eccadea8e9..381163808ae 100644
--- a/src/test/regress/GNUmakefile
+++ b/src/test/regress/GNUmakefile
@@ -7,7 +7,7 @@
#
#
# IDENTIFICATION
-# $PostgreSQL: pgsql/src/test/regress/GNUmakefile,v 1.48 2004/11/17 18:05:06 tgl Exp $
+# $PostgreSQL: pgsql/src/test/regress/GNUmakefile,v 1.49 2005/05/11 21:52:03 tgl Exp $
#
#-------------------------------------------------------------------------
@@ -130,17 +130,17 @@ all-spi:
check: all
-rm -rf ./testtablespace
mkdir ./testtablespace
- $(SHELL) ./pg_regress --temp-install --top-builddir=$(top_builddir) --schedule=$(srcdir)/parallel_schedule --multibyte=$(MULTIBYTE) $(MAXCONNOPT)
+ $(SHELL) ./pg_regress --temp-install --top-builddir=$(top_builddir) --schedule=$(srcdir)/parallel_schedule --multibyte=$(MULTIBYTE) --load-language=plpgsql $(MAXCONNOPT)
installcheck: all
-rm -rf ./testtablespace
mkdir ./testtablespace
- $(SHELL) ./pg_regress --schedule=$(srcdir)/serial_schedule --multibyte=$(MULTIBYTE)
+ $(SHELL) ./pg_regress --schedule=$(srcdir)/serial_schedule --multibyte=$(MULTIBYTE) --load-language=plpgsql
installcheck-parallel: all
-rm -rf ./testtablespace
mkdir ./testtablespace
- $(SHELL) ./pg_regress --schedule=$(srcdir)/parallel_schedule --multibyte=$(MULTIBYTE) $(MAXCONNOPT)
+ $(SHELL) ./pg_regress --schedule=$(srcdir)/parallel_schedule --multibyte=$(MULTIBYTE) --load-language=plpgsql $(MAXCONNOPT)
# old interfaces follow...
@@ -150,10 +150,10 @@ runtest: installcheck
runtest-parallel: installcheck-parallel
bigtest:
- $(SHELL) ./pg_regress --schedule=$(srcdir)/serial_schedule --multibyte=$(MULTIBYTE) numeric_big
+ $(SHELL) ./pg_regress --schedule=$(srcdir)/serial_schedule --multibyte=$(MULTIBYTE) --load-language=plpgsql numeric_big
bigcheck:
- $(SHELL) ./pg_regress --temp-install --top-builddir=$(top_builddir) --schedule=$(srcdir)/parallel_schedule --multibyte=$(MULTIBYTE) $(MAXCONNOPT) numeric_big
+ $(SHELL) ./pg_regress --temp-install --top-builddir=$(top_builddir) --schedule=$(srcdir)/parallel_schedule --multibyte=$(MULTIBYTE) --load-language=plpgsql $(MAXCONNOPT) numeric_big
##
diff --git a/src/test/regress/pg_regress.sh b/src/test/regress/pg_regress.sh
index 03a349ca5ff..f637bb659e8 100644
--- a/src/test/regress/pg_regress.sh
+++ b/src/test/regress/pg_regress.sh
@@ -1,5 +1,5 @@
#! /bin/sh
-# $PostgreSQL: pgsql/src/test/regress/pg_regress.sh,v 1.53 2005/01/15 04:15:51 tgl Exp $
+# $PostgreSQL: pgsql/src/test/regress/pg_regress.sh,v 1.54 2005/05/11 21:52:03 tgl Exp $
me=`basename $0`
: ${TMPDIR=/tmp}
@@ -13,6 +13,8 @@ Usage: $me [options...] [extra tests...]
Options:
--debug turn on debug mode in programs that are run
--inputdir=DIR take input files from DIR (default \`.')
+ --load-language=lang load the named language before running the
+ tests; can appear multiple times
--max-connections=N maximum number of concurrent connections
(default is 0 meaning unlimited)
--multibyte=ENCODING use ENCODING as the multibyte encoding, and
@@ -103,6 +105,7 @@ unset multibyte
dbname=regression
hostname=localhost
maxconnections=0
+load_langs=""
: ${GMAKE='@GMAKE@'}
@@ -126,6 +129,11 @@ do
--inputdir=*)
inputdir=`expr "x$1" : "x--inputdir=\(.*\)"`
shift;;
+ --load-language=*)
+ lang=`expr "x$1" : "x--load-language=\(.*\)"`
+ load_langs="$load_langs $lang"
+ unset lang
+ shift;;
--multibyte=*)
multibyte=`expr "x$1" : "x--multibyte=\(.*\)"`
shift;;
@@ -560,16 +568,20 @@ fi
# ----------
-# Install the PL/pgSQL language in it
+# Install any requested PL languages
# ----------
if [ "$enable_shared" = yes ]; then
- message "installing PL/pgSQL"
- "$bindir/createlang" -L "$pkglibdir" $psql_options plpgsql $dbname
- if [ $? -ne 0 ] && [ $? -ne 2 ]; then
- echo "$me: createlang failed"
- (exit 2); exit
+ for lang in xyzzy $load_langs ; do
+ if [ "$lang" != "xyzzy" ]; then
+ message "installing $lang"
+ "$bindir/createlang" -L "$pkglibdir" $psql_options $lang $dbname
+ if [ $? -ne 0 ] && [ $? -ne 2 ]; then
+ echo "$me: createlang $lang failed"
+ (exit 2); exit
+ fi
fi
+ done
fi