summaryrefslogtreecommitdiffstats
path: root/tests/Unit/Service/UpdaterTest.php
diff options
context:
space:
mode:
Diffstat (limited to 'tests/Unit/Service/UpdaterTest.php')
-rw-r--r--tests/Unit/Service/UpdaterTest.php86
1 files changed, 86 insertions, 0 deletions
diff --git a/tests/Unit/Service/UpdaterTest.php b/tests/Unit/Service/UpdaterTest.php
new file mode 100644
index 000000000..b4be0a7cc
--- /dev/null
+++ b/tests/Unit/Service/UpdaterTest.php
@@ -0,0 +1,86 @@
+<?php
+/**
+ * Nextcloud - News
+ *
+ * This file is licensed under the Affero General Public License version 3 or
+ * later. See the COPYING file.
+ *
+ * @author Alessandro Cosentino <cosenal@gmail.com>
+ * @author Bernhard Posselt <dev@bernhard-posselt.com>
+ * @copyright 2012 Alessandro Cosentino
+ * @copyright 2012-2014 Bernhard Posselt
+ */
+
+namespace OCA\News\Tests\Unit\Service;
+
+use OCA\News\Service\FeedServiceV2;
+use OCA\News\Service\FolderServiceV2;
+use OCA\News\Service\ItemServiceV2;
+use OCA\News\Service\UpdaterService;
+use PHPUnit\Framework\TestCase;
+
+class UpdaterTest extends TestCase
+{
+
+ /**
+ * @var \PHPUnit\Framework\MockObject\MockObject|FolderServiceV2
+ */
+ private $folderService;
+
+ /**
+ * @var \PHPUnit\Framework\MockObject\MockObject|FeedServiceV2
+ */
+ private $feedService;
+
+ /**
+ * @var \PHPUnit\Framework\MockObject\MockObject|ItemServiceV2
+ */
+ private $itemService;
+
+ /**
+ * @var UpdaterService
+ */
+ private $updater;
+
+ protected function setUp(): void
+ {
+ $this->folderService = $this->getMockBuilder(FolderServiceV2::class)
+ ->disableOriginalConstructor()
+ ->getMock();
+ $this->feedService = $this->getMockBuilder(FeedServiceV2::class)
+ ->disableOriginalConstructor()
+ ->getMock();
+ $this->itemService = $this->getMockBuilder(ItemServiceV2::class)
+ ->disableOriginalConstructor()
+ ->getMock();
+ $this->updater = new UpdaterService(
+ $this->folderService,
+ $this->feedService,
+ $this->itemService
+ );
+ }
+
+ public function testBeforeUpdate()
+ {
+ $this->folderService->expects($this->once())
+ ->method('purgeDeleted');
+ $this->feedService->expects($this->once())
+ ->method('purgeDeleted');
+ $this->updater->beforeUpdate();
+ }
+
+
+ public function testAfterUpdate()
+ {
+ $this->itemService->expects($this->once())
+ ->method('purgeOverThreshold');
+ $this->updater->afterUpdate();
+ }
+
+ public function testUpdate()
+ {
+ $this->feedService->expects($this->once())
+ ->method('fetchAll');
+ $this->updater->update();
+ }
+} \ No newline at end of file