[Python-checkins] cpython (3.3): Issue #18829: Add tests for the csv module for invalid characters (delimiter,

victor.stinner python-checkins at python.org
Thu Jan 2 12:54:05 CET 2014


http://hg.python.org/cpython/rev/0daf7f02c97f
changeset:   88250:0daf7f02c97f
branch:      3.3
parent:      88247:91cb83f895cf
user:        Victor Stinner <victor.stinner at gmail.com>
date:        Thu Jan 02 12:53:13 2014 +0100
summary:
  Issue #18829: Add tests for the csv module for invalid characters (delimiter,
escapechar, quotechar)

files:
  Lib/test/test_csv.py |  13 +++++++++++++
  1 files changed, 13 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
@@ -828,6 +828,19 @@
         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"):
+            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