9 use \Magento\Framework\Filter\ArrayFilter;
13 public function testFilter()
19 $filterMock = $this->createMock(\Zend_Filter_Interface::class);
20 $filterMock->expects($this->exactly(3))->method(
'filter')->will(
21 $this->returnCallback(
23 return '(' . $input .
')';
27 $arrayFilter->addFilter($filterMock);
31 $fieldFilterMock = $this->createMock(\Zend_Filter_Interface::class);
32 $fieldFilterMock->expects($this->exactly(1))->method(
'filter')->will(
33 $this->returnCallback(
35 return '[' . $input .
']';
39 $arrayFilter->addFilter($fieldFilterMock,
'field2');
42 $inputArray = [
'field1' =>
'value1',
'field2' =>
'value2',
'field3' =>
'value3'];
43 $expectedOutput = [
'field1' =>
'(value1)',
'field2' =>
'[(value2)]',
'field3' =>
'(value3)'];
44 $this->assertEquals($expectedOutput, $arrayFilter->filter($inputArray),
'Array was filtered incorrectly.');