#!/usr/bin/perl use strict; use warnings; $ENV{TMPDIR} = 't/var'; use Test::More tests => 13; use Test::Trap qw(trap $trap); use Data::Dumper; use LedgerSMB::Sysconfig; use LedgerSMB::Log; my @r; $LedgerSMB::Sysconfig::logging = 0; @r = trap{LedgerSMB::Log->print('test', 'message')}; #is(LedgerSMB::Log->print('test', 'message'), 0); ok(!$trap->stderr, 'print: Unsetting LedgerSMB::Sysconfig::logging disables printing'); $LedgerSMB::Sysconfig::logging = 1; @r = trap{LedgerSMB::Log->print('test', 'message')}; ok($trap->stderr, 'print: Setting LedgerSMB::Sysconfig::logging enables printing'); like($trap->stderr, qr/^\[.*?\] \[test\] $$ message/, 'print: Outputs correct message'); @r = trap{LedgerSMB::Log->emerg('test')}; like($trap->stderr, qr/^\[.*?\] \[emerg\] $$ test/, 'emerg: Outputs correct grouping'); @r = trap{LedgerSMB::Log->alert('test')}; like($trap->stderr, qr/^\[.*?\] \[alert\] $$ test/, 'alert: Outputs correct grouping'); @r = trap{LedgerSMB::Log->crit('test')}; like($trap->stderr, qr/^\[.*?\] \[crit\] $$ test/, 'crit: Outputs correct grouping'); @r = trap{LedgerSMB::Log->error('test')}; like($trap->stderr, qr/^\[.*?\] \[error\] $$ test/, 'error: Outputs correct grouping'); @r = trap{LedgerSMB::Log->warn('test')}; like($trap->stderr, qr/^\[.*?\] \[warn\] $$ test/, 'warn: Outputs correct grouping'); @r = trap{LedgerSMB::Log->notice('test')}; like($trap->stderr, qr/^\[.*?\] \[notice\] $$ test/, 'notice: Outputs correct grouping'); @r = trap{LedgerSMB::Log->info('test')}; like($trap->stderr, qr/^\[.*?\] \[info\] $$ test/, 'info: Outputs correct grouping'); @r = trap{LedgerSMB::Log->debug('test')}; like($trap->stderr, qr/^\[.*?\] \[debug\] $$ test/, 'debug: Outputs correct grouping'); @r = trap{LedgerSMB::Log->dump('test')}; like($trap->stderr, qr/^\[.*?\] \[debug\] $$ \$VAR1 = 'test'/, 'dump: Simple dump correct'); @r = trap{LedgerSMB::Log->longmess('test')}; like($trap->stderr, qr/^\[.*?\] \[debug\] $$ test at /, 'longmess: Outputs correct data');