yiiapi/tests/framework/web/CCookieCollectionTest.php

(开头部分) 3KB

这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。

<?php

class CCookieCollectionTest extends CTestCase
{
	protected $request;
	protected $cookies;
	protected $testCookies=array(
		'testCookieOne'=>'testValue',
		'someEmptyCookie'=>'',
		'IntegerValue'=>1242,
		'cookieWithOptions'=>array(
			'value'=>'options',
			'httpOnly'=>true,
			'expire'=>12422,
		),
	);
	protected $cookieBefore;
	public function setUp()
	{
		$this->cookieBefore=$_COOKIE;
		$_COOKIE['testGlobal']='value';
		$this->request=new TestHttpRequest;
		$this->cookies=$this->request->cookies;
	}
	public function tearDown()
	{
		$_COOKIE=$this->cookieBefore;
	}
	/**
	 * @covers CCookieCollection::getCookies
	 * @covers CCookieCollection::__construct
	 */
	public function testConstructorCookieBuilding()
	{
		$this->assertTrue($this->cookies->contains('testGlobal'));
		$this->assertTrue($this->cookies['testGlobal'] instanceof CHttpCookie);
		$this->assertEquals($_COOKIE['testGlobal'], $this->cookies['testGlobal']->value);
	}
	/**
	 * @runInSeparateProcess
	 * @outputBuffering enabled
	 */
	public function testAdd()
	{
		$this->cookies['simple_name']=new CHttpCookie('simple_name', 'simple_value');
		$this->assertTrue($this->cookies['simple_name'] instanceof CHttpCookie);
		$this->assertEquals('simple_value',$this->cookies['simple_name']->value);
		// test if reference is not destroyed
		$cookie=new CHttpCookie('referenceTest','someValue');
		$this->cookies[$cookie->name]=$cookie;
		$this->assertTrue($this->cookies[$cookie->name] instanceof CHttpCookie);
		$this->assertEquals('someValue',$this->cookies[$cookie->name]->value);
		$cookie->value='SomeNewValue';
		$this->assertEquals($cookie->value,$this->cookies[$cookie->name]->value);
		// test if cookies are added to internal array correctly
		$this->assertTrue($this->cookies->contains('simple_name'));
		$this->assertTrue($this->cookies->contains('referenceTest'));
		$this->assertFalse($this->cookies->contains('someNonExistingCookie'));
	}
	/**
后面还有 46 行代码,购买后查看完整代码

24 小时内免费解锁 3 个项目,之后 1 积分/个。 规则说明

AI 解读

登录后可用,每次 10 积分,解读结果公开显示在下面。

还没有人解读过这个文件。