def test_assignment(self): my_local = corolocal.local() my_local.a = 1 def do_something(): my_local.b = 2 self.assertEqual(my_local.b, 2) try: my_local.a self.fail() except AttributeError: pass spawn(do_something).wait() self.assertEqual(my_local.a, 1)
def test_assignment (self): my_local = corolocal.local() my_local.a = 1 def do_something (): my_local.b = 2 self.assertEqual(my_local.b, 2) try: my_local.a self.fail() except AttributeError: pass spawn(do_something).wait() self.assertEqual(my_local.a, 1)
def test_no_leaking(self): refs = weakref.WeakKeyDictionary() my_local = corolocal.local() class X(object): pass def do_something(i): o = X() refs[o] = True my_local.foo = o p = GreenPool() for i in xrange(100): p.spawn(do_something, i) p.waitall() del p # at this point all our coros have terminated self.assertEqual(len(refs), 1)
def test_no_leaking (self): refs = weakref.WeakKeyDictionary() my_local = corolocal.local() class X(object): pass def do_something (i): o = X() refs[o] = True my_local.foo = o p = GreenPool() for i in xrange(100): p.spawn(do_something, i) p.waitall() del p # at this point all our coros have terminated self.assertEqual(len(refs), 1)