X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;ds=inline;f=tests%2Flanguage%2Fdata-io%2Fget-data-psql.at;h=6e5b1a0a26015cddb010f2029d9b0c0326975260;hb=60b4c9b436dbead4227eb798b8b41343ef3c0054;hp=692de0957b242bee86df49a0a0f388061547a77c;hpb=0df9cdd3df66caf4353128feff3008289cda8115;p=pspp
diff --git a/tests/language/data-io/get-data-psql.at b/tests/language/data-io/get-data-psql.at
index 692de0957b..6e5b1a0a26 100644
--- a/tests/language/data-io/get-data-psql.at
+++ b/tests/language/data-io/get-data-psql.at
@@ -1,9 +1,23 @@
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see .
+dnl
AT_BANNER([GET DATA /TYPE=PSQL])
-m4_define([INIT_PSQL],
+m4_define([INIT_PSQL],
[AT_SKIP_IF([test "$PSQL_SUPPORT" = no])
- PATH=$PG_PATH:$PATH
- export PATH
PGDATA=`pwd`/cluster
export PGDATA
PGPORT=$PG_PORT
@@ -11,12 +25,12 @@ m4_define([INIT_PSQL],
socket_dir=`mktemp -d`
PGHOST="$socket_dir"
export PGHOST
- AT_CHECK([initdb -A trust], [0], [ignore])
- AT_CHECK([pg_ctl start -w -o "-k $socket_dir -h ''"], [0], [ignore])
+ AT_CHECK([PATH=$PG_PATH:$PATH initdb -A trust], [0], [ignore])
+ AT_CHECK([PATH=$PG_PATH:$PATH pg_ctl start -w -o "-k $socket_dir -h ''"], [0], [ignore])
trap 'CLEANUP_PSQL' 0
- AT_CHECK([createdb -h "$socket_dir" -p $PG_PORT $PG_DBASE],
+ AT_CHECK([PATH=$PG_PATH:$PATH createdb -h "$socket_dir" -p $PG_PORT $PG_DBASE],
[0], [ignore], [ignore])
- AT_DATA([populate.sql],
+ AT_DATA([populate.sql],
[CREATE TABLE empty (a int, b date, c numeric(23, 4));
-- a largeish table to check big queries work ok.
@@ -44,7 +58,7 @@ m4_define([INIT_PSQL],
timestamp timestamp ,
timestamptz timestamptz ,
interval interval ,
- timetz timetz
+ timetz timetz
);
INSERT INTO thing VALUES (
@@ -116,17 +130,27 @@ m4_define([INIT_PSQL],
'01:05:02 UTC-7'
);
])
+
+ # On Debian, the psql binary in the postgres bindir won't work because
+ # it needs libreadline to be LD_PRELOADed into it. The psql in the
+ # normal $PATH works fine though.
+ if (PATH=$PG_PATH:$PATH psql -V) >/dev/null 2>&1; then
+ psql () {
+ PATH=$PG_PATH:$PATH command psql "$$@@"
+ }
+ fi
AT_CHECK([psql -h "$socket_dir" -p $PG_PORT $PG_DBASE < populate.sql],
[0], [ignore])])
-m4_define([CLEANUP_PSQL], [pg_ctl stop -W -o "-k $socket_dir -h ''"])
+m4_define([CLEANUP_PSQL], [PATH=$PG_PATH:$PATH pg_ctl stop -W -o "-k $socket_dir -h ''"])
AT_SETUP([GET DATA /TYPE=PSQL])
+AT_KEYWORDS([slow])
INIT_PSQL
dnl Test with an ordinary query.
AT_CHECK([cat > ordinary-query.sps < empty-result.sps < large-result.sps < get-data.sps <