Author: Amaury Forgeot d'Arc <[email protected]>
Branch: py3k
Changeset: r58342:b59013f9587e
Date: 2012-10-21 12:29 +0200
http://bitbucket.org/pypy/pypy/changeset/b59013f9587e/

Log:    csv: fix tests when run with -A, then fix the implementation.

diff --git a/pypy/module/_csv/interp_reader.py 
b/pypy/module/_csv/interp_reader.py
--- a/pypy/module/_csv/interp_reader.py
+++ b/pypy/module/_csv/interp_reader.py
@@ -40,6 +40,7 @@
 
     def save_field(self, field_builder):
         field = field_builder.build()
+        print "AFA SAVE FIELD", field
         if self.numeric_field:
             from pypy.objspace.std.strutil import ParseStringError
             from pypy.objspace.std.strutil import string_to_float
@@ -71,11 +72,7 @@
                             state != START_RECORD and state != EAT_CRNL and
                             (len(field_builder.build()) > 0 or
                              state == IN_QUOTED_FIELD)):
-                        if dialect.strict:
-                            raise self.error(u"newline inside string")
-                        else:
-                            self.save_field(field_builder)
-                            break
+                        raise self.error(u"newline inside string")
                 raise
             self.line_num += 1
             line = space.unicode_w(w_line)
diff --git a/pypy/module/_csv/test/test_reader.py 
b/pypy/module/_csv/test/test_reader.py
--- a/pypy/module/_csv/test/test_reader.py
+++ b/pypy/module/_csv/test/test_reader.py
@@ -28,7 +28,7 @@
     def test_cannot_read_bytes(self):
         import _csv
         reader = _csv.reader([b'foo'])
-        raises(TypeError, "next(reader)")
+        raises((TypeError, _csv.Error), next, reader)
 
     def test_read_oddinputs(self):
         self._read_test([], [])
@@ -107,9 +107,9 @@
         self._read_test(['12,12,1",'], [['12', '12', '1"', '']])
 
     def test_read_eof(self):
-        self._read_test(['a,"'], [['a', '']])
-        self._read_test(['"a'], [['a']])
-        self._read_test(['^'], [['\n']], escapechar='^')
-        self._read_test(['a,"'], 'Error', strict=True)
+        self._read_test(['a,"'], [])
+        self._read_test(['"a'], 'Error')
+        self._read_test(['^'], 'Error', escapechar='^')
+        self._read_test(['a,"'], [], strict=True)
         self._read_test(['"a'], 'Error', strict=True)
         self._read_test(['^'], 'Error', escapechar='^', strict=True)
_______________________________________________
pypy-commit mailing list
[email protected]
http://mail.python.org/mailman/listinfo/pypy-commit

Reply via email to