Ejemplo n.º 1
0
 def level3():
     self.assertEqual(fiber.get_stack_var(NAME1), None)
     self.assertEqual(fiber.get_stack_var(NAME2), VALUE2)
     self.assertEqual(fiber.get_stack_var(NAME3), None)
     fiber.set_stack_var(NAME1, VALUE1)
     self.assertEqual(fiber.get_stack_var(NAME1), VALUE1)
     self.assertEqual(fiber.get_stack_var(NAME2), VALUE2)
     self.assertEqual(fiber.get_stack_var(NAME3), None)
     level4()
     self.assertEqual(fiber.get_stack_var(NAME1), VALUE1)
     self.assertEqual(fiber.get_stack_var(NAME2), VALUE2)
     self.assertEqual(fiber.get_stack_var(NAME3), None)
Ejemplo n.º 2
0
Archivo: journal.py Proyecto: f3at/feat
def add_effect(effect_id, *args, **kwargs):
    """If inside a side-effect, adds an effect to it."""
    effect = fiber.get_stack_var(SIDE_EFFECT_TAG)
    if effect is None:
        return False
    effect.add_effect(effect_id, *args, **kwargs)
    return True
Ejemplo n.º 3
0
 def level1():
     self.assertEqual(fiber.get_stack_var(NAME1), VALUE1)
     self.assertEqual(fiber.get_stack_var(NAME2), None)
     self.assertEqual(fiber.get_stack_var(NAME3), None)
     level2()
     self.assertEqual(fiber.get_stack_var(NAME1), VALUE1)
     self.assertEqual(fiber.get_stack_var(NAME2), None)
     self.assertEqual(fiber.get_stack_var(NAME3), None)
Ejemplo n.º 4
0
 def level4():
     self.assertEqual(fiber.get_stack_var(NAME1), VALUE1)
     self.assertEqual(fiber.get_stack_var(NAME2), VALUE2)
     self.assertEqual(fiber.get_stack_var(NAME3), None)
     fiber.set_stack_var(NAME3, VALUE3)
     fiber.set_stack_var(NAME2, VALUE2)
     self.assertEqual(fiber.get_stack_var(NAME1), VALUE1)
     self.assertEqual(fiber.get_stack_var(NAME2), VALUE2)
     self.assertEqual(fiber.get_stack_var(NAME3), VALUE3)
     fiber.break_fiber()
     self.assertEqual(fiber.get_stack_var(NAME1), None)
     self.assertEqual(fiber.get_stack_var(NAME2), None)
     self.assertEqual(fiber.get_stack_var(NAME3), None)
     fiber.set_stack_var(NAME3, VALUE3)
     self.assertEqual(fiber.get_stack_var(NAME1), None)
     self.assertEqual(fiber.get_stack_var(NAME2), None)
     self.assertEqual(fiber.get_stack_var(NAME3), VALUE3)
     level5()
     self.assertEqual(fiber.get_stack_var(NAME1), None)
     self.assertEqual(fiber.get_stack_var(NAME2), None)
     self.assertEqual(fiber.get_stack_var(NAME3), VALUE3)
Ejemplo n.º 5
0
    def testStackVars(self):

        NAME1 = "__test__"
        VALUE1 = 42
        NAME2 = "__test2__"
        VALUE2 = 66
        NAME3 = "__test3__"
        VALUE3 = 18

        def level1():
            self.assertEqual(fiber.get_stack_var(NAME1), VALUE1)
            self.assertEqual(fiber.get_stack_var(NAME2), None)
            self.assertEqual(fiber.get_stack_var(NAME3), None)
            level2()
            self.assertEqual(fiber.get_stack_var(NAME1), VALUE1)
            self.assertEqual(fiber.get_stack_var(NAME2), None)
            self.assertEqual(fiber.get_stack_var(NAME3), None)

        def level2():
            self.assertEqual(fiber.get_stack_var(NAME1), VALUE1)
            self.assertEqual(fiber.get_stack_var(NAME2), None)
            self.assertEqual(fiber.get_stack_var(NAME3), None)
            fiber.break_fiber()
            self.assertEqual(fiber.get_stack_var(NAME1), None)
            self.assertEqual(fiber.get_stack_var(NAME2), None)
            self.assertEqual(fiber.get_stack_var(NAME3), None)
            fiber.set_stack_var(NAME2, VALUE2)
            self.assertEqual(fiber.get_stack_var(NAME1), None)
            self.assertEqual(fiber.get_stack_var(NAME2), VALUE2)
            self.assertEqual(fiber.get_stack_var(NAME3), None)
            level3()
            self.assertEqual(fiber.get_stack_var(NAME1), None)
            self.assertEqual(fiber.get_stack_var(NAME2), VALUE2)
            self.assertEqual(fiber.get_stack_var(NAME3), None)

        def level3():
            self.assertEqual(fiber.get_stack_var(NAME1), None)
            self.assertEqual(fiber.get_stack_var(NAME2), VALUE2)
            self.assertEqual(fiber.get_stack_var(NAME3), None)
            fiber.set_stack_var(NAME1, VALUE1)
            self.assertEqual(fiber.get_stack_var(NAME1), VALUE1)
            self.assertEqual(fiber.get_stack_var(NAME2), VALUE2)
            self.assertEqual(fiber.get_stack_var(NAME3), None)
            level4()
            self.assertEqual(fiber.get_stack_var(NAME1), VALUE1)
            self.assertEqual(fiber.get_stack_var(NAME2), VALUE2)
            self.assertEqual(fiber.get_stack_var(NAME3), None)

        def level4():
            self.assertEqual(fiber.get_stack_var(NAME1), VALUE1)
            self.assertEqual(fiber.get_stack_var(NAME2), VALUE2)
            self.assertEqual(fiber.get_stack_var(NAME3), None)
            fiber.set_stack_var(NAME3, VALUE3)
            fiber.set_stack_var(NAME2, VALUE2)
            self.assertEqual(fiber.get_stack_var(NAME1), VALUE1)
            self.assertEqual(fiber.get_stack_var(NAME2), VALUE2)
            self.assertEqual(fiber.get_stack_var(NAME3), VALUE3)
            fiber.break_fiber()
            self.assertEqual(fiber.get_stack_var(NAME1), None)
            self.assertEqual(fiber.get_stack_var(NAME2), None)
            self.assertEqual(fiber.get_stack_var(NAME3), None)
            fiber.set_stack_var(NAME3, VALUE3)
            self.assertEqual(fiber.get_stack_var(NAME1), None)
            self.assertEqual(fiber.get_stack_var(NAME2), None)
            self.assertEqual(fiber.get_stack_var(NAME3), VALUE3)
            level5()
            self.assertEqual(fiber.get_stack_var(NAME1), None)
            self.assertEqual(fiber.get_stack_var(NAME2), None)
            self.assertEqual(fiber.get_stack_var(NAME3), VALUE3)

        def level5():
            self.assertEqual(fiber.get_stack_var(NAME1), None)
            self.assertEqual(fiber.get_stack_var(NAME2), None)
            self.assertEqual(fiber.get_stack_var(NAME3), VALUE3)

        fiber.set_stack_var(NAME1, VALUE1)
        self.assertEqual(fiber.get_stack_var(NAME1), VALUE1)
        self.assertEqual(fiber.get_stack_var(NAME2), None)
        self.assertEqual(fiber.get_stack_var(NAME3), None)