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); }
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); }