def __init__(self, parent, automaton=None):
     if automaton is None:
         automaton = DeterministicFiniteAutomaton(None)
     super(DFAProjectWidget,
           self).__init__(parent, automaton, DFAGraphController,
                          DFAGraphScene, AutomatonRunner,
                          AutomatonStateManager, SequenceInputWidget,
                          StateManager, SymbolManager)
 def removeTransition(self, fromStateId, input):
     key = DeterministicFiniteAutomaton.createTransitionKey(
         input, fromStateId)
     self.automaton.removeTransition(key)
     self.signalTransitionRemoved.emit({
         'fromStateId': fromStateId,
         'onInput': input
     })
Beispiel #3
0
 def test_transition_value_creation(self):
     value = DeterministicFiniteAutomaton.createTransitionValue(
         'a', 'b', 'c')
     self.assertEqual(value.fromState, 'a')
     self.assertEqual(value.onInput, 'b')
     self.assertEqual(value.toState, 'c')
Beispiel #4
0
 def getInstance(self):
     testObj = DeterministicFiniteAutomaton(['a'], 0, [0], 1)
     return testObj
Beispiel #5
0
 def test_transition_key_creation(self):
     self.assertEqual(
         DeterministicFiniteAutomaton.createTransitionKey('a', 'b'),
         "a_!_b")
Beispiel #6
0
 def getInstance(self):
     testObj = DeterministicFiniteAutomaton(['a'], 0, [0], 2)
     self.state0Id = list(testObj._states.keys())[0]
     self.state1Id = list(testObj._states.keys())[1]
     return testObj