23 private $definitonAggregator;
28 private $objectManager;
33 private $definitonProcessors;
38 $intDefProcessor = $this->getMockBuilder(DbDefinitionProcessorInterface::class)
39 ->disableOriginalConstructor()
42 $varcharDefProcessor = $this->getMockBuilder(DbDefinitionProcessorInterface::class)
43 ->disableOriginalConstructor()
47 $this->definitonProcessors = [
48 'int' => $intDefProcessor,
49 'varchar' => $varcharDefProcessor,
51 $this->definitonAggregator = $this->objectManager->getObject(
52 DefinitionAggregator::class,
54 'definitionProcessors' => $this->definitonProcessors
63 public function testToDefinition()
66 $columnInt = $this->getMockBuilder(ElementInterface::class)
67 ->disableOriginalConstructor()
70 $columnVarchar = $this->getMockBuilder(ElementInterface::class)
71 ->disableOriginalConstructor()
74 $columnText = $this->getMockBuilder(ElementInterface::class)
75 ->disableOriginalConstructor()
77 $columnInt->expects($this->any())->method(
'getType')->willReturn(
'int');
78 $columnVarchar->expects($this->any())->method(
'getType')->willReturn(
'varchar');
79 $columnText->expects($this->any())->method(
'getType')->willReturn(
'text');
80 $this->definitonProcessors[
'int']->expects($this->once())->method(
'toDefinition');
81 $this->definitonProcessors[
'varchar']->expects($this->once())->method(
'toDefinition');
82 $this->definitonAggregator->toDefinition($columnInt);
83 $this->definitonAggregator->toDefinition($columnVarchar);
84 $this->definitonAggregator->toDefinition($columnText);
104 $this->definitonProcessors[
'int']->expects($this->once())->method(
'fromDefinition');
105 $this->definitonProcessors[
'varchar']->expects($this->once())->method(
'fromDefinition');
106 foreach (
$data as $colData) {
107 $this->definitonAggregator->fromDefinition($colData);