21 private $selectBuilderMock;
26 private $columnsResolver;
31 private $resourceConnectionMock;
36 private $connectionMock;
43 $this->selectBuilderMock = $this->getMockBuilder(SelectBuilder::class)
44 ->disableOriginalConstructor()
47 $this->resourceConnectionMock = $this->getMockBuilder(ResourceConnection::class)
48 ->disableOriginalConstructor()
51 $this->connectionMock = $this->getMockBuilder(AdapterInterface::class)
52 ->disableOriginalConstructor()
57 ColumnsResolver::class,
60 'resourceConnection' => $this->resourceConnectionMock
67 $this->assertEquals($this->columnsResolver->getColumns($this->selectBuilderMock, []), []);
75 $this->resourceConnectionMock->expects($this->any())
76 ->method(
'getConnection')
77 ->willReturn($this->connectionMock);
78 $this->connectionMock->expects($this->any())
79 ->method(
'quoteIdentifier')
81 ->willReturn(
'`cpe`.`name`');
82 $this->selectBuilderMock->expects($this->once())
83 ->method(
'getColumns')
85 $this->selectBuilderMock->expects($this->once())
88 $this->selectBuilderMock->expects($this->once())
90 ->with($expectedGroup);
93 $this->columnsResolver->getColumns(
94 $this->selectBuilderMock,
106 'COUNT( DISTINCT `cpe`.`name`) AS name' => [
107 'expectedColumns' => [
115 'name' =>
'catalog_product_entity',
120 'function' =>
'COUNT',
127 'AVG(`cpe`.`name`) AS avg_name' => [
128 'expectedColumns' => [
131 'expectedGroup' => [],
134 'name' =>
'catalog_product_entity',
139 'alias' =>
'avg_name',
testGetColumnsWithFunction($expectedColumns, $expectedGroup, $entityConfig)
testGetColumnsWithoutAttributes()