def testUtf8CsvReaderWhenSkipLeadingRows(self):
    """Test _Utf8CsvReader()."""
    skip_leading_rows = 1
    input_path = '/path/to/file'

    self._SetupTestFlags(skip_leading_rows=skip_leading_rows)
    csv_writer = self.mox.CreateMockAnything()
    self.mox.StubOutWithMock(load_lib.csv, 'reader')

    header_row = '#header'

    class TestList(list):
      """Lazy container built on list and fake next() method, for testing."""

      def next(self):  # pylint: disable=invalid-name
        return header_row
    csv_reader = TestList([['line0'], ['line1']])
    self.stubs.Set(csv_reader, 'next', lambda: header_row)

    expect_kwargs = {'dialect': 'excel', 'foo': 'bar'}
    load_lib.csv.reader(input_path, **expect_kwargs).AndReturn(csv_reader)
    csv_writer.writerow(header_row)
    i = 0

    self.mox.ReplayAll()
    reader = load_lib._Utf8CsvReader(
        input_path, foo='bar', skip_rows_writer=csv_writer)
    for row in reader:
      self.assertTrue(i <= len(csv_reader))
      self.assertEqual(row, csv_reader[i])
      i += 1
    self.mox.VerifyAll()
Beispiel #2
0
    def testUtf8CsvReaderWhenSkipLeadingRows(self):
        """Test _Utf8CsvReader()."""
        skip_leading_rows = 1
        input_path = '/path/to/file'

        self._SetupTestFlags(skip_leading_rows=skip_leading_rows)
        csv_writer = self.mox.CreateMockAnything()
        self.mox.StubOutWithMock(load_lib.csv, 'reader')

        header_row = '#header'

        class TestList(list):
            """Lazy container built on list and fake next() method, for testing."""
            def next(self):  # pylint: disable=invalid-name
                return header_row

        csv_reader = TestList([['line0'], ['line1']])
        self.stubs.Set(csv_reader, 'next', lambda: header_row)

        expect_kwargs = {'dialect': 'excel', 'foo': 'bar'}
        load_lib.csv.reader(input_path, **expect_kwargs).AndReturn(csv_reader)
        csv_writer.writerow(header_row)
        i = 0

        self.mox.ReplayAll()
        reader = load_lib._Utf8CsvReader(input_path,
                                         foo='bar',
                                         skip_rows_writer=csv_writer)
        for row in reader:
            self.assertTrue(i <= len(csv_reader))
            self.assertEqual(row, csv_reader[i])
            i += 1
        self.mox.VerifyAll()
  def testUtf8CsvReader(self):
    """Test _Utf8CsvReader()."""
    self._SetupTestFlags()
    self.mox.StubOutWithMock(load_lib.csv, 'reader')
    input_path = '/path/to/file'
    csv_reader = [['line0'], ['line1']]

    expect_kwargs = {'dialect': 'excel', 'foo': 'bar'}
    load_lib.csv.reader(input_path, **expect_kwargs).AndReturn(csv_reader)
    i = 0

    self.mox.ReplayAll()
    reader = load_lib._Utf8CsvReader(input_path, foo='bar')
    for row in reader:
      self.assertTrue(i <= len(csv_reader))
      self.assertEqual(row, csv_reader[i])
      i += 1
    self.mox.VerifyAll()
Beispiel #4
0
    def testUtf8CsvReader(self):
        """Test _Utf8CsvReader()."""
        self._SetupTestFlags()
        self.mox.StubOutWithMock(load_lib.csv, 'reader')
        input_path = '/path/to/file'
        csv_reader = [['line0'], ['line1']]

        expect_kwargs = {'dialect': 'excel', 'foo': 'bar'}
        load_lib.csv.reader(input_path, **expect_kwargs).AndReturn(csv_reader)
        i = 0

        self.mox.ReplayAll()
        reader = load_lib._Utf8CsvReader(input_path, foo='bar')
        for row in reader:
            self.assertTrue(i <= len(csv_reader))
            self.assertEqual(row, csv_reader[i])
            i += 1
        self.mox.VerifyAll()