summaryrefslogtreecommitdiffstats
path: root/tests/lib/BackgroundJob/QueuedJobTest.php
diff options
context:
space:
mode:
Diffstat (limited to 'tests/lib/BackgroundJob/QueuedJobTest.php')
-rw-r--r--tests/lib/BackgroundJob/QueuedJobTest.php56
1 files changed, 56 insertions, 0 deletions
diff --git a/tests/lib/BackgroundJob/QueuedJobTest.php b/tests/lib/BackgroundJob/QueuedJobTest.php
new file mode 100644
index 00000000000..a3e9cc296a0
--- /dev/null
+++ b/tests/lib/BackgroundJob/QueuedJobTest.php
@@ -0,0 +1,56 @@
+<?php
+/**
+ * Copyright (c) 2013 Robin Appelman <icewind@owncloud.com>
+ * This file is licensed under the Affero General Public License version 3 or
+ * later.
+ * See the COPYING-README file.
+ */
+
+namespace Test\BackgroundJob;
+
+class TestQueuedJob extends \OC\BackgroundJob\QueuedJob {
+ private $testCase;
+
+ /**
+ * @param QueuedJobTest $testCase
+ */
+ public function __construct($testCase) {
+ $this->testCase = $testCase;
+ }
+
+ public function run($argument) {
+ $this->testCase->markRun();
+ }
+}
+
+class QueuedJobTest extends \Test\TestCase {
+ /**
+ * @var DummyJobList $jobList
+ */
+ private $jobList;
+ /**
+ * @var \OC\BackgroundJob\TimedJob $job
+ */
+ private $job;
+
+ private $jobRun = false;
+
+ public function markRun() {
+ $this->jobRun = true;
+ }
+
+ protected function setup() {
+ parent::setUp();
+
+ $this->jobList = new DummyJobList();
+ $this->job = new TestQueuedJob($this);
+ $this->jobList->add($this->job);
+ $this->jobRun = false;
+ }
+
+ public function testJobShouldBeRemoved() {
+ $this->assertTrue($this->jobList->has($this->job, null));
+ $this->job->execute($this->jobList);
+ $this->assertTrue($this->jobRun);
+ }
+}