summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTom Lane2005-05-17 18:26:23 +0000
committerTom Lane2005-05-17 18:26:23 +0000
commit32319c3a934d5dd40ed3d958969124585e4050a2 (patch)
tree19a2aa71b2863aba45ac47d7f46d997226c9be7a
parent01a059e9965e61aecca39b0bca77739794a5246a (diff)
Add a --dbname option to the pg_regress script, and use pl_regression
for testing PLs and contrib_regression for testing contrib, instead of overwriting the core system's regression database as formerly done. Andrew Dunstan
-rw-r--r--contrib/contrib-global.mk1
-rw-r--r--contrib/dblink/expected/dblink.out16
-rw-r--r--contrib/dblink/sql/dblink.sql16
-rw-r--r--src/Makefile.global.in3
-rw-r--r--src/makefiles/pgxs.mk6
-rw-r--r--src/pl/plperl/GNUmakefile3
-rw-r--r--src/pl/plpython/Makefile3
-rw-r--r--src/pl/tcl/Makefile3
-rw-r--r--src/test/regress/pg_regress.sh4
9 files changed, 33 insertions, 22 deletions
diff --git a/contrib/contrib-global.mk b/contrib/contrib-global.mk
index a6f7b9f6d7..c4601e1cd5 100644
--- a/contrib/contrib-global.mk
+++ b/contrib/contrib-global.mk
@@ -1,4 +1,5 @@
# $PostgreSQL$
NO_PGXS = 1
+REGRESS_OPTS = --dbname=$(CONTRIB_TESTDB)
include $(top_srcdir)/src/makefiles/pgxs.mk
diff --git a/contrib/dblink/expected/dblink.out b/contrib/dblink/expected/dblink.out
index 4aebfd974d..de09f6a8e0 100644
--- a/contrib/dblink/expected/dblink.out
+++ b/contrib/dblink/expected/dblink.out
@@ -98,7 +98,7 @@ SELECT dblink_build_sql_delete('"MySchema"."Foo"','1 2',2,'{"0", "a"}');
-- regular old dblink
SELECT *
-FROM dblink('dbname=regression','SELECT * FROM foo') AS t(a int, b text, c text[])
+FROM dblink('dbname=contrib_regression','SELECT * FROM foo') AS t(a int, b text, c text[])
WHERE t.a > 7;
a | b | c
---+---+------------
@@ -112,7 +112,7 @@ FROM dblink('SELECT * FROM foo') AS t(a int, b text, c text[])
WHERE t.a > 7;
ERROR: connection not available
-- create a persistent connection
-SELECT dblink_connect('dbname=regression');
+SELECT dblink_connect('dbname=contrib_regression');
dblink_connect
----------------
OK
@@ -260,14 +260,14 @@ WHERE t.a > 7;
ERROR: connection not available
-- put more data into our slave table, first using arbitrary connection syntax
-- but truncate the actual return value so we can use diff to check for success
-SELECT substr(dblink_exec('dbname=regression','INSERT INTO foo VALUES(10,''k'',''{"a10","b10","c10"}'')'),1,6);
+SELECT substr(dblink_exec('dbname=contrib_regression','INSERT INTO foo VALUES(10,''k'',''{"a10","b10","c10"}'')'),1,6);
substr
--------
INSERT
(1 row)
-- create a persistent connection
-SELECT dblink_connect('dbname=regression');
+SELECT dblink_connect('dbname=contrib_regression');
dblink_connect
----------------
OK
@@ -383,7 +383,7 @@ ERROR: could not establish connection
DETAIL: missing "=" after "myconn" in connection info string
-- create a named persistent connection
-SELECT dblink_connect('myconn','dbname=regression');
+SELECT dblink_connect('myconn','dbname=contrib_regression');
dblink_connect
----------------
OK
@@ -420,10 +420,10 @@ SELECT dblink_exec('myconn','ABORT');
-- create a second named persistent connection
-- should error with "duplicate connection name"
-SELECT dblink_connect('myconn','dbname=regression');
+SELECT dblink_connect('myconn','dbname=contrib_regression');
ERROR: duplicate connection name
-- create a second named persistent connection with a new name
-SELECT dblink_connect('myconn2','dbname=regression');
+SELECT dblink_connect('myconn2','dbname=contrib_regression');
dblink_connect
----------------
OK
@@ -540,7 +540,7 @@ ERROR: could not establish connection
DETAIL: missing "=" after "myconn" in connection info string
-- create a named persistent connection
-SELECT dblink_connect('myconn','dbname=regression');
+SELECT dblink_connect('myconn','dbname=contrib_regression');
dblink_connect
----------------
OK
diff --git a/contrib/dblink/sql/dblink.sql b/contrib/dblink/sql/dblink.sql
index 61d0adb020..b574869569 100644
--- a/contrib/dblink/sql/dblink.sql
+++ b/contrib/dblink/sql/dblink.sql
@@ -65,7 +65,7 @@ SELECT dblink_build_sql_delete('"MySchema"."Foo"','1 2',2,'{"0", "a"}');
-- regular old dblink
SELECT *
-FROM dblink('dbname=regression','SELECT * FROM foo') AS t(a int, b text, c text[])
+FROM dblink('dbname=contrib_regression','SELECT * FROM foo') AS t(a int, b text, c text[])
WHERE t.a > 7;
-- should generate "connection not available" error
@@ -74,7 +74,7 @@ FROM dblink('SELECT * FROM foo') AS t(a int, b text, c text[])
WHERE t.a > 7;
-- create a persistent connection
-SELECT dblink_connect('dbname=regression');
+SELECT dblink_connect('dbname=contrib_regression');
-- use the persistent connection
SELECT *
@@ -138,10 +138,10 @@ WHERE t.a > 7;
-- put more data into our slave table, first using arbitrary connection syntax
-- but truncate the actual return value so we can use diff to check for success
-SELECT substr(dblink_exec('dbname=regression','INSERT INTO foo VALUES(10,''k'',''{"a10","b10","c10"}'')'),1,6);
+SELECT substr(dblink_exec('dbname=contrib_regression','INSERT INTO foo VALUES(10,''k'',''{"a10","b10","c10"}'')'),1,6);
-- create a persistent connection
-SELECT dblink_connect('dbname=regression');
+SELECT dblink_connect('dbname=contrib_regression');
-- put more data into our slave table, using persistent connection syntax
-- but truncate the actual return value so we can use diff to check for success
@@ -193,7 +193,7 @@ FROM dblink('myconn','SELECT * FROM foo') AS t(a int, b text, c text[])
WHERE t.a > 7;
-- create a named persistent connection
-SELECT dblink_connect('myconn','dbname=regression');
+SELECT dblink_connect('myconn','dbname=contrib_regression');
-- use the named persistent connection
SELECT *
@@ -210,10 +210,10 @@ SELECT dblink_exec('myconn','ABORT');
-- create a second named persistent connection
-- should error with "duplicate connection name"
-SELECT dblink_connect('myconn','dbname=regression');
+SELECT dblink_connect('myconn','dbname=contrib_regression');
-- create a second named persistent connection with a new name
-SELECT dblink_connect('myconn2','dbname=regression');
+SELECT dblink_connect('myconn2','dbname=contrib_regression');
-- use the second named persistent connection
SELECT *
@@ -263,7 +263,7 @@ FROM dblink('myconn','SELECT * FROM foo') AS t(a int, b text, c text[])
WHERE t.a > 7;
-- create a named persistent connection
-SELECT dblink_connect('myconn','dbname=regression');
+SELECT dblink_connect('myconn','dbname=contrib_regression');
-- put more data into our slave table, using named persistent connection syntax
-- but truncate the actual return value so we can use diff to check for success
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index 81d30c54f9..56773b3a8e 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -228,6 +228,9 @@ XGETTEXT = @XGETTEXT@
GZIP = gzip
BZIP2 = bzip2
+PL_TESTDB = pl_regression
+CONTRIB_TESTDB = contrib_regression
+
# Installation.
INSTALL = $(SHELL) $(top_srcdir)/config/install-sh -c
diff --git a/src/makefiles/pgxs.mk b/src/makefiles/pgxs.mk
index 56569a0de6..f81a5c9362 100644
--- a/src/makefiles/pgxs.mk
+++ b/src/makefiles/pgxs.mk
@@ -224,12 +224,12 @@ submake:
# against installed postmaster
installcheck: submake
- $(top_builddir)/src/test/regress/pg_regress $(REGRESS)
+ $(SHELL) $(top_builddir)/src/test/regress/pg_regress $(REGRESS_OPTS) $(REGRESS)
# in-tree test doesn't work yet (no way to install my shared library)
#check: all submake
-# $(top_builddir)/src/test/regress/pg_regress --temp-install \
-# --top-builddir=$(top_builddir) $(REGRESS)
+# $(SHELL) $(top_builddir)/src/test/regress/pg_regress --temp-install \
+# --top-builddir=$(top_builddir) $(REGRESS_OPTS) $(REGRESS)
check:
@echo "'make check' is not supported."
@echo "Do 'make install', then 'make installcheck' instead."
diff --git a/src/pl/plperl/GNUmakefile b/src/pl/plperl/GNUmakefile
index 412f28fb9f..cb3a676e97 100644
--- a/src/pl/plperl/GNUmakefile
+++ b/src/pl/plperl/GNUmakefile
@@ -36,6 +36,7 @@ OBJS = plperl.o spi_internal.o SPI.o
SHLIB_LINK = $(perl_embed_ldflags) $(BE_DLLLIBS)
+REGRESS_OPTS = --dbname=$(PL_TESTDB) --load-language=plperl
REGRESS = plperl
include $(top_srcdir)/src/Makefile.shlib
@@ -62,7 +63,7 @@ uninstall:
rm -f $(DESTDIR)$(pkglibdir)/plperl$(DLSUFFIX)
installcheck: submake
- $(SHELL) $(top_builddir)/src/test/regress/pg_regress --load-language=plperl $(REGRESS)
+ $(SHELL) $(top_builddir)/src/test/regress/pg_regress $(REGRESS_OPTS) $(REGRESS)
.PHONY: submake
submake:
diff --git a/src/pl/plpython/Makefile b/src/pl/plpython/Makefile
index 154b5e231e..48ed3c86bb 100644
--- a/src/pl/plpython/Makefile
+++ b/src/pl/plpython/Makefile
@@ -58,6 +58,7 @@ endif
SHLIB_LINK = $(BE_DLLLIBS) $(python_libspec) $(python_additional_libs)
+REGRESS_OPTS = --dbname=$(PL_TESTDB) --load-language=plpythonu
REGRESS = plpython_schema plpython_populate plpython_function plpython_test plpython_error plpython_drop
include $(top_srcdir)/src/Makefile.shlib
@@ -81,7 +82,7 @@ uninstall:
rm -f $(DESTDIR)$(pkglibdir)/plpython$(DLSUFFIX)
installcheck: submake
- $(SHELL) $(top_builddir)/src/test/regress/pg_regress --load-language=plpythonu $(REGRESS)
+ $(SHELL) $(top_builddir)/src/test/regress/pg_regress $(REGRESS_OPTS) $(REGRESS)
.PHONY: submake
submake:
diff --git a/src/pl/tcl/Makefile b/src/pl/tcl/Makefile
index 022aec935c..4955a39bb5 100644
--- a/src/pl/tcl/Makefile
+++ b/src/pl/tcl/Makefile
@@ -40,6 +40,7 @@ SO_MAJOR_VERSION = 2
SO_MINOR_VERSION = 0
OBJS = pltcl.o
+REGRESS_OPTS = --dbname=$(PL_TESTDB) --load-language=pltcl
REGRESS = pltcl_setup pltcl_queries
include $(top_srcdir)/src/Makefile.shlib
@@ -68,7 +69,7 @@ uninstall:
$(MAKE) -C modules $@
installcheck: submake
- $(SHELL) $(top_builddir)/src/test/regress/pg_regress --load-language=pltcl $(REGRESS)
+ $(SHELL) $(top_builddir)/src/test/regress/pg_regress $(REGRESS_OPTS) $(REGRESS)
.PHONY: submake
submake:
diff --git a/src/test/regress/pg_regress.sh b/src/test/regress/pg_regress.sh
index 62be37e8ba..de2238f0eb 100644
--- a/src/test/regress/pg_regress.sh
+++ b/src/test/regress/pg_regress.sh
@@ -11,6 +11,7 @@ PostgreSQL regression test driver
Usage: $me [options...] [extra tests...]
Options:
+ --dbname=DB use database DB (default \`regression')
--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
@@ -123,6 +124,9 @@ do
--version)
echo "pg_regress (PostgreSQL @VERSION@)"
exit 0;;
+ --dbname=*)
+ dbname=`expr "x$1" : "x--dbname=\(.*\)"`
+ shift;;
--debug)
debug=yes
shift;;