Esempio n. 1
0
    def test__handle_row_contents(self):
        from gcloud.bigtable._generated import bigtable_data_pb2 as data_pb2
        from gcloud.bigtable._generated import (
            bigtable_service_messages_pb2 as messages_pb2)
        from gcloud.bigtable.row_data import Cell

        partial_row_data = self._makeOne(None)
        cell1_pb = data_pb2.Cell(timestamp_micros=1, value=b'val1')
        cell2_pb = data_pb2.Cell(timestamp_micros=200, value=b'val2')
        cell3_pb = data_pb2.Cell(timestamp_micros=300000, value=b'val3')
        col1 = b'col1'
        col2 = b'col2'
        columns = [
            data_pb2.Column(qualifier=col1, cells=[cell1_pb, cell2_pb]),
            data_pb2.Column(qualifier=col2, cells=[cell3_pb]),
        ]
        family_name = u'name'
        row_contents = data_pb2.Family(name=family_name, columns=columns)
        chunk = messages_pb2.ReadRowsResponse.Chunk(row_contents=row_contents)

        self.assertEqual(partial_row_data.cells, {})
        partial_row_data._handle_row_contents(chunk)
        expected_cells = {
            family_name: {
                col1: [Cell.from_pb(cell1_pb), Cell.from_pb(cell2_pb)],
                col2: [Cell.from_pb(cell3_pb)],
            }
        }
        self.assertEqual(partial_row_data.cells, expected_cells)
Esempio n. 2
0
    def test_read_row_complete(self):
        from gcloud.bigtable.row_data import Cell
        from gcloud.bigtable.row_data import PartialRowData

        chunk = _ReadRowsResponseCellChunkPB(
            row_key=self.ROW_KEY,
            family_name=self.FAMILY_NAME,
            qualifier=self.QUALIFIER,
            timestamp_micros=self.TIMESTAMP_MICROS,
            value=self.VALUE,
            commit_row=True,
        )
        chunks = [chunk]
        expected_result = PartialRowData(row_key=self.ROW_KEY)
        family = expected_result._cells.setdefault(self.FAMILY_NAME, {})
        column = family.setdefault(self.QUALIFIER, [])
        column.append(Cell.from_pb(chunk))
        self._read_row_helper(chunks, expected_result)
Esempio n. 3
0
    def test_read_row_complete(self):
        from gcloud.bigtable.row_data import Cell
        from gcloud.bigtable.row_data import PartialRowData

        chunk = _ReadRowsResponseCellChunkPB(
            row_key=self.ROW_KEY,
            family_name=self.FAMILY_NAME,
            qualifier=self.QUALIFIER,
            timestamp_micros=self.TIMESTAMP_MICROS,
            value=self.VALUE,
            commit_row=True,
        )
        chunks = [chunk]
        expected_result = PartialRowData(row_key=self.ROW_KEY)
        family = expected_result._cells.setdefault(self.FAMILY_NAME, {})
        column = family.setdefault(self.QUALIFIER, [])
        column.append(Cell.from_pb(chunk))
        self._read_row_helper(chunks, expected_result)