packages/ztd-query-mysql/tests/Unit/Rewrite/Transformer/Insert/ReplaceStatementConverterTest.php
1<?php
2
3declare(strict_types=1);
4
5namespace Tests\Unit\Rewrite\Transformer\Insert;
6
7use PHPUnit\Framework\Attributes\CoversClass;
8use PHPUnit\Framework\TestCase;
9use ZtdQuery\Platform\MySql\Rewrite\Transformer\Insert\ReplaceStatementConverter;
10
11#[\PHPUnit\Framework\Attributes\UsesClass(\ZtdQuery\Platform\MySql\Sql\MySqlLexerProfile::class)]
12#[CoversClass(ReplaceStatementConverter::class)]
13final class ReplaceStatementConverterTest extends TestCase
14{
15 public function testAsInsert(): void
16 {
17 self::assertSame("/* REPLACE */ INSERT INTO t VALUES ('REPLACE')", (new ReplaceStatementConverter())->asInsert("/* REPLACE */ replace INTO t VALUES ('REPLACE')"));
18 }
19
20 public function testAsInsertRejectsSelect(): void
21 {
22 $this->expectException(\ZtdQuery\Exception\UnsupportedSqlException::class);
23 (new ReplaceStatementConverter())->asInsert('SELECT 1');
24 }
25
26}
27