Ejemplo n.º 1
0
 /**
  * @param string $gridName
  * @param bool   $hasParameter
  * @param bool   $isApplicable
  * @param bool   $expected
  *
  * @dataProvider onBuildBeforeDataProvider
  */
 public function testOnBuildBefore($gridName, $hasParameter, $isApplicable, $expected)
 {
     $event = $this->getMockBuilder('Oro\\Bundle\\DataGridBundle\\Event\\BuildBefore')->disableOriginalConstructor()->getMock();
     $datagrid = $this->getMock('Oro\\Bundle\\DataGridBundle\\Datagrid\\DatagridInterface');
     $event->expects($this->once())->method('getDatagrid')->will($this->returnValue($datagrid));
     $parameters = [];
     if ($hasParameter) {
         $parameters = [MarketingListItemsListener::MIXIN => self::MIXIN_NAME];
         $this->segmentHelper->expects($this->once())->method('getSegmentIdByGridName')->with($this->equalTo($gridName))->will($this->returnValue((int) $isApplicable));
         $this->segmentHelper->expects($this->any())->method('getMarketingListBySegment')->with($this->equalTo((int) $isApplicable))->will($this->returnValue(new MarketingList()));
     }
     $datagrid->expects($this->once())->method('getParameters')->will($this->returnValue(new ParameterBag($parameters)));
     $datagrid->expects($this->once())->method('getName')->will($this->returnValue($gridName));
     if ($expected) {
         $event->expects($this->once())->method('stopPropagation');
     }
     $this->listener->onBuildBefore($event);
 }