Added more tests of join
diff --git a/Lib/test/test_string.py b/Lib/test/test_string.py
index 73ece8e..1ec29f8 100644
--- a/Lib/test/test_string.py
+++ b/Lib/test/test_string.py
@@ -67,6 +67,15 @@
 test('join', ['a', 'b', 'c', 'd'], 'a b c d')
 test('join', ('a', 'b', 'c', 'd'), 'abcd', '')
 test('join', Sequence(), 'w x y z')
+test('join', 7, TypeError)
+
+class BadStr:
+    def __str__(self): raise RuntimeError
+
+class BadSeq(Sequence):
+    def __init__(self): self.seq = [7, 'hello', BadStr()]
+
+test('join', BadSeq(), RuntimeError)
 
 # try a few long ones
 print string.join(['x' * 100] * 100, ':')