throws(\Error::class); it('can select * from table', function (): void { // GIVEN $table = 'someTable'; $qBuilder = TableQueryBuilder::query(); // WHEN $queryString = $qBuilder ->from($table) ->selectAll() ->toQueryString(); $queryString2 = $qBuilder ->from($table) ->toQueryString(); // THEN expect($queryString)->toBe("table={$table}"); expect($queryString2)->toBe("table={$table}"); }); it('can select columns', function (): void { // GIVEN $table = 'someTable'; $columns = ['col1', 'col2']; $qBuilder = TableQueryBuilder::query(); // WHEN $queryString = $qBuilder ->from($table) ->select(...$columns) ->toQueryString(); // THEN expect($queryString)->toBe("table={$table}&s_cols={$columns[0]}|{$columns[1]}"); }); it('can paginate', function (): void { // GIVEN $table = 'someTable'; $qBuilder = TableQueryBuilder::query(); $pageNumber = 2; $pageSize = 3; $pagination = Pagination::ofPage($pageNumber, $pageSize); // WHEN $queryString = $qBuilder ->from($table) ->selectAll() ->paginate($pagination) ->toQueryString(); // THEN expect($queryString)->toBe("table={$table}&page={$pageNumber}&page_size={$pageSize}"); }); });