summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBenjamin Brahmer <info@b-brahmer.de>2022-08-31 15:25:50 +0200
committerBenjamin Brahmer <info@b-brahmer.de>2022-08-31 16:14:18 +0200
commita7f69c4b63e9495bd0f15c66c3ea163f38012d7d (patch)
tree622938e78cd461c31060c935b757529f47118f19
parenta41abf808f02e337a59ad7acdeed02a9465c6590 (diff)
fix readAll
Signed-off-by: Benjamin Brahmer <info@b-brahmer.de>
-rw-r--r--lib/Db/ItemMapperV2.php7
-rw-r--r--tests/Unit/Db/ItemMapperTest.php8
2 files changed, 8 insertions, 7 deletions
diff --git a/lib/Db/ItemMapperV2.php b/lib/Db/ItemMapperV2.php
index 67b685625..096b42005 100644
--- a/lib/Db/ItemMapperV2.php
+++ b/lib/Db/ItemMapperV2.php
@@ -276,10 +276,10 @@ class ItemMapperV2 extends NewsMapperV2
->innerJoin('items', FeedMapperV2::TABLE_NAME, 'feeds', 'items.feed_id = feeds.id')
->andWhere('feeds.user_id = :userId')
->andWhere('items.id <= :maxItemId')
- ->andWhere('items.unread != :unread')
+ ->andWhere('items.unread = :unread')
->setParameter('userId', $userId)
->setParameter('maxItemId', $maxItemId)
- ->setParameter('unread', false, IQueryBuilder::PARAM_BOOL);
+ ->setParameter('unread', true, IQueryBuilder::PARAM_BOOL);
$idList = array_map(function ($value): int {
return intval($value['id']);
@@ -289,7 +289,8 @@ class ItemMapperV2 extends NewsMapperV2
$builder->update(self::TABLE_NAME)
->set('unread', $builder->createParameter('unread'))
->andWhere('id IN (:idList)')
- ->setParameter('idList', $idList, IQueryBuilder::PARAM_INT_ARRAY);
+ ->setParameter('idList', $idList, IQueryBuilder::PARAM_INT_ARRAY)
+ ->setParameter('unread', false, IQueryBuilder::PARAM_BOOL);
return $this->db->executeStatement(
$builder->getSQL(),
diff --git a/tests/Unit/Db/ItemMapperTest.php b/tests/Unit/Db/ItemMapperTest.php
index 93f02d4b8..3a4a026d6 100644
--- a/tests/Unit/Db/ItemMapperTest.php
+++ b/tests/Unit/Db/ItemMapperTest.php
@@ -499,12 +499,12 @@ class ItemMapperTest extends MapperTestUtility
$selectbuilder->expects($this->exactly(3))
->method('andWhere')
- ->withConsecutive(['feeds.user_id = :userId'], ['items.id <= :maxItemId'], ['items.unread != :unread'])
+ ->withConsecutive(['feeds.user_id = :userId'], ['items.id <= :maxItemId'], ['items.unread = :unread'])
->will($this->returnSelf());
$selectbuilder->expects($this->exactly(3))
->method('setParameter')
- ->withConsecutive(['userId', 'admin'], ['maxItemId', 4], ['unread', false])
+ ->withConsecutive(['userId', 'admin'], ['maxItemId', 4], ['unread', true])
->will($this->returnSelf());
$selectbuilder->expects($this->exactly(1))
@@ -547,9 +547,9 @@ class ItemMapperTest extends MapperTestUtility
->withConsecutive(['id IN (:idList)'])
->will($this->returnSelf());
- $this->builder->expects($this->exactly(1))
+ $this->builder->expects($this->exactly(2))
->method('setParameter')
- ->withConsecutive(['idList', [1, 2]])
+ ->withConsecutive(['idList', [1, 2]], ['unread', false])
->will($this->returnSelf());
$this->builder->expects($this->exactly(1))