Remove most msys special processing in TAP tests

Following migration of Windows buildfarm members running TAP tests to
use of ucrt64 perl for those tests, special processing for msys perl is
no longer necessary and so is removed.

Backpatch to release 10

Discussion: https://postgr.es/m/c65a8781-77ac-ea95-d185-6db291e1baeb@dunslane.net
This commit is contained in:
Andrew Dunstan 2022-02-20 11:47:56 -05:00
parent 95d981338b
commit 1c6d462939
No known key found for this signature in database
GPG Key ID: 99FA7FCB59FC3B81
6 changed files with 2 additions and 41 deletions

View File

@ -47,16 +47,7 @@ my $ctlcmd = [
'pg_ctl', 'start', '-D', "$tempdir/data", '-l',
"$PostgreSQL::Test::Utils::log_path/001_start_stop_server.log"
];
if ($Config{osname} ne 'msys')
{
command_like($ctlcmd, qr/done.*server started/s, 'pg_ctl start');
}
else
{
# use the version of command_like that doesn't hang on Msys here
command_like_safe($ctlcmd, qr/done.*server started/s, 'pg_ctl start');
}
command_like($ctlcmd, qr/done.*server started/s, 'pg_ctl start');
# sleep here is because Windows builds can't check postmaster.pid exactly,
# so they may mistake a pre-existing postmaster.pid for one created by the

View File

@ -115,7 +115,6 @@ sub check_query
}
else
{
$stdout =~ s/\r\n/\n/g if $Config{osname} eq 'msys';
is($stdout, $expected_stdout, "$test_name: query result matches");
}
return;

View File

@ -904,9 +904,7 @@ sub kill9
local %ENV = $self->_get_env();
print "### Killing node \"$name\" using signal 9\n";
# kill(9, ...) fails under msys Perl 5.8.8, so fall back on pg_ctl.
kill(9, $self->{_pid})
or PostgreSQL::Test::Utils::system_or_bail('pg_ctl', 'kill', 'KILL', $self->{_pid});
kill(9, $self->{_pid});
$self->{_pid} = undef;
return;
}
@ -1845,19 +1843,13 @@ sub psql
}
};
# Note: on Windows, IPC::Run seems to convert \r\n to \n in program output
# if we're using native Perl, but not if we're using MSys Perl. So do it
# by hand in the latter case, here and elsewhere.
if (defined $$stdout)
{
$$stdout =~ s/\r\n/\n/g if $Config{osname} eq 'msys';
chomp $$stdout;
}
if (defined $$stderr)
{
$$stderr =~ s/\r\n/\n/g if $Config{osname} eq 'msys';
chomp $$stderr;
}
@ -2337,9 +2329,7 @@ sub poll_query_until
my $result = IPC::Run::run $cmd, '<', \$query,
'>', \$stdout, '2>', \$stderr;
$stdout =~ s/\r\n/\n/g if $Config{osname} eq 'msys';
chomp($stdout);
$stderr =~ s/\r\n/\n/g if $Config{osname} eq 'msys';
chomp($stderr);
if ($stdout eq $expected && $stderr eq '')
@ -2849,9 +2839,6 @@ sub pg_recvlogical_upto
}
};
$stdout =~ s/\r\n/\n/g if $Config{osname} eq 'msys';
$stderr =~ s/\r\n/\n/g if $Config{osname} eq 'msys';
if (wantarray)
{
return ($ret, $stdout, $stderr, $timeout);

View File

@ -401,7 +401,6 @@ sub run_command
my ($cmd) = @_;
my ($stdout, $stderr);
my $result = IPC::Run::run $cmd, '>', \$stdout, '2>', \$stderr;
foreach ($stderr, $stdout) { s/\r\n/\n/g if $Config{osname} eq 'msys'; }
chomp($stdout);
chomp($stderr);
return ($stdout, $stderr);
@ -486,7 +485,6 @@ sub slurp_file
$contents = <$fh>;
close $fh;
$contents =~ s/\r\n/\n/g if $Config{osname} eq 'msys';
return $contents;
}
@ -844,7 +842,6 @@ sub command_like
my $result = IPC::Run::run $cmd, '>', \$stdout, '2>', \$stderr;
ok($result, "$test_name: exit code 0");
is($stderr, '', "$test_name: no stderr");
$stdout =~ s/\r\n/\n/g if $Config{osname} eq 'msys';
like($stdout, $expected_stdout, "$test_name: matches");
return;
}
@ -897,7 +894,6 @@ sub command_fails_like
print("# Running: " . join(" ", @{$cmd}) . "\n");
my $result = IPC::Run::run $cmd, '>', \$stdout, '2>', \$stderr;
ok(!$result, "$test_name: exit code not 0");
$stderr =~ s/\r\n/\n/g if $Config{osname} eq 'msys';
like($stderr, $expected_stderr, "$test_name: matches");
return;
}
@ -942,8 +938,6 @@ sub command_checks_all
if $ret & 127;
$ret = $ret >> 8;
foreach ($stderr, $stdout) { s/\r\n/\n/g if $Config{osname} eq 'msys'; }
# check status
ok($ret == $expected_ret,
"$test_name status (got $ret vs expected $expected_ret)");

View File

@ -182,9 +182,6 @@ sub send_query_and_wait
$$psql{run}->pump_nb();
while (1)
{
# See PostgreSQL::Test::Cluster.pm's psql()
$$psql{stdout} =~ s/\r\n/\n/g if $Config{osname} eq 'msys';
last if $$psql{stdout} =~ /$untl/;
if ($psql_timeout->is_expired)

View File

@ -7,11 +7,4 @@ use warnings;
die "wrong number of arguments" if @ARGV != 2;
my ($source, $target) = @ARGV;
exit if $source !~ /history/;
if ($^O eq 'msys')
{
# make a windows path look like an msys path if necessary
$source =~ s!^([A-Za-z]):!'/' . lc($1)!e;
$source =~ s!\\!/!g;
}
copy($source, $target) or die "couldn't copy $source to $target: $!";