def testJoinException(self):

        def sub2():
            raise Exception("test_exc")

        def sub1():
            sub2()

        def child():
            sub1()

        ch = Tasklet.new(child)()
        try:
            Tasklet.join(ch)
            self.fail('expected join error')
        except JoinError, e:
            self.assertEquals(ch, e.tasklet)
            self.assertTrue(isinstance(e.cause, Exception))
            self.assertEqual('test_exc', str(e.cause))
        except:
            self.fail('expected tasklet error')
test join where child raised exception, checks that parent receives exception
dataset/ETHPy150Open concurrence/concurrence/test/testcore.py/TestTasklet.testJoinException