diff options
| author | Michael Foord <fuzzyman@voidspace.org.uk> | 2010-07-10 13:51:42 (GMT) |
|---|---|---|
| committer | Michael Foord <fuzzyman@voidspace.org.uk> | 2010-07-10 13:51:42 (GMT) |
| commit | 94f071c7158e8751063a9692bc86a4122b0a717a (patch) | |
| tree | f9db08c85a447f75d50607739e8dddd43c11f47b /Lib/unittest/case.py | |
| parent | 8e93f4e791d9e0fab7a40d1c95f5071f166f8390 (diff) | |
| download | cpython-94f071c7158e8751063a9692bc86a4122b0a717a.zip cpython-94f071c7158e8751063a9692bc86a4122b0a717a.tar.gz cpython-94f071c7158e8751063a9692bc86a4122b0a717a.tar.bz2 | |
Fix error message for comparing single line strings in unittest.TestCase.assertEqual.
Issue 9174
Diffstat (limited to 'Lib/unittest/case.py')
| -rw-r--r-- | Lib/unittest/case.py | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/Lib/unittest/case.py b/Lib/unittest/case.py index 85ff002..28a68e8 100644 --- a/Lib/unittest/case.py +++ b/Lib/unittest/case.py @@ -895,9 +895,14 @@ class TestCase(object): 'Second argument is not a string')) if first != second: - standardMsg = '%s != %s' % (safe_repr(first, True), safe_repr(second, True)) - diff = '\n' + ''.join(difflib.ndiff(first.splitlines(True), - second.splitlines(True))) + firstlines = first.splitlines(True) + secondlines = second.splitlines(True) + if len(firstlines) == 1 and first.strip('\r\n') == first: + firstlines = [first + '\n'] + secondlines = [second + '\n'] + standardMsg = '%s != %s' % (safe_repr(first, True), + safe_repr(second, True)) + diff = '\n' + ''.join(difflib.ndiff(firstlines, secondlines)) standardMsg = self._truncateMessage(standardMsg, diff) self.fail(self._formatMessage(msg, standardMsg)) |
