4 use Test::More tests => 30;
11 print "Setting up mock application: $name\n";
12 my $meta = Moose->init_meta( for_class => $name );
13 $meta->superclasses('Catalyst');
18 my ($log, %expected) = @_;
19 foreach my $level (keys %expected) {
20 my $method_name = "is_$level";
21 if ($expected{$level}) {
22 ok( $log->$method_name(), "Level $level on" );
25 ok( !$log->$method_name(), "Level $level off" );
32 # Remove all relevant env variables to avoid accidental fail
33 foreach my $name (grep { /^(CATALYST|TESTAPP)/ } keys %ENV) {
38 my $app = mock_app('TestAppParseLogLevels');
39 $app->setup_log('error,warn');
40 ok !$app->debug, 'Not in debug mode';
41 test_log_object($app->log,
51 $ENV{CATALYST_DEBUG} = 1;
52 my $app = mock_app('TestAppLogDebugEnvSet');
54 ok $app->debug, 'In debug mode';
55 test_log_object($app->log,
65 $ENV{CATALYST_DEBUG} = 0;
66 my $app = mock_app('TestAppLogDebugEnvUnset');
67 $app->setup_log('warn');
68 ok !$app->debug, 'Not In debug mode';
69 test_log_object($app->log,
78 my $app = mock_app('TestAppLogEmptyString');
80 ok !$app->debug, 'Not In debug mode';
81 # Note that by default, you get _all_ the log levels turned on
82 test_log_object($app->log,
91 my $app = mock_app('TestAppLogDebugOnly');
92 $app->setup_log('debug');
93 ok $app->debug, 'In debug mode';
94 test_log_object($app->log,