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

(-)a/t/Logger.t (-1 / +48 lines)
Line 0 Link Here
0
- 
1
use Modern::Perl;
2
3
use C4::Context;
4
use Koha::Logger;
5
6
use File::Temp qw/tempfile/;
7
use Test::MockModule;
8
use Test::More tests => 1;
9
10
subtest 'Test01 -- Simple tests for Koha::Logger' => sub {
11
    plan tests => 6;
12
    test01();
13
};
14
15
sub test01 {
16
    my $mContext = new Test::MockModule('C4::Context');
17
    $mContext->mock( 'config', sub { return; } );
18
19
    my $logger= Koha::Logger->get;
20
    is( exists $logger->{logger}, '', 'No log4perl config');
21
    my $d= $logger->debug('Message 1');
22
    is( $d, undef, 'No return value for debug call');
23
24
    my $log = mytempfile();
25
    my $conf = mytempfile( <<"HERE"
26
log4perl.logger.intranet = WARN, INTRANET
27
log4perl.appender.INTRANET=Log::Log4perl::Appender::File
28
log4perl.appender.INTRANET.filename=$log
29
log4perl.appender.INTRANET.mode=append
30
log4perl.appender.INTRANET.layout=PatternLayout
31
log4perl.appender.INTRANET.layout.ConversionPattern=[%d] [%p] %m %l %n
32
HERE
33
    );
34
    $mContext->mock( 'config', sub { return $conf; } );
35
    $logger= Koha::Logger->get({ interface => 'intranet' });
36
    is( exists $logger->{logger}, 1, 'Log4perl config found');
37
    is( $logger->warn('Message 2'), 1, 'Message 2 returned a value' );
38
    is( $logger->catastrophe, undef, 'catastrophe undefined');
39
    system("chmod 400 $log");
40
    is( $logger->warn('Message 3'), undef, 'Message 3 returned undef' );
41
}
42
43
sub mytempfile {
44
    my ( $fh, $fn ) = tempfile( SUFFIX => '.logger.test', UNLINK => 1 );
45
    print $fh $_[0]//'';
46
    close $fh;
47
    return $fn;
48
}

Return to bug 14167