addPlugin() public method

Adds a plugin instance to the handler.
public addPlugin ( string | Phergie_Plugin_Abstract $plugin, array $args = null ) : Phergie_Plugin_Abstract
$plugin string | Phergie_Plugin_Abstract Short name of the plugin class or a plugin object
$args array Optional array of arguments to pass to the plugin constructor if a short name is passed for $plugin
return Phergie_Plugin_Abstract New plugin instance
示例#1
0
 /**
  * addPlugin() returns the same plugin when requested twice
  *
  * @return void
  */
 public function testAddPluginReturnsSamePluginWhenAskedTwice()
 {
     $plugin_name = 'Mock';
     $this->handler->addPath(dirname(__FILE__), 'Phergie_Plugin_');
     $plugin1 = $this->handler->addPlugin($plugin_name);
     $plugin2 = $this->handler->addPlugin($plugin_name);
     $this->assertSame($plugin1, $plugin2);
 }
示例#2
0
 /**
  * Tests that multiple plugin iterators can be used concurrently.
  *
  * @return void
  */
 public function testUseMultiplePluginIteratorsConcurrently()
 {
     $plugin1 = $this->getMockPlugin('TestPlugin1');
     $this->handler->addPlugin($plugin1);
     $plugin2 = $this->getMockPlugin('TestPlugin2');
     $this->handler->addPlugin($plugin2);
     $iterator1 = $this->handler->getIterator();
     $iterator1->next();
     $this->assertSame($plugin2, $iterator1->current());
     $iterator2 = $this->handler->getIterator();
     $this->assertSame($plugin1, $iterator2->current());
 }