aboutsummaryrefslogtreecommitdiffstats
path: root/tests/cron/manager_test.php
diff options
context:
space:
mode:
authorOleg Pudeyev <oleg@bsdpower.com>2010-12-19 22:41:15 -0500
committerOleg Pudeyev <oleg@bsdpower.com>2011-02-12 22:05:53 -0500
commit4fbf3fbd40ad7f6137526c4f36e8a932015a0c81 (patch)
treeaaf18ff500cc169b655214f9c9fd0aaa0a0cf2bf /tests/cron/manager_test.php
parent53dd847dd582930c84518d77a805468543e32ad0 (diff)
downloadforums-4fbf3fbd40ad7f6137526c4f36e8a932015a0c81.tar
forums-4fbf3fbd40ad7f6137526c4f36e8a932015a0c81.tar.gz
forums-4fbf3fbd40ad7f6137526c4f36e8a932015a0c81.tar.bz2
forums-4fbf3fbd40ad7f6137526c4f36e8a932015a0c81.tar.xz
forums-4fbf3fbd40ad7f6137526c4f36e8a932015a0c81.zip
[feature/system-cron] Basic tests for cron manager.
PHPBB3-9596
Diffstat (limited to 'tests/cron/manager_test.php')
-rw-r--r--tests/cron/manager_test.php57
1 files changed, 57 insertions, 0 deletions
diff --git a/tests/cron/manager_test.php b/tests/cron/manager_test.php
new file mode 100644
index 0000000000..4d3fa1d120
--- /dev/null
+++ b/tests/cron/manager_test.php
@@ -0,0 +1,57 @@
+<?php
+/**
+*
+* @package testing
+* @copyright (c) 2010 phpBB Group
+* @license http://opensource.org/licenses/gpl-license.php GNU Public License
+*
+*/
+
+define('IN_PHPBB', true);
+
+require_once 'test_framework/framework.php';
+
+// need the class loader since cron does not include/require cron task files
+require($phpbb_root_path . 'includes/class_loader.' . $phpEx);
+// do not use cache
+$class_loader = new phpbb_class_loader($phpbb_root_path, '.' . $phpEx);
+$class_loader->register();
+
+require_once '../phpBB/includes/cron/manager.php';
+
+class phpbb_cron_manager_test extends PHPUnit_Framework_TestCase
+{
+ public function setUp()
+ {
+ $this->manager = new phpbb_cron_manager();
+ }
+
+ public function test_manager_finds_shipped_tasks()
+ {
+ $tasks = $this->manager->find_cron_task_names();
+ $this->assertGreaterThan(1, count($tasks));
+ }
+
+ public function test_manager_finds_shipped_task_by_name()
+ {
+ $task = $this->manager->find_task('phpbb_cron_task_core_queue');
+ $this->assertNotNull($task);
+ }
+
+ public function test_manager_instantiates_task_by_name()
+ {
+ $task = $this->manager->instantiate_task('phpbb_cron_task_core_queue', array());
+ $this->assertNotNull($task);
+ }
+
+ public function test_manager_finds_all_ready_tasks()
+ {
+ $tasks = $this->manager->find_all_ready_tasks();
+ $this->assertGreaterThan(0, count($tasks));
+ }
+
+ public function test_manager_finds_one_ready_task() {
+ $task = $this->manager->find_one_ready_task();
+ $this->assertNotNull($task);
+ }
+}