aboutsummaryrefslogtreecommitdiffstats
path: root/tests/test_framework/phpbb_functional_test_case.php
diff options
context:
space:
mode:
authorIgor Wiedler <igor@wiedler.ch>2012-03-30 14:05:40 +0200
committerIgor Wiedler <igor@wiedler.ch>2012-03-30 14:05:40 +0200
commitd4f1bdea3bdd27f7c9f99d6121b2762482fc1707 (patch)
treeb730fdcc1fe5c486806728474b20944c982dfa75 /tests/test_framework/phpbb_functional_test_case.php
parentcab437ae83297a8fc092fe77fdae8eb66d3b93a1 (diff)
parent29a904ce45f16eac928aa516be366780f05c0950 (diff)
downloadforums-d4f1bdea3bdd27f7c9f99d6121b2762482fc1707.tar
forums-d4f1bdea3bdd27f7c9f99d6121b2762482fc1707.tar.gz
forums-d4f1bdea3bdd27f7c9f99d6121b2762482fc1707.tar.bz2
forums-d4f1bdea3bdd27f7c9f99d6121b2762482fc1707.tar.xz
forums-d4f1bdea3bdd27f7c9f99d6121b2762482fc1707.zip
Merge remote-tracking branch 'upstream/develop' into feature/event-dispatcher
* upstream/develop: (35 commits) [ticket/10730] Added label tag around "select" text in post splitting UI [ticket/10732] Add config_dev.php and config_test.php to .gitignore [ticket/10586] Added space in if statement [ticket/10586] Tidy up comments [task/php5.3] Updated range of tested PHP versions [task/php5.3] Looks like I missed a few places that needed PHP 5.2 changed to PHP 5.3.2 [task/php5.3] Changed minimum PHP requirement for Ascraeus to 5.3.2 [ticket/10129] Remove apostrophes and plurals in ACP user management -> permissions language file as per ticket. [ticket/10703] Added a condition to check if ext directory exists [ticket/10708] Check converted passwords for multi-byte characters [ticket/10586] Tests finally work (thanks naderman) [ticket/10586] Correctly purge board cache and don't rename install directory [ticket/10586] trying to get tests to work [ticket/10586] more work on getting tests to pass [ticket/10586] Tests are coming along, just a little more to go [ticket/10586] Rename install directory back to install/ after tests [ticket/10586] browse tests now work, but mine dont. at least we are making progress [ticket/10586] initial work on copying fixtures. Note that this depends on 10706 [ticket/10586] Adding the extensions used by the tests [ticket/10586] Now tests run, but fail. But here is what I have. ...
Diffstat (limited to 'tests/test_framework/phpbb_functional_test_case.php')
-rw-r--r--tests/test_framework/phpbb_functional_test_case.php58
1 files changed, 58 insertions, 0 deletions
diff --git a/tests/test_framework/phpbb_functional_test_case.php b/tests/test_framework/phpbb_functional_test_case.php
index b5e6f7e377..69c62af297 100644
--- a/tests/test_framework/phpbb_functional_test_case.php
+++ b/tests/test_framework/phpbb_functional_test_case.php
@@ -14,6 +14,10 @@ class phpbb_functional_test_case extends phpbb_test_case
protected $client;
protected $root_url;
+ protected $cache = null;
+ protected $db = null;
+ protected $extension_manager = null;
+
static protected $config = array();
static protected $already_installed = false;
@@ -66,6 +70,60 @@ class phpbb_functional_test_case extends phpbb_test_case
}
}
+ protected function get_db()
+ {
+ global $phpbb_root_path, $phpEx;
+ // so we don't reopen an open connection
+ if (!($this->db instanceof dbal))
+ {
+ if (!class_exists('dbal_' . self::$config['dbms']))
+ {
+ include($phpbb_root_path . 'includes/db/' . self::$config['dbms'] . ".$phpEx");
+ }
+ $sql_db = 'dbal_' . self::$config['dbms'];
+ $this->db = new $sql_db();
+ $this->db->sql_connect(self::$config['dbhost'], self::$config['dbuser'], self::$config['dbpasswd'], self::$config['dbname'], self::$config['dbport']);
+ }
+ return $this->db;
+ }
+
+ protected function get_cache_driver()
+ {
+ if (!$this->cache)
+ {
+ $this->cache = new phpbb_cache_driver_file;
+ }
+
+ return $this->cache;
+ }
+
+ protected function purge_cache()
+ {
+ $cache = $this->get_cache_driver();
+
+ $cache->purge();
+ $cache->unload();
+ $cache->load();
+ }
+
+ protected function get_extension_manager()
+ {
+ global $phpbb_root_path, $phpEx;
+
+ if (!$this->extension_manager)
+ {
+ $this->extension_manager = new phpbb_extension_manager(
+ $this->get_db(),
+ self::$config['table_prefix'] . 'ext',
+ $phpbb_root_path,
+ ".$phpEx",
+ $this->get_cache_driver()
+ );
+ }
+
+ return $this->extension_manager;
+ }
+
protected function install_board()
{
global $phpbb_root_path, $phpEx;