diff options
author | Bernhard Posselt <nukeawhale@gmail.com> | 2013-05-02 12:53:17 +0200 |
---|---|---|
committer | Bernhard Posselt <nukeawhale@gmail.com> | 2013-05-02 12:53:17 +0200 |
commit | 2dfab0dbec8a1868c2287aee7f7a93a56d9a301c (patch) | |
tree | 7946f785be95c835472a4b9dc11af33158e37773 | |
parent | 0da3c160df7f2af1b7800e70a2eba8c04126f3d4 (diff) |
added toAPI methods for folder and feed
-rw-r--r-- | db/feed.php | 16 | ||||
-rw-r--r-- | db/folder.php | 9 | ||||
-rw-r--r-- | tests/unit/db/FeedTest.php | 57 | ||||
-rw-r--r-- | tests/unit/db/FolderTest.php | 45 |
4 files changed, 125 insertions, 2 deletions
diff --git a/db/feed.php b/db/feed.php index e2d3b87de..88879f8c4 100644 --- a/db/feed.php +++ b/db/feed.php @@ -28,7 +28,7 @@ namespace OCA\News\Db; use \OCA\AppFramework\Db\Entity; -class Feed extends Entity { +class Feed extends Entity implements IAPI { public $userId; public $urlHash; @@ -49,4 +49,18 @@ class Feed extends Entity { $this->addType('preventUpdate', 'bool'); } + + public function toAPI() { + return array( + 'id' => $this->getId(), + 'url' => $this->getUrl(), + 'title' => $this->getTitle(), + 'faviconLink' => $this->getFaviconLink(), + 'added' => $this->getAdded(), + 'folderId' => $this->getFolderId(), + 'unreadCount' => $this->getUnreadCount(), + 'link' => $this->getLink() + ); + } + }
\ No newline at end of file diff --git a/db/folder.php b/db/folder.php index adc4a8572..24fa80000 100644 --- a/db/folder.php +++ b/db/folder.php @@ -28,7 +28,7 @@ namespace OCA\News\Db; use \OCA\AppFramework\Db\Entity; -class Folder extends Entity { +class Folder extends Entity implements IAPI { public $parentId; public $name; @@ -40,4 +40,11 @@ class Folder extends Entity { $this->addType('opened', 'bool'); } + + public function toAPI() { + return array( + 'id' => $this->getId(), + 'name' => $this->getName() + ); + } }
\ No newline at end of file diff --git a/tests/unit/db/FeedTest.php b/tests/unit/db/FeedTest.php new file mode 100644 index 000000000..57b739bfb --- /dev/null +++ b/tests/unit/db/FeedTest.php @@ -0,0 +1,57 @@ +<?php + +/** +* ownCloud - News +* +* @author Alessandro Cosentino +* @author Bernhard Posselt +* @copyright 2012 Alessandro Cosentino cosenal@gmail.com +* @copyright 2012 Bernhard Posselt nukeawhale@gmail.com +* +* This library is free software; you can redistribute it and/or +* modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE +* License as published by the Free Software Foundation; either +* version 3 of the License, or any later version. +* +* This library is distributed in the hope that it will be useful, +* but WITHOUT ANY WARRANTY; without even the implied warranty of +* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +* GNU AFFERO GENERAL PUBLIC LICENSE for more details. +* +* You should have received a copy of the GNU Affero General Public +* License along with this library. If not, see <http://www.gnu.org/licenses/>. +* +*/ + +namespace OCA\News\Db; + +require_once(__DIR__ . "/../../classloader.php"); + + +class FeedTest extends \PHPUnit_Framework_TestCase { + + + public function testToAPI() { + $feed = new Feed(); + $feed->setId(3); + $feed->setUrl('url'); + $feed->setTitle('title'); + $feed->setFaviconLink('favicon'); + $feed->setAdded(123); + $feed->setFolderId(1); + $feed->setUnreadCount(321); + $feed->setLink('link'); + + $this->assertEquals(array( + 'id' => 3, + 'url' => 'url', + 'title' => 'title', + 'faviconLink' => 'favicon', + 'added' => 123, + 'folderId' => 1, + 'unreadCount' => 321, + 'link' => 'link' + ), $feed->toAPI()); + } + +}
\ No newline at end of file diff --git a/tests/unit/db/FolderTest.php b/tests/unit/db/FolderTest.php new file mode 100644 index 000000000..6b6139c9b --- /dev/null +++ b/tests/unit/db/FolderTest.php @@ -0,0 +1,45 @@ +<?php + +/** +* ownCloud - News +* +* @author Alessandro Cosentino +* @author Bernhard Posselt +* @copyright 2012 Alessandro Cosentino cosenal@gmail.com +* @copyright 2012 Bernhard Posselt nukeawhale@gmail.com +* +* This library is free software; you can redistribute it and/or +* modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE +* License as published by the Free Software Foundation; either +* version 3 of the License, or any later version. +* +* This library is distributed in the hope that it will be useful, +* but WITHOUT ANY WARRANTY; without even the implied warranty of +* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +* GNU AFFERO GENERAL PUBLIC LICENSE for more details. +* +* You should have received a copy of the GNU Affero General Public +* License along with this library. If not, see <http://www.gnu.org/licenses/>. +* +*/ + +namespace OCA\News\Db; + +require_once(__DIR__ . "/../../classloader.php"); + + +class FolderTest extends \PHPUnit_Framework_TestCase { + + + public function testToAPI() { + $folder = new Folder(); + $folder->setId(3); + $folder->setName('name'); + + $this->assertEquals(array( + 'id' => 3, + 'name' => 'name' + ), $folder->toAPI()); + } + +}
\ No newline at end of file |