summaryrefslogtreecommitdiffstats
path: root/tests/db/ItemMapperTest.php
diff options
context:
space:
mode:
Diffstat (limited to 'tests/db/ItemMapperTest.php')
-rw-r--r--tests/db/ItemMapperTest.php47
1 files changed, 35 insertions, 12 deletions
diff --git a/tests/db/ItemMapperTest.php b/tests/db/ItemMapperTest.php
index 675af7ba2..b3be320e7 100644
--- a/tests/db/ItemMapperTest.php
+++ b/tests/db/ItemMapperTest.php
@@ -28,7 +28,7 @@ namespace OCA\News\Db;
require_once(__DIR__ . "/../classloader.php");
-class Test extends \OCA\AppFramework\Utility\MapperTestUtility {
+class ItemMapperTest extends \OCA\AppFramework\Utility\MapperTestUtility {
private $itemMapper;
private $items;
@@ -74,10 +74,12 @@ class Test extends \OCA\AppFramework\Utility\MapperTestUtility {
$rows = array(
array('id' => $this->items[0]->getId()),
);
- $sql = 'SELECT * FROM `*PREFIX*news_items` ' .
- 'WHERE user_id = ? ' .
- 'AND id = ?';
-
+ $sql = 'SELECT `*dbprefix*news_items`.* FROM `*dbprefix*news_items` ' .
+ 'JOIN `*dbprefix*news_feeds` ' .
+ 'ON `*dbprefix*news_feeds`.`id` = `*dbprefix*news_items`.`feed_id` ' .
+ 'WHERE `*dbprefix*news_items`.`id` = ? ' .
+ 'AND `*dbprefix*news_feeds`.`user_id` = ? ';
+
$this->setMapperResult($sql, array($id, $userId), $rows);
$result = $this->itemMapper->find($id, $userId);
@@ -88,10 +90,12 @@ class Test extends \OCA\AppFramework\Utility\MapperTestUtility {
public function testFindNotFound(){
$userId = 'john';
$id = 3;
- $sql = 'SELECT * FROM `*PREFIX*news_items` ' .
- 'WHERE user_id = ? ' .
- 'AND id = ?';
-
+ $sql = 'SELECT `*dbprefix*news_items`.* FROM `*dbprefix*news_items` ' .
+ 'JOIN `*dbprefix*news_feeds` ' .
+ 'ON `*dbprefix*news_feeds`.`id` = `*dbprefix*news_items`.`feed_id` ' .
+ 'WHERE `*dbprefix*news_items`.`id` = ? ' .
+ 'AND `*dbprefix*news_feeds`.`user_id` = ? ';
+
$this->setMapperResult($sql, array($id, $userId));
$this->setExpectedException('\OCA\AppFramework\Db\DoesNotExistException');
@@ -105,13 +109,32 @@ class Test extends \OCA\AppFramework\Utility\MapperTestUtility {
array('id' => $this->items[0]->getId()),
array('id' => $this->items[1]->getId())
);
- $sql = 'SELECT * FROM `*PREFIX*news_items` ' .
- 'WHERE user_id = ? ' .
- 'AND id = ?';
+ $sql = 'SELECT `*dbprefix*news_items`.* FROM `*dbprefix*news_items` ' .
+ 'JOIN `*dbprefix*news_feeds` ' .
+ 'ON `*dbprefix*news_feeds`.`id` = `*dbprefix*news_items`.`feed_id` ' .
+ 'WHERE `*dbprefix*news_items`.`id` = ? ' .
+ 'AND `*dbprefix*news_feeds`.`user_id` = ? ';
+
$this->setMapperResult($sql, array($id, $userId), $rows);
$this->setExpectedException('\OCA\AppFramework\Db\MultipleObjectsReturnedException');
$result = $this->itemMapper->find($id, $userId);
}
+
+ public function testFindAllFromFolder() {
+ $userId = 'john';
+ $folderId = 3;
+ $status = 2;
+ $sql = 'SELECT `*dbprefix*news_items`.* FROM `*dbprefix*news_items` ' .
+ 'JOIN `*dbprefix*news_feeds` ' .
+ 'ON `*dbprefix*news_feeds`.`id` = `*dbprefix*news_items`.`feed_id` ' .
+ 'WHERE `*dbprefix*news_feeds`.`user_id` = ? ' .
+ 'AND `*dbprefix*news_feeds`.`folder_id` = ? ' .
+ 'AND ((`*dbprefix*news_items`.`status` & ?) > 0)';
+
+ $this->setMapperResult($sql, array($userId, $folderId, $status));
+ $result = $this->findAllFromFolder($userId, $folderId, $status);
+
+ }
} \ No newline at end of file