[Python-Dev] These csv test cases seem incorrect to me... (original) (raw)

skip at pobox.com skip at pobox.com
Mon Mar 12 03:01:08 CET 2007


I decided it would be worthwhile to have a csv module written in Python (no C underpinnings) for a number of reasons:

* It will probably be easier to add Unicode support to a Python version

* More people will be able to read/grok/modify/fix bugs in a Python
  implementation than in the current mixed Python/C implementation.

* With alternative implementations of Python available (PyPy,
  IronPython, Jython) it makes sense to have a Python version they can
  use.

I'm far from having anything which will pass the current test suite, but in diagnosing some of my current failures I noticed a couple test cases which seem wrong. In the TestDialectExcel class I see these two questionable tests:

def test_quotes_and_more(self):
    self.readerAssertEqual('"a"b', [['ab']])

def test_quote_and_quote(self):
    self.readerAssertEqual('"a" "b"', [['a "b"']])

It seems to me that if a field starts with a quote it has to be a quoted field. Any quotes appearing within a quoted field have to be escaped and the field has to end with a quote. Both of these test cases fail on or the other assumption. If they are indeed both correct and I'm just looking at things crosseyed I think they at least deserve comments explaining why they are correct.

Both test cases date from the first checkin. I performed the checkin because of the group developing the module I believe I was the only one with checkin privileges at the time, not because I wrote the test cases.

Any ideas about why these test cases are in there? I can't imagine Excel generating either one.

Thx,

Skip



More information about the Python-Dev mailing list