summaryrefslogtreecommitdiffstats
path: root/tests/integration/db/ItemMapperTest.php
diff options
context:
space:
mode:
Diffstat (limited to 'tests/integration/db/ItemMapperTest.php')
-rw-r--r--tests/integration/db/ItemMapperTest.php151
1 files changed, 151 insertions, 0 deletions
diff --git a/tests/integration/db/ItemMapperTest.php b/tests/integration/db/ItemMapperTest.php
index b0b979f8f..20ded2ead 100644
--- a/tests/integration/db/ItemMapperTest.php
+++ b/tests/integration/db/ItemMapperTest.php
@@ -79,4 +79,155 @@ class ItemMapperTest extends NewsIntegrationTest {
}
+ public function testStarredCount () {
+ $count = $this->itemMapper->starredCount($this->userId);
+ $this->assertEquals(2, $count);
+ }
+
+
+ public function testReadAll () {
+ $this->itemMapper->readAll(PHP_INT_MAX, 10, $this->userId);
+
+ $status = StatusFlag::UNREAD;
+ $items = $this->itemMapper->findAll(
+ 30, 0, $status, false, $this->userId
+ );
+
+ $this->assertEquals(0, count($items));
+
+ $item = $this->items['a title1'];
+ $item = $this->itemMapper->find($item->getId(), $this->userId);
+
+ $this->assertEquals(10, $item->getLastModified());
+
+ $item = $this->items['a title3'];
+ $item = $this->itemMapper->find($item->getId(), $this->userId);
+
+ $this->assertEquals(10, $item->getLastModified());
+
+ $item = $this->items['a title9'];
+ $item = $this->itemMapper->find($item->getId(), $this->userId);
+
+ $this->assertEquals(10, $item->getLastModified());
+ }
+
+
+ public function testReadFolder () {
+ $folderId = $this->folders['first folder']->getId();
+ $this->itemMapper->readFolder(
+ $folderId, PHP_INT_MAX, 10, $this->userId
+ );
+
+ $status = StatusFlag::UNREAD;
+ $items = $this->itemMapper->findAll(
+ 30, 0, $status, false, $this->userId
+ );
+
+ $this->assertEquals(1, count($items));
+
+ $item = $this->items['a title1'];
+ $item = $this->itemMapper->find($item->getId(), $this->userId);
+
+ $this->assertEquals(10, $item->getLastModified());
+
+ $item = $this->items['a title3'];
+ $item = $this->itemMapper->find($item->getId(), $this->userId);
+
+ $this->assertEquals(10, $item->getLastModified());
+
+ $item = $this->items['a title9'];
+ $item = $this->itemMapper->find($item->getId(), $this->userId);
+
+ $this->assertTrue($item->isUnread());
+ }
+
+
+ public function testReadFeed () {
+ $feedId = $this->feeds['third feed']->getId();
+ $this->itemMapper->readFeed(
+ $feedId, PHP_INT_MAX, 10, $this->userId
+ );
+
+ $status = StatusFlag::UNREAD;
+ $items = $this->itemMapper->findAll(
+ 30, 0, $status, false, $this->userId
+ );
+
+ $this->assertEquals(2, count($items));
+
+ $item = $this->items['a title9'];
+ $item = $this->itemMapper->find($item->getId(), $this->userId);
+
+ $this->assertEquals(10, $item->getLastModified());
+
+ $item = $this->items['a title3'];
+ $item = $this->itemMapper->find($item->getId(), $this->userId);
+ $this->assertTrue($item->isUnread());
+
+
+ $item = $this->items['a title1'];
+ $item = $this->itemMapper->find($item->getId(), $this->userId);
+ $this->assertTrue($item->isUnread());
+ }
+
+
+ public function testDeleteUser () {
+ $this->itemMapper->deleteUser($this->userId);
+ $id = $this->itemMapper->getNewestItemId();
+
+ $this->assertEquals(0, $id);
+ }
+
+
+ public function testGetNewestItemId () {
+ $id = $this->itemMapper->getNewestItemId($this->userId);
+
+ $item = $this->items['no folder'];
+ $this->assertEquals($item->getId(), $id);
+ }
+
+
+ public function testFindByGuidHash () {
+ $item = $this->items['no folder'];
+
+ $fetchedItem = $this->itemMapper->findByGuidHash(
+ 'no folder', $item->getFeedId(), $this->userId
+ );
+
+ $this->assertEquals($item->getId(), $fetchedItem->getId());
+ }
+
+
+ public function testFindAllUnreadOrStarred () {
+ $items = $this->itemMapper->findAllUnreadOrStarred($this->userId);
+ $this->assertEquals(4, count($items));
+ }
+
+
+ /* TBD
+ public function testFindAllFolder () {
+
+ }
+
+
+ public function testFindAllFeed () {
+
+ }
+
+
+ public function testFindAllNew () {
+
+ }
+
+
+ public function testFindAllNewFolder () {
+
+ }
+
+
+ public function testFindAllNewFeed () {
+
+ }
+
+ */
} \ No newline at end of file