View | Details | Raw Unified | Return to bug 38818
Collapse All | Expand All

(-)a/t/lib/Mocks/Logger.pm (-6 / +32 lines)
Lines 72-78 sub new { Link Here
72
            $level,
72
            $level,
73
            sub {
73
            sub {
74
                my $message = $_[1];
74
                my $message = $_[1];
75
                push @{ $self->{$level} }, $message;
75
                my @caller_info = caller(2);
76
                push @{ $self->{$level} }, { message => $message, caller => \@caller_info };
76
                return $message;
77
                return $message;
77
            }
78
            }
78
        );
79
        );
Lines 81-86 sub new { Link Here
81
    return $self;
82
    return $self;
82
}
83
}
83
84
85
=head3 diag
86
87
    $logger->diag();
88
89
Method to output all recieved logs.
90
91
=cut
92
93
sub diag {
94
    my ($self) = @_;
95
    my $tb = $CLASS->builder;
96
97
    foreach my $level (levels()) {
98
        $tb->diag("$level:");
99
        if ( @{ $self->{$level} }) {
100
            foreach my $log_entry ( @{ $self->{$level} } ) {
101
                my ($package, $filename, $line) = @{$log_entry->{caller}};
102
                $tb->diag( "    \"" . $log_entry->{message} . "\" at $filename line $line");
103
            }
104
        } else {
105
            $tb->diag("   (No $level messages)");
106
        }
107
    }
108
    return;
109
}
110
84
=head3 debug_is
111
=head3 debug_is
85
112
86
    $logger->debug_is($expected);
113
    $logger->debug_is($expected);
Lines 287-294 sub generic_is { Link Here
287
314
288
    local $Test::Builder::Level = $Test::Builder::Level + 1;
315
    local $Test::Builder::Level = $Test::Builder::Level + 1;
289
316
290
    my $string = shift @{ $self->{$level} };
317
    my $log = shift @{ $self->{$level} };
291
    $string //= '';
318
    my $string = defined($log) ? $log->{message} : '';
292
    my $tb = $CLASS->builder;
319
    my $tb = $CLASS->builder;
293
    return $tb->is_eq( $string, $expect, $name);
320
    return $tb->is_eq( $string, $expect, $name);
294
}
321
}
Lines 304-311 sub generic_like { Link Here
304
331
305
    local $Test::Builder::Level = $Test::Builder::Level + 1;
332
    local $Test::Builder::Level = $Test::Builder::Level + 1;
306
333
307
    my $string = shift @{ $self->{$level} };
334
    my $log = shift @{ $self->{$level} };
308
    $string //= '';
335
    my $string = defined($log) ? $log->{message} : '';
309
    my $tb = $CLASS->builder;
336
    my $tb = $CLASS->builder;
310
    return $tb->like( $string, $expect, $name);
337
    return $tb->like( $string, $expect, $name);
311
}
338
}
312
- 

Return to bug 38818