Yii2 framework backup
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 

73 lines
2.3 KiB

<?php
/**
* @link http://www.yiiframework.com/
* @copyright Copyright (c) 2008 Yii Software LLC
* @license http://www.yiiframework.com/license/
*/
namespace yiiunit\framework\web\session;
use yii\web\Session;
use yiiunit\TestCase;
/**
* @group web
*/
class SessionTest extends TestCase
{
/**
* Test to prove that after Session::destroy session id set to old value.
*/
public function testDestroySessionId()
{
$session = new Session();
$session->open();
$oldSessionId = @session_id();
$this->assertNotEmpty($oldSessionId);
$session->destroy();
$newSessionId = @session_id();
$this->assertNotEmpty($newSessionId);
$this->assertEquals($oldSessionId, $newSessionId);
}
/**
* Test to prove that after Session::open changing session parameters will not throw exceptions
* and its values will be changed as expected.
*/
public function testParamsAfterSessionStart()
{
$session = new Session();
$session->open();
$oldUseTransparentSession = $session->getUseTransparentSessionID();
$session->setUseTransparentSessionID(true);
$newUseTransparentSession = $session->getUseTransparentSessionID();
$this->assertNotEquals($oldUseTransparentSession, $newUseTransparentSession);
$this->assertTrue($newUseTransparentSession);
//without this line phpunit will complain about risky tests due to unclosed buffer
$session->setUseTransparentSessionID(false);
$oldTimeout = $session->getTimeout();
$session->setTimeout(600);
$newTimeout = $session->getTimeout();
$this->assertNotEquals($oldTimeout, $newTimeout);
$this->assertEquals(600, $newTimeout);
$oldUseCookies = $session->getUseCookies();
$session->setUseCookies(false);
$newUseCookies = $session->getUseCookies();
if (null !== $newUseCookies) {
$this->assertNotEquals($oldUseCookies, $newUseCookies);
$this->assertFalse($newUseCookies);
}
$oldGcProbability = $session->getGCProbability();
$session->setGCProbability(100);
$newGcProbability = $session->getGCProbability();
$this->assertNotEquals($oldGcProbability, $newGcProbability);
$this->assertEquals(100, $newGcProbability);
}
}