mirror of
https://github.com/appwrite/appwrite.git
synced 2026-05-26 13:51:13 +00:00
test: add unit coverage for Request::getHeader non-string coercion
Refs CLO-4280
This commit is contained in:
@@ -161,6 +161,37 @@ class RequestTest extends TestCase
|
||||
$this->assertSame($secondRoute, $secondRequest->getRoute());
|
||||
}
|
||||
|
||||
public function testGetHeaderReturnsStringValue(): void
|
||||
{
|
||||
$this->request->addHeader('referer', 'https://example.com');
|
||||
|
||||
$this->assertSame('https://example.com', $this->request->getHeader('referer'));
|
||||
}
|
||||
|
||||
public function testGetHeaderReturnsDefaultWhenMissing(): void
|
||||
{
|
||||
$this->assertSame('', $this->request->getHeader('referer'));
|
||||
$this->assertSame('fallback', $this->request->getHeader('referer', 'fallback'));
|
||||
}
|
||||
|
||||
public function testGetHeaderCoercesArrayToFirstElement(): void
|
||||
{
|
||||
$swoole = new SwooleRequest();
|
||||
$swoole->header = ['referer' => ['https://a.example', 'https://b.example']];
|
||||
$request = new Request($swoole);
|
||||
|
||||
$this->assertSame('https://a.example', $request->getHeader('referer'));
|
||||
}
|
||||
|
||||
public function testGetHeaderReturnsDefaultWhenValueNotString(): void
|
||||
{
|
||||
$swoole = new SwooleRequest();
|
||||
$swoole->header = ['referer' => 123];
|
||||
$request = new Request($swoole);
|
||||
|
||||
$this->assertSame('fallback', $request->getHeader('referer', 'fallback'));
|
||||
}
|
||||
|
||||
/**
|
||||
* Helper to attach a route with multiple SDK methods to the request.
|
||||
*/
|
||||
|
||||
Reference in New Issue
Block a user