test bulk create nodes validates null fields

This commit is contained in:
Yisroel Baum 2026-04-19 23:09:40 +03:00
parent 6c1ecc8b38
commit 5de15ef52d
Signed by: yisroelbaum
GPG key ID: 0FA60884F75520A9

View file

@ -2,6 +2,7 @@
namespace Tests\Unit\Node\UseCases;
use App\Exceptions\BadRequestException;
use App\Node\CreateNodeDto;
use App\Node\Node;
use App\Node\UseCases\BulkCreateNodes;
@ -131,4 +132,56 @@ class BulkCreateNodesTest extends TestCase
count: 5,
));
}
public function test_throws_if_text_id_is_null(): void
{
$this->expectException(BadRequestException::class);
$this->expectExceptionMessage('textId is required');
$this->useCase->execute(new BulkCreateNodesRequest(
textId: null,
parentNodeId: $this->parentNode->getId(),
titlePrefix: 'Page',
count: 5,
));
}
public function test_throws_if_parent_node_id_is_null(): void
{
$this->expectException(BadRequestException::class);
$this->expectExceptionMessage('parentNodeId is required');
$this->useCase->execute(new BulkCreateNodesRequest(
textId: 0,
parentNodeId: null,
titlePrefix: 'Page',
count: 5,
));
}
public function test_throws_if_title_prefix_is_null(): void
{
$this->expectException(BadRequestException::class);
$this->expectExceptionMessage('titlePrefix is required');
$this->useCase->execute(new BulkCreateNodesRequest(
textId: 0,
parentNodeId: $this->parentNode->getId(),
titlePrefix: null,
count: 5,
));
}
public function test_throws_if_count_is_null(): void
{
$this->expectException(BadRequestException::class);
$this->expectExceptionMessage('count is required');
$this->useCase->execute(new BulkCreateNodesRequest(
textId: 0,
parentNodeId: $this->parentNode->getId(),
titlePrefix: 'Page',
count: null,
));
}
}