Test PyUnicode_Compare()
(self)
| 1430 | @support.cpython_only |
| 1431 | @unittest.skipIf(_testlimitedcapi is None, 'need _testlimitedcapi module') |
| 1432 | def test_compare(self): |
| 1433 | """Test PyUnicode_Compare()""" |
| 1434 | from _testlimitedcapi import unicode_compare as compare |
| 1435 | |
| 1436 | self.assertEqual(compare('abc', 'abc'), 0) |
| 1437 | self.assertEqual(compare('abc', 'def'), -1) |
| 1438 | self.assertEqual(compare('def', 'abc'), 1) |
| 1439 | self.assertEqual(compare('abc', 'abc\0def'), -1) |
| 1440 | self.assertEqual(compare('abc\0def', 'abc\0def'), 0) |
| 1441 | self.assertEqual(compare('абв', 'abc'), 1) |
| 1442 | |
| 1443 | self.assertRaises(TypeError, compare, b'abc', 'abc') |
| 1444 | self.assertRaises(TypeError, compare, 'abc', b'abc') |
| 1445 | self.assertRaises(TypeError, compare, b'abc', b'abc') |
| 1446 | self.assertRaises(TypeError, compare, [], 'abc') |
| 1447 | self.assertRaises(TypeError, compare, 'abc', []) |
| 1448 | self.assertRaises(TypeError, compare, [], []) |
| 1449 | # CRASHES compare(NULL, 'abc') |
| 1450 | # CRASHES compare('abc', NULL) |
| 1451 | |
| 1452 | @support.cpython_only |
| 1453 | @unittest.skipIf(_testlimitedcapi is None, 'need _testlimitedcapi module') |
nothing calls this directly
no test coverage detected