Example #1
0
 public function testGetters()
 {
     $states = ['state1' => new State('state1', StateInterface::TYPE_INITIAL), 'state2' => new State('state2', StateInterface::TYPE_FINAL)];
     $transitions = ['state1' => ['promote' => [new Transition('state1', 'state2')]]];
     $state_machine = new StateMachine('test_machine', $states, $transitions);
     $this->assertEquals('test_machine', $state_machine->getName());
     $this->assertEquals($states['state1'], $state_machine->getState('state1'));
     $this->assertEquals($states['state2'], $state_machine->getState('state2'));
     $this->assertEquals([$states['state2']], $state_machine->getFinalStates());
     $this->assertEquals([$states['state1']], $state_machine->getEventStates());
     $this->assertContains($transitions['state1']['promote'][0], $state_machine->getTransitions('state1', 'promote'));
 }