Skip to content

Commit 33cc911

Browse files
committed
✅ Improve tests on reserved keyword
- Use `select` as reserved keyword (user does not seem to be reserved on sqlite) - Ensure comments are retrieved correctly
1 parent c4ae845 commit 33cc911

File tree

2 files changed

+18
-11
lines changed

2 files changed

+18
-11
lines changed

docs/en/reference/testing.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -79,7 +79,7 @@ then run the following command:
7979

8080
.. code-block:: console
8181
82-
$ phpunit -c ci/github/pdo_mysql.xml
82+
$ phpunit -c ci/github/phpunit/pdo_mysql.xml
8383
8484
We do not currently have specific instructions on how to run a Database
8585
server, but we do recommend Docker as a convenient way to do so.

tests/Functional/Schema/SchemaManagerFunctionalTestCase.php

Lines changed: 17 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1234,10 +1234,13 @@ public function testIntrospectReservedKeywordTableViaListTableDetails(): void
12341234
{
12351235
$this->createReservedKeywordTables();
12361236

1237-
$user = $this->schemaManager->introspectTable('user');
1238-
self::assertCount(2, $user->getColumns());
1239-
self::assertCount(1, $user->getIndexes());
1240-
self::assertCount(1, $user->getForeignKeys());
1237+
1238+
$select = $this->schemaManager->introspectTable('select');
1239+
self::assertCount(3, $select->getColumns());
1240+
self::assertCount(1, $select->getIndexes());
1241+
self::assertCount(1, $select->getForeignKeys());
1242+
self::assertSame('table comment', $select->getComment());
1243+
self::assertSame('column comment', $select->getColumn('select')->getComment());
12411244
}
12421245

12431246
public function testIntrospectReservedKeywordTableViaListTables(): void
@@ -1246,17 +1249,21 @@ public function testIntrospectReservedKeywordTableViaListTables(): void
12461249

12471250
$tables = $this->schemaManager->listTables();
12481251

1249-
$user = $this->findTableByName($tables, 'user');
1250-
self::assertNotNull($user);
1251-
self::assertCount(2, $user->getColumns());
1252-
self::assertCount(1, $user->getIndexes());
1253-
self::assertCount(1, $user->getForeignKeys());
1252+
$select = $this->findTableByName($tables, 'select');
1253+
self::assertNotNull($select);
1254+
self::assertCount(3, $select->getColumns());
1255+
self::assertCount(1, $select->getIndexes());
1256+
self::assertCount(1, $select->getForeignKeys());
1257+
self::assertSame('table comment', $select->getComment());
1258+
self::assertSame('column comment', $select->getColumn('select')->getComment());
12541259
}
12551260

12561261
private function createReservedKeywordTables(): void
12571262
{
1258-
$user = new Table('user');
1263+
$user = new Table('select'); // A clearly reserved keyword table name
12591264
$user->addColumn('id', Types::INTEGER);
1265+
$user->addColumn('select', Types::INTEGER) // A clearly reserved keyword column name
1266+
->setComment('column comment');
12601267
$user->addColumn('group_id', Types::INTEGER);
12611268
$user->addPrimaryKeyConstraint(
12621269
PrimaryKeyConstraint::editor()

0 commit comments

Comments
 (0)