4 use Test::More tests => 30;
11 my $meta = Moose->init_meta( for_class => $name );
12 $meta->superclasses('Catalyst');
17 my ($log, %expected) = @_;
18 foreach my $level (keys %expected) {
19 my $method_name = "is_$level";
20 if ($expected{$level}) {
21 ok( $log->$method_name(), "Level $level on" );
24 ok( !$log->$method_name(), "Level $level off" );
31 # Remove all relevant env variables to avoid accidental fail
32 foreach my $name (grep { /^(CATALYST|TESTAPP)/ } keys %ENV) {
37 my $app = mock_app('TestAppParseLogLevels');
38 $app->setup_log('error,warn');
39 ok !$app->debug, 'Not in debug mode';
40 test_log_object($app->log,
50 $ENV{CATALYST_DEBUG} = 1;
51 my $app = mock_app('TestAppLogDebugEnvSet');
53 ok $app->debug, 'In debug mode';
54 test_log_object($app->log,
64 $ENV{CATALYST_DEBUG} = 0;
65 my $app = mock_app('TestAppLogDebugEnvUnset');
66 $app->setup_log('warn');
67 ok !$app->debug, 'Not In debug mode';
68 test_log_object($app->log,
77 my $app = mock_app('TestAppLogEmptyString');
79 ok !$app->debug, 'Not In debug mode';
80 # Note that by default, you get _all_ the log levels turned on
81 test_log_object($app->log,
90 my $app = mock_app('TestAppLogDebugOnly');
91 $app->setup_log('debug');
92 ok $app->debug, 'In debug mode';
93 test_log_object($app->log,