Esempio n. 1
0
    def test_get_normal_transition_when_there_is_a_match(self):
        fsm = FSM(1)
        fsm.state_transitions = {('b', 1): (None, None, 2)}
        first_fsm = self.get_test_fsm()
        fsm.memory = {2: [first_fsm]}

        (_, _, next_state) = fsm.get_transition('b', 1)
        self.assertEqual(next_state, 2)
        self.assertEqual(fsm.memory.get(2), [first_fsm])
Esempio n. 2
0
    def test_get_normal_transition_when_there_is_a_match(self):
        fsm = FSM(1)
        fsm.state_transitions = {('b', 1):(None, None, 2)}
        first_fsm = self.get_test_fsm()
        fsm.memory = {2: [first_fsm]}

        (_, _, next_state) = fsm.get_transition('b', 1)
        self.assertEqual(next_state,2)
        self.assertEqual(fsm.memory.get(2),[first_fsm])
Esempio n. 3
0
 def test_get_normal_transition_when_there_is_no_match_but_such_transition_exist(self):
     fsm = FSM(1)
     #fsm.state_transitions = {('b', 1):(None, 2)}
     first_fsm = FSM('1_1')
     first_fsm.state_transitions = {('a', '1_1'):(None, None, '1_2'), (fsm.END_PAR_TRANSITION, '1_2'): (None, None, 2)}
     fsm.memory = {2: [first_fsm]}
     (_, _, next_state) = fsm.get_transition( 'a', 2)
     log.debug("test_get_normal_transition_when_there_is_no_match_but_such_transition_exist:%s", fsm.memory)
     self.assertEqual(fsm.memory, {2:[]})
     self.assertEqual(next_state, 2)
Esempio n. 4
0
 def test_get_normal_transition_when_there_is_no_match_but_such_transition_exist(
         self):
     fsm = FSM(1)
     #fsm.state_transitions = {('b', 1):(None, 2)}
     first_fsm = FSM('1_1')
     first_fsm.state_transitions = {
         ('a', '1_1'): (None, None, '1_2'),
         (fsm.END_PAR_TRANSITION, '1_2'): (None, None, 2)
     }
     fsm.memory = {2: [first_fsm]}
     (_, _, next_state) = fsm.get_transition('a', 2)
     log.debug(
         "test_get_normal_transition_when_there_is_no_match_but_such_transition_exist:%s",
         fsm.memory)
     self.assertEqual(fsm.memory, {2: []})
     self.assertEqual(next_state, 2)
Esempio n. 5
0
 def test_get_normal_transition_when_there_is_no_match(self):
     fsm = FSM(1)
     fsm.state_transitions = {('b', 1): (None, None, 2)}
     first_fsm = self.get_test_fsm()
     fsm.memory = {2: [first_fsm]}
     self.assertRaises(ExceptionFSM, fsm.get_transition, 'c', 1)
Esempio n. 6
0
 def get_test_fsm(self):
     # build test data
     testData = FSM('1_1')
     testData.state_transitions = {('a', '1_1'): (None, None, '1_2')}
     return testData
Esempio n. 7
0
 def test_get_normal_transition_when_there_is_no_match(self):
     fsm = FSM(1)
     fsm.state_transitions = {('b', 1):(None, None, 2)}
     first_fsm = self.get_test_fsm()
     fsm.memory = {2: [first_fsm]}
     self.assertRaises(ExceptionFSM, fsm.get_transition, 'c', 1)
Esempio n. 8
0
 def get_test_fsm(self):
     # build test data
     testData = FSM('1_1')
     testData.state_transitions = {('a', '1_1'):(None, None, '1_2')}
     return testData