packages/sql-fixture/tests/Unit/Platform/Sqlite/Schema/CreateTableQueryTest.php
1<?php
2
3declare(strict_types=1);
4
5namespace Tests\Unit\Platform\Sqlite\Schema;
6
7use PDO;
8use PHPUnit\Framework\Attributes\CoversClass;
9use PHPUnit\Framework\TestCase;
10use SqlFixture\Platform\Sqlite\Schema\CreateTableQuery as Subject;
11
12#[CoversClass(Subject::class)]
13final class CreateTableQueryTest extends TestCase
14{
15 public function testFetchCreateTableSqlReadsSqliteMaster(): void
16 {
17 $pdo = new PDO('sqlite::memory:');
18 $pdo->exec('CREATE TABLE users (id INTEGER PRIMARY KEY AUTOINCREMENT, name VARCHAR(30) NOT NULL DEFAULT \'ready\')');
19 $sql = (new Subject())->fetchCreateTableSql($pdo, 'users');
20 self::assertNotNull($sql);
21 self::assertStringContainsString('VARCHAR(30)', $sql);
22 }
23}
24