Fix some issues with SSL and Kerberos tests

The recent refactoring done in c50624c accidentally broke a portion of
the kerberos tests checking after a query, so add its functionality
back.  Some inactive SSL tests had their arguments in an incorrect
order, which would cause them to fail if they were to run.

Author: Jacob Champion
Discussion: https://postgr.es/m/4f5b0b3dc0b6fe9ae6a34886b4d4000f61eb567e.camel@vmware.com
This commit is contained in:
Michael Paquier 2021-04-06 13:23:57 +09:00
parent ac4645c015
commit 5a71964a83
2 changed files with 10 additions and 9 deletions

View File

@ -20,7 +20,7 @@ use Time::HiRes qw(usleep);
if ($ENV{with_gssapi} eq 'yes') if ($ENV{with_gssapi} eq 'yes')
{ {
plan tests => 30; plan tests => 32;
} }
else else
{ {
@ -196,7 +196,7 @@ sub test_access
$node->connect_ok( $node->connect_ok(
$connstr, $test_name, $connstr, $test_name,
sql => $query, sql => $query,
expected_stdout => qr/t/); expected_stdout => qr/^t$/);
} }
else else
{ {
@ -227,9 +227,10 @@ sub test_query
my $connstr = $node->connstr('postgres') my $connstr = $node->connstr('postgres')
. " user=$role host=$host hostaddr=$hostaddr $gssencmode"; . " user=$role host=$host hostaddr=$hostaddr $gssencmode";
my ($stdoutres, $stderrres); $node->connect_ok(
$connstr, $test_name,
$node->connect_ok($connstr, $test_name, $query, $expected); sql => $query,
expected_stdout => $expected);
return; return;
} }

View File

@ -459,17 +459,17 @@ TODO:
# correct client cert in encrypted PEM with empty password # correct client cert in encrypted PEM with empty password
$node->connect_fails( $node->connect_fails(
"$common_connstr user=ssltestuser sslcert=ssl/client.crt sslkey=ssl/client-encrypted-pem_tmp.key sslpassword=''", "$common_connstr user=ssltestuser sslcert=ssl/client.crt sslkey=ssl/client-encrypted-pem_tmp.key sslpassword=''",
"certificate authorization fails with correct client cert and empty password in encrypted PEM format",
expected_stderr => expected_stderr =>
qr!\Qprivate key file "ssl/client-encrypted-pem_tmp.key": processing error\E!, qr!\Qprivate key file "ssl/client-encrypted-pem_tmp.key": processing error\E!
"certificate authorization fails with correct client cert and empty password in encrypted PEM format"
); );
# correct client cert in encrypted PEM with no password # correct client cert in encrypted PEM with no password
$node->connect_fails( $node->connect_fails(
"$common_connstr user=ssltestuser sslcert=ssl/client.crt sslkey=ssl/client-encrypted-pem_tmp.key", "$common_connstr user=ssltestuser sslcert=ssl/client.crt sslkey=ssl/client-encrypted-pem_tmp.key",
"certificate authorization fails with correct client cert and no password in encrypted PEM format",
expected_stderr => expected_stderr =>
qr!\Qprivate key file "ssl/client-encrypted-pem_tmp.key": processing error\E!, qr!\Qprivate key file "ssl/client-encrypted-pem_tmp.key": processing error\E!
"certificate authorization fails with correct client cert and no password in encrypted PEM format"
); );
} }