Ejemplo n.º 1
0
 def testExtraListenerWithDynamicAndPredefinedArguments(self):
     self.called = []
     self.args = []
     class Listener:
         post=""
         def enter_a(s, *a): self.called.append("enter_a"+s.post); self.args += a
     m = StateMachine(Listener())
     l2 = Listener()
     l2.post = "2"
     m.addListener(l2, "foo", "bar", 1234)
     m.set("a", "meh")
     self.assertEquals(self.called, ["enter_a", "enter_a2"])
     self.assertEquals(self.args, ["meh", "foo", "bar", 1234, "meh" ])
Ejemplo n.º 2
0
 def testExtraListener(self):
     self.called = []
     class Listener:
         post=""
         def enter_a(s): self.called.append("enter_a"+s.post)
         def exit_a(s): self.called.append("exit_a"+s.post)
         def enter_b(s): self.called.append("enter_b"+s.post)
         def exit_b(s): self.called.append("exit_b"+s.post)
     m = StateMachine(Listener())
     l2 = Listener()
     l2.post = "2"
     m.addListener(l2)
     m.set("a")
     self.assertEquals(self.called, ["enter_a", "enter_a2"])
     m.set("b")
     self.assertEquals(self.called, ["enter_a", "enter_a2", "exit_a2", "exit_a", "enter_b", "enter_b2"])