diff options
author | Nils Adermann <naderman@naderman.de> | 2012-03-18 22:57:37 +0100 |
---|---|---|
committer | David King <imkingdavid@gmail.com> | 2012-03-19 09:12:34 -0400 |
commit | 1bbb32a5cffeff4875c4ed0566999cbee8919c86 (patch) | |
tree | 47610eac44e19e2439688e98812bf2190738c60d /tests | |
parent | 76e61951942048e3e98dbe60a3683d5269a4fa0e (diff) | |
download | forums-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.php | 11 | ||||
-rw-r--r-- | tests/functional/extension_controller_test.php | 8 | ||||
-rw-r--r-- | tests/functional/fixtures/ext/foobar/ext.php | 4 | ||||
-rw-r--r-- | tests/test_framework/phpbb_functional_test_case.php | 37 |
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() |