def test_looking_up_state_by_name_returning_not_found(self): start_state = State(name='start') do_work_event = Event(name='do_work', source_states=[start_state], destination_state=start_state) fsm = StateMachine(states=[start_state], events=[do_work_event], initial_state=start_state) with pytest.raises(StateMachineError) as context_manager: fsm.state_by_name('busy') expected_exception = context_manager.value assert expected_exception.identifier == STATE_MACHINE.STATE_NOT_FOUND_IDENTIFIER
def test_looking_up_state_by_name_sucessfully(self): start_state = State(name='start') busy_state = State(name='busy') do_work_event = Event(name='do_work', source_states=[start_state], destination_state=busy_state) fsm = StateMachine(states=[start_state, busy_state], events=[do_work_event], initial_state=start_state) found_state = fsm.state_by_name('busy') assert found_state == busy_state