From b196d4159d7fce4f84222659a3b445c86cd2b5e8 Mon Sep 17 00:00:00 2001
From: Michael Paquier <michael@otacoo.com>
Date: Sun, 26 Oct 2014 13:08:05 +0900
Subject: [PATCH 1/2] Add more TAP tests for pg_controldata

Those checks are related to extra arguments and the newly-introduced
option -D.
---
 src/bin/pg_controldata/t/001_pg_controldata.pl | 10 +++++++++-
 1 file changed, 9 insertions(+), 1 deletion(-)

diff --git a/src/bin/pg_controldata/t/001_pg_controldata.pl b/src/bin/pg_controldata/t/001_pg_controldata.pl
index 35ad10a..f9cdcec 100644
--- a/src/bin/pg_controldata/t/001_pg_controldata.pl
+++ b/src/bin/pg_controldata/t/001_pg_controldata.pl
@@ -1,7 +1,7 @@
 use strict;
 use warnings;
 use TestLib;
-use Test::More tests => 6;
+use Test::More tests => 10;
 
 my $tempdir = TestLib::tempdir;
 
@@ -11,6 +11,14 @@ program_options_handling_ok('pg_controldata');
 command_fails(['pg_controldata'], 'pg_controldata without arguments fails');
 command_fails([ 'pg_controldata', 'nonexistent' ],
 	'pg_controldata with nonexistent directory fails');
+command_fails([ 'pg_controldata', 'arg1', 'arg2', 'arg3' ],
+	'pg_controldata with too many arguments fails');
+command_fails([ 'pg_controldata', '-D' ],
+	'pg_controldata -D with no directory defined fails');
+command_fails([ 'pg_controldata', '-D', 'arg1', 'arg2', 'arg3' ],
+	'pg_controldata -D with too many arguments fails');
 system_or_bail "initdb -D '$tempdir'/data -A trust >/dev/null";
 command_like([ 'pg_controldata', "$tempdir/data" ],
 	qr/checkpoint/, 'pg_controldata produces output');
+command_like([ 'pg_controldata', "-D", "$tempdir/data" ],
+	qr/checkpoint/, 'pg_controldata produces output');
-- 
2.1.2

