register('Alice', 'entwickler'); $auth = new AgentAuthenticator($agents); $request = Request::create('GET', '/x', headers: ['X-Api-Key' => $registration['api_key']]); $result = $auth->authenticate($request); self::assertNotNull($result); self::assertSame($registration['agent']['id'], $result['id']); } public function testAuthenticateReturnsNullWithoutHeader(): void { $agents = new AgentRepository(Database::inMemory()); $auth = new AgentAuthenticator($agents); self::assertNull($auth->authenticate(Request::create('GET', '/x'))); } public function testAuthenticateReturnsNullForWrongKey(): void { $agents = new AgentRepository(Database::inMemory()); $agents->register('Alice', 'entwickler'); $auth = new AgentAuthenticator($agents); $request = Request::create('GET', '/x', headers: ['X-Api-Key' => 'wrong']); self::assertNull($auth->authenticate($request)); } }