コード例 #1
0
 public function testListenerShouldAddViewsIntoEvent()
 {
     $originalViews = ['choices' => [['label' => 'first', 'value' => 'first']], 'views' => [['name' => 'first', 'filters' => [], 'sorters' => [], 'type' => 'system']]];
     $event = new GridViewsLoadEvent('grid', $originalViews);
     $currentUser = new User();
     $this->securityFacade->expects($this->once())->method('getLoggedUser')->will($this->returnValue($currentUser));
     $view1 = new GridView();
     $view1->setId(1);
     $view1->setOwner($currentUser);
     $view1->setName('view1');
     $view2 = new GridView();
     $view2->setId(2);
     $view2->setName('view2');
     $view2->setOwner($currentUser);
     $gridViews = [$view1, $view2];
     $this->gridViewRepository->expects($this->once())->method('findGridViews')->will($this->returnValue($gridViews));
     $expectedViews = ['choices' => [['label' => 'first', 'value' => 'first'], ['label' => 'view1', 'value' => 1], ['label' => 'view2', 'value' => 2]], 'views' => [['name' => 'first', 'filters' => [], 'sorters' => [], 'type' => 'system'], ['label' => 'view1', 'name' => 1, 'filters' => [], 'sorters' => [], 'type' => GridView::TYPE_PRIVATE, 'deletable' => true, 'editable' => true, 'columns' => [], 'is_default' => false], ['label' => 'view2', 'name' => 2, 'filters' => [], 'sorters' => [], 'type' => GridView::TYPE_PRIVATE, 'deletable' => true, 'editable' => true, 'columns' => [], 'is_default' => false]]];
     $this->gridViewsLoadListener->onViewsLoad($event);
     $this->assertEquals($expectedViews, $event->getGridViews());
 }