Skip to content

Commit 5919093

Browse files
committed
Merge remote-tracking branch 'trigger/MAGETWO-95723' into BugFixPR
2 parents d6a8ff9 + 75ebeaf commit 5919093

File tree

2 files changed

+72
-5
lines changed
  • app/code/Magento/Review/Model/ResourceModel/Review/Product
  • dev/tests/integration/testsuite/Magento/Review/Model/ResourceModel/Review/Product

2 files changed

+72
-5
lines changed

app/code/Magento/Review/Model/ResourceModel/Review/Product/Collection.php

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -406,7 +406,6 @@ public function getResultingIds()
406406
$idsSelect->reset(Select::LIMIT_COUNT);
407407
$idsSelect->reset(Select::LIMIT_OFFSET);
408408
$idsSelect->reset(Select::COLUMNS);
409-
$idsSelect->reset(Select::ORDER);
410409
$idsSelect->columns('rt.review_id');
411410
return $this->getConnection()->fetchCol($idsSelect);
412411
}

dev/tests/integration/testsuite/Magento/Review/Model/ResourceModel/Review/Product/CollectionTest.php

Lines changed: 72 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,20 +3,88 @@
33
* Copyright © Magento, Inc. All rights reserved.
44
* See COPYING.txt for license details.
55
*/
6+
declare(strict_types=1);
7+
68
namespace Magento\Review\Model\ResourceModel\Review\Product;
79

10+
/**
11+
* Tests some functionality of the Product Review collection
12+
*/
813
class CollectionTest extends \PHPUnit\Framework\TestCase
914
{
1015
/**
16+
* @param string $status
17+
* @param int $expectedCount
18+
* @param string $sortAttribute
19+
* @param string $dir
20+
* @param callable $assertion
21+
* @dataProvider sortOrderAssertionsDataProvider
1122
* @magentoDataFixture Magento/Review/_files/different_reviews.php
1223
*/
13-
public function testGetResultingIds()
14-
{
24+
public function testGetResultingIds(
25+
?string $status,
26+
int $expectedCount,
27+
string $sortAttribute,
28+
string $dir,
29+
callable $assertion
30+
) {
31+
/**
32+
* @var $collection \Magento\Review\Model\ResourceModel\Review\Product\Collection
33+
*/
1534
$collection = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->create(
1635
\Magento\Review\Model\ResourceModel\Review\Product\Collection::class
1736
);
18-
$collection->addStatusFilter(\Magento\Review\Model\Review::STATUS_APPROVED);
37+
if ($status) {
38+
$collection->addStatusFilter($status);
39+
}
40+
$collection->setOrder($sortAttribute, $dir);
1941
$actual = $collection->getResultingIds();
20-
$this->assertCount(2, $actual);
42+
$this->assertCount($expectedCount, $actual);
43+
$assertion($actual);
44+
}
45+
46+
/**
47+
* @return array
48+
*/
49+
public function sortOrderAssertionsDataProvider() :array
50+
{
51+
return [
52+
[
53+
\Magento\Review\Model\Review::STATUS_APPROVED,
54+
2,
55+
'rt.review_id',
56+
'DESC',
57+
function (array $actual) :void {
58+
$this->assertLessThan($actual[0], $actual[1]);
59+
}
60+
],
61+
[
62+
\Magento\Review\Model\Review::STATUS_APPROVED,
63+
2,
64+
'rt.review_id',
65+
'ASC',
66+
function (array $actual) :void {
67+
$this->assertLessThan($actual[1], $actual[0]);
68+
}
69+
],
70+
[
71+
\Magento\Review\Model\Review::STATUS_APPROVED,
72+
2,
73+
'rt.created_at',
74+
'ASC',
75+
function (array $actual) :void {
76+
$this->assertLessThan($actual[1], $actual[0]);
77+
}
78+
],
79+
[
80+
null,
81+
3,
82+
'rt.review_id',
83+
'ASC',
84+
function (array $actual) :void {
85+
$this->assertLessThan($actual[1], $actual[0]);
86+
}
87+
]
88+
];
2189
}
2290
}

0 commit comments

Comments
 (0)