Skip to content

Commit 8bd6e26

Browse files
committed
tcg test
1 parent a037823 commit 8bd6e26

File tree

2 files changed

+27
-6
lines changed

2 files changed

+27
-6
lines changed

src/Generator.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -62,7 +62,7 @@ public function generateClass(string $className, string $templateName, array $va
6262

6363
$isEntity = false;
6464

65-
if (array_key_exists('_is_entity', $variables)) {
65+
if (\array_key_exists('_is_entity', $variables)) {
6666
$isEntity = true;
6767
}
6868

tests/Util/TemplateComponentGeneratorTest.php

Lines changed: 26 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,6 @@
1212
namespace Symfony\Bundle\MakerBundle\Tests\Util;
1313

1414
use PHPUnit\Framework\TestCase;
15-
use Symfony\Bundle\MakerBundle\Util\PhpCompatUtil;
1615
use Symfony\Bundle\MakerBundle\Util\TemplateComponentGenerator;
1716

1817
/**
@@ -22,7 +21,7 @@ class TemplateComponentGeneratorTest extends TestCase
2221
{
2322
public function testRouteAttributes(): void
2423
{
25-
$generator = new TemplateComponentGenerator($this->createMock(PhpCompatUtil::class));
24+
$generator = new TemplateComponentGenerator(false, false);
2625

2726
$expected = " #[Route('/', name: 'app_home')]\n";
2827

@@ -34,7 +33,7 @@ public function testRouteAttributes(): void
3433
*/
3534
public function testRouteMethods(string $expected, array $methods): void
3635
{
37-
$generator = new TemplateComponentGenerator($this->createMock(PhpCompatUtil::class));
36+
$generator = new TemplateComponentGenerator(false, false);
3837

3938
self::assertSame($expected, $generator->generateRouteForControllerMethod(
4039
'/',
@@ -54,7 +53,7 @@ public function routeMethodDataProvider(): \Generator
5453
*/
5554
public function testRouteIndentation(string $expected): void
5655
{
57-
$generator = new TemplateComponentGenerator($this->createMock(PhpCompatUtil::class));
56+
$generator = new TemplateComponentGenerator(false, false);
5857

5958
self::assertSame($expected, $generator->generateRouteForControllerMethod(
6059
'/',
@@ -74,7 +73,7 @@ public function routeIndentationDataProvider(): \Generator
7473
*/
7574
public function testRouteTrailingNewLine(string $expected): void
7675
{
77-
$generator = new TemplateComponentGenerator($this->createMock(PhpCompatUtil::class));
76+
$generator = new TemplateComponentGenerator(false, false);
7877

7978
self::assertSame($expected, $generator->generateRouteForControllerMethod(
8079
'/',
@@ -89,4 +88,26 @@ public function routeTrailingNewLineDataProvider(): \Generator
8988
{
9089
yield ["#[Route('/', name: 'app_home')]", true];
9190
}
91+
92+
/**
93+
* @dataProvider finalClassDataProvider
94+
*/
95+
public function testGetFinalClassDeclaration(bool $finalClass, bool $finalEntity, bool $isEntity, string $expectedResult): void
96+
{
97+
$generator = new TemplateComponentGenerator($finalClass, $finalEntity);
98+
99+
self::assertSame($expectedResult, $generator->getFinalDeclaration($isEntity));
100+
}
101+
102+
public function finalClassDataProvider(): \Generator
103+
{
104+
yield 'Not Final Class' => [false, false, false, ''];
105+
yield 'Not Final Class w/ Entity' => [false, true, false, ''];
106+
yield 'Final Class' => [true, false, false, 'final '];
107+
yield 'Final Class w/ Entity' => [true, true, false, 'final '];
108+
yield 'Not Final Entity' => [false, false, true, ''];
109+
yield 'Not Final Entity w/ Class' => [true, false, true, ''];
110+
yield 'Final Entity' => [false, true, true, 'final '];
111+
yield 'Final Entity w/ Class' => [true, true, true, 'final '];
112+
}
92113
}

0 commit comments

Comments
 (0)