12 (my $success, my $err_code, undef, undef, my $stderr)
21 plan skip_all => "Couldn't capture buffers" if $success and not defined $stderr;
22 plan tests => $total + 1;
24 $stderr = join '', @{$stderr || []};
27 diag "Failed to execute data file (error $err_code)";
28 fail "Couldn't run test $_" for 1 .. $total + 1;
32 my %fail = map { $_ => 1 } 2, 3, 5, 7;
36 while ($stderr =~ /^Indirect\s+call\s+of\s+method\s+"([^"]+)"\s+on\s+object\s+"([^"]+)"/mg) {
37 my ($m, $o) = ($1, $2);
39 if ($o =~ /^P(\d+)$/) {
46 if (exists $fail{$id}) {
47 pass("test $id failed as expected");
51 fail("test $id shouldn't have failed");
56 pass("test $_ hasn't failed") for grep { !$failed{$_} } 1 .. $total;
57 fail("test $_ should have failed") for sort { $a <=> $b } keys %fail;
58 is($extra_fail, 0, 'no extra fails');