public function testAllowTransition() { $this->assertFalse($this->step->hasAllowedTransitions()); $this->step->allowTransition('test'); $this->assertTrue($this->step->hasAllowedTransitions()); $this->assertEquals(array('test'), $this->step->getAllowedTransitions(), 'Transition was not allowed'); // Check duplicate $this->step->allowTransition('test'); $this->assertEquals(array('test'), $this->step->getAllowedTransitions(), 'Transition was allowed more than once'); // Check allowing more than one transition $this->step->allowTransition('test2'); $this->assertEquals(array('test', 'test2'), $this->step->getAllowedTransitions(), 'Second transition was not allowed'); // Check disallow $this->step->disallowTransition('test2'); $this->assertEquals(array('test'), $this->step->getAllowedTransitions(), 'Transition was not disallowed'); // Check isAllowed $this->assertTrue($this->step->isAllowedTransition('test'), 'Expected transition not allowed'); $this->assertFalse($this->step->isAllowedTransition('test2'), 'Unexpected transition allowed'); }