function configureTableRendering() { $this->renderers->add(new ElementRenderer()); $this->renderers->add(new PrimitiveRenderer()); $data = [json_decode('{"one":"uno","two":"dos","three":"tres"}'), json_decode('{"one":"un","two":"deux","three":"trois"}')]; $table = (new ObjectTable($data, $this->types))->selectProperties(['three', 'one'])->setHeader('one', '1')->setFilter('three', function ($s) { return strtoupper($s); }); $this->assert->contains($this->tableRenderer->render($table), "<th>Three</th>\n<th>1</th>"); $this->assert->contains($this->tableRenderer->render($table), "<td>TRES</td>\n<td>uno</td>"); $this->assert->contains($this->tableRenderer->render($table), "<td>TROIS</td>\n<td>un</td>"); }
function nestedTables() { $this->renderers->add(new PrimitiveRenderer()); $this->renderers->add($this->tableRenderer); $tableInTable = new ArrayTable([['table' => new ArrayTable([['one' => 'uno', 'two' => 'dos']])]]); $this->tableRenderer->render($tableInTable); $this->tableRenderer->headElements($tableInTable); $this->assert->pass(); }