/** * {@inheritdoc} */ public function match(Transition $transition, Item $item, Context $context, ErrorCollection $errorCollection) { $permission = $transition->getPermission(); if ($this->checkPermission($permission)) { return true; } $errorCollection->addError('transition.condition.transition-permission', array((string) $permission)); return false; }
function it_does_not_match_if_transition_has_no_permission(Transition $transition, Item $item, Context $context, ErrorCollection $errorCollection) { $transition->getPermission()->willReturn(null); $errorCollection->addError(Argument::cetera())->shouldBeCalled(); $this->match($transition, $item, $context, $errorCollection)->shouldReturn(false); }