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