Exemplo n.º 1
0
 public function testBuildPagerWithSortBy()
 {
     $sortBy = $this->getMock('Sonata\\AdminBundle\\Admin\\FieldDescriptionInterface');
     $sortBy->expects($this->once())->method('isSortable')->will($this->returnValue(true));
     $this->datagrid = new Datagrid($this->query, $this->columns, $this->pager, $this->formBuilder, array('_sort_by' => $sortBy));
     $filter = $this->getMock('Sonata\\AdminBundle\\Filter\\FilterInterface');
     $filter->expects($this->once())->method('getName')->will($this->returnValue('foo'));
     $filter->expects($this->any())->method('getFormName')->will($this->returnValue('fooFormName'));
     $filter->expects($this->any())->method('isActive')->will($this->returnValue(false));
     $filter->expects($this->any())->method('getRenderSettings')->will($this->returnValue(array('foo', array('bar' => 'baz'))));
     $this->datagrid->addFilter($filter);
     $this->datagrid->buildPager();
     $this->assertEquals(array('_sort_by' => $sortBy, 'foo' => null), $this->datagrid->getValues());
     $this->assertInstanceOf('Symfony\\Component\\Form\\FormBuilder', $this->formBuilder->get('fooFormName'));
     $this->assertEquals(array('bar' => 'baz'), $this->formBuilder->get('fooFormName')->getOptions());
     $this->assertInstanceOf('Symfony\\Component\\Form\\FormBuilder', $this->formBuilder->get('_sort_by'));
     $this->assertInstanceOf('Symfony\\Component\\Form\\FormBuilder', $this->formBuilder->get('_sort_order'));
     $this->assertInstanceOf('Symfony\\Component\\Form\\FormBuilder', $this->formBuilder->get('_page'));
     $this->assertInstanceOf('Symfony\\Component\\Form\\FormBuilder', $this->formBuilder->get('_per_page'));
 }