CookieTest
@author John Kary <john@johnkary.net> @author Hugo Hamon <hugo.hamon@sensio.com>
Expanded class hierarchy of CookieTest
class CookieTest extends \PHPUnit_Framework_TestCase {
public function invalidNames() {
return array(
array(
'',
),
array(
",MyName",
),
array(
";MyName",
),
array(
" MyName",
),
array(
"\tMyName",
),
array(
"\rMyName",
),
array(
"\nMyName",
),
array(
"\vMyName",
),
array(
"\fMyName",
),
);
}
/**
* @dataProvider invalidNames
* @expectedException InvalidArgumentException
* @covers Symfony\Component\HttpFoundation\Cookie::__construct
*/
public function testInstantiationThrowsExceptionIfCookieNameContainsInvalidCharacters($name) {
new Cookie($name);
}
/**
* @expectedException InvalidArgumentException
*/
public function testInvalidExpiration() {
$cookie = new Cookie('MyCookie', 'foo', 'bar');
}
/**
* @covers Symfony\Component\HttpFoundation\Cookie::getValue
*/
public function testGetValue() {
$value = 'MyValue';
$cookie = new Cookie('MyCookie', $value);
$this
->assertSame($value, $cookie
->getValue(), '->getValue() returns the proper value');
}
public function testGetPath() {
$cookie = new Cookie('foo', 'bar');
$this
->assertSame('/', $cookie
->getPath(), '->getPath() returns / as the default path');
}
public function testGetExpiresTime() {
$cookie = new Cookie('foo', 'bar', 3600);
$this
->assertEquals(3600, $cookie
->getExpiresTime(), '->getExpiresTime() returns the expire date');
}
public function testGetDomain() {
$cookie = new Cookie('foo', 'bar', 3600, '/', '.myfoodomain.com');
$this
->assertEquals('.myfoodomain.com', $cookie
->getDomain(), '->getDomain() returns the domain name on which the cookie is valid');
}
public function testIsSecure() {
$cookie = new Cookie('foo', 'bar', 3600, '/', '.myfoodomain.com', true);
$this
->assertTrue($cookie
->isSecure(), '->isSecure() returns whether the cookie is transmitted over HTTPS');
}
public function testIsHttpOnly() {
$cookie = new Cookie('foo', 'bar', 3600, '/', '.myfoodomain.com', false, true);
$this
->assertTrue($cookie
->isHttpOnly(), '->isHttpOnly() returns whether the cookie is only transmitted over HTTP');
}
public function testCookieIsNotCleared() {
$cookie = new Cookie('foo', 'bar', time() + 3600 * 24);
$this
->assertFalse($cookie
->isCleared(), '->isCleared() returns false if the cookie did not expire yet');
}
public function testCookieIsCleared() {
$cookie = new Cookie('foo', 'bar', time() - 20);
$this
->assertTrue($cookie
->isCleared(), '->isCleared() returns true if the cookie has expired');
}
public function testToString() {
$cookie = new Cookie('foo', 'bar', strtotime('Fri, 20-May-2011 15:25:52 GMT'), '/', '.myfoodomain.com', true);
$this
->assertEquals('foo=bar; expires=Fri, 20-May-2011 15:25:52 GMT; domain=.myfoodomain.com; secure; httponly', $cookie
->__toString(), '->__toString() returns string representation of the cookie');
$cookie = new Cookie('foo', null, 1, '/admin/', '.myfoodomain.com');
$this
->assertEquals('foo=deleted; expires=' . gmdate("D, d-M-Y H:i:s T", time() - 31536001) . '; path=/admin/; domain=.myfoodomain.com; httponly', $cookie
->__toString(), '->__toString() returns string representation of a cleared cookie if value is NULL');
}
}
Name | Modifiers | Type | Description | Overrides |
---|---|---|---|---|
CookieTest:: |
public | function | ||
CookieTest:: |
public | function | ||
CookieTest:: |
public | function | ||
CookieTest:: |
public | function | ||
CookieTest:: |
public | function | ||
CookieTest:: |
public | function | ||
CookieTest:: |
public | function | @covers Symfony\Component\HttpFoundation\Cookie::getValue | |
CookieTest:: |
public | function | @dataProvider invalidNames @expectedException InvalidArgumentException @covers Symfony\Component\HttpFoundation\Cookie::__construct | |
CookieTest:: |
public | function | @expectedException InvalidArgumentException | |
CookieTest:: |
public | function | ||
CookieTest:: |
public | function | ||
CookieTest:: |
public | function |