You are here

public function DevelGenerateManagerTest::testCreateInstance in Devel 8

Test creating an instance of the DevelGenerateManager.

File

devel_generate/tests/src/DevelGenerateManagerTest.php, line 61

Class

DevelGenerateManagerTest
@coversDefaultClass \Drupal\devel_generate\DevelGeneratePluginManager @group devel_generate

Namespace

Drupal\Tests\devel_generate

Code

public function testCreateInstance() {
  $namespaces = new \ArrayObject(array(
    'Drupal\\devel_generate_example' => realpath(dirname(__FILE__) . '/../../../modules/devel_generate_example/lib'),
  ));
  $cache_backend = $this
    ->getMock('Drupal\\Core\\Cache\\CacheBackendInterface');
  $module_handler = $this
    ->getMock('Drupal\\Core\\Extension\\ModuleHandlerInterface');
  $manager = new TestDevelGeneratePluginManager($namespaces, $cache_backend, $module_handler);
  $manager
    ->setDiscovery($this->discovery);
  $example_instance = $manager
    ->createInstance('devel_generate_example');
  $plugin_def = $example_instance
    ->getPluginDefinition();
  $this
    ->assertInstanceOf('Drupal\\devel_generate_example\\Plugin\\DevelGenerate\\ExampleDevelGenerate', $example_instance);
  $this
    ->assertArrayHasKey('url', $plugin_def);
  $this
    ->assertTrue($plugin_def['url'] == 'devel_generate_example');
}