Skip to content

Commit 4527e32

Browse files
committed
Rename \Magento\Framework\Api\SearchCriteriaBuilder::addFilter() to addFilters()
Purpose == Make method name more descriptive and easier to understand. Background == Having a method called `addFilter()` which take an array of `Filter` instances caused many doubletakes and facepalms during the m2 dev training. It seems as if the method name originated from the old collection `addFieldToFilter` from collections in Magento 1, where the condition type was set as a key in the passed argument array (e.g. `addFieldToFilter('name', ['eq' => $filter])`). In fact, some integration tests even set such expectations on the searchCriteriaBuilder, for example *app/code/Magento/Sales/Test/Unit/Model/Service/CreditmemoServiceTest.php*. However, this must be a bug because the array keys in the argument array are ignored, and the code only happened to work because the repositories in question default to using the 'eq' operator when applying the filter groups to the collection if no condition type is set on the filter instance. Reasons for this PR == Make the method name more intuitive. Naming definitely could still be improved, but at least it no longer is that misleading. Maybe using `addFilterGroupWithFilters()` would be even more descriptive, but I chose the smaller change, since it probably is "good enough". Remove wrong examples of method usage from tests, so they don't serve as wrong documentation.
1 parent b67a5e0 commit 4527e32

File tree

69 files changed

+176
-151
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

69 files changed

+176
-151
lines changed

app/code/Magento/Backend/Model/Search/Customer.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -96,7 +96,7 @@ public function load()
9696
->setValue($this->getQuery() . '%')
9797
->create();
9898
}
99-
$this->searchCriteriaBuilder->addFilter($filters);
99+
$this->searchCriteriaBuilder->addFilters($filters);
100100
$searchCriteria = $this->searchCriteriaBuilder->create();
101101
$searchResults = $this->customerRepository->getList($searchCriteria);
102102

app/code/Magento/Catalog/Model/Category/AttributeRepository.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -73,7 +73,7 @@ public function getCustomAttributesMetadata($dataObjectClassName = null)
7373
$defaultAttributeSetId = $this->eavConfig
7474
->getEntityType(\Magento\Catalog\Api\Data\CategoryAttributeInterface::ENTITY_TYPE_CODE)
7575
->getDefaultAttributeSetId();
76-
$searchCriteria = $this->searchCriteriaBuilder->addFilter(
76+
$searchCriteria = $this->searchCriteriaBuilder->addFilters(
7777
[
7878
$this->filterBuilder
7979
->setField('attribute_set_id')

app/code/Magento/Catalog/Model/Product/Attribute/Repository.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -212,7 +212,7 @@ public function getCustomAttributesMetadata($dataObjectClassName = null)
212212
$defaultAttributeSetId = $this->eavConfig
213213
->getEntityType(\Magento\Catalog\Api\Data\ProductAttributeInterface::ENTITY_TYPE_CODE)
214214
->getDefaultAttributeSetId();
215-
$searchCriteria = $this->searchCriteriaBuilder->addFilter(
215+
$searchCriteria = $this->searchCriteriaBuilder->addFilters(
216216
[
217217
$this->filterBuilder
218218
->setField('attribute_set_id')

app/code/Magento/Catalog/Model/Product/Attribute/SetRepository.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -62,7 +62,7 @@ public function save(\Magento\Eav\Api\Data\AttributeSetInterface $attributeSet)
6262
*/
6363
public function getList(\Magento\Framework\Api\SearchCriteriaInterface $searchCriteria)
6464
{
65-
$this->searchCriteriaBuilder->addFilter(
65+
$this->searchCriteriaBuilder->addFilters(
6666
[
6767
$this->filterBuilder
6868
->setField('entity_type_code')

app/code/Magento/Catalog/Model/ProductRepository.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -652,7 +652,7 @@ public function getList(\Magento\Framework\Api\SearchCriteriaInterface $searchCr
652652
$defaultAttributeSetId = $this->eavConfig
653653
->getEntityType(\Magento\Catalog\Api\Data\ProductAttributeInterface::ENTITY_TYPE_CODE)
654654
->getDefaultAttributeSetId();
655-
$extendedSearchCriteria = $this->searchCriteriaBuilder->addFilter(
655+
$extendedSearchCriteria = $this->searchCriteriaBuilder->addFilters(
656656
[
657657
$this->filterBuilder
658658
->setField('attribute_set_id')

app/code/Magento/Catalog/Test/Unit/Model/Category/AttributeRepositoryTest.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -114,7 +114,7 @@ public function testGetCustomAttributesMetadata()
114114
3
115115
)->willReturnSelf();
116116
$this->filterBuilderMock->expects($this->once())->method('create')->willReturn($filterMock);
117-
$this->searchBuilderMock->expects($this->once())->method('addFilter')->with([$filterMock])->willReturnSelf();
117+
$this->searchBuilderMock->expects($this->once())->method('addFilters')->with([$filterMock])->willReturnSelf();
118118
$searchCriteriaMock = $this->getMock('Magento\Framework\Api\SearchCriteria', [], [], '', false);
119119
$this->searchBuilderMock->expects($this->once())->method('create')->willReturn($searchCriteriaMock);
120120
$itemMock = $this->getMock('Magento\Framework\Object', [], [], '', false);

app/code/Magento/Catalog/Test/Unit/Model/Product/Attribute/RepositoryTest.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -180,7 +180,7 @@ public function testGetCustomAttributesMetadata()
180180
->willReturnSelf();
181181
$this->filterBuilderMock->expects($this->once())->method('create')->willReturn($filterMock);
182182
$this->searchCriteriaBuilderMock->expects($this->once())
183-
->method('addFilter')
183+
->method('addFilters')
184184
->with([$filterMock])
185185
->willReturnSelf();
186186
$searchCriteriaMock = $this->getMock('Magento\Framework\Api\SearchCriteria', [], [], '', false);

app/code/Magento/Catalog/Test/Unit/Model/Product/Attribute/SetRepositoryTest.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -181,7 +181,7 @@ public function testGetList()
181181
$this->filterBuilderMock->expects($this->once())->method('create')->willReturn($filterMock);
182182

183183
$this->searchCriteriaBuilderMock->expects($this->once())
184-
->method('addFilter')
184+
->method('addFilters')
185185
->with([$filterMock])
186186
->willReturnSelf();
187187
$this->searchCriteriaBuilderMock->expects($this->once())

app/code/Magento/Catalog/Test/Unit/Model/ProductRepositoryTest.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -573,7 +573,7 @@ public function testGetList()
573573
$this->filterBuilderMock->expects($this->once())->method('setValue')
574574
->with(4)
575575
->willReturn($this->filterBuilderMock);
576-
$this->searchCriteriaBuilderMock->expects($this->once())->method('addFilter')->with([$filterMock])
576+
$this->searchCriteriaBuilderMock->expects($this->once())->method('addFilters')->with([$filterMock])
577577
->willReturn($searchCriteriaBuilderMock);
578578
$searchCriteriaBuilderMock->expects($this->once())->method('create')->willReturn($extendedSearchCriteriaMock);
579579
$this->metadataServiceMock->expects($this->once())->method('getList')->with($extendedSearchCriteriaMock)

app/code/Magento/Customer/Model/GroupManagement.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -154,8 +154,8 @@ public function getLoggedInGroups()
154154
->setValue(self::CUST_GROUP_ALL)
155155
->create();
156156
$searchCriteria = $this->searchCriteriaBuilder
157-
->addFilter($notLoggedInFilter)
158-
->addFilter($groupAll)
157+
->addFilters($notLoggedInFilter)
158+
->addFilters($groupAll)
159159
->create();
160160
return $this->groupRepository->getList($searchCriteria)->getItems();
161161
}

0 commit comments

Comments
 (0)