summaryrefslogtreecommitdiff
path: root/Lib/test/test_uu.py
diff options
context:
space:
mode:
authorMiss Islington (bot) <31488909+miss-islington@users.noreply.github.com>2019-12-02 15:34:31 -0800
committerNed Deily <nad@python.org>2019-12-02 18:34:31 -0500
commit30afc91f5e70cf4748ffac77a419ba69ebca6f6a (patch)
tree6087265e569a60cda437f8e43e9c9f2019d27fd9 /Lib/test/test_uu.py
parent0716056c49e9505041e30386dad9b2e788f67aaf (diff)
downloadcpython-git-30afc91f5e70cf4748ffac77a419ba69ebca6f6a.tar.gz
bpo-38945: UU Encoding: Don't let newline in filename corrupt the output format (GH-17418) (GH-17444)
(cherry picked from commit a62ad4730c9b575f140f24074656c0257c86a09a) Co-authored-by: Matthew Rollings <1211162+stealthcopter@users.noreply.github.com>
Diffstat (limited to 'Lib/test/test_uu.py')
-rw-r--r--Lib/test/test_uu.py9
1 files changed, 9 insertions, 0 deletions
diff --git a/Lib/test/test_uu.py b/Lib/test/test_uu.py
index 7356478981..3503d76b85 100644
--- a/Lib/test/test_uu.py
+++ b/Lib/test/test_uu.py
@@ -114,6 +114,15 @@ class UUTest(unittest.TestCase):
decoded = codecs.decode(encodedtext, "uu_codec")
self.assertEqual(decoded, plaintext)
+ def test_newlines_escaped(self):
+ # Test newlines are escaped with uu.encode
+ inp = io.BytesIO(plaintext)
+ out = io.BytesIO()
+ filename = "test.txt\n\roverflow.txt"
+ safefilename = b"test.txt\\n\\roverflow.txt"
+ uu.encode(inp, out, filename)
+ self.assertIn(safefilename, out.getvalue())
+
class UUStdIOTest(unittest.TestCase):
def setUp(self):