예제 #1
0
 def test_utf8(self):
     with open('examples/test.csv') as f:
         reader = csv_py2.Reader(f, encoding='utf-8')
         self.assertEqual(next(reader), ['one', 'two', 'three'])
         self.assertEqual(next(reader), ['1', '4', 'a'])
         self.assertEqual(next(reader), ['2', '3', 'b'])
         self.assertEqual(next(reader), ['', '2', u'👍'])
예제 #2
0
    def test_properties(self):
        with open('examples/test.csv') as f:
            reader = csv_py2.Reader(f, encoding='utf-8')

            self.assertEqual(reader.dialect.delimiter, ',')
            self.assertEqual(reader.line_num, 0)

            next(reader)

            self.assertEqual(reader.line_num, 1)
예제 #3
0
    def test_utf8(self):
        output = six.StringIO()
        writer = csv_py2.Writer(output, encoding='utf-8')
        self.assertEqual(writer._eight_bit, True)
        writer.writerow(['a', 'b', 'c'])
        writer.writerow(['1', '2', '3'])
        writer.writerow(['4', '5', u'ʤ'])

        written = six.StringIO(output.getvalue())

        reader = csv_py2.Reader(written, encoding='utf-8')
        self.assertEqual(next(reader), ['a', 'b', 'c'])
        self.assertEqual(next(reader), ['1', '2', '3'])
        self.assertEqual(next(reader), ['4', '5', u'ʤ'])
예제 #4
0
    def test_line_numbers(self):
        with open('examples/test.csv') as f:
            rows = list(csv_py2.Reader(f, encoding='utf-8', line_numbers=True))

        sample_rows = [[
            'line_numbers', 'number', 'text', 'boolean', 'date', 'datetime',
            'timedelta'
        ],
                       [
                           '1', '1', 'a', 'True', '2015-11-04',
                           '2015-11-04T12:22:00', '0:04:15'
                       ],
                       [
                           '2', '2', u'👍', 'False', '2015-11-05',
                           '2015-11-04T12:45:00', '0:06:18'
                       ], ['3', '', 'b', '', '', '', '']]

        for a, b in zip(sample_rows, rows):
            self.assertEqual(a, b)
예제 #5
0
    def test_reader_alias(self):
        with open('examples/test.csv') as f:
            rows = list(csv_py2.Reader(f, encoding='utf-8'))

        for a, b in zip(self.rows, rows):
            self.assertEqual(a, b)