tests: Only attempt to run PostgreSQL tests if the server is installed.
authorBen Pfaff <blp@cs.stanford.edu>
Mon, 15 Nov 2010 05:42:34 +0000 (21:42 -0800)
committerBen Pfaff <blp@cs.stanford.edu>
Mon, 15 Nov 2010 05:42:34 +0000 (21:42 -0800)
PSQL_SUPPORT only indicates that PSPP was compiled against the PostgreSQL
client library, but the test also requires the PostgreSQL server and
utilities to be installed, so skip the test if they are not.

tests/atlocal.in

index 4c2e0efd7f6b354eef954e5146a44b81f56f888c..e64a08e4e2fb2275122183c7d57578e9017ae004 100644 (file)
@@ -13,6 +13,17 @@ if test "$PSQL_SUPPORT" = yes; then
     : ${PG_DBASE:=pspptest}
     : ${PG_PORT:=6543}
     : ${PG_PATH:=`$PG_CONFIG --bindir`}
+
+    # PSQL_SUPPORT indicates that PSPP was built against the PostgreSQL client
+    # library, but it does not mean that the PostgreSQL utilities are
+    # installed.  So check for them and turn off PSQL_SUPPORT if they are not
+    # available.
+    if (PATH=$PG_PATH:$PATH; export PATH; initdb --version) >/dev/null 2>&1
+    then
+       :
+    else
+       PSQL_SUPPORT=no
+    fi
 fi
 
 # Variables used by programs invoked by the testsuite.