6 declare(strict_types=1);
21 private $mappableConditionProcessor;
26 private $eavConfigMock;
31 private $objectManagerHelper;
36 private $customConditionProcessorBuilderMock;
40 $this->eavConfigMock = $this->getMockBuilder(EavConfig::class)
41 ->disableOriginalConstructor()
42 ->setMethods([
'getAttribute'])
45 $this->customConditionProcessorBuilderMock = $this->getMockBuilder(
46 CustomConditionProviderInterface::class
47 )->disableOriginalConstructor()
48 ->setMethods([
'hasProcessorForField'])
49 ->getMockForAbstractClass();
51 $this->objectManagerHelper = new \Magento\Framework\TestFramework\Unit\Helper\ObjectManager($this);
53 $this->mappableConditionProcessor = $this->objectManagerHelper->getObject(
54 MappableConditionsProcessor::class,
56 'customConditionProvider' => $this->customConditionProcessorBuilderMock,
57 'eavConfig' => $this->eavConfigMock,
103 $this->customConditionProcessorBuilderMock
104 ->method(
'hasProcessorForField')
106 $this->returnValueMap(
115 ->method(
'getAttribute')
118 $result = $this->mappableConditionProcessor->rebuildConditionsTree($inputCondition);
120 $this->assertEquals($validResult,
$result);
172 $this->customConditionProcessorBuilderMock
173 ->method(
'hasProcessorForField')
175 $this->returnValueMap(
184 ->method(
'getAttribute')
187 $result = $this->mappableConditionProcessor->rebuildConditionsTree($inputCondition);
189 $this->assertEquals($validResult,
$result);
233 $this->customConditionProcessorBuilderMock
234 ->method(
'hasProcessorForField')
236 $this->returnValueMap(
245 ->method(
'getAttribute')
248 $result = $this->mappableConditionProcessor->rebuildConditionsTree($inputCondition);
250 $this->assertEquals($validResult,
$result);
369 $this->customConditionProcessorBuilderMock
370 ->method(
'hasProcessorForField')
372 $this->returnValueMap(
383 ->method(
'getAttribute')
386 $result = $this->mappableConditionProcessor->rebuildConditionsTree($inputCondition);
388 $this->assertEquals($validResult,
$result);
492 $this->customConditionProcessorBuilderMock
493 ->method(
'hasProcessorForField')
495 $this->returnValueMap(
506 ->method(
'getAttribute')
509 $result = $this->mappableConditionProcessor->rebuildConditionsTree($inputCondition);
511 $this->assertEquals($validResult,
$result);
569 $this->customConditionProcessorBuilderMock
570 ->method(
'hasProcessorForField')
572 $this->returnValueMap(
583 ->method(
'getAttribute')
586 $result = $this->mappableConditionProcessor->rebuildConditionsTree($inputCondition);
588 $this->assertEquals($inputCondition,
$result);
769 $this->customConditionProcessorBuilderMock
770 ->method(
'hasProcessorForField')
772 $this->returnValueMap(
786 ->method(
'getAttribute')
789 $result = $this->mappableConditionProcessor->rebuildConditionsTree($inputCondition);
791 $this->assertEquals($validResult,
$result);
871 $this->customConditionProcessorBuilderMock
872 ->method(
'hasProcessorForField')
874 $this->returnValueMap(
885 ->method(
'getAttribute')
888 $result = $this->mappableConditionProcessor->rebuildConditionsTree($inputCondition);
890 $this->assertEquals($validResult,
$result);
975 $this->customConditionProcessorBuilderMock
976 ->method(
'hasProcessorForField')
978 $this->returnValueMap(
990 ->method(
'getAttribute')
993 $result = $this->mappableConditionProcessor->rebuildConditionsTree($inputCondition);
995 $this->assertEquals($validResult,
$result);
1005 $simpleCondition->setType(
'olo-lo');
1008 $this->mappableConditionProcessor->rebuildConditionsTree($inputCondition);
1018 $mock = $this->getMockBuilder(CombinedCondition::class)
1019 ->disableOriginalConstructor()
1023 $mock->setConditions($subConditions);
1024 $mock->setAggregator($aggregator);
1025 $mock->setType(CombinedCondition::class);
1036 $mock = $this->getMockBuilder(SimpleCondition::class)
1037 ->disableOriginalConstructor()
1042 $mock->setType(SimpleCondition::class);
getMockForSimpleCondition($attribute)
getMockForCombinedCondition($subConditions, $aggregator)