3 namespace Drupal\Tests\drupalmoduleupgrader\Unit\Plugin\DMU\Fixer;
5 use Drupal\Component\Serialization\Yaml as YAML;
6 use Drupal\drupalmoduleupgrader\Plugin\DMU\Fixer\HookToYAML;
7 use Drupal\Tests\drupalmoduleupgrader\Unit\TestBase;
12 class HookToYAMLTest extends TestBase {
14 public function test() {
17 'title' => 'Do snazzy bazzy things',
21 $indexer = $this->getMockBuilder('\Drupal\drupalmoduleupgrader\Plugin\DMU\Indexer\Functions')
22 ->disableOriginalConstructor()
24 $indexer->method('has')->with('hook_permission')->willReturn(TRUE);
25 $indexer->method('hasExecutable')->with('hook_permission')->willReturn(TRUE);
26 $indexer->method('execute')->with('hook_permission')->willReturn($permissions);
29 ->get('plugin.manager.drupalmoduleupgrader.indexer')
30 ->method('createInstance')
32 ->willReturn($indexer);
35 'hook' => 'permission',
36 'destination' => '~/foo.permissions.yml',
38 $plugin = new HookToYAML($config, uniqID(), []);
39 $plugin->setTarget($this->target);
42 $url = $this->dir->getChild('foo.permissions.yml')->url();
43 $this->assertFileExists($url);
44 $this->assertSame(YAML::encode($permissions), file_get_contents($url));