packages/ztd-query-core/tests/Unit/Connection/ResultSetTest.php

1<?php
2
3declare(strict_types=1);
4
5namespace Tests\Unit\Connection;
6
7use PHPUnit\Framework\Attributes\CoversClass;
8use PHPUnit\Framework\Attributes\UsesClass;
9use PHPUnit\Framework\TestCase;
10use ZtdQuery\Connection\ResultColumn;
11use ZtdQuery\Connection\ResultSet;
12use ZtdQuery\Schema\ColumnDeclaration;
13use ZtdQuery\Schema\ColumnTypeFamily;
14
15#[CoversClass(ResultSet::class)]
16#[UsesClass(ColumnDeclaration::class)]
17#[UsesClass(ResultColumn::class)]
18final class ResultSetTest extends TestCase
19{
20    public function testCarriesEmptyRowsAndColumnsIndependently(): void
21    {
22        $column = new ResultColumn('id', new ColumnDeclaration(ColumnTypeFamily::INTEGER, 'int4'));
23        $result = new ResultSet([], [$column]);
24
25        self::assertSame([], $result->rows);
26        self::assertSame([$column], $result->columns);
27    }
28}
29