private function givenTheInvisibleActions(array $ids) { foreach ($ids as $id) { $this->actions[$id] = Mockster::of(Action::class); $this->registry->add($id, Mockster::mock($this->actions[$id])); } }
function printLinksAsDropDown() { $this->actions->add('foo', Mockster::mock(Action::class)); $this->links->add(new IdentifierLink(\DateTime::class, 'foo', 'id')); $rendered = $this->renderer->render(new Identifier(\DateTime::class, 'foo-id')); $this->assert->contains($rendered, "DateTime\n<span class=\"caret\"></span>"); $this->assert->contains($rendered, '<ul class="dropdown-menu">' . '<li><a class="" href="foo?id=foo-id"></a></li>' . '</ul>'); }
function printLinks() { $this->renderers->add(new ElementRenderer()); $this->renderers->add(new PrimitiveRenderer()); $this->actions->add('foo', Mockster::mock(Action::class)); $this->actions->add('bar', Mockster::mock(Action::class)); $this->links->add(new ClassLink(\StdClass::class, 'foo')); $this->links->add(new ClassLink(\StdClass::class, 'bar')); $rendered = $this->tableRenderer->render(new ObjectTable([new \StdClass()], $this->types)); $this->assert->contains($rendered, '<div class="dropdown">' . "\n" . '<button class="btn btn-xs btn-primary dropdown-toggle" type="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">' . "\n" . 'stdClass' . "\n" . '<span class="caret"></span>' . "\n" . '</button>' . "\n" . '<ul class="dropdown-menu">' . "\n" . '<li><a class="" href="foo"></a></li>' . "\n" . '<li><a class="" href="bar"></a></li>' . "\n" . '</ul>' . "\n" . '</div>'); }
public function givenTheAction_Returning($id, $value) { $action = Mockster::of(Action::class); $this->actions[$id] = $action; $this->registry->add($id, Mockster::mock($action)); Mockster::stub($action->execute(Argument::any()))->will()->return_($value); Mockster::stub($action->caption())->will()->return_(ucfirst($id)); $this->params[$id] = []; Mockster::stub($action->parameters())->will()->forwardTo(function () use($id) { return $this->params[$id]; }); Mockster::stub($action->fill(Argument::any()))->will()->forwardTo(function ($params) { return $params; }); }
function confirmActions() { $this->renderers->add(new PrimitiveRenderer()); $link = Mockster::of(Link::class); $this->links->add(Mockster::mock($link)); $this->actions->add('', Mockster::mock(Action::class)); Mockster::stub($link->handles(Argument::any()))->will()->return_(true); Mockster::stub($link->confirm())->will()->return_('Foo?'); $object = new \StdClass(); $object->foo = 'bar'; $this->assert->contains($this->renderer->render($object), '<a class="btn btn-xs btn-primary" href="" onclick="return confirm(\'Foo?\');"></a>'); }
function printLinks() { $this->renderers->add(new ElementRenderer()); $this->renderers->add(new PrimitiveRenderer()); $this->actions->add('foo', Mockster::mock(Action::class)); $this->actions->add('bar', Mockster::mock(Action::class)); $this->actions->add('baz', Mockster::mock(Action::class)); $this->links->add(new GenericLink('foo', function ($item) { return $item['id'] == 'foo item'; })); $this->links->add(new GenericLink('bar', function ($item) { return $item['id'] == 'bar item'; })); $this->links->add(new GenericLink('baz', function ($item) { return $item['id'] == 'bar item'; })); $rendered = $this->tableRenderer->render(new ArrayTable([['id' => 'foo item'], ['id' => 'bar item']])); $this->assert->contains($rendered, '<div class="dropdown">' . "\n" . '<button class="btn btn-xs btn-primary dropdown-toggle" type="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">' . "\n" . 'Actions' . "\n" . '<span class="caret"></span>' . "\n" . '</button>' . "\n" . '<ul class="dropdown-menu">' . '<li><a class="" href="http://example.com/base/foo"></a></li>' . '</ul>' . "\n" . '</div>' . "\n" . '</td>' . "\n" . '<td>foo item</td>'); $this->assert->contains($rendered, '<div class="dropdown">' . "\n" . '<button class="btn btn-xs btn-primary dropdown-toggle" type="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">' . "\n" . 'Actions' . "\n" . '<span class="caret"></span>' . "\n" . '</button>' . "\n" . '<ul class="dropdown-menu">' . "\n" . '<li><a class="" href="http://example.com/base/bar"></a></li>' . "\n" . '<li><a class="" href="http://example.com/base/baz"></a></li>' . "\n" . '</ul>' . "\n" . '</div>' . "\n" . '</td>' . "\n" . '<td>bar item</td>'); }
private function registerDefaultAction() { $this->actions->add(self::INDEX_ACTION, new ListActions($this->actions, $this->groups, $this->access, $this->parser)); }
private function givenIRegisteredTheAction($id) { $this->registry->add($id, Mockster::mock(Action::class)); }
private function givenTheAction($id) { $this->actions->add($id, Mockster::mock(Mockster::of(Action::class))); }