File: 01_abstract.t

package info (click to toggle)
libdancer-perl 1.3521%2Bdfsg-1
  • links: PTS, VCS
  • area: main
  • in suites: bookworm, forky, sid, trixie
  • size: 2,460 kB
  • sloc: perl: 7,436; xml: 2,211; sh: 54; makefile: 32; sql: 5
file content (29 lines) | stat: -rw-r--r-- 714 bytes parent folder | download | duplicates (6)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
use Test::More tests => 28, import => ['!pass'];
use strict;
use warnings;

use Dancer;
use Dancer::Logger::Abstract;

my @log_levels = qw(core debug info warning error);
my $l          = Dancer::Logger::Abstract->new;
isa_ok $l, 'Dancer::Logger::Abstract';
can_ok $l, (qw(_log _should), @log_levels);

eval { $l->_log };
like $@, qr/_log not implemented/, "_log is a virtual method";


my @implemented;

for my $level (0 .. $#log_levels) {
    set log => $log_levels[0];
    for my $levels (@log_levels) {
        eval { $l->$levels("foo") };
        like $@ => qr/not implemented/;
    }
    for my $levels (@implemented) {
        is($l->$levels("foo"), "");
    }
    push @implemented => shift @log_levels;
}