@@ -99,6 +99,9 @@ protected function setUp(): void
9999 * @param array $appliedFilterNames
100100 * @dataProvider appliedFilterNamesProvider
101101 * @throws LocalizedException
102+ * @SuppressWarnings(PHPMD.CyclomaticComplexity)
103+ * @SuppressWarnings(PHPMD.NPathComplexity)
104+ * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
102105 */
103106 public function testWithDefaultFilters (array $ appliedFilterNames ): void
104107 {
@@ -149,31 +152,68 @@ public function testWithDefaultFilters(array $appliedFilterNames): void
149152 ];
150153 $ this ->filterBuilderMock
151154 ->method ('setField ' )
152- ->withConsecutive (...$ filterBuilderMockSetFieldWith )
153- ->willReturnSelf ();
155+ ->willReturnCallback (function (...$ args ) use ($ filterBuilderMockSetFieldWith ) {
156+ if (!empty ($ args )) {
157+ static $ callCount = 0 ;
158+ $ callCount ++;
159+ if ($ callCount <= count ($ filterBuilderMockSetFieldWith )) {
160+ return $ this ->filterBuilderMock ;
161+ }
162+ }
163+ });
154164 $ this ->filterBuilderMock
155165 ->method ('setConditionType ' )
156- ->withConsecutive (...$ filterBuilderMockSetConditionTypeWith )
157- ->willReturnSelf ();
166+ ->willReturnCallback (function (...$ args ) use ($ filterBuilderMockSetConditionTypeWith ) {
167+ if (!empty ($ args )) {
168+ static $ callCount = 0 ;
169+ $ callCount ++;
170+ if ($ callCount <= count ($ filterBuilderMockSetConditionTypeWith )) {
171+ return $ this ->filterBuilderMock ;
172+ }
173+ }
174+ });
175+
158176 $ this ->filterBuilderMock
159177 ->method ('setValue ' )
160- ->withConsecutive (...$ filterBuilderMockSetValueWith )
161- ->willReturnSelf ();
178+ ->willReturnCallback (function (...$ args ) use ($ filterBuilderMockSetValueWith ) {
179+ if (!empty ($ args )) {
180+ static $ callCount = 0 ;
181+ $ callCount ++;
182+ if ($ callCount <= count ($ filterBuilderMockSetValueWith )) {
183+ return $ this ->filterBuilderMock ;
184+ }
185+ }
186+ });
162187 $ this ->filterBuilderMock
163188 ->method ('create ' )
164189 ->willReturnOnConsecutiveCalls (...$ filterBuilderMockCreateReturn );
165190
166191 $ this ->filterGroupBuilderMock
167192 ->method ('setFilters ' )
168- ->withConsecutive (...$ filterGroupBuilderMockSetFiltersWith )
169- ->willReturnSelf ();
193+ ->willReturnCallback (function (...$ args ) use ($ filterGroupBuilderMockSetFiltersWith ) {
194+ if (!empty ($ args )) {
195+ static $ callCount = 0 ;
196+ $ callCount ++;
197+ if ($ callCount <= count ($ filterGroupBuilderMockSetFiltersWith )) {
198+ return $ this ->filterGroupBuilderMock ;
199+ }
200+ }
201+ });
170202 $ this ->filterGroupBuilderMock
171203 ->method ('create ' )
172204 ->willReturnOnConsecutiveCalls (...$ filterGroupBuilderMockCreateReturn );
173205
174206 $ searchCriteria
175207 ->method ('setFilterGroups ' )
176- ->withConsecutive (...$ searchCriteriaSetFilterGroupsWith );
208+ ->willReturnCallback (function (...$ args ) use ($ searchCriteriaSetFilterGroupsWith ) {
209+ static $ callCount = 0 ;
210+ $ callCount ++;
211+ if (!empty ($ args )) {
212+ if ($ callCount <= count ($ searchCriteriaSetFilterGroupsWith )) {
213+ return null ;
214+ }
215+ }
216+ });
177217
178218 $ searchResult = $ this ->createMock (SearchResultInterface::class);
179219
@@ -190,7 +230,7 @@ public function testWithDefaultFilters(array $appliedFilterNames): void
190230 *
191231 * @return array
192232 */
193- public function appliedFilterNamesProvider (): array
233+ public static function appliedFilterNamesProvider (): array
194234 {
195235 return [
196236 [
0 commit comments