pivot-table: Change the default format to omit empty rows and columns.
[pspp] / tests / language / data-io / get-data-psql.at
index b389797c9830e01036d882df7d4681b418cde5c0..6e5b1a0a26015cddb010f2029d9b0c0326975260 100644 (file)
@@ -1,22 +1,22 @@
 dnl PSPP - a program for statistical analysis.
 dnl Copyright (C) 2017 Free Software Foundation, Inc.
-dnl 
+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
 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
 dnl You should have received a copy of the GNU General Public License
 dnl along with this program.  If not, see <http://www.gnu.org/licenses/>.
 dnl
 AT_BANNER([GET DATA /TYPE=PSQL])
 
-m4_define([INIT_PSQL], 
+m4_define([INIT_PSQL],
   [AT_SKIP_IF([test "$PSQL_SUPPORT" = no])
    PGDATA=`pwd`/cluster
    export PGDATA
@@ -30,7 +30,7 @@ m4_define([INIT_PSQL],
    trap 'CLEANUP_PSQL' 0
    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.
@@ -58,7 +58,7 @@ m4_define([INIT_PSQL],
        timestamp     timestamp           ,
        timestamptz   timestamptz         ,
        interval      interval            ,
-       timetz        timetz              
+       timetz        timetz
       );
 
       INSERT INTO thing VALUES (
@@ -136,7 +136,7 @@ m4_define([INIT_PSQL],
    # normal $PATH works fine though.
    if (PATH=$PG_PATH:$PATH psql -V) >/dev/null 2>&1; then
        psql () {
-           PATH=$PG_PATH:$PATH command psql "$@"
+           PATH=$PG_PATH:$PATH command psql "$$@@"
        }
    fi
    AT_CHECK([psql -h "$socket_dir" -p $PG_PORT $PG_DBASE < populate.sql],
@@ -145,11 +145,12 @@ m4_define([INIT_PSQL],
 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 <<EOF
-GET DATA /TYPE=psql 
+GET DATA /TYPE=psql
        /CONNECT="host=$socket_dir port=$PGPORT dbname=$PG_DBASE"
        /UNENCRYPTED
        /SQL="select * from thing".
@@ -162,40 +163,40 @@ EOF
 AT_CHECK([pspp -o pspp.csv ordinary-query.sps])
 AT_CHECK([cat pspp.csv], [0], [dnl
 Table: Variables
-Name,Position,Label,Measurement Level,Role,Width,Alignment,Print Format,Write Format,Missing Values
-bool,1,,Scale,Input,8,Right,F8.2,F8.2,
-bytea,2,,Nominal,Input,1,Left,AHEX2,AHEX2,
-char,3,,Nominal,Input,8,Left,A8,A8,
-int8,4,,Scale,Input,8,Right,F8.2,F8.2,
-int2,5,,Scale,Input,8,Right,F8.2,F8.2,
-int4,6,,Scale,Input,8,Right,F8.2,F8.2,
-numeric,7,,Scale,Input,8,Right,E40.6,E40.6,
-text,8,,Nominal,Input,16,Left,A16,A16,
-oid,9,,Scale,Input,8,Right,F8.2,F8.2,
-float4,10,,Scale,Input,8,Right,F8.2,F8.2,
-float8,11,,Scale,Input,8,Right,F8.2,F8.2,
-money,12,,Scale,Input,8,Right,DOLLAR8.2,DOLLAR8.2,
-pbchar,13,,Nominal,Input,8,Left,A8,A8,
-varchar,14,,Nominal,Input,8,Left,A8,A8,
-date,15,,Scale,Input,8,Right,DATE11,DATE11,
-time,16,,Scale,Input,8,Right,TIME11.0,TIME11.0,
-timestamp,17,,Scale,Input,8,Right,DATETIME22.0,DATETIME22.0,
-timestamptz,18,,Scale,Input,8,Right,DATETIME22.0,DATETIME22.0,
-interval,19,,Scale,Input,8,Right,DTIME13.0,DTIME13.0,
-interval_months,20,,Scale,Input,8,Right,F3.0,F3.0,
-timetz,21,,Scale,Input,8,Right,TIME11.0,TIME11.0,
-timetz_zone,22,,Scale,Input,8,Right,F8.2,F8.2,
+Name,Position,Measurement Level,Role,Width,Alignment,Print Format,Write Format
+bool,1,Scale,Input,8,Right,F8.2,F8.2
+bytea,2,Nominal,Input,1,Left,AHEX2,AHEX2
+char,3,Nominal,Input,8,Left,A8,A8
+int8,4,Scale,Input,8,Right,F8.2,F8.2
+int2,5,Scale,Input,8,Right,F8.2,F8.2
+int4,6,Scale,Input,8,Right,F8.2,F8.2
+numeric,7,Scale,Input,8,Right,E40.6,E40.6
+text,8,Nominal,Input,16,Left,A16,A16
+oid,9,Scale,Input,8,Right,F8.2,F8.2
+float4,10,Scale,Input,8,Right,F8.2,F8.2
+float8,11,Scale,Input,8,Right,F8.2,F8.2
+money,12,Scale,Input,8,Right,DOLLAR8.2,DOLLAR8.2
+pbchar,13,Nominal,Input,8,Left,A8,A8
+varchar,14,Nominal,Input,8,Left,A8,A8
+date,15,Scale,Input,8,Right,DATE11,DATE11
+time,16,Scale,Input,8,Right,TIME11.0,TIME11.0
+timestamp,17,Scale,Input,8,Right,DATETIME22.0,DATETIME22.0
+timestamptz,18,Scale,Input,8,Right,DATETIME22.0,DATETIME22.0
+interval,19,Scale,Input,8,Right,DTIME13.0,DTIME13.0
+interval_months,20,Scale,Input,8,Right,F3.0,F3.0
+timetz,21,Scale,Input,8,Right,TIME11.0,TIME11.0
+timetz_zone,22,Scale,Input,8,Right,F8.2,F8.2
 
 Table: Data List
 bool,bytea,char,int8,int2,int4,numeric,text,oid,float4,float8,money,pbchar,varchar,date,time,timestamp,timestamptz,interval,interval_months,timetz,timetz_zone
-.00,30,a       ,.00,.00,.00,-2.560980E+002,this-long-text  ,.00,.00,.00,$.01,a       ,A       ,01-JAN-2000,0:00:00,08-JAN-1999 04:05:06,08-JAN-1999 12:05:06,0 00:01:00,0,10:09:00,4.00
-.  ,20,,.  ,.  ,.  ,.          ,,.  ,.  ,.  ,.  ,,,.,.,.,.,.,.,.,.  @&t@
-1.00,31,b       ,1.00,1.00,1.00,6.553500E+004,that-long-text  ,.00,1.00,1.00,$1.23,b       ,B       ,10-JAN-1963,1:05:02,10-JAN-1963 23:58:00,10-JAN-1963 22:58:00,12 01:03:04,25,1:05:02,-7.00
+.00,30,a,.00,.00,.00,-2.560980E+002,this-long-text,.00,.00,.00,$.01,a,A,01-JAN-2000,00:00:00,08-JAN-1999 04:05:06,08-JAN-1999 12:05:06,0 00:01:00,0,10:09:00,4.00
+.  ,,,.  ,.  ,.  ,.          ,,.  ,.  ,.  ,.  ,,,.,.,.,.,.,.,.,.  @&t@
+1.00,31,b,1.00,1.00,1.00,6.553500E+004,that-long-text,.00,1.00,1.00,$1.23,b,B,10-JAN-1963,01:05:02,10-JAN-1963 23:58:00,10-JAN-1963 22:58:00,12 01:03:04,25,01:05:02,-7.00
 ])
 
 dnl Test query with empty result set.
 AT_CHECK([cat > empty-result.sps <<EOF
-GET DATA /TYPE=psql 
+GET DATA /TYPE=psql
        /CONNECT="host=$socket_dir port=$PGPORT dbname=$PG_DBASE"
        /UNENCRYPTED
        /SQL="select * from empty".
@@ -208,15 +209,15 @@ EOF
 AT_CHECK([pspp -o pspp.csv empty-result.sps])
 AT_CHECK([cat pspp.csv], [0], [dnl
 Table: Variables
-Name,Position,Label,Measurement Level,Role,Width,Alignment,Print Format,Write Format,Missing Values
-a,1,,Scale,Input,8,Right,F8.2,F8.2,
-b,2,,Scale,Input,8,Right,DATE11,DATE11,
-c,3,,Scale,Input,8,Right,E40.2,E40.2,
+Name,Position,Measurement Level,Role,Width,Alignment,Print Format,Write Format
+a,1,Scale,Input,8,Right,F8.2,F8.2
+b,2,Scale,Input,8,Right,DATE11,DATE11
+c,3,Scale,Input,8,Right,E40.2,E40.2
 ])
 
 dnl Test query with large result set.
 AT_CHECK([cat > large-result.sps <<EOF
-GET DATA /TYPE=psql 
+GET DATA /TYPE=psql
        /CONNECT="host=$socket_dir port=$PGPORT dbname=$PG_DBASE"
        /UNENCRYPTED
        /SQL="select * from large".
@@ -276,7 +277,7 @@ AT_CHECK([psql -h "$socket_dir" -p $PG_PORT $PG_DBASE < all-null-string.sql],
   [0], [ignore])
 AT_CAPTURE_FILE([get-data.sps])
 AT_CHECK([cat > get-data.sps <<EOF
-GET DATA /TYPE=psql 
+GET DATA /TYPE=psql
        /CONNECT="host=$socket_dir port=$PGPORT dbname=$PG_DBASE"
        /UNENCRYPTED
        /SQL="select * from foo".