/**
  * @param ObjectManager $manager
  */
 public function load(ObjectManager $manager)
 {
     $user = $manager->getRepository('Oro\\Bundle\\UserBundle\\Entity\\User')->find(1);
     $organization = $manager->getRepository('Oro\\Bundle\\OrganizationBundle\\Entity\\Organization')->find(1);
     $newTicketsFilter = new GridView();
     $newTicketsFilter->setOwner($user)->setOrganization($organization)->setName('New tickets')->setType(GridView::TYPE_PUBLIC)->setFiltersData(array('status' => array('value' => array('new'))))->setSortersData(array('assigneeFullName' => '-1'))->setGridName('diamante-ticket-grid');
     $manager->persist($newTicketsFilter);
     $myTicketsFilter = new GridView();
     $myTicketsFilter->setOwner($user)->setOrganization($organization)->setName('My tickets')->setType(GridView::TYPE_PUBLIC)->setFiltersData(array('assigneeFullName' => 'fixtureUser', 'type' => '1'))->setSortersData(array('assigneeFullName' => '-1'))->setGridName('diamante-ticket-grid');
     $manager->persist($myTicketsFilter);
     $myNewTicketsFilter = new GridView();
     $myNewTicketsFilter->setOwner($user)->setOrganization($organization)->setName('My new tickets')->setType(GridView::TYPE_PUBLIC)->setFiltersData(array('assigneeFullName' => 'fixtureUser', 'type' => '1', 'status' => array('value' => array('new'))))->setSortersData(array('assigneeFullName' => '-1'))->setGridName('diamante-ticket-grid');
     $manager->persist($myNewTicketsFilter);
     $myOpenTicketsFilter = new GridView();
     $myOpenTicketsFilter->setOwner($user)->setOrganization($organization)->setName('My open tickets')->setType(GridView::TYPE_PUBLIC)->setFiltersData(array('assigneeFullName' => 'fixtureUser', 'type' => '1', 'status' => array('value' => array('open'))))->setSortersData(array('assigneeFullName' => '-1'))->setGridName('diamante-ticket-grid');
     $manager->persist($myOpenTicketsFilter);
     $manager->flush();
 }
 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());
 }