Skip to content

Commit e8594aa

Browse files
[3.13] gh-121708: Improve test coverage for unittest.util (GH-121713) (GH-121738)
(cherry picked from commit 901ea41) Co-authored-by: Tomas R <tomas.roun8@gmail.com>
1 parent 48a96d2 commit e8594aa

File tree

1 file changed

+33
-0
lines changed

1 file changed

+33
-0
lines changed

Lib/test/test_unittest/test_util.py

+33
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
import unittest
2+
from unittest.util import safe_repr, sorted_list_difference, unorderable_list_difference
3+
4+
5+
class TestUtil(unittest.TestCase):
6+
def test_safe_repr(self):
7+
class RaisingRepr:
8+
def __repr__(self):
9+
raise ValueError("Invalid repr()")
10+
11+
class LongRepr:
12+
def __repr__(self):
13+
return 'x' * 100
14+
15+
safe_repr(RaisingRepr())
16+
self.assertEqual(safe_repr('foo'), "'foo'")
17+
self.assertEqual(safe_repr(LongRepr(), short=True), 'x'*80 + ' [truncated]...')
18+
19+
def test_sorted_list_difference(self):
20+
self.assertEqual(sorted_list_difference([], []), ([], []))
21+
self.assertEqual(sorted_list_difference([1, 2], [2, 3]), ([1], [3]))
22+
self.assertEqual(sorted_list_difference([1, 2], [1, 3]), ([2], [3]))
23+
self.assertEqual(sorted_list_difference([1, 1, 1], [1, 2, 3]), ([], [2, 3]))
24+
self.assertEqual(sorted_list_difference([4], [1, 2, 3, 4]), ([], [1, 2, 3]))
25+
self.assertEqual(sorted_list_difference([1, 1], [2]), ([1], [2]))
26+
self.assertEqual(sorted_list_difference([2], [1, 1]), ([2], [1]))
27+
self.assertEqual(sorted_list_difference([1, 2], [1, 1]), ([2], []))
28+
29+
def test_unorderable_list_difference(self):
30+
self.assertEqual(unorderable_list_difference([], []), ([], []))
31+
self.assertEqual(unorderable_list_difference([1, 2], []), ([2, 1], []))
32+
self.assertEqual(unorderable_list_difference([], [1, 2]), ([], [1, 2]))
33+
self.assertEqual(unorderable_list_difference([1, 2], [1, 3]), ([2], [3]))

0 commit comments

Comments
 (0)