aboutsummaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
authorNils Adermann <naderman@naderman.de>2012-03-18 22:57:37 +0100
committerDavid King <imkingdavid@gmail.com>2012-03-19 09:12:34 -0400
commit1bbb32a5cffeff4875c4ed0566999cbee8919c86 (patch)
tree47610eac44e19e2439688e98812bf2190738c60d /tests
parent76e61951942048e3e98dbe60a3683d5269a4fa0e (diff)
downloadforums-1bbb32a5cffeff4875c4ed0566999cbee8919c86.tar
forums-1bbb32a5cffeff4875c4ed0566999cbee8919c86.tar.gz
forums-1bbb32a5cffeff4875c4ed0566999cbee8919c86.tar.bz2
forums-1bbb32a5cffeff4875c4ed0566999cbee8919c86.tar.xz
forums-1bbb32a5cffeff4875c4ed0566999cbee8919c86.zip
[ticket/10586] Correctly purge board cache and don't rename install directory
PHPBB3-10586
Diffstat (limited to 'tests')
-rw-r--r--tests/functional/browse_test.php11
-rw-r--r--tests/functional/extension_controller_test.php8
-rw-r--r--tests/functional/fixtures/ext/foobar/ext.php4
-rw-r--r--tests/test_framework/phpbb_functional_test_case.php37
4 files changed, 40 insertions, 20 deletions
diff --git a/tests/functional/browse_test.php b/tests/functional/browse_test.php
index d119787d13..723cf93232 100644
--- a/tests/functional/browse_test.php
+++ b/tests/functional/browse_test.php
@@ -12,17 +12,6 @@
*/
class phpbb_functional_browse_test extends phpbb_functional_test_case
{
- public static function setUpBeforeClass()
- {
- parent::setUpBeforeClass();
- $f_path = self::$config['phpbb_functional_path'];
- // we cannot run these tests correctly if the install directory is present
- if (is_dir($f_path . 'install/'))
- {
- rename($f_path . 'install/', $f_path . 'install_/');
- }
- // NOTE: this will need to be renamed back again later if you wish to test again
- }
public function test_index()
{
$crawler = $this->request('GET', 'index.php');
diff --git a/tests/functional/extension_controller_test.php b/tests/functional/extension_controller_test.php
index 4123853151..dd8aa1181b 100644
--- a/tests/functional/extension_controller_test.php
+++ b/tests/functional/extension_controller_test.php
@@ -69,8 +69,6 @@ class phpbb_functional_extension_controller_test extends phpbb_functional_test_c
public static function tearDownAfterClass()
{
$f_path = self::$config['phpbb_functional_path'];
- // first we rename the install_ directory back to install
- rename($f_path . 'install_/', $f_path . 'install/');
// @todo delete the fixtures from the $f_path board
// Note that it might be best to find a public domain function
@@ -80,8 +78,10 @@ class phpbb_functional_extension_controller_test extends phpbb_functional_test_c
public function setUp()
{
parent::setUp();
- $this->phpbb_extension_manager = !($this->phpbb_extension_manager instanceof phpbb_extension_manager) ? $this->get_ext_manager() : $this->phpbb_extension_manager;
- $this->cache->purge('_ext');
+
+ $this->phpbb_extension_manager = $this->get_extension_manager();
+
+ $this->purge_cache();
}
/**
diff --git a/tests/functional/fixtures/ext/foobar/ext.php b/tests/functional/fixtures/ext/foobar/ext.php
index 7b3f37cbfb..7cf443d369 100644
--- a/tests/functional/fixtures/ext/foobar/ext.php
+++ b/tests/functional/fixtures/ext/foobar/ext.php
@@ -1,6 +1,6 @@
<?php
-class phpbb_ext_fooar_ext extends phpbb_extension_base
+class phpbb_ext_foobar_ext extends phpbb_extension_base
{
-
+
}
diff --git a/tests/test_framework/phpbb_functional_test_case.php b/tests/test_framework/phpbb_functional_test_case.php
index d569556d02..69c62af297 100644
--- a/tests/test_framework/phpbb_functional_test_case.php
+++ b/tests/test_framework/phpbb_functional_test_case.php
@@ -16,6 +16,7 @@ class phpbb_functional_test_case extends phpbb_test_case
protected $cache = null;
protected $db = null;
+ protected $extension_manager = null;
static protected $config = array();
static protected $already_installed = false;
@@ -86,11 +87,41 @@ class phpbb_functional_test_case extends phpbb_test_case
return $this->db;
}
- protected function get_ext_manager()
+ 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;
- $this->cache = ($this->cache instanceof phpbb_cache_driver_null) ? $this->cache : new phpbb_cache_driver_null;
- return new phpbb_extension_manager($this->get_db(), self::$config['table_prefix'] . 'ext', $phpbb_root_path, ".$phpEx", $this->cache);
+
+ 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()