b7c89f068f27e7e39cba8b8ddf95edc4715a9c9d
[yaffs-website] / GeneratorEntityCommandTest.php
1 <?php
2 /**
3  * @file
4  * Contains \Drupal\Console\Test\Command\GeneratorEntityCommandTest.
5  */
6
7 namespace Drupal\Console\Test\Command;
8
9 use Drupal\Console\Command\Generate\EntityConfigCommand;
10 use Symfony\Component\Console\Tester\CommandTester;
11 use Drupal\Console\Test\DataProvider\EntityDataProviderTrait;
12
13 class GeneratorEntityCommandTest extends GenerateCommandTest
14 {
15     use EntityDataProviderTrait;
16
17     /**
18      * EntityConfig generator test
19      *
20      * @param $module
21      * @param $entity_class
22      * @param $entity_name
23      * @param $label
24      *
25      * @dataProvider commandData
26      */
27     public function testGenerateEntityConfig(
28         $module,
29         $entity_class,
30         $entity_name,
31         $label
32     ) {
33         $command = new EntityConfigCommand($this->getHelperSet());
34         $command->setHelperSet($this->getHelperSet());
35         $command->setGenerator($this->getGenerator());
36
37         $commandTester = new CommandTester($command);
38
39         $code = $commandTester->execute(
40             [
41               '--module'         => $module,
42               '--entity-class'   => $entity_class,
43               '--entity-name'    => $entity_name,
44               '--label'          => $label
45             ],
46             ['interactive' => false]
47         );
48
49         $this->assertEquals(0, $code);
50     }
51
52     private function getGenerator()
53     {
54         return $this
55             ->getMockBuilder('Drupal\Console\Generator\EntityConfigGenerator')
56             ->disableOriginalConstructor()
57             ->setMethods(['generate'])
58             ->getMock();
59     }
60 }