Provide the dependency handler if set.
authorGunnar Wrobel <p@rdus.de>
Mon, 10 Jan 2011 22:23:07 +0000 (23:23 +0100)
committerGunnar Wrobel <p@rdus.de>
Mon, 10 Jan 2011 22:23:07 +0000 (23:23 +0100)
framework/Cli_Modular/lib/Horde/Cli/Modular/ModuleProvider.php
framework/Cli_Modular/test/Horde/Cli/Modular/Stub/Module/One.php
framework/Cli_Modular/test/Horde/Cli/Modular/Unit/ModuleProviderTest.php

index 7b27b14..2cf3fc3 100644 (file)
@@ -109,6 +109,6 @@ class Horde_Cli_Modular_ModuleProvider
                 sprintf('Invalid module %s!', $class)
             );
         }
-        return new $class();
+        return new $class($this->_dependencies);
     }
 }
\ No newline at end of file
index d853c9c..1c61622 100644 (file)
@@ -3,6 +3,14 @@
 class Horde_Cli_Modular_Stub_Module_One
 implements Horde_Cli_Modular_Module
 {
+    public $args;
+
+    public function __construct()
+    {
+        $this->args = func_get_args();
+    }
+
+
     public function getUsage()
     {
         return 'Use One';
index 993368f..14754c2 100644 (file)
@@ -66,4 +66,18 @@ extends Horde_Cli_Modular_TestCase
             'Use One', $provider->getModule('One')->getUsage('One')
         );
     }
+
+    public function testDependencies()
+    {
+        $dependencies = new stdClass;
+        $provider = new Horde_Cli_Modular_ModuleProvider(
+            array(
+                'prefix' => 'Horde_Cli_Modular_Stub_Module_',
+                'dependencies' => $dependencies,
+            )
+        );
+        $this->assertSame(
+            $dependencies, $provider->getModule('One')->args[0]
+        );
+    }
 }