]> granicus.if.org Git - python/commitdiff
Issue #18727: improve test coverage of the csv module by testing for DictWriter.write...
authorAntoine Pitrou <solipsis@pitrou.net>
Mon, 28 Apr 2014 23:58:06 +0000 (01:58 +0200)
committerAntoine Pitrou <solipsis@pitrou.net>
Mon, 28 Apr 2014 23:58:06 +0000 (01:58 +0200)
Patch by Muhammad Jehanzeb.

Lib/test/test_csv.py
Misc/ACKS

index 7e2485f954fdd96b0c7679288318fa981b9647ef..7c31ac71f6e170b44e10e1b38f7216c675b922a4 100644 (file)
@@ -575,6 +575,16 @@ class TestDictFields(unittest.TestCase):
             fileobj.readline() # header
             self.assertEqual(fileobj.read(), "10,,abc\r\n")
 
+    def test_write_multiple_dict_rows(self):
+        fileobj = StringIO()
+        writer = csv.DictWriter(fileobj, fieldnames=["f1", "f2", "f3"])
+        writer.writeheader()
+        self.assertEqual(fileobj.getvalue(), "f1,f2,f3\r\n")
+        writer.writerows([{"f1": 1, "f2": "abc", "f3": "f"},
+                          {"f1": 2, "f2": 5, "f3": "xyz"}])
+        self.assertEqual(fileobj.getvalue(),
+                         "f1,f2,f3\r\n1,abc,f\r\n2,5,xyz\r\n")
+
     def test_write_no_fields(self):
         fileobj = StringIO()
         self.assertRaises(TypeError, csv.DictWriter, fileobj)
index 6e27c367d8c701136543a9ed2511f9c6dbc6cf27..2aa087e9f33ba26134d90cf1264d5a7a315eaf33 100644 (file)
--- a/Misc/ACKS
+++ b/Misc/ACKS
@@ -613,6 +613,7 @@ Juhana Jauhiainen
 Rajagopalasarma Jayakrishnan
 Zbigniew Jędrzejewski-Szmek
 Julien Jehannet
+Muhammad Jehanzeb
 Drew Jenkins
 Flemming Kjær Jensen
 Philip H. Jensen