| 
									
										
										
										
											2007-04-04 18:36:30 +00:00
										 |  |  | from test.test_support import run_unittest | 
					
						
							|  |  |  | import unittest | 
					
						
							| 
									
										
										
										
											2002-03-24 19:25:00 +00:00
										 |  |  | import StringIO | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2007-04-04 18:36:30 +00:00
										 |  |  | class SoftspaceTests(unittest.TestCase): | 
					
						
							|  |  |  |     def test_bug_480215(self): | 
					
						
							|  |  |  |         # SF bug 480215:  softspace confused in nested print | 
					
						
							|  |  |  |         f = StringIO.StringIO() | 
					
						
							|  |  |  |         class C: | 
					
						
							|  |  |  |             def __str__(self): | 
					
						
							|  |  |  |                 print >> f, 'a' | 
					
						
							|  |  |  |                 return 'b' | 
					
						
							| 
									
										
										
										
											2002-03-24 19:25:00 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2007-04-04 18:36:30 +00:00
										 |  |  |         print >> f, C(), 'c ', 'd\t', 'e' | 
					
						
							|  |  |  |         print >> f, 'f', 'g' | 
					
						
							|  |  |  |         # In 2.2 & earlier, this printed ' a\nbc  d\te\nf g\n' | 
					
						
							|  |  |  |         self.assertEqual(f.getvalue(), 'a\nb c  d\te\nf g\n') | 
					
						
							| 
									
										
										
										
											2007-04-25 06:30:05 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2007-04-04 18:36:30 +00:00
										 |  |  | def test_main(): | 
					
						
							|  |  |  |     run_unittest(SoftspaceTests) | 
					
						
							| 
									
										
										
										
											2007-04-25 06:30:05 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2007-04-04 18:36:30 +00:00
										 |  |  | if __name__ == '__main__': | 
					
						
							|  |  |  |     test_main() |