validate([ 'action' => 'domain_inf', 'parameters' => ['sld' => 'Example', 'tld' => 'NL'], 'reason' => 'Needed', ]); $this->assertSame([ 'action' => 'domain_inf', 'parameters' => ['sld' => 'example', 'tld' => 'nl'], 'reason' => 'Needed', ], $validated); } public function test_it_rejects_missing_parameters(): void { $validator = new ToolCallRequestValidator; $this->assertNull($validator->validate([ 'action' => 'domain_inf', 'parameters' => ['sld' => 'example'], ])); } public function test_it_rejects_unknown_action(): void { $validator = new ToolCallRequestValidator; $this->assertNull($validator->validate([ 'action' => 'dns_update', 'parameters' => ['sld' => 'example', 'tld' => 'nl'], ])); } }