diff options
author | Michael Paquier <michael@paquier.xyz> | 2025-01-23 16:03:48 +0900 |
---|---|---|
committer | Michael Paquier <michael@paquier.xyz> | 2025-01-23 16:03:48 +0900 |
commit | eef4a33f62f7300765b5ffa8c966fa2fba50d176 (patch) | |
tree | 6bfc2785fe4b88873ff8414ac7174cf5be0cf44b | |
parent | 858b4db378f2ba1dacd078b3b052027c3518fd13 (diff) | |
download | postgresql-eef4a33f62f7300765b5ffa8c966fa2fba50d176.tar.gz postgresql-eef4a33f62f7300765b5ffa8c966fa2fba50d176.zip |
Add error pattern checks for some TAP tests for non-existing objects
Some tests are updated to use command_fails_like(), gaining a check for
the error output generated. The test changed in pg_amcheck has come up
after noticing that an incorrect option name still made the test to
pass, while the command failed. The three other tests changed in
src/bin/scripts/ have been noticed by me, in passing.
Author: Dagfinn Ilmari Mannsåker, Michael Paquier
Discussion: https://postgr.es/m/87bjvy50cs.fsf@wibble.ilmari.org
-rw-r--r-- | src/bin/pg_amcheck/t/002_nonesuch.pl | 5 | ||||
-rw-r--r-- | src/bin/scripts/t/010_clusterdb.pl | 4 | ||||
-rw-r--r-- | src/bin/scripts/t/050_dropdb.pl | 4 | ||||
-rw-r--r-- | src/bin/scripts/t/070_dropuser.pl | 4 |
4 files changed, 13 insertions, 4 deletions
diff --git a/src/bin/pg_amcheck/t/002_nonesuch.pl b/src/bin/pg_amcheck/t/002_nonesuch.pl index f6011d000b7..2697f1c1b1a 100644 --- a/src/bin/pg_amcheck/t/002_nonesuch.pl +++ b/src/bin/pg_amcheck/t/002_nonesuch.pl @@ -85,7 +85,10 @@ $node->command_checks_all( # Failing to connect to the initial database due to bad username is an error. $node->command_checks_all( [ 'pg_amcheck', '--username' => 'no_such_user', 'postgres' ], - 1, [qr/^$/], [], 'checking with a non-existent user'); + 1, + [qr/^$/], + [qr/role "no_such_user" does not exist/], + 'checking with a non-existent user'); ######################################### # Test checking databases without amcheck installed diff --git a/src/bin/scripts/t/010_clusterdb.pl b/src/bin/scripts/t/010_clusterdb.pl index a4e4d468578..65a32b6c4c5 100644 --- a/src/bin/scripts/t/010_clusterdb.pl +++ b/src/bin/scripts/t/010_clusterdb.pl @@ -21,7 +21,9 @@ $node->issues_sql_like( qr/statement: CLUSTER;/, 'SQL CLUSTER run'); -$node->command_fails([ 'clusterdb', '--table' => 'nonexistent' ], +$node->command_fails_like( + [ 'clusterdb', '--table' => 'nonexistent' ], + qr/relation "nonexistent" does not exist/, 'fails with nonexistent table'); $node->safe_psql('postgres', diff --git a/src/bin/scripts/t/050_dropdb.pl b/src/bin/scripts/t/050_dropdb.pl index 9db0345119f..d0bf4924ce4 100644 --- a/src/bin/scripts/t/050_dropdb.pl +++ b/src/bin/scripts/t/050_dropdb.pl @@ -28,7 +28,9 @@ $node->issues_sql_like( qr/statement: DROP DATABASE foobar2 WITH \(FORCE\);/, 'SQL DROP DATABASE (FORCE) run'); -$node->command_fails([ 'dropdb', 'nonexistent' ], +$node->command_fails_like( + [ 'dropdb', 'nonexistent' ], + qr/database "nonexistent" does not exist/, 'fails with nonexistent database'); # check that invalid database can be dropped with dropdb diff --git a/src/bin/scripts/t/070_dropuser.pl b/src/bin/scripts/t/070_dropuser.pl index 2c432fbdb63..5f100978446 100644 --- a/src/bin/scripts/t/070_dropuser.pl +++ b/src/bin/scripts/t/070_dropuser.pl @@ -22,7 +22,9 @@ $node->issues_sql_like( qr/statement: DROP ROLE regress_foobar1/, 'SQL DROP ROLE run'); -$node->command_fails([ 'dropuser', 'regress_nonexistent' ], +$node->command_fails_like( + [ 'dropuser', 'regress_nonexistent' ], + qr/role "regress_nonexistent" does not exist/, 'fails with nonexistent user'); done_testing(); |