예제 #1
0
 public function testGetFilterInput()
 {
     $table = new \ResultSetTable\Table($this->paginator);
     $table->addColumn('foo')->setFilter(true);
     $decorator = new \ResultSetTable\Decorators\Paginate($table, $this->paginator);
     $actual = $decorator->renderFilters();
     #file_put_contents('test.html', $actual);
     $html = new DOMDocument();
     $html->loadHTML($actual);
     $forms = $html->getElementsByTagName('form');
     $form = $forms->item(0);
     $this->assertTrue($form->hasChildNodes());
     $this->assertEquals(2, $form->childNodes->length);
     $this->assertEquals('button', $form->childNodes->item(1)->nodeName);
     // input
     $input = $html->getElementsByTagName('input')->item(0);
     $this->assertEquals('foo', $input->attributes->getNamedItem('name')->nodeValue);
     $this->assertEmpty($input->attributes->getNamedItem('value')->nodeValue);
 }
예제 #2
0
 public function testButtons()
 {
     $table = new \ResultSetTable\Table($this->dataSource);
     $table->addColumn('foo');
     $table->addButton(new \ResultSetTable\Buttons\Link('index.html', 'Balls'));
     $actual = $table->render();
     #file_put_contents('test.html', $actual);
     $html = new DOMDocument();
     $html->loadHTML($actual);
     $th = $html->getElementsByTagName('th');
     $this->assertEquals('Actions', $th->item(1)->nodeValue);
     $td = $html->getElementsByTagName('td');
     $a = $td->item(2)->firstChild->nodeValue;
     //var_dump($a);
     $this->assertEquals('Balls', $a);
     $this->assertEquals('a', $td->item(2)->firstChild->tagName);
 }