diff options
Diffstat (limited to 'tests/db/ItemMapperTest.php')
-rw-r--r-- | tests/db/ItemMapperTest.php | 47 |
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 |