diff options
-rw-r--r-- | Lib/test/test_codecs.py | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/Lib/test/test_codecs.py b/Lib/test/test_codecs.py new file mode 100644 index 0000000..6d9e31d --- /dev/null +++ b/Lib/test/test_codecs.py @@ -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) |