From c67a86f7da90c30b81f91957023fb752f06f0598 Mon Sep 17 00:00:00 2001 From: Tom Lane Date: Sat, 4 Apr 2015 13:34:23 -0400 Subject: [PATCH] Fix TAP tests to use only standard command-line argument ordering. Some of the TAP tests were supposing that PG programs would accept switches after non-switch arguments on their command lines. While GNU getopt_long() does allow that, our own implementation does not, and it's nowhere suggested in our documentation that such cases should work. Adjust the tests to use only the documented syntax. Back-patch to 9.4, since without this the TAP tests fail when run with src/port's getopt_long() implementation. Michael Paquier --- src/bin/initdb/t/001_initdb.pl | 8 ++++---- src/bin/scripts/t/010_clusterdb.pl | 2 +- src/bin/scripts/t/020_createdb.pl | 2 +- src/bin/scripts/t/090_reindexdb.pl | 8 ++++---- 4 files changed, 10 insertions(+), 10 deletions(-) diff --git a/src/bin/initdb/t/001_initdb.pl b/src/bin/initdb/t/001_initdb.pl index 149b3d1bb3..d12be842c1 100644 --- a/src/bin/initdb/t/001_initdb.pl +++ b/src/bin/initdb/t/001_initdb.pl @@ -20,7 +20,7 @@ command_ok([ 'initdb', "$tempdir/data4" ], 'existing empty data directory'); system_or_bail "rm -rf '$tempdir'/*"; -command_ok([ 'initdb', "$tempdir/data", '-X', "$tempdir/pgxlog" ], +command_ok([ 'initdb', '-X', "$tempdir/pgxlog", "$tempdir/data" ], 'separate xlog directory'); system_or_bail "rm -rf '$tempdir'/*"; @@ -30,15 +30,15 @@ command_fails( system_or_bail "rm -rf '$tempdir'/*"; mkdir "$tempdir/pgxlog"; -command_ok([ 'initdb', "$tempdir/data", '-X', "$tempdir/pgxlog" ], +command_ok([ 'initdb', '-X', "$tempdir/pgxlog", "$tempdir/data" ], 'existing empty xlog directory'); system_or_bail "rm -rf '$tempdir'/*"; mkdir "$tempdir/pgxlog"; mkdir "$tempdir/pgxlog/lost+found"; -command_fails([ 'initdb', "$tempdir/data", '-X', "$tempdir/pgxlog" ], +command_fails([ 'initdb', '-X', "$tempdir/pgxlog", "$tempdir/data" ], 'existing nonempty xlog directory'); system_or_bail "rm -rf '$tempdir'/*"; -command_ok([ 'initdb', "$tempdir/data", '-T', 'german' ], +command_ok([ 'initdb', '-T', 'german', "$tempdir/data" ], 'select default dictionary'); diff --git a/src/bin/scripts/t/010_clusterdb.pl b/src/bin/scripts/t/010_clusterdb.pl index cb9d04b0fe..dc0d78a27d 100644 --- a/src/bin/scripts/t/010_clusterdb.pl +++ b/src/bin/scripts/t/010_clusterdb.pl @@ -21,6 +21,6 @@ command_fails([ 'clusterdb', '-t', 'nonexistent', 'postgres' ], psql 'postgres', 'CREATE TABLE test1 (a int); CREATE INDEX test1x ON test1 (a); CLUSTER test1 USING test1x'; issues_sql_like( - [ 'clusterdb', 'postgres', '-t', 'test1' ], + [ 'clusterdb', '-t', 'test1', 'postgres' ], qr/statement: CLUSTER test1;/, 'cluster specific table'); diff --git a/src/bin/scripts/t/020_createdb.pl b/src/bin/scripts/t/020_createdb.pl index 40fbc9278d..a44283c945 100644 --- a/src/bin/scripts/t/020_createdb.pl +++ b/src/bin/scripts/t/020_createdb.pl @@ -15,7 +15,7 @@ issues_sql_like( qr/statement: CREATE DATABASE foobar1/, 'SQL CREATE DATABASE run'); issues_sql_like( - [ 'createdb', 'foobar2', '-l', 'C', '-E', 'LATIN1', '-T', 'template0' ], + [ 'createdb', '-l', 'C', '-E', 'LATIN1', '-T', 'template0', 'foobar2' ], qr/statement: CREATE DATABASE foobar2 ENCODING 'LATIN1'/, 'create database with encoding'); diff --git a/src/bin/scripts/t/090_reindexdb.pl b/src/bin/scripts/t/090_reindexdb.pl index d24088ebdb..d5bce4334e 100644 --- a/src/bin/scripts/t/090_reindexdb.pl +++ b/src/bin/scripts/t/090_reindexdb.pl @@ -20,18 +20,18 @@ issues_sql_like( psql 'postgres', 'CREATE TABLE test1 (a int); CREATE INDEX test1x ON test1 (a);'; issues_sql_like( - [ 'reindexdb', 'postgres', '-t', 'test1' ], + [ 'reindexdb', '-t', 'test1', 'postgres' ], qr/statement: REINDEX TABLE test1;/, 'reindex specific table'); issues_sql_like( - [ 'reindexdb', 'postgres', '-i', 'test1x' ], + [ 'reindexdb', '-i', 'test1x', 'postgres' ], qr/statement: REINDEX INDEX test1x;/, 'reindex specific index'); issues_sql_like( - [ 'reindexdb', 'postgres', '-S', 'pg_catalog' ], + [ 'reindexdb', '-S', 'pg_catalog', 'postgres' ], qr/statement: REINDEX SCHEMA pg_catalog;/, 'reindex specific schema'); issues_sql_like( - [ 'reindexdb', 'postgres', '-s' ], + [ 'reindexdb', '-s', 'postgres' ], qr/statement: REINDEX SYSTEM postgres;/, 'reindex system tables'); -- 2.40.0