aboutsummaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
authorAndy Chase <asperous2@gmail.com>2013-07-05 14:49:30 -0700
committerAndy Chase <asperous2@gmail.com>2013-07-05 14:49:30 -0700
commit5cdcb689df37fd7cbaaa1b5475caa830e87be318 (patch)
treeb2e0eeb07f51c9a69d4e4cc739a4767883414140 /tests
parent6f8187f7faadc543f3e43db278cd7239e8cf7ac7 (diff)
downloadforums-5cdcb689df37fd7cbaaa1b5475caa830e87be318.tar
forums-5cdcb689df37fd7cbaaa1b5475caa830e87be318.tar.gz
forums-5cdcb689df37fd7cbaaa1b5475caa830e87be318.tar.bz2
forums-5cdcb689df37fd7cbaaa1b5475caa830e87be318.tar.xz
forums-5cdcb689df37fd7cbaaa1b5475caa830e87be318.zip
[ticket/11620] Implemented a provider mock object.
Due to an auth_refactor, there is a new dependency in session.php on phpbb_container and a provider. For purposes of testing, implemented a simple one. PHPBB3-11620
Diffstat (limited to 'tests')
-rw-r--r--tests/mock/provider.php23
-rw-r--r--tests/session/testable_factory.php12
2 files changed, 34 insertions, 1 deletions
diff --git a/tests/mock/provider.php b/tests/mock/provider.php
new file mode 100644
index 0000000000..21ef2fc949
--- /dev/null
+++ b/tests/mock/provider.php
@@ -0,0 +1,23 @@
+<?php
+/**
+ *
+ * @package testing
+ * @copyright (c) 2013 phpBB Group
+ * @license http://opensource.org/licenses/gpl-2.0.php GNU General Public License v2
+ *
+ */
+
+/**
+ * Mock provider class with basic functions to help test
+ * sessions.
+ */
+class phpbb_provider {
+ function autologin()
+ {
+ return array();
+ }
+ function kill()
+ {
+
+ }
+}
diff --git a/tests/session/testable_factory.php b/tests/session/testable_factory.php
index 1e2b194ece..d0d0dabbec 100644
--- a/tests/session/testable_factory.php
+++ b/tests/session/testable_factory.php
@@ -7,6 +7,9 @@
*
*/
+require_once dirname(__FILE__) . '/../mock/container_builder.php';
+require_once dirname(__FILE__) . '/../mock/provider.php';
+
/**
* This class exists to setup an instance of phpbb's session class for testing.
*
@@ -16,6 +19,7 @@
*/
class phpbb_session_testable_factory
{
+ protected $container;
protected $config_data;
protected $cache_data;
protected $cookies;
@@ -65,7 +69,7 @@ class phpbb_session_testable_factory
public function get_session(phpbb_db_driver $dbal)
{
// set up all the global variables used by session
- global $SID, $_SID, $db, $config, $cache, $request;
+ global $SID, $_SID, $db, $config, $cache, $request, $phpbb_container;
$request = $this->request = new phpbb_mock_request(
array(),
@@ -83,6 +87,12 @@ class phpbb_session_testable_factory
$cache = $this->cache = new phpbb_mock_cache($this->get_cache_data());
$SID = $_SID = null;
+ $phpbb_container = $this->container = new phpbb_mock_container_builder();
+ $phpbb_container->set(
+ 'auth.provider.db',
+ new phpbb_provider()
+ );
+
$session = new phpbb_mock_session_testable;
return $session;
}