Merge branch 'master' into gsoc_breadboard
[catagits/Catalyst-Runtime.git] / t / aggregate / unit_core_container_mock_load_env.t
1 package MockAppEnv;
2
3 use Test::More;
4 use Cwd;
5
6 # Remove all relevant env variables to avoid accidental fail
7 foreach my $name ( grep { m{^(CATALYST|MOCKAPPENV)} } keys %ENV ) {
8     delete $ENV{ $name };
9 }
10
11 $ENV{ CATALYST_HOME }  = cwd . '/t/lib/MockAppConfigLoader';
12 $ENV{ MOCKAPPENV_CONFIG } = $ENV{ CATALYST_HOME } . '/mockapp.pl';
13
14 use_ok( 'Catalyst' );
15
16 __PACKAGE__->config->{substitutions} = {
17     foo => sub { shift; join( '-', @_ ); }
18 };
19
20 __PACKAGE__->setup;
21
22 ok( my $conf = __PACKAGE__->config, 'config loads' );
23 is( $conf->{ 'Controller::Foo' }->{ foo }, 'bar' );
24 is( $conf->{ 'Controller::Foo' }->{ new }, 'key' );
25 is( $conf->{ 'Model::Baz' }->{ qux },      'xyzzy' );
26 is( $conf->{ 'Model::Baz' }->{ another },  'new key' );
27 is( $conf->{ 'view' },                     'View::TT::New' );
28 is( $conf->{ 'foo_sub' },                  'x-y' );
29 is( $conf->{ 'literal_macro' },            '__DATA__', 'literal macro' );
30 is( $conf->{ 'environment_macro' },        $ENV{ CATALYST_HOME }.'/mockapp.pl', 'environment macro' );
31
32 done_testing;