[Python-checkins] python/nondist/sandbox/csv/test test_csv.py,1.19,1.20

montanaro@users.sourceforge.net montanaro@users.sourceforge.net
Wed, 05 Feb 2003 20:51:50 -0800


Update of /cvsroot/python/python/nondist/sandbox/csv/test
In directory sc8-pr-cvs1:/tmp/cvs-serv30597

Modified Files:
	test_csv.py 
Log Message:
add tests for reader returning dicts


Index: test_csv.py
===================================================================
RCS file: /cvsroot/python/python/nondist/sandbox/csv/test/test_csv.py,v
retrieving revision 1.19
retrieving revision 1.20
diff -C2 -d -r1.19 -r1.20
*** test_csv.py	6 Feb 2003 01:27:31 -0000	1.19
--- test_csv.py	6 Feb 2003 04:51:47 -0000	1.20
***************
*** 242,246 ****
  
  class TestDictFields(unittest.TestCase):
!     def test_simple_dict(self):
          fileobj = StringIO()
          writer = csv.writer(fileobj, dialect="excel",
--- 242,246 ----
  
  class TestDictFields(unittest.TestCase):
!     def test_write_simple_dict(self):
          fileobj = StringIO()
          writer = csv.writer(fileobj, dialect="excel",
***************
*** 249,256 ****
          self.assertEqual(fileobj.getvalue(), "10,,abc\r\n")
  
!     def test_no_fields(self):
          fileobj = StringIO()
          writer = csv.writer(fileobj, dialect="excel")
          self.assertRaises(csv.Error, writer.writerow, {"f1": 10, "f3": "abc"})
  
  class TestArrayWrites(unittest.TestCase):
--- 249,272 ----
          self.assertEqual(fileobj.getvalue(), "10,,abc\r\n")
  
!     def test_write_no_fields(self):
          fileobj = StringIO()
          writer = csv.writer(fileobj, dialect="excel")
          self.assertRaises(csv.Error, writer.writerow, {"f1": 10, "f3": "abc"})
+ 
+     def test_read_dict_fields(self):
+         reader = csv.reader(StringIO("1,2,abc\r\n"), dialect="excel",
+                             fieldnames=["f1", "f2", "f3"])
+         self.assertEqual(reader.next(), {"f1": '1', "f2": '2', "f3": 'abc'})
+ 
+     def test_read_short(self):
+         reader = csv.reader(StringIO("1,2,abc,4,5,6\r\n"), dialect="excel",
+                             fieldnames=["f1", "f2"])
+         self.assertEqual(reader.next(), {"f1": '1', "f2": '2'})
+ 
+     def test_read_short_with_rest(self):
+         reader = csv.reader(StringIO("1,2,abc,4,5,6\r\n"), dialect="excel",
+                             fieldnames=["f1", "f2"], restfield="_rest")
+         self.assertEqual(reader.next(), {"f1": '1', "f2": '2',
+                                          "_rest": ["abc", "4", "5", "6"]})
  
  class TestArrayWrites(unittest.TestCase):