[Python-checkins] cpython (merge 3.3 -> default): (Merge 3.3) Issue #18829: Add tests for the csv module for invalid characters
victor.stinner
python-checkins at python.org
Thu Jan 2 12:54:06 CET 2014
http://hg.python.org/cpython/rev/ccb52323039f
changeset: 88251:ccb52323039f
parent: 88249:9a61be172c23
parent: 88250:0daf7f02c97f
user: Victor Stinner <victor.stinner at gmail.com>
date: Thu Jan 02 12:53:50 2014 +0100
summary:
(Merge 3.3) Issue #18829: Add tests for the csv module for invalid characters
(delimiter, escapechar, quotechar)
files:
Lib/test/test_csv.py | 14 ++++++++++++++
1 files changed, 14 insertions(+), 0 deletions(-)
diff --git a/Lib/test/test_csv.py b/Lib/test/test_csv.py
--- a/Lib/test/test_csv.py
+++ b/Lib/test/test_csv.py
@@ -837,6 +837,20 @@
self.assertEqual(str(cm.exception),
'"lineterminator" must be a string')
+ def test_invalid_chars(self):
+ def create_invalid(field_name, value):
+ class mydialect(csv.Dialect):
+ pass
+ setattr(mydialect, field_name, value)
+ d = mydialect()
+
+ for field_name in ("delimiter", "escapechar", "quotechar"):
+ with self.subTest(field_name=field_name):
+ self.assertRaises(csv.Error, create_invalid, field_name, "")
+ self.assertRaises(csv.Error, create_invalid, field_name, "abc")
+ self.assertRaises(csv.Error, create_invalid, field_name, b'x')
+ self.assertRaises(csv.Error, create_invalid, field_name, 5)
+
class TestSniffer(unittest.TestCase):
sample1 = """\
--
Repository URL: http://hg.python.org/cpython
More information about the Python-checkins
mailing list