asyncio: sync with Tulip

- Python issue 21163: Fix more "Task was destroyed but it is pending!" logs in
  tests
- Add test to check that run_until_complete() checks the loop of the future
This commit is contained in:
Victor Stinner 2014-06-25 23:32:25 +02:00
parent 87f16f892c
commit 7ba4061098
2 changed files with 9 additions and 0 deletions

View File

@ -288,6 +288,12 @@ class BaseEventLoopTests(test_utils.TestCase):
self.assertRaises(TypeError,
self.loop.run_until_complete, 'blah')
def test_run_until_complete_loop(self):
task = asyncio.Future(loop=self.loop)
other_loop = self.new_test_loop()
self.assertRaises(ValueError,
other_loop.run_until_complete, task)
def test_subprocess_exec_invalid_args(self):
args = [sys.executable, '-c', 'pass']

View File

@ -51,6 +51,7 @@ class TaskTests(test_utils.TestCase):
self.set_event_loop(loop)
t = asyncio.Task(notmuch(), loop=loop)
self.assertIs(t._loop, loop)
loop.run_until_complete(t)
loop.close()
def test_async_coroutine(self):
@ -67,6 +68,7 @@ class TaskTests(test_utils.TestCase):
self.set_event_loop(loop)
t = asyncio.async(notmuch(), loop=loop)
self.assertIs(t._loop, loop)
loop.run_until_complete(t)
loop.close()
def test_async_future(self):
@ -213,6 +215,7 @@ class TaskTests(test_utils.TestCase):
t.add_done_callback(Dummy())
self.assertEqual(repr(t),
'<Task pending %s cb=[<Dummy>()]>' % coro)
self.loop.run_until_complete(t)
def test_task_basics(self):
@asyncio.coroutine