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
}

app/code/Magento/Customer/Test/Unit/Model/Resource/Group/Grid/ServiceCollectionTest.php

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -88,7 +88,7 @@ public function testGetSearchCriteriaImplicitEq()
8888
->setCurrentPage(1)
8989
->setPageSize(false)
9090
->addSortOrder($sortOrder)
91-
->addFilter(
91+
->addFilters(
9292
[$this->filterBuilder->setField('name')->setConditionType('eq')->setValue('Magento')->create()]
9393
)->create();
9494

@@ -119,7 +119,7 @@ public function testGetSearchCriteriaOneField()
119119
->setCurrentPage(1)
120120
->setPageSize(0)
121121
->addSortOrder($sortOrder)
122-
->addFilter([$filter])
122+
->addFilters([$filter])
123123
->create();
124124

125125
// Verifies that the search criteria Data Object created by the serviceCollection matches expected
@@ -150,7 +150,7 @@ public function testGetSearchCriteriaOr()
150150
->setCurrentPage(1)
151151
->setPageSize(0)
152152
->addSortOrder($sortOrder)
153-
->addFilter(
153+
->addFilters(
154154
[
155155
$this->filterBuilder->setField($fieldA)->setConditionType('eq')->setValue($value)->create(),
156156
$this->filterBuilder->setField($fieldB)->setConditionType('eq')->setValue($value)->create(),
@@ -186,13 +186,13 @@ public function testGetSearchCriteriaAnd()
186186
->setCurrentPage(1)
187187
->setPageSize(0)
188188
->addSortOrder($sortOrder)
189-
->addFilter(
189+
->addFilters(
190190
[
191191
$this->filterBuilder->setField($fieldA)->setConditionType('gt')
192192
->setValue($value)->create(),
193193
]
194194
)
195-
->addFilter(
195+
->addFilters(
196196
[
197197
$this->filterBuilder->setField($fieldB)->setConditionType('gt')
198198
->setValue($value)->create(),

app/code/Magento/Multishipping/Block/Checkout/Address/Select.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -101,7 +101,7 @@ public function getAddress()
101101
->setConditionType('eq')
102102
->create();
103103
$addresses = (array)($this->addressRepository->getList(
104-
$this->searchCriteriaBuilder->addFilter([$filter])->create()
104+
$this->searchCriteriaBuilder->addFilters([$filter])->create()
105105
)->getItems());
106106
} catch (NoSuchEntityException $e) {
107107
return [];

app/code/Magento/Multishipping/Controller/Checkout/Address/ShippingSaved.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,7 @@ public function execute()
6161
$filter = $this->filterBuilder->setField('parent_id')->setValue($this->_getCheckout()->getCustomer()->getId())
6262
->setConditionType('eq')->create();
6363
$addresses = (array)($this->addressRepository->getList(
64-
$this->searchCriteriaBuilder->addFilter([$filter])->create()
64+
$this->searchCriteriaBuilder->addFilters([$filter])->create()
6565
)->getItems());
6666

6767
/**

app/code/Magento/Multishipping/Model/Checkout/Type/Multishipping.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -878,7 +878,7 @@ private function getDefaultAddressByDataKey($key, $defaultAddressIdFromCustomer)
878878
->setConditionType('eq')
879879
->create();
880880
$addresses = (array)($this->addressRepository->getList(
881-
$this->searchCriteriaBuilder->addFilter([$filter])->create()
881+
$this->searchCriteriaBuilder->addFilters([$filter])->create()
882882
)->getItems());
883883
if ($addresses) {
884884
$address = reset($addresses);

app/code/Magento/Multishipping/Test/Unit/Block/Checkout/Address/SelectTest.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -130,7 +130,7 @@ public function testGetAddress()
130130
$this->filterBuilderMock->expects($this->once())->method('create')->willReturn($this->filterMock);
131131
$this->searchCriteriaBuilderMock
132132
->expects($this->once())
133-
->method('addFilter')
133+
->method('addFilters')
134134
->with([$this->filterMock])
135135
->willReturnSelf();
136136
$this->searchCriteriaBuilderMock
@@ -176,7 +176,7 @@ public function testGetAddressWhenItNotExistInCustomer()
176176
$this->filterBuilderMock->expects($this->once())->method('create')->willReturn($this->filterMock);
177177
$this->searchCriteriaBuilderMock
178178
->expects($this->once())
179-
->method('addFilter')
179+
->method('addFilters')
180180
->with([$this->filterMock])
181181
->willReturnSelf();
182182
$this->searchCriteriaBuilderMock

app/code/Magento/Multishipping/Test/Unit/Controller/Checkout/Address/ShippingSavedTest.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -138,7 +138,7 @@ private function mockCustomerAddressRepository($customerId, array $addresses)
138138
$this->filterBuilderMock->expects($this->once())->method('create')->willReturn($filterMock);
139139

140140
$searchCriteriaMock = $this->getMock('Magento\Framework\Api\SearchCriteria', [], [], '', false);
141-
$this->criteriaBuilderMock->expects($this->once())->method('addFilter')->with([$filterMock])->willReturnSelf();
141+
$this->criteriaBuilderMock->expects($this->once())->method('addFilters')->with([$filterMock])->willReturnSelf();
142142
$this->criteriaBuilderMock->expects($this->once())->method('create')->willReturn($searchCriteriaMock);
143143

144144
$searchResultMock = $this->getMock('Magento\Customer\Api\Data\AddressSearchResultsInterface');

app/code/Magento/Multishipping/Test/Unit/Model/Checkout/Type/MultishippingTest.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -149,7 +149,7 @@ public function testSetShippingItemsInformation()
149149
$this->filterBuilderMock->expects($this->atLeastOnce())->method('create')->willReturnSelf();
150150

151151
$searchCriteriaMock = $this->getMock('\Magento\Framework\Api\SearchCriteria', [], [], '', false);
152-
$this->searchCriteriaBuilderMock->expects($this->atLeastOnce())->method('addFilter')->willReturnSelf();
152+
$this->searchCriteriaBuilderMock->expects($this->atLeastOnce())->method('addFilters')->willReturnSelf();
153153
$this->searchCriteriaBuilderMock->expects($this->atLeastOnce())->method('create')
154154
->willReturn($searchCriteriaMock);
155155

app/code/Magento/Quote/Model/Quote.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -268,7 +268,7 @@ class Quote extends AbstractExtensibleModel implements \Magento\Quote\Api\Data\C
268268
*
269269
* @var \Magento\Framework\Api\SearchCriteriaBuilder
270270
*/
271-
protected $criteriaBuilder;
271+
protected $searchCriteriaBuilder;
272272

273273
/**
274274
* Filter builder
@@ -421,7 +421,7 @@ public function __construct(
421421
$this->_quotePaymentCollectionFactory = $quotePaymentCollectionFactory;
422422
$this->_objectCopyService = $objectCopyService;
423423
$this->addressRepository = $addressRepository;
424-
$this->criteriaBuilder = $criteriaBuilder;
424+
$this->searchCriteriaBuilder = $criteriaBuilder;
425425
$this->filterBuilder = $filterBuilder;
426426
$this->stockRegistry = $stockRegistry;
427427
$this->itemProcessor = $itemProcessor;

app/code/Magento/Sales/Block/Adminhtml/Order/Create/Form/Address.php

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,7 @@ class Address extends \Magento\Sales\Block\Adminhtml\Order\Create\Form\AbstractF
6161
*
6262
* @var \Magento\Framework\Api\SearchCriteriaBuilder
6363
*/
64-
protected $criteriaBuilder;
64+
protected $searchCriteriaBuilder;
6565

6666
/**
6767
* Filter builder
@@ -121,7 +121,7 @@ public function __construct(
121121
$this->_customerFormFactory = $customerFormFactory;
122122
$this->_addressHelper = $addressHelper;
123123
$this->addressService = $addressService;
124-
$this->criteriaBuilder = $criteriaBuilder;
124+
$this->searchCriteriaBuilder = $criteriaBuilder;
125125
$this->filterBuilder = $filterBuilder;
126126
$this->addressMapper = $addressMapper;
127127
parent::__construct(
@@ -159,8 +159,8 @@ public function getAddressCollection()
159159
->setValue($this->getCustomerId())
160160
->setConditionType('eq')
161161
->create();
162-
$this->criteriaBuilder->addFilter([$filter]);
163-
$criteria = $this->criteriaBuilder->create();
162+
$this->searchCriteriaBuilder->addFilters([$filter]);
163+
$criteria = $this->searchCriteriaBuilder->create();
164164
$result = $this->addressService->getList($criteria);
165165
return $result->getItems();
166166
}

app/code/Magento/Sales/Model/Order/Payment/TransactionRepository.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -81,7 +81,7 @@ public function get($id)
8181
}
8282
if (!isset($this->registry[$id])) {
8383
$filter = $this->filterBuilder->setField('transaction_id')->setValue($id)->setConditionType('eq')->create();
84-
$this->searchCriteriaBuilder->addFilter([$filter]);
84+
$this->searchCriteriaBuilder->addFilters([$filter]);
8585
$this->find($this->searchCriteriaBuilder->create());
8686

8787
if (!isset($this->registry[$id])) {

app/code/Magento/Sales/Model/Service/CreditmemoService.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -75,8 +75,8 @@ public function cancel($id)
7575
*/
7676
public function getCommentsList($id)
7777
{
78-
$this->searchCriteriaBuilder->addFilter(
79-
['eq' => $this->filterBuilder->setField('parent_id')->setValue($id)->create()]
78+
$this->searchCriteriaBuilder->addFilters(
79+
[$this->filterBuilder->setField('parent_id')->setValue($id)->setConditionType('eq')->create()]
8080
);
8181
$criteria = $this->searchCriteriaBuilder->create();
8282
return $this->creditmemoCommentRepository->getList($criteria);

app/code/Magento/Sales/Model/Service/InvoiceService.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -88,8 +88,8 @@ public function setCapture($id)
8888
*/
8989
public function getCommentsList($id)
9090
{
91-
$this->criteriaBuilder->addFilter(
92-
['eq' => $this->filterBuilder->setField('parent_id')->setValue($id)->create()]
91+
$this->criteriaBuilder->addFilters(
92+
[$this->filterBuilder->setField('parent_id')->setValue($id)->setConditionType('eq')->create()]
9393
);
9494
$criteria = $this->criteriaBuilder->create();
9595
return $this->commentRepository->getList($criteria);

app/code/Magento/Sales/Model/Service/OrderService.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -89,8 +89,8 @@ public function cancel($id)
8989
*/
9090
public function getCommentsList($id)
9191
{
92-
$this->criteriaBuilder->addFilter(
93-
['eq' => $this->filterBuilder->setField('parent_id')->setValue($id)->create()]
92+
$this->criteriaBuilder->addFilters(
93+
[$this->filterBuilder->setField('parent_id')->setValue($id)->setConditionType('eq')->create()]
9494
);
9595
$criteria = $this->criteriaBuilder->create();
9696
return $this->historyRepository->getList($criteria);

app/code/Magento/Sales/Model/Service/ShipmentService.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -88,8 +88,8 @@ public function getLabel($id)
8888
*/
8989
public function getCommentsList($id)
9090
{
91-
$this->criteriaBuilder->addFilter(
92-
['eq' => $this->filterBuilder->setField('parent_id')->setValue($id)->create()]
91+
$this->criteriaBuilder->addFilters(
92+
[$this->filterBuilder->setField('parent_id')->setValue($id)->setConditionType('eq')->create()]
9393
);
9494
$criteria = $this->criteriaBuilder->create();
9595
return $this->commentRepository->getList($criteria);

app/code/Magento/Sales/Test/Unit/Model/Order/Payment/TransactionRepositoryTest.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -112,7 +112,7 @@ public function testGet($id, array $collectionIds, $conditionType)
112112
->method('getFilterGroups')
113113
->willReturn([$filterGroup]);
114114
$this->searchCriteriaBuilder->expects($this->once())
115-
->method('addFilter')
115+
->method('addFilters')
116116
->with([$filter]);
117117
$this->searchCriteriaBuilder->expects($this->once())
118118
->method('create')

app/code/Magento/Sales/Test/Unit/Model/Service/CreditmemoServiceTest.php

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -63,14 +63,14 @@ protected function setUp()
6363
);
6464
$this->searchCriteriaBuilderMock = $this->getMock(
6565
'Magento\Framework\Api\SearchCriteriaBuilder',
66-
['create', 'addFilter'],
66+
['create', 'addFilters'],
6767
[],
6868
'',
6969
false
7070
);
7171
$this->filterBuilderMock = $this->getMock(
7272
'Magento\Framework\Api\FilterBuilder',
73-
['setField', 'setValue', 'create'],
73+
['setField', 'setValue', 'setConditionType', 'create'],
7474
[],
7575
'',
7676
false
@@ -150,12 +150,16 @@ public function testGetCommentsList()
150150
->method('setValue')
151151
->with($id)
152152
->will($this->returnSelf());
153+
$this->filterBuilderMock->expects($this->once())
154+
->method('setConditionType')
155+
->with('eq')
156+
->will($this->returnSelf());
153157
$this->filterBuilderMock->expects($this->once())
154158
->method('create')
155159
->will($this->returnValue($filterMock));
156160
$this->searchCriteriaBuilderMock->expects($this->once())
157-
->method('addFilter')
158-
->with(['eq' => $filterMock]);
161+
->method('addFilters')
162+
->with([$filterMock]);
159163
$this->searchCriteriaBuilderMock->expects($this->once())
160164
->method('create')
161165
->will($this->returnValue($searchCriteriaMock));

0 commit comments

Comments
 (0)