aboutsummaryrefslogtreecommitdiffstats
path: root/tests/session/testable_factory.php
diff options
context:
space:
mode:
Diffstat (limited to 'tests/session/testable_factory.php')
-rw-r--r--tests/session/testable_factory.php24
1 files changed, 15 insertions, 9 deletions
diff --git a/tests/session/testable_factory.php b/tests/session/testable_factory.php
index 00f79738ef..1e2b194ece 100644
--- a/tests/session/testable_factory.php
+++ b/tests/session/testable_factory.php
@@ -7,8 +7,6 @@
*
*/
-require_once dirname(__FILE__) . '/../mock/session_testable.php';
-
/**
* This class exists to setup an instance of phpbb's session class for testing.
*
@@ -24,6 +22,7 @@ class phpbb_session_testable_factory
protected $config;
protected $cache;
+ protected $request;
/**
* Initialises the factory with a set of default config and cache values.
@@ -60,23 +59,30 @@ class phpbb_session_testable_factory
/**
* Retrieve the configured session class instance
*
- * @param dbal $dbal The database connection to use for session data
+ * @param phpbb_db_driver $dbal The database connection to use for session data
* @return phpbb_mock_session_testable A session instance
*/
- public function get_session(dbal $dbal)
+ public function get_session(phpbb_db_driver $dbal)
{
// set up all the global variables used by session
- global $SID, $_SID, $db, $config, $cache;
+ global $SID, $_SID, $db, $config, $cache, $request;
+
+ $request = $this->request = new phpbb_mock_request(
+ array(),
+ array(),
+ $this->cookies,
+ $this->server_data
+ );
+ request_var(null, null, null, null, $request);
+
+ $config = $this->config = new phpbb_config($this->get_config_data());
+ set_config(null, null, null, $config);
- $config = $this->config = $this->get_config_data();
$db = $dbal;
$cache = $this->cache = new phpbb_mock_cache($this->get_cache_data());
$SID = $_SID = null;
- $_COOKIE = $this->cookies;
- $_SERVER = $this->server_data;
-
$session = new phpbb_mock_session_testable;
return $session;
}