First Local Commit - After Clean up.
Signed-off-by: Rick Hays <rhays@haysgang.com>
This commit is contained in:
72
tests/_support/Session/MockSession.php
Normal file
72
tests/_support/Session/MockSession.php
Normal file
@@ -0,0 +1,72 @@
|
||||
<?php namespace Tests\Support\Session;
|
||||
|
||||
use CodeIgniter\Session\Session;
|
||||
|
||||
/**
|
||||
* Class MockSession
|
||||
*
|
||||
* Provides a safe way to test the Session class itself,
|
||||
* that doesn't interact with the session or cookies at all.
|
||||
*/
|
||||
class MockSession extends Session
|
||||
{
|
||||
/**
|
||||
* Holds our "cookie" data.
|
||||
*
|
||||
* @var array
|
||||
*/
|
||||
public $cookies = [];
|
||||
|
||||
public $didRegenerate = false;
|
||||
|
||||
//--------------------------------------------------------------------
|
||||
|
||||
/**
|
||||
* Sets the driver as the session handler in PHP.
|
||||
* Extracted for easier testing.
|
||||
*/
|
||||
protected function setSaveHandler()
|
||||
{
|
||||
// session_set_save_handler($this->driver, true);
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------
|
||||
|
||||
/**
|
||||
* Starts the session.
|
||||
* Extracted for testing reasons.
|
||||
*/
|
||||
protected function startSession()
|
||||
{
|
||||
// session_start();
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------
|
||||
|
||||
/**
|
||||
* Takes care of setting the cookie on the client side.
|
||||
* Extracted for testing reasons.
|
||||
*/
|
||||
protected function setCookie()
|
||||
{
|
||||
$this->cookies[] = [
|
||||
$this->sessionCookieName,
|
||||
session_id(),
|
||||
(empty($this->sessionExpiration) ? 0 : time() + $this->sessionExpiration),
|
||||
$this->cookiePath,
|
||||
$this->cookieDomain,
|
||||
$this->cookieSecure,
|
||||
true,
|
||||
];
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------
|
||||
|
||||
public function regenerate(bool $destroy = false)
|
||||
{
|
||||
$this->didRegenerate = true;
|
||||
$_SESSION['__ci_last_regenerate'] = time();
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------
|
||||
}
|
||||
Reference in New Issue
Block a user