def test_byte_errors(self): if sys.version_info < (3, 0): self.assertRaises(UnicodeEncodeError, lambda: compat.binary(uchar())) else: self.assertRaises(TypeError, lambda: compat.binary(uchar()))
def test_string_bytes_io(self): io = compat.IO(b"Hello world!") value = io.read() self.assertEquals(value, b"Hello world!") self.failUnless(isinstance(value, compat.binary)) self.assertRaises(TypeError, lambda: compat.IO(uchar()))
def test_array(self): self.assertEqual(conv.array(None), []) self.assertEqual(conv.array([]), []) self.assertEqual(conv.array([1, '', 2, 3]), [1, 2, 3]) self.assertEqual(conv.array([1, '', 3], empty=True), [1, '', 3]) self.assertEqual(conv.array((4, '', 5)), [4, 5]) self.assertEqual(conv.array((4, '', 5), empty=True), [4, '', 5]) self.assertEqual(conv.array("foo,bar"), ["foo", "bar"]) self.assertEqual(conv.array("foo,,bar", empty=True), ["foo", '', "bar"]) self.assertEqual(conv.array(uchar()), [uchar()]) self.assertEqual(conv.array("foo|bar", '|'), ["foo", "bar"]) self.assertEqual(conv.array("baz |diz", '|', False), ["baz ", "diz"]) self.assertEqual(conv.array("baz||diz", '|', False, True), ["baz", '', "diz"]) self.assertEqual(conv.array("baz diz", None), ["baz", "diz"]) self.assertEqual(conv.array("baz diz", None, False, False), ["baz", "diz"])
def test_unicode(self): text = compat.unicode(uchar()) self.assertEquals(len(text), 1) self.failUnless(isinstance(text.encode('utf8'), compat.binary)) self.assertEquals(len(text.encode('utf8')), 2)