def test_join(self): # These are the same checks as in string_test.ObjectTest.test_join # but the argument order ist different self.checkequal('a b c d', ['a', 'b', 'c', 'd'], 'join', ' ') self.checkequal('abcd', ('a', 'b', 'c', 'd'), 'join', '') self.checkequal('w x y z', string_tests.Sequence(), 'join', ' ') self.checkequal('abc', ('abc', ), 'join', 'a') self.checkequal('z', UserList(['z']), 'join', 'a') if test_support.have_unicode: self.checkequal(unicode('a.b.c'), ['a', 'b', 'c'], 'join', unicode('.')) self.checkequal(unicode('a.b.c'), [unicode('a'), 'b', 'c'], 'join', '.') self.checkequal(unicode('a.b.c'), ['a', unicode('b'), 'c'], 'join', '.') self.checkequal(unicode('a.b.c'), ['a', 'b', unicode('c')], 'join', '.') self.checkraises(TypeError, ['a', unicode('b'), 3], 'join', '.') for i in [5, 25, 125]: self.checkequal(((('a' * i) + '-') * i)[:-1], ['a' * i] * i, 'join', '-') self.checkequal(((('a' * i) + '-') * i)[:-1], ('a' * i, ) * i, 'join', '-') self.checkraises(TypeError, string_tests.BadSeq1(), 'join', ' ') self.checkequal('a b c', string_tests.BadSeq2(), 'join', ' ') try: def f(): yield 4 + "" self.fixtype(' ').join(f()) except TypeError, e: if '+' not in str(e): self.fail('join() ate exception message')
def test_join(self): # These are the same checks as in string_test.ObjectTest.test_join # but the argument order ist different self.checkequal('a b c d', ['a', 'b', 'c', 'd'], 'join', ' ') self.checkequal('abcd', ('a', 'b', 'c', 'd'), 'join', '') self.checkequal('w x y z', string_tests.Sequence(), 'join', ' ') self.checkequal('abc', ('abc', ), 'join', 'a') self.checkequal('z', UserList(['z']), 'join', 'a') if test_support.have_unicode: self.checkequal(unicode('a.b.c'), ['a', 'b', 'c'], 'join', unicode('.')) self.checkequal(unicode('a.b.c'), [unicode('a'), 'b', 'c'], 'join', '.') self.checkequal(unicode('a.b.c'), ['a', unicode('b'), 'c'], 'join', '.') self.checkequal(unicode('a.b.c'), ['a', 'b', unicode('c')], 'join', '.') self.checkraises(TypeError, ['a', unicode('b'), 3], 'join', '.') for i in [5, 25, 125]: self.checkequal(((('a' * i) + '-') * i)[:-1], ['a' * i] * i, 'join', '-') self.checkequal(((('a' * i) + '-') * i)[:-1], ('a' * i, ) * i, 'join', '-') self.checkraises(TypeError, string_tests.BadSeq1(), 'join', ' ') self.checkequal('a b c', string_tests.BadSeq2(), 'join', ' ')