From c1c415f304e499b963131a83293bde07dcabc821 Mon Sep 17 00:00:00 2001 From: Florent Xicluna Date: Fri, 26 Feb 2010 11:12:33 +0000 Subject: Merged revisions 78461 via svnmerge from svn+ssh://pythondev@svn.python.org/python/trunk MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ........ r78461 | florent.xicluna | 2010-02-26 11:40:58 +0100 (ven, 26 fév 2010) | 2 lines #691291: codecs.open() should not convert end of lines on reading and writing. ........ --- Lib/test/test_codecs.py | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/Lib/test/test_codecs.py b/Lib/test/test_codecs.py index 4b4d40c..974ebd4 100644 --- a/Lib/test/test_codecs.py +++ b/Lib/test/test_codecs.py @@ -483,6 +483,21 @@ class UTF16Test(ReadTest): self.check_state_handling_decode(self.encoding, "spamspam", self.spambe) + def test_bug691291(self): + # Files are always opened in binary mode, even if no binary mode was + # specified. This means that no automatic conversion of '\n' is done + # on reading and writing. + s1 = 'Hello\r\nworld\r\n' + + s = s1.encode(self.encoding) + try: + with open(support.TESTFN, 'wb') as fp: + fp.write(s) + with codecs.open(support.TESTFN, 'U', encoding=self.encoding) as reader: + self.assertEqual(reader.read(), s1) + finally: + support.unlink(support.TESTFN) + class UTF16LETest(ReadTest): encoding = "utf-16-le" -- cgit v0.12