mirror of
				https://github.com/python/cpython.git
				synced 2025-10-31 13:41:24 +00:00 
			
		
		
		
	Tests for unittest.TestCase.maxDiff.
This commit is contained in:
		
							parent
							
								
									d891859711
								
							
						
					
					
						commit
						c1d7c5b7fa
					
				
					 1 changed files with 39 additions and 0 deletions
				
			
		|  | @ -596,6 +596,8 @@ def testAssertSequenceEqualMaxDiff(self): | ||||||
|         seq2 = 'b' + 'x' * 80**2 |         seq2 = 'b' + 'x' * 80**2 | ||||||
|         diff = '\n'.join(difflib.ndiff(pprint.pformat(seq1).splitlines(), |         diff = '\n'.join(difflib.ndiff(pprint.pformat(seq1).splitlines(), | ||||||
|                                        pprint.pformat(seq2).splitlines())) |                                        pprint.pformat(seq2).splitlines())) | ||||||
|  |         # the +1 is the leading \n added by assertSequenceEqual | ||||||
|  |         omitted = unittest.case.DIFF_OMITTED % (len(diff) + 1,) | ||||||
| 
 | 
 | ||||||
|         self.maxDiff = len(diff)//2 |         self.maxDiff = len(diff)//2 | ||||||
|         try: |         try: | ||||||
|  | @ -605,6 +607,7 @@ def testAssertSequenceEqualMaxDiff(self): | ||||||
|         else: |         else: | ||||||
|             self.fail('assertSequenceEqual did not fail.') |             self.fail('assertSequenceEqual did not fail.') | ||||||
|         self.assertTrue(len(msg) < len(diff)) |         self.assertTrue(len(msg) < len(diff)) | ||||||
|  |         self.assertIn(omitted, msg) | ||||||
| 
 | 
 | ||||||
|         self.maxDiff = len(diff) * 2 |         self.maxDiff = len(diff) * 2 | ||||||
|         try: |         try: | ||||||
|  | @ -614,6 +617,7 @@ def testAssertSequenceEqualMaxDiff(self): | ||||||
|         else: |         else: | ||||||
|             self.fail('assertSequenceEqual did not fail.') |             self.fail('assertSequenceEqual did not fail.') | ||||||
|         self.assertTrue(len(msg) > len(diff)) |         self.assertTrue(len(msg) > len(diff)) | ||||||
|  |         self.assertNotIn(omitted, msg) | ||||||
| 
 | 
 | ||||||
|         self.maxDiff = None |         self.maxDiff = None | ||||||
|         try: |         try: | ||||||
|  | @ -623,6 +627,41 @@ def testAssertSequenceEqualMaxDiff(self): | ||||||
|         else: |         else: | ||||||
|             self.fail('assertSequenceEqual did not fail.') |             self.fail('assertSequenceEqual did not fail.') | ||||||
|         self.assertTrue(len(msg) > len(diff)) |         self.assertTrue(len(msg) > len(diff)) | ||||||
|  |         self.assertNotIn(omitted, msg) | ||||||
|  | 
 | ||||||
|  |     def testTruncateMessage(self): | ||||||
|  |         self.maxDiff = 1 | ||||||
|  |         message = self._truncateMessage('foo', 'bar') | ||||||
|  |         omitted = unittest.case.DIFF_OMITTED % len('bar') | ||||||
|  |         self.assertEqual(message, 'foo' + omitted) | ||||||
|  | 
 | ||||||
|  |         self.maxDiff = None | ||||||
|  |         message = self._truncateMessage('foo', 'bar') | ||||||
|  |         self.assertEqual(message, 'foobar') | ||||||
|  | 
 | ||||||
|  |     def testAssertDictEqualTruncates(self): | ||||||
|  |         test = unittest.TestCase('assertEqual') | ||||||
|  |         def truncate(msg, diff): | ||||||
|  |             return 'foo' | ||||||
|  |         test._truncateMessage = truncate | ||||||
|  |         try: | ||||||
|  |             test.assertDictEqual({}, {1: 0}) | ||||||
|  |         except self.failureException as e: | ||||||
|  |             self.assertEqual(str(e), 'foo') | ||||||
|  |         else: | ||||||
|  |             self.fail('assertDictEqual did not fail') | ||||||
|  | 
 | ||||||
|  |     def testAssertMultiLineEqualTruncates(self): | ||||||
|  |         test = unittest.TestCase('assertEqual') | ||||||
|  |         def truncate(msg, diff): | ||||||
|  |             return 'foo' | ||||||
|  |         test._truncateMessage = truncate | ||||||
|  |         try: | ||||||
|  |             test.assertMultiLineEqual('foo', 'bar') | ||||||
|  |         except self.failureException as e: | ||||||
|  |             self.assertEqual(str(e), 'foo') | ||||||
|  |         else: | ||||||
|  |             self.fail('assertMultiLineEqual did not fail') | ||||||
| 
 | 
 | ||||||
|     def testAssertItemsEqual(self): |     def testAssertItemsEqual(self): | ||||||
|         a = object() |         a = object() | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Michael Foord
						Michael Foord