public function testReorder() { $fieldDescription1 = $this->getFieldDescriptionMock('fooName1', 'fooLabel1'); $fieldDescription2 = $this->getFieldDescriptionMock('fooName2', 'fooLabel2'); $fieldDescription3 = $this->getFieldDescriptionMock('fooName3', 'fooLabel3'); $fieldDescription4 = $this->getFieldDescriptionMock('fooName4', 'fooLabel4'); $this->datagridMapper->add($fieldDescription1, null, array('field_name' => 'fooFilterName1')); $this->datagridMapper->add($fieldDescription2, null, array('field_name' => 'fooFilterName2')); $this->datagridMapper->add($fieldDescription3, null, array('field_name' => 'fooFilterName3')); $this->datagridMapper->add($fieldDescription4, null, array('field_name' => 'fooFilterName4')); $this->assertSame(array('fooName1', 'fooName2', 'fooName3', 'fooName4'), array_keys($this->datagrid->getFilters())); $this->datagridMapper->reorder(array('fooName3', 'fooName2', 'fooName1', 'fooName4')); $this->assertSame(array('fooName3', 'fooName2', 'fooName1', 'fooName4'), array_keys($this->datagrid->getFilters())); }
public function testReorderFilters() { $this->assertSame(array(), $this->datagrid->getFilters()); $filter1 = $this->getMock('Sonata\\AdminBundle\\Filter\\FilterInterface'); $filter1->expects($this->once())->method('getName')->will($this->returnValue('foo')); $filter2 = $this->getMock('Sonata\\AdminBundle\\Filter\\FilterInterface'); $filter2->expects($this->once())->method('getName')->will($this->returnValue('bar')); $filter3 = $this->getMock('Sonata\\AdminBundle\\Filter\\FilterInterface'); $filter3->expects($this->once())->method('getName')->will($this->returnValue('baz')); $this->datagrid->addFilter($filter1); $this->datagrid->addFilter($filter2); $this->datagrid->addFilter($filter3); $this->assertSame(array('foo' => $filter1, 'bar' => $filter2, 'baz' => $filter3), $this->datagrid->getFilters()); $this->assertSame(array('foo', 'bar', 'baz'), array_keys($this->datagrid->getFilters())); $this->datagrid->reorderFilters(array('bar', 'baz', 'foo')); $this->assertSame(array('bar' => $filter2, 'baz' => $filter3, 'foo' => $filter1), $this->datagrid->getFilters()); $this->assertSame(array('bar', 'baz', 'foo'), array_keys($this->datagrid->getFilters())); }