示例#1
0
 /**
  * Tests plugins without the proper interface.
  *
  * @covers ::createInstance
  *
  * @expectedException \Drupal\Component\Plugin\Exception\PluginException
  * @expectedExceptionMessage Plugin "kale" (Drupal\plugin_test\Plugin\plugin_test\fruit\Kale) must implement interface \Drupal\plugin_test\Plugin\plugin_test\fruit\FruitInterface
  */
 public function testCreateInstanceWithInvalidInterfaces()
 {
     $module_handler = $this->getMock('Drupal\\Core\\Extension\\ModuleHandlerInterface');
     $module_handler->expects($this->any())->method('moduleExists')->with('plugin_test')->willReturn(TRUE);
     $this->expectedDefinitions['kale'] = array('id' => 'kale', 'label' => 'Kale', 'color' => 'green', 'class' => 'Drupal\\plugin_test\\Plugin\\plugin_test\\fruit\\Kale', 'provider' => 'plugin_test');
     $this->expectedDefinitions['apple']['provider'] = 'plugin_test';
     $this->expectedDefinitions['banana']['provider'] = 'plugin_test';
     $plugin_manager = new TestPluginManager($this->namespaces, $this->expectedDefinitions, $module_handler, NULL, '\\Drupal\\plugin_test\\Plugin\\plugin_test\\fruit\\FruitInterface');
     $plugin_manager->createInstance('kale');
 }