summaryrefslogtreecommitdiffstats
path: root/tests/unit/service
diff options
context:
space:
mode:
authorBernhard Posselt <dev@bernhard-posselt.com>2016-07-23 21:24:54 +0200
committerBernhard Posselt <dev@bernhard-posselt.com>2016-07-23 21:24:54 +0200
commit004fcbbcc7609ca83807f2e38967ef54f469bf72 (patch)
tree49eb99b4ea92b2045793fc567f719b31ec7f9042 /tests/unit/service
parent60abc0ed4438c9b6fda245b0dc33cb483bc2aeaf (diff)
Move to new directory structure
Diffstat (limited to 'tests/unit/service')
-rw-r--r--tests/unit/service/FeedServiceTest.php1060
-rw-r--r--tests/unit/service/FolderServiceTest.php282
-rw-r--r--tests/unit/service/ItemServiceTest.php443
-rw-r--r--tests/unit/service/ServiceTest.php98
-rw-r--r--tests/unit/service/StatusFlagTest.php57
-rw-r--r--tests/unit/service/StatusServiceTest.php89
6 files changed, 0 insertions, 2029 deletions
diff --git a/tests/unit/service/FeedServiceTest.php b/tests/unit/service/FeedServiceTest.php
deleted file mode 100644
index ef16b9e78..000000000
--- a/tests/unit/service/FeedServiceTest.php
+++ /dev/null
@@ -1,1060 +0,0 @@
-<?php
-/**
- * ownCloud - 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 Alessandro Cosentino 2012
- * @copyright Bernhard Posselt 2012, 2014
- */
-
-
-namespace OCA\News\Service;
-
-use OCP\AppFramework\Db\DoesNotExistException;
-
-use OCA\News\Db\Feed;
-use OCA\News\Db\Item;
-use OCA\News\Fetcher\Fetcher;
-use OCA\News\Fetcher\FetcherException;
-
-
-class FeedServiceTest extends \PHPUnit_Framework_TestCase {
-
- private $feedMapper;
- private $feedService;
- private $user;
- private $response;
- private $fetcher;
- private $itemMapper;
- private $threshold;
- private $time;
- private $importParser;
- private $autoPurgeMinimumInterval;
- private $purifier;
- private $l10n;
- private $logger;
- private $loggerParams;
-
- protected function setUp(){
- $this->logger = $this->getMockBuilder(
- '\OCP\ILogger')
- ->disableOriginalConstructor()
- ->getMock();
- $this->loggerParams = ['hi'];
- $this->time = 222;
- $this->autoPurgeMinimumInterval = 10;
- $timeFactory = $this->getMockBuilder('\OCA\News\Utility\Time')
- ->disableOriginalConstructor()
- ->getMock();
- $timeFactory->expects($this->any())
- ->method('getTime')
- ->will($this->returnValue($this->time));
- $this->l10n = $this->getMockBuilder('\OCP\IL10N')
- ->disableOriginalConstructor()
- ->getMock();
- $this->feedMapper = $this
- ->getMockBuilder('\OCA\News\Db\FeedMapper')
- ->disableOriginalConstructor()
- ->getMock();
- $this->fetcher = $this
- ->getMockBuilder('\OCA\News\Fetcher\Fetcher')
- ->disableOriginalConstructor()
- ->getMock();
- $this->itemMapper = $this
- ->getMockBuilder('\OCA\News\Db\ItemMapper')
- ->disableOriginalConstructor()
- ->getMock();
- $this->purifier = $this
- ->getMockBuilder('\HTMLPurifier')
- ->disableOriginalConstructor()
- ->getMock();
- $config = $this->getMockBuilder(
- '\OCA\News\Config\Config')
- ->disableOriginalConstructor()
- ->getMock();
- $config->expects($this->any())
- ->method('getAutoPurgeMinimumInterval')
- ->will($this->returnValue($this->autoPurgeMinimumInterval));
-
- $this->feedService = new FeedService($this->feedMapper,
- $this->fetcher, $this->itemMapper, $this->logger, $this->l10n,
- $timeFactory, $config, $this->purifier, $this->loggerParams);
- $this->user = 'jack';
- }
-
-
- public function testFindAll(){
- $this->feedMapper->expects($this->once())
- ->method('findAllFromUser')
- ->with($this->equalTo($this->user))
- ->will($this->returnValue($this->response));
-
- $result = $this->feedService->findAll($this->user);
- $this->assertEquals($this->response, $result);
- }
-
-
- public function testCreateDoesNotFindFeed(){
- $ex = new FetcherException('hi');
- $url = 'test';
- $this->fetcher->expects($this->once())
- ->method('fetch')
- ->with($this->equalTo($url))
- ->will($this->throwException($ex));
- $this->setExpectedException(
- '\OCA\News\Service\ServiceNotFoundException'
- );
- $this->feedService->create($url, 1, $this->user);
- }
-
- public function testCreate(){
- $url = 'http://test';
- $folderId = 10;
- $createdFeed = new Feed();
- $ex = new DoesNotExistException('yo');
- $createdFeed->setUrl($url);
- $createdFeed->setUrlHash('hsssi');
- $createdFeed->setLink($url);
- $createdFeed->setTitle('hehoy');
- $createdFeed->setBasicAuthUser('user');
- $createdFeed->setBasicAuthPassword('pass');
- $item1 = new Item();
- $item1->setGuidHash('hi');
- $item2 = new Item();
- $item2->setGuidHash('yo');
- $return = [
- $createdFeed,
- [$item1, $item2]
- ];
-
- $this->feedMapper->expects($this->once())
- ->method('findByUrlHash')
- ->with(
- $this->equalTo($createdFeed->getUrlHash()),
- $this->equalTo($this->user)
- )
- ->will($this->throwException($ex));
- $this->fetcher->expects($this->once())
- ->method('fetch')
- ->with($this->equalTo($url))
- ->will($this->returnValue($return));
- $this->feedMapper->expects($this->once())
- ->method('insert')
- ->with($this->equalTo($createdFeed))
- ->will($this->returnValue($createdFeed));
- $this->itemMapper->expects($this->at(0))
- ->method('findByGuidHash')
- ->with(
- $this->equalTo($item2->getGuidHash()),
- $this->equalTo($item2->getFeedId()),
- $this->equalTo($this->user))
- ->will($this->throwException($ex));
- $this->purifier->expects($this->at(0))
- ->method('purify')
- ->with($this->equalTo($return[1][1]->getBody()))
- ->will($this->returnValue($return[1][1]->getBody()));
- $this->itemMapper->expects($this->at(1))
- ->method('insert')
- ->with($this->equalTo($return[1][1]));
- $this->itemMapper->expects($this->at(2))
- ->method('findByGuidHash')
- ->with(
- $this->equalTo($item1->getGuidHash()),
- $this->equalTo($item1->getFeedId()),
- $this->equalTo($this->user))
- ->will($this->throwException($ex));
- $this->purifier->expects($this->at(1))
- ->method('purify')
- ->with($this->equalTo($return[1][0]->getBody()))
- ->will($this->returnValue($return[1][0]->getBody()));
- $this->itemMapper->expects($this->at(3))
- ->method('insert')
- ->with($this->equalTo($return[1][0]));
-
- $feed = $this->feedService->create($url, $folderId, $this->user, null,
- 'user', 'pass');
-
- $this->assertEquals($feed->getFolderId(), $folderId);
- $this->assertEquals($feed->getUrl(), $url);
- $this->assertEquals($feed->getArticlesPerUpdate(), 2);
- $this->assertEquals($feed->getBasicAuthUser(), 'user');
- $this->assertEquals($feed->getBasicAuthPassword(), 'pass');
- }
-
-
- public function testCreateItemGuidExistsAlready(){
- $url = 'http://test';
- $folderId = 10;
- $ex = new DoesNotExistException('yo');
- $createdFeed = new Feed();
- $createdFeed->setUrl($url);
- $createdFeed->setUrlHash($url);
- $createdFeed->setLink($url);
- $item1 = new Item();
- $item1->setGuidHash('hi');
- $item2 = new Item();
- $item2->setGuidHash('yo');
- $return = [
- $createdFeed,
- [$item1, $item2]
- ];
-
- $this->feedMapper->expects($this->once())
- ->method('findByUrlHash')
- ->with($this->equalTo($createdFeed->getUrlHash()),
- $this->equalTo($this->user))
- ->will($this->throwException($ex));
- $this->fetcher->expects($this->once())
- ->method('fetch')
- ->with($this->equalTo($url))
- ->will($this->returnValue($return));
- $this->feedMapper->expects($this->once())
- ->method('insert')
- ->with($this->equalTo($createdFeed))
- ->will($this->returnValue($createdFeed));
- $this->itemMapper->expects($this->at(0))
- ->method('findByGuidHash')
- ->with(
- $this->equalTo($item2->getGuidHash()),
- $this->equalTo($item2->getFeedId()),
- $this->equalTo($this->user))
- ->will($this->throwException($ex));
- $this->purifier->expects($this->at(0))
- ->method('purify')
- ->with($this->equalTo($return[1][1]->getBody()))
- ->will($this->returnValue($return[1][1]->getBody()));
- $this->itemMapper->expects($this->at(1))
- ->method('insert')
- ->with($this->equalTo($return[1][1]));
- $this->itemMapper->expects($this->at(2))
- ->method('findByGuidHash')
- ->with(
- $this->equalTo($item1->getGuidHash()),
- $this->equalTo($item1->getFeedId()),
- $this->equalTo($this->user));
-
- $feed = $this->feedService->create($url, $folderId, $this->user);
-
- $this->assertEquals($feed->getFolderId(), $folderId);
- $this->assertEquals($feed->getUrl(), $url);
- $this->assertEquals(1, $feed->getUnreadCount());
- }
-
-
- public function testUpdateCreatesNewEntry(){
- $feed = new Feed();
- $feed->setId(3);
- $feed->setArticlesPerUpdate(1);
- $feed->setLink('http://test');
- $feed->setUrl('http://test');
- $feed->setUrlHash('yo');
- $feed->setHttpLastModified(3);
- $feed->setHttpEtag(4);
-
- $item = new Item();
- $item->setGuidHash(md5('hi'));
- $item->setFeedId(3);
- $items = [$item];
-
- $ex = new DoesNotExistException('hi');
-
- $fetchReturn = [$feed, $items];
-
- $this->feedMapper->expects($this->at(0))
- ->method('find')
- ->with($this->equalTo($feed->getId()),
- $this->equalTo($this->user))
- ->will($this->returnValue($feed));
- $this->fetcher->expects($this->once())
- ->method('fetch')
- ->with(
- $this->equalTo('http://test'),
- $this->equalTo(false),
- $this->equalTo(3),
- $this->equalTo(4)
- )
- ->will($this->returnValue($fetchReturn));
- $this->feedMapper->expects($this->at(1))
- ->method('update')
- ->with($this->equalTo($feed));
- $this->itemMapper->expects($this->once())
- ->method('findByGuidHash')
- ->with($this->equalTo($items[0]->getGuidHash()),
- $this->equalTo($items[0]->getFeedId()),
- $this->equalTo($this->user))
- ->will($this->throwException($ex));
- $this->purifier->expects($this->at(0))
- ->method('purify')
- ->with($this->equalTo($items[0]->getBody()))
- ->will($this->returnValue($items[0]->getBody()));
- $this->itemMapper->expects($this->once())
- ->method('insert')
- ->with($this->equalTo($items[0]));
-
- $this->feedMapper->expects($this->at(2))
- ->method('find')
- ->with($feed->getId(), $this->user)
- ->will($this->returnValue($feed));
-
-
- $return = $this->feedService->update($feed->getId(), $this->user);
-
- $this->assertEquals($return, $feed);
- }
-
- public function testForceUpdateUpdatesEntry(){
- $feed = new Feed();
- $feed->setId(3);
- $feed->setArticlesPerUpdate(1);
- $feed->setLink('http://test');
- $feed->setUrl('http://test');
- $feed->setUrlHash('yo');
- $feed->setHttpLastModified(3);
- $feed->setHttpEtag(4);
-
- $item = new Item();
- $item->setGuidHash(md5('hi'));
- $item->setFeedId(3);
- $items = [$item];
-
- $ex = new DoesNotExistException('hi');
-
- $fetchReturn = [$feed, $items];
-
- $this->feedMapper->expects($this->at(0))
- ->method('find')
- ->with($this->equalTo($feed->getId()),
- $this->equalTo($this->user))
- ->will($this->returnValue($feed));
- $this->fetcher->expects($this->once())
- ->method('fetch')
- ->with(
- $this->equalTo('http://test'),
- $this->equalTo(false),
- $this->equalTo(3),
- $this->equalTo(4)
- )
- ->will($this->returnValue($fetchReturn));
- $this->feedMapper->expects($this->at(1))
- ->method('update')
- ->with($this->equalTo($feed));
- $this->itemMapper->expects($this->once())
- ->method('findByGuidHash')
- ->with($this->equalTo($items[0]->getGuidHash()),
- $this->equalTo($items[0]->getFeedId()),
- $this->equalTo($this->user))
- ->will($this->returnValue($items[0]));
- $this->purifier->expects($this->at(0))
- ->method('purify')
- ->with($this->equalTo($items[0]->getBody()))
- ->will($this->returnValue($items[0]->getBody()));
- $this->itemMapper->expects($this->once())
- ->method('update')
- ->with($this->equalTo($items[0]));
-
- $this->feedMapper->expects($this->at(2))
- ->method('find')
- ->with($feed->getId(), $this->user)
- ->will($this->returnValue($feed));
-
-
- $return = $this->feedService->update($feed->getId(), $this->user, true);
-
- $this->assertEquals($return, $feed);
- }
-
- private function createUpdateFeed() {
- $feed = new Feed();
- $feed->setId(3);
- $feed->setArticlesPerUpdate(1);
- $feed->setLink('http://test');
- $feed->setUrl('http://test');
- $feed->setUrlHash('yo');
- $feed->setHttpLastModified(3);
- $feed->setHttpEtag(4);
- return $feed;
- }
-
- private function createUpdateItem() {
- $item = new Item();
- $item->setGuidHash(md5('hi'));
- $item->setFeedId(3);
- $item->setPubDate(2);
- $item->setTitle('hey');
- $item->setAuthor('aut');
- $item->setBody('new');
- $item->setRead();
- return $item;
- }
-
- private function createUpdateItem2() {
- $item = new Item();
- $item->setGuidHash(md5('hi'));
- $item->setFeedId(3);
- $item->setPubDate(1);
- $item->setTitle('ho');
- $item->setAuthor('auto');
- $item->setBody('old');
- $item->setRead();
- return $item;
- }
-
- public function testUpdateUpdatesWhenPubdateIsNewer() {
- $feed = $this->createUpdateFeed();
- $item = $this->createUpdateItem();
- $item2 = $this->createUpdateItem2();
-
- $items = [$item];
-
- $fetchReturn = [$feed, $items];
-
- $this->feedMapper->expects($this->at(0))
- ->method('find')
- ->will($this->returnValue($feed));
- $this->fetcher->expects($this->once())
- ->method('fetch')
- ->will($this->returnValue($fetchReturn));
- $this->feedMapper->expects($this->at(1))
- ->method('update');
- $this->itemMapper->expects($this->once())
- ->method('findByGuidHash')
- ->will($this->returnValue($item2));
- $this->purifier->expects($this->at(0))
- ->method('purify')
- ->will($this->returnValue($items[0]->getBody()));
- $this->itemMapper->expects($this->once())
- ->method('update')
- ->with($this->equalTo($item2));
- $this->feedMapper->expects($this->at(2))
- ->method('find')
- ->will($this->returnValue($feed));
-
-
- $return = $this->feedService->update($feed->getId(), $this->user);
-
- $this->assertEquals($return, $feed);
- }
-
-
- public function testUpdateSetsUnreadIfModeIsOne() {
- $feed = $this->createUpdateFeed();
- $feed->setUpdateMode(1);
- $item = $this->createUpdateItem();
- $item2 = $this->createUpdateItem2();
- $item3 = $this->createUpdateItem();
- $item3->setUnread();
-
- $items = [$item];
-
- $fetchReturn = [$feed, $items];
-
- $this->feedMapper->expects($this->at(0))
- ->method('find')
- ->will($this->returnValue($feed));
- $this->fetcher->expects($this->once())
- ->method('fetch')
- ->will($this->returnValue($fetchReturn));
- $this->feedMapper->expects($this->at(1))
- ->method('update');
- $this->itemMapper->expects($this->once())
- ->method('findByGuidHash')
- ->will($this->returnValue($item2));
- $this->purifier->expects($this->at(0))
- ->method('purify')
- ->will($this->returnValue($items[0]->getBody()));
- $this->itemMapper->expects($this->once())
- ->method('update')
- ->with($this->equalTo($item3));
- $this->feedMapper->expects($this->at(2))
- ->method('find')
- ->will($this->returnValue($feed));
-
- $return = $this->feedService->update($feed->getId(), $this->user);
-
- $this->assertEquals($return, $feed);
-
- }
-
- public function testUpdateUpdatesArticlesPerFeedCount() {
- $feed = new Feed();
- $feed->setId(3);
- $feed->setUrlHash('yo');
-
- $existingFeed = new Feed();
- $feed->setArticlesPerUpdate(2);
-
- $item = new Item();
- $item->setGuidHash(md5('hi'));
- $item->setFeedId(3);
- $items = [$item];
-
- $this->feedMapper->expects($this->any())
- ->method('find')
- ->will($this->returnValue($existingFeed));
-
- $this->fetcher->expects($this->once())
- ->method('fetch')
- ->will($this->returnValue([$feed, $items]));
-
- $this->feedMapper->expects($this->once())
- ->method('update')
- ->with($this->equalTo($existingFeed));
-
- $this->itemMapper->expects($this->any())
- ->method('findByGuidHash')
- ->will($this->returnValue($item));
-
- $this->feedService->update($feed->getId(), $this->user);
- }
-
- public function testUpdateFails(){
- $feed = new Feed();
- $feed->setId(3);
- $feed->setUpdateErrorCount(0);
- $feed->setLastUpdateError('');
-
- $exptectedFeed = new Feed();
- $exptectedFeed->setId(3);
- $exptectedFeed->setUpdateErrorCount(1);
- $exptectedFeed->setLastUpdateError('hi');
-
- $ex = new FetcherException('hi');
-
- $this->feedMapper->expects($this->at(0))
- ->method('find')
- ->with($this->equalTo($feed->getId()),
- $this->equalTo($this->user))
- ->will($this->returnValue($feed));
- $this->fetcher->expects($this->once())
- ->method('fetch')
- ->will($this->throwException($ex));
- $this->logger->expects($this->any())
- ->method('debug');
-
- $this->feedMapper->expects($this->at(1))
- ->method('update')
- ->with($exptectedFeed)
- ->will($this->returnValue($exptectedFeed));
-
- $this->feedMapper->expects($this->at(2))
- ->method('find')
- ->with($feed->getId(), $this->user)
- ->will($this->returnValue($exptectedFeed));
-
- $return = $this->feedService->update($feed->getId(), $this->user);
-
- $this->assertEquals($return, $exptectedFeed);
- }
-
-
- public function testUpdateDoesNotFindEntry() {
- $feed = new Feed();
- $feed->setId(3);
-
- $ex = new DoesNotExistException('');
-
- $this->feedMapper->expects($this->at(0))
- ->method('find')
- ->with($this->equalTo($feed->getId()),
- $this->equalTo($this->user))
- ->will($this->throwException($ex));
-
- $this->setExpectedException(
- '\OCA\News\Service\ServiceNotFoundException'
- );
- $this->feedService->update($feed->getId(), $this->user);
- }
-
-
- public function testUpdatePassesFullText() {
- $feed = new Feed();
- $feed->setId(3);
- $feed->setUrl('https://goo.com');
- $feed->setHttpEtag('abc');
- $feed->setHttpLastModified(123);
- $feed->setFullTextEnabled(true);
-
- $ex = new DoesNotExistException('');
-
- $this->feedMapper->expects($this->at(0))
- ->method('find')
- ->with($this->equalTo($feed->getId()),
- $this->equalTo($this->user))
- ->will($this->returnValue($feed));
-
- $this->fetcher->expects($this->once())
- ->method('fetch')
- ->with($this->equalTo($feed->getUrl()),
- $this->equalTo(false),
- $this->equalTo($feed->getHttpLastModified()),
- $this->equalTo($feed->getHttpEtag()),
- $this->equalTo($feed->getFullTextEnabled()))
- ->will($this->throwException($ex));
-
- $this->setExpectedException(
- 'OCP\AppFramework\Db\DoesNotExistException'
- );
- $this->feedService->update($feed->getId(), $this->user);
- }
-
-
- public function testUpdateDoesNotFindUpdatedEntry() {
- $feed = new Feed();
- $feed->setId(3);
- $feed->setArticlesPerUpdate(1);
-
- $item = new Item();
- $item->setGuidHash(md5('hi'));
- $item->setPubDate(3333);
- $item->setId(4);
- $items = [$item];
-
- $item2 = new Item();
- $item2->setPubDate(111);
-
- $fetchReturn = [$feed, $items];
- $ex = new DoesNotExistException('');
-
- $this->feedMapper->expects($this->at(0))
- ->method('find')
- ->with($this->equalTo($feed->getId()),
- $this->equalTo($this->user))
- ->will($this->returnValue($feed));
- $this->feedMapper->expects($this->at(1))
- ->method('update')
- ->with($this->equalTo($feed));
- $this->fetcher->expects($this->once())
- ->method('fetch')
- ->will($this->returnValue($fetchReturn));
- $this->itemMapper->expects($this->once())
- ->method('findByGuidHash')
- ->with($this->equalTo($item->getGuidHash()),
- $this->equalTo($feed->getId()),
- $this->equalTo($this->user))
- ->will($this->returnValue($item2));;
-
- $this->feedMapper->expects($this->at(2))
- ->method('find')
- ->with($this->equalTo($feed->getId()),
- $this->equalTo($this->user))
- ->will($this->throwException($ex));
-
- $this->setExpectedException(
- '\OCA\News\Service\ServiceNotFoundException'
- );
- $this->feedService->update($feed->getId(), $this->user);
- }
-
-
- public function testUpdateDoesntUpdateIfFeedIsPrevented() {
- $feedId = 3;
- $feed = new Feed();
- $feed->setFolderId(16);
- $feed->setId($feedId);
- $feed->setPreventUpdate(true);
-
- $this->feedMapper->expects($this->once())
- ->method('find')
- ->with($this->equalTo($feedId),
- $this->equalTo($this->user))
- ->will($this->returnValue($feed));
- $this->fetcher->expects($this->never())
- ->method('fetch');
-
- $this->feedService->update($feedId, $this->user);
- }
-
-
- public function testUpdateDoesntUpdateIfNoFeed() {
- $feedId = 3;
- $feed = new Feed();
- $feed->setFolderId(16);
- $feed->setId($feedId);
-
- $this->feedMapper->expects($this->once())
- ->method('find')
- ->with($this->equalTo($feedId),
- $this->equalTo($this->user))
- ->will($this->returnValue($feed));
- $this->fetcher->expects($this->once())
- ->method('fetch')
- ->will($this->returnValue([null, null]));
-
- $return = $this->feedService->update($feedId, $this->user);
- $this->assertEquals($feed, $return);
- }
-
-
- public function testMove(){
- $feedId = 3;
- $folderId = 4;
- $feed = new Feed();
- $feed->setFolderId(16);
- $feed->setId($feedId);
-
- $this->feedMapper->expects($this->once())
- ->method('find')
- ->with($this->equalTo($feedId), $this->equalTo($this->user))
- ->will($this->returnValue($feed));
-
- $this->feedMapper->expects($this->once())
- ->method('update')
- ->with($this->equalTo($feed));
-
- $this->feedService->patch($feedId, $this->user, ['folderId' => $folderId]);
-
- $this->assertEquals($folderId, $feed->getFolderId());
- }
-
-
- public function testRenameFeed(){
- $feedId = 3;
- $feedTitle = "New Feed Title";
- $feed = new Feed();
- $feed->setTitle("Feed Title");
- $feed->setId($feedId);
-
- $this->feedMapper->expects($this->once())
- ->method('find')
- ->with($this->equalTo($feedId), $this->equalTo($this->user))
- ->will($this->returnValue($feed));
-
- $this->feedMapper->expects($this->once())
- ->method('update')
- ->with($this->equalTo($feed));
-
- $this->feedService->patch($feedId, $this->user, ['title' => $feedTitle]);
-
- $this->assertEquals($feedTitle, $feed->getTitle());
- }
-
-
- public function testImportArticles(){
- $url = 'http://owncloud/nofeed';
-
- $feed = new Feed();
- $feed->setId(3);
- $feed->setUserId($this->user);
- $feed->setUrl($url);
- $feed->setLink($url);
- $feed->setTitle('Articles without feed');
- $feed->setAdded($this->time);
- $feed->setFolderId(0);
- $feed->setPreventUpdate(true);
-
- $feeds = [$feed];
-
- $item = new Item();
- $item->setFeedId(3);
- $item->setAuthor('john');
- $item->setGuid('s');
- $item->setGuidHash('s');
- $item->setTitle('hey');
- $item->setPubDate(333);
- $item->setBody('come over');
- $item->setEnclosureMime('mime');
- $item->setEnclosureLink('lin');
- $item->setUnread();
- $item->setUnstarred();
- $item->generateSearchIndex();
-
- $json = $item->toExport(['feed3' => $feed]);
-
- $items = [$json];
-
- $this->feedMapper->expects($this->once())
- ->method('findAllFromUser')
- ->with($this->equalTo($this->user))
- ->will($this->returnValue($feeds));
-
- $this->itemMapper->expects($this->once())
- ->method('findByGuidHash')
- ->will($this->throwException(new DoesNotExistException('yo')));
- $this->itemMapper->expects($this->once())
- ->method('insert')
- ->with($this->equalTo($item));
-
- $this->purifier->expects($this->once())
- ->method('purify')
- ->with($this->equalTo($item->getBody()))
- ->will($this->returnValue($item->getBody()));
-
- $result = $this->feedService->importArticles($items, $this->user);
-
- $this->assertEquals(null, $result);
- }
-
-
- public function testImportArticlesCreatesOwnFeedWhenNotFound(){
- $url = 'http://owncloud/args';
-
- $feed = new Feed();
- $feed->setId(3);
- $feed->setUserId($this->user);
- $feed->setUrl($url);
- $feed->setLink($url);
- $feed->setTitle('Articles without feed');
- $feed->setAdded($this->time);
- $feed->setFolderId(0);
- $feed->setPreventUpdate(true);
-
- $feeds = [$feed];
-
- $item = new Item();
- $item->setFeedId(3);
- $item->setAuthor('john');
- $item->setGuid('s');
- $item->setGuidHash('s');
- $item->setTitle('hey');
- $item->setPubDate(333);
- $item->setBody('come over');
- $item->setEnclosureMime('mime');
- $item->setEnclosureLink('lin');
- $item->setUnread();
- $item->setUnstarred();
- $item->generateSearchIndex();
-
- $json = $item->toExport(['feed3' => $feed]);
- $json2 = $json;
- // believe it or not this copies stuff :D
- $json2['feedLink'] = 'http://test.com';
-
- $items = [$json, $json2];
-
- $insertFeed = new Feed();
- $insertFeed->setLink('http://owncloud/nofeed');
- $insertFeed->setUrl('http://owncloud/nofeed');
- $insertFeed->setUserId($this->user);
- $insertFeed->setTitle('Articles without feed');
- $insertFeed->setAdded($this->time);
- $insertFeed->setPreventUpdate(true);
- $insertFeed->setFolderId(0);
-
- $this->l10n->expects($this->once())
- ->method('t')
- ->will($this->returnValue('Articles without feed'));
- $this->feedMapper->expects($this->once())
- ->method('findAllFromUser')
- ->with($this->equalTo($this->user))
- ->will($this->returnValue($feeds));
- $this->feedMapper->expects($this->once())
- ->method('insert')
- ->with($this->equalTo($insertFeed))
- ->will($this->returnValue($insertFeed));
-
-
- $this->itemMapper->expects($this->at(0))
- ->method('findByGuidHash')
- ->will($this->throwException(new DoesNotExistException('yo')));
- $this->purifi