| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566 |
- <?php
- declare(strict_types=1);
- namespace App\Tests\DoctrineExtension\Access\AdditionalExtension;
- use App\Doctrine\Access\AdditionalExtension\DateTimeConstraintExtensionAdditional;
- use App\Tests\Unit\DoctrineExtension\AbstractExtensionTest;
- class DateTimeConstraintExtensionAdditionalTest extends AbstractExtensionTest
- {
- private $extension;
- protected function setUp(): void
- {
- parent::setUp();
- $this->extension = new DateTimeConstraintExtensionAdditional($this->requestStack);
- }
- public function testSupportMethodReturnsTrue()
- {
- $this->request->method('isMethod')->with('GET')->willReturn(true);
- $this->request->method('get')->with('_time_constraint', true)->willReturn(true);
- $this->requestStack->method('getMainRequest')->willReturn($this->request);
- $this->assertTrue($this->extension->support('any_name'));
- }
- public function testSupportMethodReturnsFalse()
- {
- $this->request->method('isMethod')->with('GET')->willReturn(false);
- $this->requestStack->method('getMainRequest')->willReturn($this->request);
- $this->assertFalse($this->extension->support('any_name'));
- }
- public function testSupportMethodReturnsFalseWhenTimeConstraintIsFalse()
- {
- $this->request->method('isMethod')->with('GET')->willReturn(true);
- $this->request->method('get')->with('_time_constraint', true)->willReturn(false);
- $this->requestStack->method('getMainRequest')->willReturn($this->request);
- $this->assertFalse($this->extension->support('any_name'));
- }
- public function testAddWhereMethod()
- {
- $this->queryBuilder->method('getRootAliases')->willReturn(['rootAlias']);
- $this->queryBuilder
- ->expects($this->once())
- ->method('innerJoin')
- ->with('rootAlias.organizationFunction', 'organization_function');
- $this->invokeAddWhere($this->extension, $this->queryBuilder);
- }
- public function testAddWhereMethodWithNoRootAlias()
- {
- $this->queryBuilder->method('getRootAliases')->willReturn([]);
- $this->expectException(\LogicException::class);
- $this->expectExceptionMessage('No root alias defined.');
- $this->invokeAddWhere($this->extension, $this->queryBuilder);
- }
- }
|