public function testBuild() { $expectedResult = ['count' => 'count(main_table.value)']; $this->requestBucket->expects($this->once())->method('getMetrics')->willReturn([$this->metric]); $this->metric->expects($this->once())->method('getType')->willReturn('count'); $metrics = $this->metrics->build($this->requestBucket); $this->assertEquals($expectedResult, $metrics); }
/** * Test for method "build" */ public function testBuild() { $fetchResult = ['name' => ['some', 'result']]; $documents = [['product_id' => 1, 'sku' => 'Product']]; $this->bucket->expects($this->once())->method('getName')->willReturn('name'); $this->entityMetadata->expects($this->once())->method('getEntityId')->willReturn('product_id'); $this->request->expects($this->once())->method('getAggregation')->willReturn([$this->bucket]); $this->request->expects($this->once())->method('getDimensions')->willReturn([]); $this->bucketBuilder->expects($this->once())->method('build')->willReturn($fetchResult['name']); $result = $this->builder->build($this->request, $documents); $this->assertEquals($result, $fetchResult); }
/** * Test for method "build" */ public function testBuild() { $this->metricsBuilder->expects($this->once())->method('build')->willReturn(['metrics']); $this->bucket->expects($this->once())->method('getRanges')->willReturn([$this->range, $this->range, $this->range]); $this->range->expects($this->at(0))->method('getFrom')->willReturn(''); $this->range->expects($this->at(1))->method('getTo')->willReturn(50); $this->range->expects($this->at(2))->method('getFrom')->willReturn(50); $this->range->expects($this->at(3))->method('getTo')->willReturn(100); $this->range->expects($this->at(4))->method('getFrom')->willReturn(100); $this->range->expects($this->at(5))->method('getTo')->willReturn(''); $this->adapter->expects($this->once())->method('getCaseSql')->withConsecutive([''], [['`value` < 50' => "'*_50'", '`value` BETWEEN 50 AND 100' => "'50_100'", '`value` >= 100' => "'100_*'"]]); $this->dataProvider->expects($this->once())->method('getDataSet')->willReturn($this->select); $this->dataProvider->expects($this->once())->method('execute')->willReturn($this->select); $result = $this->builder->build($this->dataProvider, [], $this->bucket, [1, 2, 3]); $this->assertEquals($this->select, $result); }
/** * Test for method "build" */ public function testBuild() { $this->metricsBuilder->expects($this->once())->method('build')->willReturn(['metrics']); $this->bucket->expects($this->once())->method('getRanges')->willReturn([$this->range, $this->range, $this->range]); $this->range->expects($this->at(0))->method('getFrom')->willReturn(''); $this->range->expects($this->at(1))->method('getTo')->willReturn(50); $this->range->expects($this->at(2))->method('getFrom')->willReturn(50); $this->range->expects($this->at(3))->method('getTo')->willReturn(100); $this->range->expects($this->at(4))->method('getFrom')->willReturn(100); $this->range->expects($this->at(5))->method('getTo')->willReturn(''); $this->connectionMock->expects($this->once())->method('getCaseSql')->withConsecutive([''], [['`value` < 50' => "'*_50'", '`value` BETWEEN 50 AND 100' => "'50_100'", '`value` >= 100' => "'100_*'"]]); $this->dataProvider->expects($this->once())->method('getDataSet')->willReturn($this->select); $this->dataProvider->expects($this->once())->method('execute')->willReturn($this->select); /** @var \Magento\Framework\DB\Ddl\Table|\PHPUnit_Framework_MockObject_MockObject $table */ $table = $this->getMockBuilder('Magento\\Framework\\DB\\Ddl\\Table')->disableOriginalConstructor()->getMock(); $result = $this->builder->build($this->dataProvider, [], $this->bucket, $table); $this->assertEquals($this->select, $result); }
/** * Test for method "build" */ public function testBuild() { $fetchResult = ['name' => ['some', 'result']]; $documents = [1 => 'document_1', 2 => 'document_2']; $this->aggregationResolver->expects($this->once())->method('resolve')->with($this->request, array_keys($documents))->willReturn([$this->bucket]); $this->bucket->expects($this->once())->method('getName')->willReturn('name'); $this->request->expects($this->once())->method('getDimensions')->willReturn([]); $this->bucketBuilder->expects($this->once())->method('build')->willReturn($fetchResult['name']); $result = $this->builder->build($this->request, $this->table, $documents); $this->assertEquals($fetchResult, $result); }
/** * Test for method "build" */ public function testBuild() { $fetchResult = ['name' => ['some', 'result']]; /** @var \Magento\Framework\DB\Ddl\Table|\PHPUnit_Framework_MockObject_MockObject $table */ $table = $this->getMockBuilder('Magento\\Framework\\DB\\Ddl\\Table')->disableOriginalConstructor()->getMock(); $this->bucket->expects($this->once())->method('getName')->willReturn('name'); $this->request->expects($this->once())->method('getAggregation')->willReturn([$this->bucket]); $this->request->expects($this->once())->method('getDimensions')->willReturn([]); $this->bucketBuilder->expects($this->once())->method('build')->willReturn($fetchResult['name']); $result = $this->builder->build($this->request, $table); $this->assertEquals($result, $fetchResult); }