Skip to content

Commit 3d4e9b3

Browse files
authored
Merge pull request #11912 from xabbuh/dbal-6823
[#6823] pass unquoted identifier folding to AbstractPlatform
2 parents d1ee40e + 65d2720 commit 3d4e9b3

File tree

7 files changed

+23
-2
lines changed

7 files changed

+23
-2
lines changed

tests/Tests/ORM/Mapping/DefaultQuoteStrategyTest.php

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,12 +5,14 @@
55
namespace Doctrine\Tests\ORM\Mapping;
66

77
use Doctrine\DBAL\Platforms\AbstractPlatform;
8+
use Doctrine\DBAL\Schema\Name\UnquotedIdentifierFolding;
89
use Doctrine\ORM\Mapping\DefaultQuoteStrategy;
910
use Doctrine\Tests\Models\NonPublicSchemaJoins\User as NonPublicSchemaUser;
1011
use Doctrine\Tests\OrmTestCase;
1112
use PHPUnit\Framework\Attributes\Group;
1213

1314
use function assert;
15+
use function enum_exists;
1416

1517
/**
1618
* Doctrine\Tests\ORM\Mapping\DefaultQuoteStrategyTest
@@ -24,7 +26,7 @@ public function testGetJoinTableName(): void
2426
$em = $this->getTestEntityManager();
2527
$metadata = $em->getClassMetadata(NonPublicSchemaUser::class);
2628
$strategy = new DefaultQuoteStrategy();
27-
$platform = $this->getMockForAbstractClass(AbstractPlatform::class);
29+
$platform = $this->getMockForAbstractClass(AbstractPlatform::class, enum_exists(UnquotedIdentifierFolding::class) ? [UnquotedIdentifierFolding::UPPER] : []);
2830
assert($platform instanceof AbstractPlatform);
2931

3032
self::assertSame(

tests/Tests/ORM/Persisters/BasicEntityPersisterTypeValueSqlTest.php

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
use Doctrine\DBAL\Connection;
1010
use Doctrine\DBAL\Driver;
1111
use Doctrine\DBAL\Platforms\AbstractPlatform;
12+
use Doctrine\DBAL\Schema\Name\UnquotedIdentifierFolding;
1213
use Doctrine\DBAL\Types\Type as DBALType;
1314
use Doctrine\ORM\Mapping\OneToManyAssociationMapping;
1415
use Doctrine\ORM\Persisters\Entity\BasicEntityPersister;
@@ -23,6 +24,7 @@
2324
use ReflectionMethod;
2425

2526
use function array_slice;
27+
use function enum_exists;
2628

2729
class BasicEntityPersisterTypeValueSqlTest extends OrmTestCase
2830
{
@@ -65,6 +67,7 @@ public function testUpdateUsesTypeValuesSQL(): void
6567
->willReturn($this->createMock(Driver\Connection::class));
6668

6769
$platform = $this->getMockBuilder(AbstractPlatform::class)
70+
->setConstructorArgs(enum_exists(UnquotedIdentifierFolding::class) ? [UnquotedIdentifierFolding::UPPER] : [])
6871
->onlyMethods(['supportsIdentityColumns'])
6972
->getMockForAbstractClass();
7073
$platform->method('supportsIdentityColumns')

tests/Tests/ORM/Persisters/ManyToManyPersisterTest.php

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
use Doctrine\DBAL\Connection;
88
use Doctrine\DBAL\Driver;
99
use Doctrine\DBAL\Platforms\AbstractPlatform;
10+
use Doctrine\DBAL\Schema\Name\UnquotedIdentifierFolding;
1011
use Doctrine\ORM\Persisters\Collection\ManyToManyPersister;
1112
use Doctrine\Tests\Models\ManyToManyPersister\ChildClass;
1213
use Doctrine\Tests\Models\ManyToManyPersister\OtherParentClass;
@@ -15,6 +16,8 @@
1516
use PHPUnit\Framework\Attributes\CoversClass;
1617
use PHPUnit\Framework\Attributes\Group;
1718

19+
use function enum_exists;
20+
1821
#[CoversClass(ManyToManyPersister::class)]
1922
final class ManyToManyPersisterTest extends OrmTestCase
2023
{
@@ -31,7 +34,7 @@ public function testDeleteManyToManyCollection(): void
3134
->onlyMethods(['executeStatement', 'getDatabasePlatform'])
3235
->getMock();
3336
$connection->method('getDatabasePlatform')
34-
->willReturn($this->getMockForAbstractClass(AbstractPlatform::class));
37+
->willReturn($this->getMockForAbstractClass(AbstractPlatform::class, enum_exists(UnquotedIdentifierFolding::class) ? [UnquotedIdentifierFolding::UPPER] : []));
3538

3639
$parent = new ParentClass(1);
3740
$otherParent = new OtherParentClass(42);

tests/Tests/ORM/Query/QueryTest.php

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@
1414
use Doctrine\DBAL\LockMode;
1515
use Doctrine\DBAL\ParameterType;
1616
use Doctrine\DBAL\Platforms\AbstractPlatform;
17+
use Doctrine\DBAL\Schema\Name\UnquotedIdentifierFolding;
1718
use Doctrine\DBAL\Types\Types;
1819
use Doctrine\ORM\EntityManagerInterface;
1920
use Doctrine\ORM\Query;
@@ -39,6 +40,7 @@
3940
use Symfony\Component\Cache\Adapter\ArrayAdapter;
4041

4142
use function array_map;
43+
use function enum_exists;
4244

4345
class QueryTest extends OrmTestCase
4446
{
@@ -597,6 +599,7 @@ private function createConnection(Result ...$results): Connection
597599
->will($this->onConsecutiveCalls(...$results));
598600

599601
$platform = $this->getMockBuilder(AbstractPlatform::class)
602+
->setConstructorArgs(enum_exists(UnquotedIdentifierFolding::class) ? [UnquotedIdentifierFolding::UPPER] : [])
600603
->onlyMethods(['supportsIdentityColumns'])
601604
->getMockForAbstractClass();
602605
$platform->method('supportsIdentityColumns')

tests/Tests/ORM/Tools/Pagination/PaginatorTest.php

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88
use Doctrine\DBAL\Driver;
99
use Doctrine\DBAL\Platforms\AbstractPlatform;
1010
use Doctrine\DBAL\Result;
11+
use Doctrine\DBAL\Schema\Name\UnquotedIdentifierFolding;
1112
use Doctrine\ORM\Decorator\EntityManagerDecorator;
1213
use Doctrine\ORM\EntityManagerInterface;
1314
use Doctrine\ORM\Internal\Hydration\AbstractHydrator;
@@ -17,6 +18,8 @@
1718
use Doctrine\Tests\OrmTestCase;
1819
use PHPUnit\Framework\MockObject\MockObject;
1920

21+
use function enum_exists;
22+
2023
class PaginatorTest extends OrmTestCase
2124
{
2225
private Connection&MockObject $connection;
@@ -26,6 +29,7 @@ class PaginatorTest extends OrmTestCase
2629
protected function setUp(): void
2730
{
2831
$platform = $this->getMockBuilder(AbstractPlatform::class)
32+
->setConstructorArgs(enum_exists(UnquotedIdentifierFolding::class) ? [UnquotedIdentifierFolding::UPPER] : [])
2933
->onlyMethods(['supportsIdentityColumns'])
3034
->getMockForAbstractClass();
3135
$platform->method('supportsIdentityColumns')

tests/Tests/ORM/UnitOfWorkTest.php

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@
1111
use Doctrine\DBAL\Driver\Statement;
1212
use Doctrine\DBAL\Exception;
1313
use Doctrine\DBAL\Platforms\AbstractPlatform;
14+
use Doctrine\DBAL\Schema\Name\UnquotedIdentifierFolding;
1415
use Doctrine\ORM\EntityNotFoundException;
1516
use Doctrine\ORM\Exception\EntityIdentityCollisionException;
1617
use Doctrine\ORM\Mapping\ClassMetadata;
@@ -38,6 +39,7 @@
3839
use PHPUnit\Framework\MockObject\MockObject;
3940
use stdClass;
4041

42+
use function enum_exists;
4143
use function random_int;
4244
use function uniqid;
4345

@@ -533,6 +535,7 @@ public function testPreviousDetectedIllegalNewNonCascadedEntitiesAreCleanedUpOnS
533535
public function testCommitThrowOptimisticLockExceptionWhenConnectionCommitFails(): void
534536
{
535537
$platform = $this->getMockBuilder(AbstractPlatform::class)
538+
->setConstructorArgs(enum_exists(UnquotedIdentifierFolding::class) ? [UnquotedIdentifierFolding::UPPER] : [])
536539
->onlyMethods(['supportsIdentityColumns'])
537540
->getMockForAbstractClass();
538541
$platform->method('supportsIdentityColumns')

tests/Tests/OrmTestCase.php

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
use Doctrine\DBAL\Driver\Result;
1010
use Doctrine\DBAL\Platforms\AbstractPlatform;
1111
use Doctrine\DBAL\Schema\AbstractSchemaManager;
12+
use Doctrine\DBAL\Schema\Name\UnquotedIdentifierFolding;
1213
use Doctrine\DBAL\Schema\SchemaConfig;
1314
use Doctrine\ORM\Cache\CacheConfiguration;
1415
use Doctrine\ORM\Cache\CacheFactory;
@@ -21,6 +22,7 @@
2122
use Psr\Cache\CacheItemPoolInterface;
2223
use Symfony\Component\Cache\Adapter\ArrayAdapter;
2324

25+
use function enum_exists;
2426
use function method_exists;
2527
use function realpath;
2628
use function sprintf;
@@ -158,6 +160,7 @@ private function createPlatformMock(): AbstractPlatform
158160
->willReturn(new SchemaConfig());
159161

160162
$platform = $this->getMockBuilder(AbstractPlatform::class)
163+
->setConstructorArgs(enum_exists(UnquotedIdentifierFolding::class) ? [UnquotedIdentifierFolding::UPPER] : [])
161164
->onlyMethods(['supportsIdentityColumns', 'createSchemaManager'])
162165
->getMockForAbstractClass();
163166
$platform->method('supportsIdentityColumns')

0 commit comments

Comments
 (0)