Fix ListTicketsByStatus selector validation #50
@@ -31,7 +31,9 @@ class ListTicketsByStatus extends Tool
|
||||
'project_id' => ['nullable', 'integer'],
|
||||
'status_name' => ['nullable', 'string'],
|
||||
'status_slug' => ['nullable', 'string'],
|
||||
'ticket_status_id' => ['nullable', 'integer'],
|
||||
'ticket_status_id' => ['nullable', 'integer', 'required_without_all:status_slug,status_name'],
|
||||
], [
|
||||
'ticket_status_id.required_without_all' => 'Provide ticket_status_id, status_slug, or status_name.',
|
||||
]);
|
||||
|
||||
$user = $this->kanbanGitMcp->user($request);
|
||||
|
||||
@@ -319,6 +319,15 @@ class KanbanGitMcpTest extends TestCase
|
||||
->etc());
|
||||
}
|
||||
|
||||
public function test_list_tickets_by_status_requires_a_status_selector(): void
|
||||
{
|
||||
$user = User::factory()->create();
|
||||
|
||||
KanbanGitServer::actingAs($user)
|
||||
->tool(ListTicketsByStatus::class)
|
||||
->assertHasErrors(['Provide ticket_status_id, status_slug, or status_name.']);
|
||||
}
|
||||
|
||||
public function test_ambiguous_status_name_returns_mcp_error(): void
|
||||
{
|
||||
$user = User::factory()->create();
|
||||
|
||||
Reference in New Issue
Block a user