Commit | Line | Data |
d145d900 |
1 | use strict; |
2 | use warnings; |
3 | |
854003ec |
4 | use Log::Contextual::SimpleLogger; |
d145d900 |
5 | use Test::More 'no_plan'; |
3dc9bd3c |
6 | my $var_log; |
854003ec |
7 | my $var; |
8 | |
ae9785e2 |
9 | my @levels = qw(debug trace warn info error fatal); |
10 | |
854003ec |
11 | BEGIN { |
12 | $var_log = Log::Contextual::SimpleLogger->new({ |
13 | levels => [qw(trace debug info warn error fatal)], |
14 | coderef => sub { $var = shift } |
15 | }) |
16 | } |
d145d900 |
17 | |
3dc9bd3c |
18 | use Log::Contextual qw{:dlog}, -logger => $var_log; |
db70b0a5 |
19 | |
ae9785e2 |
20 | for my $level (@levels) { |
21 | |
22 | my @foo = main->can("Dlog_$level")->( |
23 | sub { "Look ma, data: $_" }, |
24 | qw{frew bar baz} |
25 | ); |
26 | ok( |
27 | eq_array(\@foo, [qw{frew bar baz}]), |
28 | "Dlog_$level passes data through correctly" |
29 | ); |
30 | is( |
31 | $var, qq([$level] Look ma, data: "frew"\n"bar"\n"baz"\n), |
32 | "Output for Dlog_$level is correct" |
33 | ); |
34 | |
35 | my $bar = main->can("DlogS_$level")->( |
36 | sub { "Look ma, data: $_" }, |
37 | [qw{frew bar baz}] |
38 | ); |
39 | ok( |
40 | eq_array($bar, [qw{frew bar baz}]), |
41 | 'DlogS_trace passes data through correctly' |
42 | ); |
43 | is( |
44 | $var, qq([$level] Look ma, data: [\n "frew",\n "bar",\n "baz"\n]\n), |
45 | "Output for DlogS_$level is correct" |
46 | ); |
47 | |
48 | @foo = main->can("Dlog_$level")->(sub { "nothing: $_" }, ()); |
49 | ok( eq_array(\@foo, []), "Dlog_$level passes nothing through correctly"); |
50 | is( $var, "[$level] nothing: ()\n", "Output for Dlog_$level is correct"); |
db70b0a5 |
51 | } |
52 | |