diff options
author | Walter Dörwald <walter@livinglogic.de> | 2004-08-26 16:53:04 (GMT) |
---|---|---|
committer | Walter Dörwald <walter@livinglogic.de> | 2004-08-26 16:53:04 (GMT) |
commit | 57d88e5abd06cefcc8d52d62765c36214b1c1956 (patch) | |
tree | cdfb770ea520db3fe7d3dff2a9fd687bf7e0dcfb /Lib/test/string_tests.py | |
parent | 592ef6110f8280918894372d062a20f9eb158828 (diff) | |
download | cpython-57d88e5abd06cefcc8d52d62765c36214b1c1956.zip cpython-57d88e5abd06cefcc8d52d62765c36214b1c1956.tar.gz cpython-57d88e5abd06cefcc8d52d62765c36214b1c1956.tar.bz2 |
Move test_bug1001011() to string_tests.MixinStrUnicodeTest so that
it can be used for str and unicode. Drop the test for
"".join([s]) is s
because this is an implementation detail (and doesn't work for unicode)
Diffstat (limited to 'Lib/test/string_tests.py')
-rw-r--r-- | Lib/test/string_tests.py | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/Lib/test/string_tests.py b/Lib/test/string_tests.py index 860c1f2..9cf6b9e1c 100644 --- a/Lib/test/string_tests.py +++ b/Lib/test/string_tests.py @@ -648,6 +648,7 @@ class MixinStrUnicodeUserStringTest: else: self.checkcall(format, "__mod__", value) + class MixinStrStringUserStringTest: # Additional tests for 8bit strings, i.e. str, UserString and # the string module @@ -695,3 +696,21 @@ class MixinStrUserStringTest: self.checkraises(TypeError, 'xyz', 'decode', 42) self.checkraises(TypeError, 'xyz', 'encode', 42) + + +class MixinStrUnicodeTest: + # Additional tests that only work with + # str and unicode + + def test_bug1001011(self): + # Make sure join returns a NEW object for single item sequences + # involving a subclass + # Make sure that it is of the appropriate type + # Check the optimisation still occurs for standard objects + t = self.type2test + class subclass(t): + pass + s1 = subclass("abcd") + s2 = t().join([s1]) + self.assert_(s1 is not s2) + self.assert_(type(s2) is t) |