diff --git a/src/test/perl/PostgresNode.pm b/src/test/perl/PostgresNode.pm index 4ca7f7780db2ff480c63d623c0073c196300e3a8..7c8e66ebe3ef02c5246b6a076c801c2e8b58c20f 100644 --- a/src/test/perl/PostgresNode.pm +++ b/src/test/perl/PostgresNode.pm @@ -1,3 +1,4 @@ + =pod =head1 NAME @@ -106,18 +107,15 @@ of finding port numbers, registering instances for cleanup, etc. sub new { - my $class = shift; - my $name = shift; - my $pghost = shift; - my $pgport = shift; + my ($class, $name, $pghost, $pgport) = @_; my $testname = basename($0); $testname =~ s/\.[^.]+$//; - my $self = { - _port => $pgport, - _host => $pghost, - _basedir => TestLib::tempdir("data_" . $name), - _name => $name, - _logfile => "$TestLib::log_path/${testname}_${name}.log" }; + my $self = { + _port => $pgport, + _host => $pghost, + _basedir => TestLib::tempdir("data_" . $name), + _name => $name, + _logfile => "$TestLib::log_path/${testname}_${name}.log" }; bless $self, $class; $self->dump_info; @@ -367,7 +365,7 @@ sub init $params{hba_permit_replication} = 1 unless defined $params{hba_permit_replication}; $params{allows_streaming} = 0 unless defined $params{allows_streaming}; - $params{has_archiving} = 0 unless defined $params{has_archiving}; + $params{has_archiving} = 0 unless defined $params{has_archiving}; mkdir $self->backup_dir; mkdir $self->archive_dir; @@ -405,7 +403,7 @@ sub init close $conf; $self->set_replication_conf if $params{hba_permit_replication}; - $self->enable_archiving if $params{has_archiving}; + $self->enable_archiving if $params{has_archiving}; } =pod @@ -492,7 +490,7 @@ sub init_from_backup $params{has_streaming} = 0 unless defined $params{has_streaming}; $params{hba_permit_replication} = 1 - unless defined $params{hba_permit_replication}; + unless defined $params{hba_permit_replication}; $params{has_restoring} = 0 unless defined $params{has_restoring}; print @@ -514,7 +512,7 @@ sub init_from_backup qq( port = $port )); - $self->set_replication_conf if $params{hba_permit_replication}; + $self->set_replication_conf if $params{hba_permit_replication}; $self->enable_streaming($root_node) if $params{has_streaming}; $self->enable_restoring($root_node) if $params{has_restoring}; } @@ -607,19 +605,19 @@ sub promote my $logfile = $self->logfile; my $name = $self->name; print "### Promoting node \"$name\"\n"; - TestLib::system_log('pg_ctl', '-D', $pgdata, '-l', $logfile, - 'promote'); + TestLib::system_log('pg_ctl', '-D', $pgdata, '-l', $logfile, 'promote'); } # Internal routine to enable streaming replication on a standby node. sub enable_streaming { - my ($self, $root_node) = @_; + my ($self, $root_node) = @_; my $root_connstr = $root_node->connstr; - my $name = $self->name; + my $name = $self->name; print "### Enabling streaming replication for node \"$name\"\n"; - $self->append_conf('recovery.conf', qq( + $self->append_conf( + 'recovery.conf', qq( primary_conninfo='$root_connstr application_name=$name' standby_mode=on )); @@ -628,7 +626,7 @@ standby_mode=on # Internal routine to enable archive recovery command on a standby node sub enable_restoring { - my ($self, $root_node) = @_; + my ($self, $root_node) = @_; my $path = $root_node->archive_dir; my $name = $self->name; @@ -641,11 +639,13 @@ sub enable_restoring # first. Paths also need to be double-quoted to prevent failures where # the path contains spaces. $path =~ s{\\}{\\\\}g if ($TestLib::windows_os); - my $copy_command = $TestLib::windows_os ? - qq{copy "$path\\\\%f" "%p"} : - qq{cp $path/%f %p}; + my $copy_command = + $TestLib::windows_os + ? qq{copy "$path\\\\%f" "%p"} + : qq{cp $path/%f %p}; - $self->append_conf('recovery.conf', qq( + $self->append_conf( + 'recovery.conf', qq( restore_command = '$copy_command' standby_mode = on )); @@ -667,12 +667,14 @@ sub enable_archiving # first. Paths also need to be double-quoted to prevent failures where # the path contains spaces. $path =~ s{\\}{\\\\}g if ($TestLib::windows_os); - my $copy_command = $TestLib::windows_os ? - qq{copy "%p" "$path\\\\%f"} : - qq{cp %p $path/%f}; + my $copy_command = + $TestLib::windows_os + ? qq{copy "%p" "$path\\\\%f"} + : qq{cp %p $path/%f}; # Enable archive_mode and archive_command on node - $self->append_conf('postgresql.conf', qq( + $self->append_conf( + 'postgresql.conf', qq( archive_mode = on archive_command = '$copy_command' )); diff --git a/src/test/perl/README b/src/test/perl/README index 7b6de5f0b6fb701efc5da5e8224444ab1f5ec3c5..9eae159db86f17b72785ae657e978f5f67e30cce 100644 --- a/src/test/perl/README +++ b/src/test/perl/README @@ -11,6 +11,9 @@ isolation tester specs in src/test/isolation, if possible. If not, check to see if your new tests make sense under an existing tree in src/test, like src/test/ssl, or should be added to one of the suites for an existing utility. +Note that all tests and test tools should have perltidy run on them before +patches are submitted, using perltidy --profile=src/tools/pgindent/perltidyrc + Writing tests ------------- diff --git a/src/test/perl/SimpleTee.pm b/src/test/perl/SimpleTee.pm index 5da82d0f85d3d2b117b03063baebc5d303605458..ea2f2ee82871004e581a25fbdcd1a81d7cf27c30 100644 --- a/src/test/perl/SimpleTee.pm +++ b/src/test/perl/SimpleTee.pm @@ -10,17 +10,20 @@ package SimpleTee; use strict; -sub TIEHANDLE { +sub TIEHANDLE +{ my $self = shift; bless \@_, $self; } -sub PRINT { +sub PRINT +{ my $self = shift; - my $ok = 1; - for my $fh (@$self) { + my $ok = 1; + for my $fh (@$self) + { print $fh @_ or $ok = 0; - $fh->flush or $ok = 0; + $fh->flush or $ok = 0; } return $ok; }