use strict;
use warnings;
+use Class::MOP::Class;
use Catalyst::Runtime;
use Test::More tests => 29;
return $name;
}
+local %ENV; # Don't allow env variables to mess us up.
+
{
my $app = build_test_app_with_setup('MyTestDebug', '-Debug');
ok my $c = MyTestDebug->new, 'Get debug app object';
ok my $log = $c->log, 'Get log object';
isa_ok $log, 'Catalyst::Log', 'It should be a Catalyst::Log object';
- ok !$log->is_warn, 'Warnings should be disabled';
- ok !$log->is_error, 'Errors should be disabled';
- ok !$log->is_fatal, 'Fatal errors should be disabled';
- ok !$log->is_info, 'Info should be disabled';
+ ok $log->is_warn, 'Warnings should be enabled';
+ ok $log->is_error, 'Errors should be enabled';
+ ok $log->is_fatal, 'Fatal errors should be enabled';
+ ok $log->is_info, 'Info should be enabled';
ok $log->is_debug, 'Debugging should be enabled';
ok $app->debug, 'debug method should return true';
}
ok $log->is_debug, 'Debugging should be enabled';
ok !$c->debug, 'Catalyst debugging turned off';
}
+my $log_meta = Class::MOP::Class->create_anon_class(
+ methods => { map { $_ => sub { 0 } } qw/debug error fatal info warn/ },
+);
{
package MyTestAppWithOwnLogger;
use base qw/Catalyst/;
- use Test::MockObject;
- my $log = Test::MockObject->new;
- $log->set_false(qw/debug error fatal info warn/);
- __PACKAGE__->log($log);
+ __PACKAGE__->log($log_meta->new_object);
__PACKAGE__->setup('-Debug');
}