/** * @param string $gridName * @param array $parameters * @param array $select * @param string $groupBy * @param string $expected * * @dataProvider preBuildDataProvider */ public function testOnPreBuild($gridName, array $parameters, array $select, $groupBy, $expected) { $config = DatagridConfiguration::create(['name' => $gridName, 'source' => ['query' => ['select' => $select, 'groupBy' => $groupBy]]]); $event = new PreBuild($config, new ParameterBag($parameters)); $this->segmentHelper->expects($this->any())->method('getSegmentIdByGridName')->with($this->equalTo($gridName))->will($this->returnValue(true)); $this->segmentHelper->expects($this->any())->method('getMarketingListBySegment')->with($this->equalTo(true))->will($this->returnValue(new \stdClass())); $this->listener->onPreBuild($event); $this->assertEquals($expected, $config->offsetGetByPath(CampaignStatisticDatagridListener::PATH_GROUPBY)); }
public function testOnPreBuildNotApplicable() { $gridName = ConfigurationProvider::GRID_PREFIX; $config = DatagridConfiguration::create([]); $event = new PreBuild($config, new ParameterBag([])); $this->marketingListHelper->expects($this->any())->method('getMarketingListIdByGridName')->with($this->equalTo($gridName)); $this->registry->expects($this->never())->method('getRepository'); $this->listener->onPreBuild($event); }