aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorIgor Wiedler <igor@wiedler.ch>2011-02-12 14:45:14 +0100
committerIgor Wiedler <igor@wiedler.ch>2011-02-12 14:45:14 +0100
commit53b97b57a0d145af34363125a124cb77f51e63d7 (patch)
treec827d7bc6c83796eda31d315e0fd7e8423a02a20
parentf50d74506a2334a83e03ae50c65a237d766c7d7e (diff)
parent0765f9ba7fdf78515260653bad15b04a406ec2ae (diff)
downloadforums-53b97b57a0d145af34363125a124cb77f51e63d7.tar
forums-53b97b57a0d145af34363125a124cb77f51e63d7.tar.gz
forums-53b97b57a0d145af34363125a124cb77f51e63d7.tar.bz2
forums-53b97b57a0d145af34363125a124cb77f51e63d7.tar.xz
forums-53b97b57a0d145af34363125a124cb77f51e63d7.zip
Merge branch 'ticket/p/10013' into develop
* ticket/p/10013: [ticket/10013] Use mkdir to create directory trees. [ticket/10013] Fixed cache test to create intermediate directories. [ticket/10013] Changed cache test to use tests/tmp/cache as cache directory
-rw-r--r--.gitignore1
-rw-r--r--tests/cache/cache_test.php40
-rw-r--r--tests/cache/tmp/.gitkeep0
-rw-r--r--tests/test_framework/phpbb_test_case_helpers.php5
4 files changed, 42 insertions, 4 deletions
diff --git a/.gitignore b/.gitignore
index c417bf01c1..dcdfd3c386 100644
--- a/.gitignore
+++ b/.gitignore
@@ -7,4 +7,5 @@ phpBB/images/avatars/upload/*
phpBB/store/*
tests/phpbb_unit_tests.sqlite2
tests/test_config.php
+tests/tmp
tests/utf/data/*.txt
diff --git a/tests/cache/cache_test.php b/tests/cache/cache_test.php
index 2f11267cba..b127c507f0 100644
--- a/tests/cache/cache_test.php
+++ b/tests/cache/cache_test.php
@@ -11,21 +11,53 @@ require_once dirname(__FILE__) . '/../../phpBB/includes/functions.php';
class phpbb_cache_test extends phpbb_test_case
{
+ private $cache_dir;
+
+ public function __construct()
+ {
+ $this->cache_dir = dirname(__FILE__) . '/../tmp/cache/';
+ }
+
+ protected function setUp()
+ {
+ if (file_exists($this->cache_dir))
+ {
+ // cache directory possibly left after aborted
+ // or failed run earlier
+ $this->remove_cache_dir();
+ }
+ $this->create_cache_dir();
+ }
+
protected function tearDown()
{
- $iterator = new DirectoryIterator(dirname(__FILE__) . '/tmp');
+ if (file_exists($this->cache_dir))
+ {
+ $this->remove_cache_dir();
+ }
+ }
+
+ private function create_cache_dir()
+ {
+ $this->get_test_case_helpers()->makedirs($this->cache_dir);
+ }
+
+ private function remove_cache_dir()
+ {
+ $iterator = new DirectoryIterator($this->cache_dir);
foreach ($iterator as $file)
{
- if (is_file(dirname(__FILE__) . '/tmp/' . $file) && $file != '.gitkeep')
+ if ($file != '.' && $file != '..')
{
- unlink(dirname(__FILE__) . '/tmp/' . $file);
+ unlink($this->cache_dir . '/' . $file);
}
}
+ rmdir($this->cache_dir);
}
public function test_cache_driver_file()
{
- $driver = new phpbb_cache_driver_file(dirname(__FILE__) . '/tmp/');
+ $driver = new phpbb_cache_driver_file($this->cache_dir);
$driver->put('test_key', 'test_value');
$driver->save();
diff --git a/tests/cache/tmp/.gitkeep b/tests/cache/tmp/.gitkeep
deleted file mode 100644
index e69de29bb2..0000000000
--- a/tests/cache/tmp/.gitkeep
+++ /dev/null
diff --git a/tests/test_framework/phpbb_test_case_helpers.php b/tests/test_framework/phpbb_test_case_helpers.php
index 0acdce32e0..697dc93501 100644
--- a/tests/test_framework/phpbb_test_case_helpers.php
+++ b/tests/test_framework/phpbb_test_case_helpers.php
@@ -41,4 +41,9 @@ class phpbb_test_case_helpers
$this->expectedTriggerError = true;
$this->test_case->setExpectedException($exceptionName, (string) $message, $errno);
}
+
+ public function makedirs($path)
+ {
+ mkdir($path, 0777, true);
+ }
}