From: Skip Montanaro Date: Wed, 28 Dec 2005 15:43:50 +0000 (+0000) Subject: backport Sniffer class fix (rev 41838) X-Git-Tag: v2.4.3c1~166 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=cac7b9d79a95b84d22b92589e43f22f736e54576;p=thirdparty%2FPython%2Fcpython.git backport Sniffer class fix (rev 41838) --- diff --git a/Lib/csv.py b/Lib/csv.py index f2389fd30425..262eba8436f8 100644 --- a/Lib/csv.py +++ b/Lib/csv.py @@ -294,7 +294,7 @@ class Sniffer: for char in ascii: metaFrequency = charFrequency.get(char, {}) # must count even if frequency is 0 - freq = line.strip().count(char) + freq = line.count(char) # value is the mode metaFrequency[freq] = metaFrequency.get(freq, 0) + 1 charFrequency[char] = metaFrequency diff --git a/Lib/test/test_csv.py b/Lib/test/test_csv.py index aaebabc33c7e..ad857249d703 100644 --- a/Lib/test/test_csv.py +++ b/Lib/test/test_csv.py @@ -738,6 +738,8 @@ Stonecutters Seafood and Chop House, Lemont, IL, 12/19/02, Week Back 47483648;43.0;170;abc;def ''' + sample5 = "aaa\tbbb\r\nAAA\t\r\nBBB\t\r\n" + def test_has_header(self): sniffer = csv.Sniffer() self.assertEqual(sniffer.has_header(self.sample1), False) @@ -765,6 +767,8 @@ Stonecutters Seafood and Chop House, Lemont, IL, 12/19/02, Week Back self.assertEqual(dialect.delimiter, "/") dialect = sniffer.sniff(self.sample4) self.assertEqual(dialect.delimiter, ";") + dialect = sniffer.sniff(self.sample5) + self.assertEqual(dialect.delimiter, "\t") if not hasattr(sys, "gettotalrefcount"): if test_support.verbose: print "*** skipping leakage tests ***"