packages/ztd-query-mysql/tests/Unit/Schema/Key/TokenReaderTest.php

1<?php
2
3declare(strict_types=1);
4
5namespace Tests\Unit\Schema\Key;
6
7use PHPUnit\Framework\Attributes\CoversClass;
8use PHPUnit\Framework\TestCase;
9use ZtdQuery\Platform\MySql\Schema\Key\TokenReader;
10
11#[\PHPUnit\Framework\Attributes\UsesClass(\ZtdQuery\Platform\MySql\Sql\MySqlLexerProfile::class)]
12#[CoversClass(TokenReader::class)]
13final class TokenReaderTest extends TestCase
14{
15    public function testIsSymbol(): void
16    {
17        $tokens = \ZtdQuery\Sql\SqlTokenStream::tokenize('(id)', \ZtdQuery\Platform\MySql\Sql\MySqlLexerProfile::create())->significantTokens();
18        self::assertTrue(TokenReader::isSymbol($tokens[0], '('));
19        self::assertFalse(TokenReader::isSymbol($tokens[1], 'id'));
20        self::assertFalse(TokenReader::isSymbol(null, '('));
21        self::assertFalse(TokenReader::isSymbol($tokens[0], ')'));
22    }
23
24}
25