/** * @param \Khaos\FSM\State\State $to * @param \Khaos\FSM\Stateful $context * @param \Khaos\FSM\Runner\Runner $runner */ function it_can_transition_the_specified_context_to_the_set_state($to, $context, $runner) { $to->__toString()->willReturn('To'); $this->apply('Transition A', $context, $runner); $context->setCurrentState($to)->shouldHaveBeenCalled(); }
/** * @param \Khaos\FSM\State\State $s1 * @param \Khaos\FSM\State\State $s2 */ function it_can_have_the_initial_state_changed($s1, $s2) { $s1->__toString()->willReturn('S1'); $s2->__toString()->willReturn('S2'); $this->addState($s1); $this->addState($s2); $this->setInitialState($s2); $this->getInitialState()->shouldReturn($s2); }