updated the test gsoc_breadboard_flags
André Walker [Thu, 26 Jul 2012 02:50:38 +0000 (23:50 -0300)]
t/aggregate/unit_core_setup_home.t

index c53d427..bf003c4 100644 (file)
@@ -30,48 +30,30 @@ for my $home_and_root (@homes_and_roots) {
     }
 }
 
-{
-    my $home_flag;
-    delete $ENV{CATALYST_HOME} if exists $ENV{CATALYST_HOME};
-
-    my $c = Catalyst::IOC::Container->new(name => 'TestAppSetupHome');
-    ok(my $home = $c->resolve(service => 'home', parameters => { home_flag => $home_flag }), 'home service returns ok');
-    is($home, $homes_and_roots[0][0], 'value is expected');
-    ok(my $root = $c->resolve(service => 'root_dir'), 'root service returns ok');
-    is($root, $homes_and_roots[0][1], 'value is expected');
-}
+test_it(0, 0, 0);
+test_it(0, 1, 1);
+test_it(1, 0, 2);
+test_it(1, 1, 1);
 
-{
-    my $home_flag;
-    $ENV{CATALYST_HOME} = $homes_and_roots[1][0];
 
-    my $c = Catalyst::IOC::Container->new(name => 'TestAppSetupHome');
-    ok(my $home = $c->resolve(service => 'home', parameters => { home_flag => $home_flag }), 'home service returns ok');
-    is($home, $homes_and_roots[1][0], 'value is expected');
-    ok(my $root = $c->resolve(service => 'root_dir'), 'root service returns ok');
-    is($root, $homes_and_roots[1][1], 'value is expected');
-}
+sub test_it {
+    my ($set_flag, $set_env, $expected_result) = @_;
 
-{
-    my $home_flag = $homes_and_roots[2][0];
+    my @home_flag;
     delete $ENV{CATALYST_HOME} if exists $ENV{CATALYST_HOME};
 
-    my $c = Catalyst::IOC::Container->new(name => 'TestAppSetupHome');
-    ok(my $home = $c->resolve(service => 'home', parameters => { home_flag => $home_flag }), 'home service returns ok');
-    is($home, $homes_and_roots[2][0], 'value is expected');
-    ok(my $root = $c->resolve(service => 'root_dir'), 'root service returns ok');
-    is($root, $homes_and_roots[2][1], 'value is expected');
-}
-
-{
-    my $home_flag       = $homes_and_roots[2][0];
-    $ENV{CATALYST_HOME} = $homes_and_roots[1][0];
+    if ($set_flag) {
+        @home_flag = ("-Home=$homes_and_roots[2][0]");
+    }
+    if ($set_env) {
+        $ENV{CATALYST_HOME} = $homes_and_roots[1][0];
+    }
 
-    my $c = Catalyst::IOC::Container->new(name => 'TestAppSetupHome');
-    ok(my $home = $c->resolve(service => 'home', parameters => { home_flag => $home_flag }), 'home service returns ok');
-    is($home, $homes_and_roots[1][0], 'value is expected');
-    ok(my $root = $c->resolve(service => 'root_dir'), 'root service returns ok');
-    is($root, $homes_and_roots[1][1], 'value is expected');
+    my $c = Catalyst::IOC::Container->new(name => 'TestAppSetupHome', flags => \@home_flag);
+    ok(my $home = $c->resolve(service => 'home'), 'home service returns ok');
+    is($home, $homes_and_roots[$expected_result][0], 'home value is expected');
+    ok(my $root = $c->resolve(service => 'root_dir'), 'root_dir service returns ok');
+    is($root, $homes_and_roots[$expected_result][1], 'root value is expected');
 }
 
 for my $home_and_root (@homes_and_roots) {