summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDaniel Opitz <git@copynpaste.de>2018-08-30 00:20:16 +0200
committerDaniel Opitz <git@copynpaste.de>2018-09-28 23:24:10 +0200
commit2aabd8fd1f9bdee0060b685e883716287db393c5 (patch)
treee57d2fee6f2b12b51e0426854d17d68c0d11cab9
parent159986553bc2db967da2c5fe99949697a46489fe (diff)
fixed feed tests
-rw-r--r--lib/Service/FeedService.php6
-rw-r--r--lib/Utility/OPMLExporter.php10
-rw-r--r--tests/Unit/Db/FeedTest.php4
-rw-r--r--tests/Unit/Service/FeedServiceTest.php27
-rw-r--r--tests/Unit/Utility/OPMLExporterTest.php12
5 files changed, 50 insertions, 9 deletions
diff --git a/lib/Service/FeedService.php b/lib/Service/FeedService.php
index de6fad257..fe9058b8e 100644
--- a/lib/Service/FeedService.php
+++ b/lib/Service/FeedService.php
@@ -108,6 +108,10 @@ class FeedService extends Service
) {
// first try if the feed exists already
try {
+ /**
+ * @var Feed $feed
+ * @var Item[] $items
+ */
list($feed, $items) = $this->feedFetcher->fetch(
$feedUrl, true,
null, null, false, $basicAuthUser,
@@ -203,6 +207,7 @@ class FeedService extends Service
*/
public function update($feedId, $userId, $forceUpdate=false)
{
+ /** @var Feed $existingFeed */
$existingFeed = $this->find($feedId, $userId);
if($existingFeed->getPreventUpdate() === true) {
@@ -354,6 +359,7 @@ class FeedService extends Service
$feed->setAdded($this->timeFactory->getTime());
$feed->setFolderId(0);
$feed->setPreventUpdate(true);
+ /** @var Feed $feed */
$feed = $this->feedMapper->insert($feed);
$item->setFeedId($feed->getId());
diff --git a/lib/Utility/OPMLExporter.php b/lib/Utility/OPMLExporter.php
index 695eeac0b..19bb76ad7 100644
--- a/lib/Utility/OPMLExporter.php
+++ b/lib/Utility/OPMLExporter.php
@@ -13,6 +13,8 @@
namespace OCA\News\Utility;
+use OCA\News\Db\Feed;
+
/**
* Exports the OPML
*/
@@ -77,8 +79,12 @@ class OPMLExporter
return $document;
}
-
- protected function createFeedOutline($feed, $document)
+ /**
+ * @param Feed $feed
+ * @param \DOMDocument $document
+ * @return \DOMElement
+ */
+ protected function createFeedOutline($feed, $document)
{
$feedOutline = $document->createElement('outline');
$feedOutline->setAttribute('title', $feed->getTitle());
diff --git a/tests/Unit/Db/FeedTest.php b/tests/Unit/Db/FeedTest.php
index 5e4e2a5a5..6305302f1 100644
--- a/tests/Unit/Db/FeedTest.php
+++ b/tests/Unit/Db/FeedTest.php
@@ -104,9 +104,11 @@ class FeedTest extends \PHPUnit_Framework_TestCase
public function testSetXSSUrl()
{
+ $this->setExpectedException(\TypeError::class);
+
$feed = new Feed();
$feed->setUrl('javascript:alert()');
- $this->assertEquals('', $feed->getUrl());
+ $feed->getUrl();
}
diff --git a/tests/Unit/Service/FeedServiceTest.php b/tests/Unit/Service/FeedServiceTest.php
index d5c5e0bfa..d56d732a2 100644
--- a/tests/Unit/Service/FeedServiceTest.php
+++ b/tests/Unit/Service/FeedServiceTest.php
@@ -27,6 +27,7 @@ class FeedServiceTest extends \PHPUnit_Framework_TestCase
{
private $feedMapper;
+ /** @var FeedService */
private $feedService;
private $user;
private $response;
@@ -133,8 +134,10 @@ class FeedServiceTest extends \PHPUnit_Framework_TestCase
$createdFeed->setBasicAuthUser('user');
$createdFeed->setBasicAuthPassword('pass');
$item1 = new Item();
+ $item1->setFeedId(4);
$item1->setGuidHash('hi');
$item2 = new Item();
+ $item2->setFeedId(4);
$item2->setGuidHash('yo');
$return = [
$createdFeed,
@@ -155,7 +158,10 @@ class FeedServiceTest extends \PHPUnit_Framework_TestCase
$this->feedMapper->expects($this->once())
->method('insert')
->with($this->equalTo($createdFeed))
- ->will($this->returnValue($createdFeed));
+ ->will($this->returnCallback(function() use ($createdFeed) {
+ $createdFeed->setId(4);
+ return $createdFeed;
+ }));
$this->itemMapper->expects($this->at(0))
->method('findByGuidHash')
->with(
@@ -210,8 +216,10 @@ class FeedServiceTest extends \PHPUnit_Framework_TestCase
$createdFeed->setUrlHash($url);
$createdFeed->setLink($url);
$item1 = new Item();
+ $item1->setFeedId(5);
$item1->setGuidHash('hi');
$item2 = new Item();
+ $item2->setFeedId(5);
$item2->setGuidHash('yo');
$return = [
$createdFeed,
@@ -232,7 +240,10 @@ class FeedServiceTest extends \PHPUnit_Framework_TestCase
$this->feedMapper->expects($this->once())
->method('insert')
->with($this->equalTo($createdFeed))
- ->will($this->returnValue($createdFeed));
+ ->will($this->returnCallback(function() use ($createdFeed) {
+ $createdFeed->setId(5);
+ return $createdFeed;
+ }));
$this->itemMapper->expects($this->at(0))
->method('findByGuidHash')
->with(
@@ -519,9 +530,12 @@ class FeedServiceTest extends \PHPUnit_Framework_TestCase
{
$feed = new Feed();
$feed->setId(3);
+ $feed->setUrl('http://example.com');
$feed->setUrlHash('yo');
$existingFeed = new Feed();
+ $existingFeed->setId(3);
+ $existingFeed->setUrl('http://example.com');
$feed->setArticlesPerUpdate(2);
$item = new Item();
@@ -552,11 +566,13 @@ class FeedServiceTest extends \PHPUnit_Framework_TestCase
{
$feed = new Feed();
$feed->setId(3);
+ $feed->setUrl('http://example.com');
$feed->setUpdateErrorCount(0);
$feed->setLastUpdateError('');
$exptectedFeed = new Feed();
$exptectedFeed->setId(3);
+ $exptectedFeed->setUrl('http://example.com');
$exptectedFeed->setUpdateErrorCount(1);
$exptectedFeed->setLastUpdateError('hi');
@@ -655,6 +671,7 @@ class FeedServiceTest extends \PHPUnit_Framework_TestCase
$feed = new Feed();
$feed->setId(3);
$feed->setArticlesPerUpdate(1);
+ $feed->setUrl('http://example.com');
$item = new Item();
$item->setGuidHash(md5('hi'));
@@ -733,6 +750,7 @@ class FeedServiceTest extends \PHPUnit_Framework_TestCase
$feed = new Feed();
$feed->setFolderId(16);
$feed->setId($feedId);
+ $feed->setUrl('http://example.com');
$this->feedMapper->expects($this->once())
->method('find')
@@ -909,7 +927,10 @@ class FeedServiceTest extends \PHPUnit_Framework_TestCase
$this->feedMapper->expects($this->once())
->method('insert')
->with($this->equalTo($insertFeed))
- ->will($this->returnValue($insertFeed));
+ ->will($this->returnCallback(function() use ($insertFeed) {
+ $insertFeed->setId(3);
+ return $insertFeed;
+ }));
$this->itemMapper->expects($this->at(0))
diff --git a/tests/Unit/Utility/OPMLExporterTest.php b/tests/Unit/Utility/OPMLExporterTest.php
index 7f2c7dfdf..d62dcbf60 100644
--- a/tests/Unit/Utility/OPMLExporterTest.php
+++ b/tests/Unit/Utility/OPMLExporterTest.php
@@ -20,10 +20,16 @@ use OCA\News\Utility\OPMLExporter;
class OPMLExporterTest extends \PHPUnit_Framework_TestCase
{
-
+ /** @var OPMLExporter */
private $exporter;
+ /** @var Feed */
private $feed1;
+ /** @var Feed */
private $feed2;
+ /** @var Folder */
+ private $folder1;
+ /** @var Folder */
+ private $folder2;
protected function setUp()
{
@@ -37,11 +43,11 @@ class OPMLExporterTest extends \PHPUnit_Framework_TestCase
$this->folder2->setParentId(3);
$this->folder2->setName('a ergendwas');
$this->feed1 = new Feed();
- $this->feed1->setUrl('url 1');
+ $this->feed1->setUrl('http://url1');
$this->feed1->setTitle('tötel');
$this->feed1->setFolderId(0);
$this->feed2 = new Feed();
- $this->feed2->setUrl('url');
+ $this->feed2->setUrl('http://url');
$this->feed2->setTitle('ttel df');
$this->feed2->setLink('goooooogel');
$this->feed2->setFolderId(1);