from test.test_support import run_unittest | |
import unittest | |
import StringIO | |
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' | |
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') | |
def test_main(): | |
run_unittest(SoftspaceTests) | |
if __name__ == '__main__': | |
test_main() |