packages/sql-catalog/tests/Unit/Core/Extension/SinkRoleTest.php
1<?php
2
3declare(strict_types=1);
4
5namespace Tests\Unit\Core\Extension;
6
7use PHPUnit\Framework\Attributes\CoversClass;
8use PHPUnit\Framework\TestCase;
9use SqlCatalog\Core\Extension\SinkRole;
10
11#[CoversClass(SinkRole::class)]
12final class SinkRoleTest extends TestCase
13{
14 public function testCarriesSqlOnlyForTheCallsThatTakeAStatement(): void
15 {
16 self::assertTrue(SinkRole::Query->carriesSql());
17 self::assertTrue(SinkRole::Compose->carriesSql());
18 self::assertTrue(SinkRole::Prepare->carriesSql());
19 self::assertFalse(SinkRole::Execute->carriesSql());
20 self::assertFalse(SinkRole::Bind->carriesSql());
21 }
22
23 public function testReturnsSqlOnlyForTheCallThatHandsTheStatementBack(): void
24 {
25 self::assertTrue(SinkRole::Compose->returnsSql());
26 self::assertFalse(SinkRole::Query->returnsSql());
27 self::assertFalse(SinkRole::Prepare->returnsSql());
28 }
29}
30