Use Test::Builder::todo_start(), replacing $::TODO.

Some pre-2017 Test::More versions need perfect $Test::Builder::Level
maintenance to find the variable.  Buildfarm member snapper reported an
overall failure that the file intended to hide via the TODO construct.
That trouble was reachable in v11 and v10.  For later branches, this
serves as defense in depth.  Back-patch to v10 (all supported versions).

Discussion: https://postgr.es/m/20220202055556.GB2745933@rfd.leadboat.com
This commit is contained in:
Noah Misch 2022-02-09 18:16:59 -08:00
parent 0147fc7c8c
commit adbd00f7a5
2 changed files with 4 additions and 3 deletions

View File

@ -11,7 +11,8 @@ use PostgreSQL::Test::Utils;
use Test::More tests => 5;
local $TODO = 'filesystem bug' if PostgreSQL::Test::Utils::has_wal_read_bug;
Test::More->builder->todo_start('filesystem bug')
if PostgreSQL::Test::Utils::has_wal_read_bug;
my ($node, $result);

View File

@ -8,8 +8,8 @@ use File::Basename;
if (PostgreSQL::Test::Utils::has_wal_read_bug)
{
# We'd prefer to use "local $TODO", but the bug causes this test file to
# die(), not merely to fail.
# We'd prefer to use Test::More->builder->todo_start, but the bug causes
# this test file to die(), not merely to fail.
plan skip_all => 'filesystem bug';
}
else