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 | ||||
|         diff = '\n'.join(difflib.ndiff(pprint.pformat(seq1).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 | ||||
|         try: | ||||
|  | @ -605,6 +607,7 @@ def testAssertSequenceEqualMaxDiff(self): | |||
|         else: | ||||
|             self.fail('assertSequenceEqual did not fail.') | ||||
|         self.assertTrue(len(msg) < len(diff)) | ||||
|         self.assertIn(omitted, msg) | ||||
| 
 | ||||
|         self.maxDiff = len(diff) * 2 | ||||
|         try: | ||||
|  | @ -614,6 +617,7 @@ def testAssertSequenceEqualMaxDiff(self): | |||
|         else: | ||||
|             self.fail('assertSequenceEqual did not fail.') | ||||
|         self.assertTrue(len(msg) > len(diff)) | ||||
|         self.assertNotIn(omitted, msg) | ||||
| 
 | ||||
|         self.maxDiff = None | ||||
|         try: | ||||
|  | @ -623,6 +627,41 @@ def testAssertSequenceEqualMaxDiff(self): | |||
|         else: | ||||
|             self.fail('assertSequenceEqual did not fail.') | ||||
|         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): | ||||
|         a = object() | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Michael Foord
						Michael Foord