diff options
Diffstat (limited to 'Lib/test/test__xxsubinterpreters.py')
-rw-r--r-- | Lib/test/test__xxsubinterpreters.py | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/Lib/test/test__xxsubinterpreters.py b/Lib/test/test__xxsubinterpreters.py index 30f8f98acc..8a368dc113 100644 --- a/Lib/test/test__xxsubinterpreters.py +++ b/Lib/test/test__xxsubinterpreters.py @@ -1302,6 +1302,27 @@ class ChannelTests(TestBase): with self.assertRaises(interpreters.ChannelEmptyError): interpreters.channel_recv(cid) + def test_recv_default(self): + default = object() + cid = interpreters.channel_create() + obj1 = interpreters.channel_recv(cid, default) + interpreters.channel_send(cid, None) + interpreters.channel_send(cid, 1) + interpreters.channel_send(cid, b'spam') + interpreters.channel_send(cid, b'eggs') + obj2 = interpreters.channel_recv(cid, default) + obj3 = interpreters.channel_recv(cid, default) + obj4 = interpreters.channel_recv(cid) + obj5 = interpreters.channel_recv(cid, default) + obj6 = interpreters.channel_recv(cid, default) + + self.assertIs(obj1, default) + self.assertIs(obj2, None) + self.assertEqual(obj3, 1) + self.assertEqual(obj4, b'spam') + self.assertEqual(obj5, b'eggs') + self.assertIs(obj6, default) + def test_run_string_arg_unresolved(self): cid = interpreters.channel_create() interp = interpreters.create() |