packages/sql-parser/tests/Unit/MySql/SqlModeTest.php

1<?php
2
3declare(strict_types=1);
4
5namespace Tests\Unit\MySql;
6
7use PHPUnit\Framework\Attributes\CoversClass;
8use PHPUnit\Framework\Attributes\Small;
9use PHPUnit\Framework\TestCase;
10use SqlParser\MySql\SqlMode;
11
12#[CoversClass(SqlMode::class)]
13#[Small]
14final class SqlModeTest extends TestCase
15{
16    public function testDefault(): void
17    {
18        $mode = SqlMode::default();
19
20        self::assertFalse($mode->ansiQuotes);
21        self::assertFalse($mode->pipesAsConcat);
22        self::assertFalse($mode->highNotPrecedence);
23        self::assertFalse($mode->noBackslashEscapes);
24        self::assertFalse($mode->ignoreSpace);
25    }
26
27    public function testDefaultDiffersFromAnExplicitMode(): void
28    {
29        self::assertTrue((new SqlMode(ansiQuotes: true, ignoreSpace: true))->ansiQuotes);
30        self::assertTrue((new SqlMode(ansiQuotes: true, ignoreSpace: true))->ignoreSpace);
31    }
32}
33