/** * Tests the plugin manager with caching disabled. */ public function testDefaultPluginManagerNoCache() { $plugin_manager = new TestPluginManager($this->namespaces, $this->expectedDefinitions, NULL, NULL, '\\Drupal\\plugin_test\\Plugin\\plugin_test\\fruit\\FruitInterface'); $cid = $this->randomMachineName(); $cache_backend = $this->getMockBuilder('Drupal\\Core\\Cache\\MemoryBackend')->disableOriginalConstructor()->getMock(); $cache_backend->expects($this->never())->method('get'); $cache_backend->expects($this->never())->method('set'); $plugin_manager->setCacheBackend($cache_backend, $cid); $plugin_manager->useCaches(FALSE); $this->assertEquals($this->expectedDefinitions, $plugin_manager->getDefinitions()); $this->assertEquals($this->expectedDefinitions['banana'], $plugin_manager->getDefinition('banana')); }
/** * Tests the plugin manager with caching and altering. */ public function testDefaultPluginManagerWithEmptyCache() { $cid = $this->randomName(); $cache_backend = $this->getMockBuilder('Drupal\\Core\\Cache\\MemoryBackend')->disableOriginalConstructor()->getMock(); $cache_backend->expects($this->once())->method('get')->with($cid)->will($this->returnValue(FALSE)); $cache_backend->expects($this->once())->method('set')->with($cid, $this->expectedDefinitions); $plugin_manager = new TestPluginManager($this->namespaces, $this->expectedDefinitions); $plugin_manager->setCacheBackend($cache_backend, $cid); $this->assertEquals($this->expectedDefinitions, $plugin_manager->getDefinitions()); $this->assertEquals($this->expectedDefinitions['banana'], $plugin_manager->getDefinition('banana')); }