Issue #21849: Ported from 2.7 tests for non-ASCII data.

This commit is contained in:
Serhiy Storchaka 2015-02-13 15:19:08 +02:00
commit 2eab85b7a2
1 changed files with 13 additions and 7 deletions

View File

@ -2020,6 +2020,12 @@ SERIALIZER = 'xmlrpclib'
class _TestRemoteManager(BaseTestCase): class _TestRemoteManager(BaseTestCase):
ALLOWED_TYPES = ('manager',) ALLOWED_TYPES = ('manager',)
values = ['hello world', None, True, 2.25,
'hall\xe5 v\xe4rlden',
'\u043f\u0440\u0438\u0432\u0456\u0442 \u0441\u0432\u0456\u0442',
b'hall\xe5 v\xe4rlden',
]
result = values[:]
@classmethod @classmethod
def _putter(cls, address, authkey): def _putter(cls, address, authkey):
@ -2028,7 +2034,8 @@ class _TestRemoteManager(BaseTestCase):
) )
manager.connect() manager.connect()
queue = manager.get_queue() queue = manager.get_queue()
queue.put(('hello world', None, True, 2.25)) # Note that xmlrpclib will deserialize object as a list not a tuple
queue.put(tuple(cls.values))
def test_remote(self): def test_remote(self):
authkey = os.urandom(32) authkey = os.urandom(32)
@ -2048,8 +2055,7 @@ class _TestRemoteManager(BaseTestCase):
manager2.connect() manager2.connect()
queue = manager2.get_queue() queue = manager2.get_queue()
# Note that xmlrpclib will deserialize object as a list not a tuple self.assertEqual(queue.get(), self.result)
self.assertEqual(queue.get(), ['hello world', None, True, 2.25])
# Because we are using xmlrpclib for serialization instead of # Because we are using xmlrpclib for serialization instead of
# pickle this will cause a serialization error. # pickle this will cause a serialization error.
@ -3405,12 +3411,12 @@ class TestNoForkBomb(unittest.TestCase):
name = os.path.join(os.path.dirname(__file__), 'mp_fork_bomb.py') name = os.path.join(os.path.dirname(__file__), 'mp_fork_bomb.py')
if sm != 'fork': if sm != 'fork':
rc, out, err = test.script_helper.assert_python_failure(name, sm) rc, out, err = test.script_helper.assert_python_failure(name, sm)
self.assertEqual('', out.decode('ascii')) self.assertEqual(out, b'')
self.assertIn('RuntimeError', err.decode('ascii')) self.assertIn(b'RuntimeError', err)
else: else:
rc, out, err = test.script_helper.assert_python_ok(name, sm) rc, out, err = test.script_helper.assert_python_ok(name, sm)
self.assertEqual('123', out.decode('ascii').rstrip()) self.assertEqual(out.rstrip(), b'123')
self.assertEqual('', err.decode('ascii')) self.assertEqual(err, b'')
# #
# Issue #17555: ForkAwareThreadLock # Issue #17555: ForkAwareThreadLock