Make new authentication test case more robust.
authorTom Lane
Sat, 5 Sep 2020 01:01:59 +0000 (21:01 -0400)
committerTom Lane
Sat, 5 Sep 2020 01:01:59 +0000 (21:01 -0400)
I happened to notice that the new test case I added in b55b4dad9
falls over if one runs "make check" repeatedly; though not in branches
after v10.  That's because it was assuming that tmp_check/pgpass
wouldn't exist already.  However, it's only been since v11 that the
Makefiles forcibly remove all of tmp_check/ before starting a TAP run.
This fix to unlink the file is therefore strictly necessary only in
v10 ... but it seems wisest to do it across the board, rather than
let the test rely on external logic to get the conditions right.

src/test/authentication/t/001_password.pl

index 5976d8779364a947e43b286f22a2bef75be9c6d0..f0588e32243fec3a298a79a84225d3fefcc16b31 100644 (file)
@@ -95,6 +95,7 @@ my $pgpassfile = "${TestLib::tmp_check}/pgpass";
 delete $ENV{"PGPASSWORD"};
 $ENV{"PGPASSFILE"} = $pgpassfile;
 
+unlink($pgpassfile);
 append_to_file($pgpassfile, qq!
 # This very long comment is just here to exercise handling of long lines in the file. This very long comment is just here to exercise handling of long lines in the file. This very long comment is just here to exercise handling of long lines in the file. This very long comment is just here to exercise handling of long lines in the file. This very long comment is just here to exercise handling of long lines in the file.
 *:*:postgres:scram_role:pass:this is not part of the password.