mirror of
https://github.com/python/cpython.git
synced 2025-09-27 02:39:58 +00:00
Test by Martin v. Loewis for the new UTF-16 codec handling of BOM
marks.
This commit is contained in:
parent
92b550cdd8
commit
a37171dd86
1 changed files with 25 additions and 0 deletions
25
Lib/test/test_codecs.py
Normal file
25
Lib/test/test_codecs.py
Normal file
|
@ -0,0 +1,25 @@
|
||||||
|
import test_support,unittest
|
||||||
|
import codecs
|
||||||
|
import StringIO
|
||||||
|
|
||||||
|
class UTF16Test(unittest.TestCase):
|
||||||
|
|
||||||
|
spamle = '\xff\xfes\x00p\x00a\x00m\x00s\x00p\x00a\x00m\x00'
|
||||||
|
spambe = '\xfe\xff\x00s\x00p\x00a\x00m\x00s\x00p\x00a\x00m'
|
||||||
|
|
||||||
|
def test_only_one_bom(self):
|
||||||
|
_,_,reader,writer = codecs.lookup("utf-16")
|
||||||
|
# encode some stream
|
||||||
|
s = StringIO.StringIO()
|
||||||
|
f = writer(s)
|
||||||
|
f.write(u"spam")
|
||||||
|
f.write(u"spam")
|
||||||
|
d = s.getvalue()
|
||||||
|
# check whether there is exactly one BOM in it
|
||||||
|
self.assert_(d == self.spamle or d == self.spambe)
|
||||||
|
# try to read it back
|
||||||
|
s = StringIO.StringIO(d)
|
||||||
|
f = reader(s)
|
||||||
|
self.assertEquals(f.read(), u"spamspam")
|
||||||
|
|
||||||
|
test_support.run_unittest(UTF16Test)
|
Loading…
Add table
Add a link
Reference in a new issue