public function testDataModelToArray()
 {
     $childConditionMock = $this->getMock('\\Magento\\CatalogRule\\Api\\Data\\ConditionInterface');
     $childConditionMock->expects($this->once())->method('getType')->willReturn('child-type');
     $childConditionMock->expects($this->once())->method('getAttribute')->willReturn('child-attr');
     $childConditionMock->expects($this->once())->method('getOperator')->willReturn('child-operator');
     $childConditionMock->expects($this->once())->method('getValue')->willReturn('child-value');
     $childConditionMock->expects($this->once())->method('getIsValueParsed')->willReturn(true);
     $childConditionMock->expects($this->once())->method('getAggregator')->willReturn('all');
     $childConditionMock->expects($this->once())->method('getConditions')->willReturn([]);
     $dataModelMock = $this->getMock('\\Magento\\CatalogRule\\Api\\Data\\ConditionInterface');
     $dataModelMock->expects($this->once())->method('getType')->willReturn('type');
     $dataModelMock->expects($this->once())->method('getAttribute')->willReturn('attr');
     $dataModelMock->expects($this->once())->method('getOperator')->willReturn('operator');
     $dataModelMock->expects($this->once())->method('getValue')->willReturn('value');
     $dataModelMock->expects($this->once())->method('getIsValueParsed')->willReturn(true);
     $dataModelMock->expects($this->once())->method('getAggregator')->willReturn('all');
     $dataModelMock->expects($this->once())->method('getConditions')->willReturn([$childConditionMock]);
     $expectedResult = ['type' => 'type', 'attribute' => 'attr', 'operator' => 'operator', 'value' => 'value', 'is_value_processed' => true, 'aggregator' => 'all', 'conditions' => [['type' => 'child-type', 'attribute' => 'child-attr', 'operator' => 'child-operator', 'value' => 'child-value', 'is_value_processed' => 1, 'aggregator' => 'all']]];
     $this->assertEquals($expectedResult, $this->model->dataModelToArray($dataModelMock));
 }
Beispiel #2
0
 /**
  * {@inheritdoc}
  */
 public function setRuleCondition($condition)
 {
     $this->getConditions()->setConditions([])->loadArray($this->ruleConditionConverter->dataModelToArray($condition));
     return $this;
 }