diff options
author | Vincent Vinet <vince.vinet@gmail.com> | 2009-10-23 19:08:32 (GMT) |
---|---|---|
committer | Vincent Vinet <vince.vinet@gmail.com> | 2009-10-23 19:08:32 (GMT) |
commit | 704e35494433a11ecdcf675fff7cfccaa8bbd2ec (patch) | |
tree | 0757d4f3fa7cc0613135897d65e5fa827d4abb41 /tutorius/core.py | |
parent | fa1197aad8d56b43bdf57ec3ad3ef9b9216d1376 (diff) |
fix some of the tests, fix some bugs
Diffstat (limited to 'tutorius/core.py')
-rw-r--r-- | tutorius/core.py | 20 |
1 files changed, 5 insertions, 15 deletions
diff --git a/tutorius/core.py b/tutorius/core.py index 15a0c87..b24b80b 100644 --- a/tutorius/core.py +++ b/tutorius/core.py @@ -271,7 +271,7 @@ class State(object): if len(self._actions) != len(otherState._actions): return False - if len(self._event_filters) != len(otherState._event_filters): + if len(self._transitions) != len(otherState._transitions): return False for act in self._actions: @@ -287,18 +287,8 @@ class State(object): return False # Do they have the same event filters? - for event in self._event_filters: - found = False - # For every event filter in the other state, try to match it with - # the current filter. We just need to find one with the right - # properties and values. - for otherEvent in otherState._event_filters: - if event == otherEvent: - found = True - break - if found == False: - # We could not find the given event filter in the other state. - return False + if self._transitions != otherState._transitions: + return False # If nothing failed up to now, then every actions and every filters can # be found in the other state @@ -536,7 +526,7 @@ class FiniteStateMachine(State): next_states = set() - for event, state in state._transitions: + for event, state in state._transitions.items(): next_states.add(state) return tuple(next_states) @@ -559,7 +549,7 @@ class FiniteStateMachine(State): states = [] # Walk through the list of states for st in self._states.itervalues(): - for event, state in st._transitions: + for event, state in st._transitions.items(): if state == state_name: states.append(state) continue |