X-Git-Url: https://git.heureux-cyclage.org/?a=blobdiff_plain;f=tests%2Fphpunit%2Fincludes%2FFauxResponseTest.php;h=eac56fb84160a2e1bae8d7aad954b8d8eea4ca12;hb=8956885666e4678a8ff76f7310396d2b2874a858;hp=7f41cfd396abb65b3bc21864921754f788a25a5a;hpb=72c70affc0a4036e74946339268f5ab7abf57eaf;p=lhc%2Fweb%2Fwiklou.git diff --git a/tests/phpunit/includes/FauxResponseTest.php b/tests/phpunit/includes/FauxResponseTest.php index 7f41cfd396..eac56fb841 100644 --- a/tests/phpunit/includes/FauxResponseTest.php +++ b/tests/phpunit/includes/FauxResponseTest.php @@ -32,13 +32,36 @@ class FauxResponseTest extends MediaWikiTestCase { } /** - * @covers FauxResponse::getcookie - * @covers FauxResponse::setcookie + * @covers FauxResponse::setCookie + * @covers FauxResponse::getCookie + * @covers FauxResponse::getCookieData + * @covers FauxResponse::getCookies */ public function testCookie() { - $this->assertEquals( null, $this->response->getcookie( 'key' ), 'Non-existing cookie' ); - $this->response->setcookie( 'key', 'val' ); - $this->assertEquals( 'val', $this->response->getcookie( 'key' ), 'Existing cookie' ); + $expire = time() + 100; + $cookie = [ + 'value' => 'val', + 'path' => '/path', + 'domain' => 'domain', + 'secure' => true, + 'httpOnly' => false, + 'raw' => false, + 'expire' => $expire, + ]; + + $this->assertEquals( null, $this->response->getCookie( 'xkey' ), 'Non-existing cookie' ); + $this->response->setCookie( 'key', 'val', $expire, [ + 'prefix' => 'x', + 'path' => '/path', + 'domain' => 'domain', + 'secure' => 1, + 'httpOnly' => 0, + ] ); + $this->assertEquals( 'val', $this->response->getCookie( 'xkey' ), 'Existing cookie' ); + $this->assertEquals( $cookie, $this->response->getCookieData( 'xkey' ), + 'Existing cookie (data)' ); + $this->assertEquals( [ 'xkey' => $cookie ], $this->response->getCookies(), + 'Existing cookies' ); } /** @@ -46,19 +69,35 @@ class FauxResponseTest extends MediaWikiTestCase { * @covers FauxResponse::header */ public function testHeader() { - $this->assertEquals( null, $this->response->getheader( 'Location' ), 'Non-existing header' ); + $this->assertEquals( null, $this->response->getHeader( 'Location' ), 'Non-existing header' ); $this->response->header( 'Location: http://localhost/' ); - $this->assertEquals( 'http://localhost/', $this->response->getheader( 'Location' ), 'Set header' ); + $this->assertEquals( + 'http://localhost/', + $this->response->getHeader( 'Location' ), + 'Set header' + ); $this->response->header( 'Location: http://127.0.0.1/' ); - $this->assertEquals( 'http://127.0.0.1/', $this->response->getheader( 'Location' ), 'Same header' ); + $this->assertEquals( + 'http://127.0.0.1/', + $this->response->getHeader( 'Location' ), + 'Same header' + ); $this->response->header( 'Location: http://127.0.0.2/', false ); - $this->assertEquals( 'http://127.0.0.1/', $this->response->getheader( 'Location' ), 'Same header with override disabled' ); + $this->assertEquals( + 'http://127.0.0.1/', + $this->response->getHeader( 'Location' ), + 'Same header with override disabled' + ); $this->response->header( 'Location: http://localhost/' ); - $this->assertEquals( 'http://localhost/', $this->response->getheader( 'LOCATION' ), 'Get header case insensitive' ); + $this->assertEquals( + 'http://localhost/', + $this->response->getHeader( 'LOCATION' ), + 'Get header case insensitive' + ); } /** @@ -69,18 +108,41 @@ class FauxResponseTest extends MediaWikiTestCase { $this->assertEquals( 200, $this->response->getStatusCode(), 'Header with no message' ); $this->response->header( 'HTTP/1.x 201' ); - $this->assertEquals( 201, $this->response->getStatusCode(), 'Header with no message and protocol 1.x' ); + $this->assertEquals( + 201, + $this->response->getStatusCode(), + 'Header with no message and protocol 1.x' + ); $this->response->header( 'HTTP/1.1 202 OK' ); $this->assertEquals( 202, $this->response->getStatusCode(), 'Normal header' ); $this->response->header( 'HTTP/1.x 203 OK' ); - $this->assertEquals( 203, $this->response->getStatusCode(), 'Normal header with no message and protocol 1.x' ); + $this->assertEquals( + 203, + $this->response->getStatusCode(), + 'Normal header with no message and protocol 1.x' + ); $this->response->header( 'HTTP/1.x 204 OK', false, 205 ); - $this->assertEquals( 205, $this->response->getStatusCode(), 'Third parameter overrides the HTTP/... header' ); + $this->assertEquals( + 205, + $this->response->getStatusCode(), + 'Third parameter overrides the HTTP/... header' + ); + + $this->response->statusHeader( 210 ); + $this->assertEquals( + 210, + $this->response->getStatusCode(), + 'Handle statusHeader method' + ); $this->response->header( 'Location: http://localhost/', false, 206 ); - $this->assertEquals( 206, $this->response->getStatusCode(), 'Third parameter with another header' ); + $this->assertEquals( + 206, + $this->response->getStatusCode(), + 'Third parameter with another header' + ); } }