aboutsummaryrefslogtreecommitdiffstats
path: root/tests/cache
diff options
context:
space:
mode:
authorIgor Wiedler <igor@wiedler.ch>2012-08-25 17:00:40 +0200
committerIgor Wiedler <igor@wiedler.ch>2012-08-25 17:00:40 +0200
commitae85d43757463e743917f43ee3e014a8b1af85d6 (patch)
treee4c2b7188baadd74cbf968a4174cd5257ccdfb0e /tests/cache
parentfd9fd71a88fad2b33d75722587dbfc0bd100ae50 (diff)
parentbfdba90a34ad95c7cb9e0bc187cb464c83f8ba59 (diff)
downloadforums-ae85d43757463e743917f43ee3e014a8b1af85d6.tar
forums-ae85d43757463e743917f43ee3e014a8b1af85d6.tar.gz
forums-ae85d43757463e743917f43ee3e014a8b1af85d6.tar.bz2
forums-ae85d43757463e743917f43ee3e014a8b1af85d6.tar.xz
forums-ae85d43757463e743917f43ee3e014a8b1af85d6.zip
Merge remote-tracking branch 'upstream/develop' into feature/dic
* upstream/develop: (259 commits) [prep-release-3.0.11] Bumping version number for 3.0.11 final. [feature/php-events] Fix doc of core.viewonline_overwrite_location [feature/php-events] Fix doc of core.user_set_default_group [feature/php-events] Fix doc of core.generate_smilies_after [feature/php-events] Fix doc of core.delete_user_after [feature/php-events] Fix doc of core.delete_user_before [feature/php-events] Fix doc of core.update_username [feature/php-events] Fix doc of core.memberlist_prepare_profile_data [feature/php-events] Fix doc and position of viewonline_overwrite_location [feature/php-events] Fix doc of core.viewtopic_get_post_data [feature/php-events] Fix doc of core.viewtopic_cache_guest_data [ticket/11061] Add the --dev flag to the composer instructions in README [ticket/11060] Make sure pyrus can install everything on travis [ticket/11059] Use https for the README logo [feature/php-events] Fix acp_manage_forums_update_data_before and is_new_forum [feature/php-events] Fix core.acp_manage_forums_update_data_after vars [ticket/11032] fix language of error displayed [ticket/11052] update search backend constructor everywhere [ticket/11052] pass parametes to search construct while posting [ticket/11054] Fixed $config var description ... Conflicts: phpBB/includes/cron/task/core/tidy_cache.php phpBB/includes/cron/task/core/tidy_search.php
Diffstat (limited to 'tests/cache')
-rw-r--r--tests/cache/cache_test.php41
-rw-r--r--tests/cache/fixtures/config.xml18
2 files changed, 58 insertions, 1 deletions
diff --git a/tests/cache/cache_test.php b/tests/cache/cache_test.php
index 564bd35863..c5f5fac88c 100644
--- a/tests/cache/cache_test.php
+++ b/tests/cache/cache_test.php
@@ -9,7 +9,7 @@
require_once dirname(__FILE__) . '/../../phpBB/includes/functions.php';
-class phpbb_cache_test extends phpbb_test_case
+class phpbb_cache_test extends phpbb_database_test_case
{
private $cache_dir;
@@ -18,8 +18,15 @@ class phpbb_cache_test extends phpbb_test_case
$this->cache_dir = dirname(__FILE__) . '/../tmp/cache/';
}
+ public function getDataSet()
+ {
+ return $this->createXMLDataSet(dirname(__FILE__) . '/fixtures/config.xml');
+ }
+
protected function setUp()
{
+ parent::setUp();
+
if (file_exists($this->cache_dir))
{
// cache directory possibly left after aborted
@@ -35,6 +42,8 @@ class phpbb_cache_test extends phpbb_test_case
{
$this->remove_cache_dir();
}
+
+ parent::tearDown();
}
private function create_cache_dir()
@@ -67,4 +76,34 @@ class phpbb_cache_test extends phpbb_test_case
'File ACM put and get'
);
}
+
+ public function test_cache_sql()
+ {
+ $driver = new phpbb_cache_driver_file($this->cache_dir);
+
+ global $db, $cache;
+ $db = $this->new_dbal();
+ $cache = new phpbb_cache_service($driver);
+
+ $sql = "SELECT * FROM phpbb_config
+ WHERE config_name = 'foo'";
+ $result = $db->sql_query($sql, 300);
+ $first_result = $db->sql_fetchrow($result);
+
+ $this->assertFileExists($this->cache_dir . 'sql_' . md5(preg_replace('/[\n\r\s\t]+/', ' ', $sql)) . '.php');
+
+ $sql = "SELECT * FROM phpbb_config
+ WHERE config_name = 'foo'";
+ $result = $db->sql_query($sql, 300);
+
+ $this->assertEquals($first_result, $db->sql_fetchrow($result));
+
+ $sql = "SELECT * FROM phpbb_config
+ WHERE config_name = 'bar'";
+ $result = $db->sql_query($sql, 300);
+
+ $this->assertNotEquals($first_result, $db->sql_fetchrow($result));
+
+ $db->sql_close();
+ }
}
diff --git a/tests/cache/fixtures/config.xml b/tests/cache/fixtures/config.xml
new file mode 100644
index 0000000000..9d395b685c
--- /dev/null
+++ b/tests/cache/fixtures/config.xml
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<dataset>
+ <table name="phpbb_config">
+ <column>config_name</column>
+ <column>config_value</column>
+ <column>is_dynamic</column>
+ <row>
+ <value>foo</value>
+ <value>23</value>
+ <value>0</value>
+ </row>
+ <row>
+ <value>bar</value>
+ <value>42</value>
+ <value>1</value>
+ </row>
+ </table>
+</dataset>