Beispiel #1
0
 def test_row_coder(self):
     from pyflink.table import Row
     field_coder = BigIntCoder()
     field_count = 10
     coder = RowCoder([field_coder for _ in range(field_count)])
     v = Row(*[None if i % 2 == 0 else i for i in range(field_count)])
     self.check_coder(coder, v)
Beispiel #2
0
 def test_flatten_row_coder(self):
     field_coder = BigIntCoder()
     field_count = 10
     coder = FlattenRowCoder([field_coder for _ in range(field_count)]).get_impl()
     v = [None if i % 2 == 0 else i for i in range(field_count)]
     generator_result = coder.decode(coder.encode(v))
     result = []
     for item in generator_result:
         result.append(item)
     self.assertEqual([v], result)
Beispiel #3
0
 def test_row_coder(self):
     from pyflink.common import Row, RowKind
     field_coder = BigIntCoder()
     field_count = 10
     coder = RowCoder([field_coder for _ in range(field_count)])
     v = Row(*[None if i % 2 == 0 else i for i in range(field_count)])
     v.set_row_kind(RowKind.INSERT)
     self.check_coder(coder, v)
     v.set_row_kind(RowKind.UPDATE_BEFORE)
     self.check_coder(coder, v)
     v.set_row_kind(RowKind.UPDATE_AFTER)
     self.check_coder(coder, v)
     v.set_row_kind(RowKind.DELETE)
     self.check_coder(coder, v)
Beispiel #4
0
    def test_row_coder(self):
        from pyflink.common import Row, RowKind
        field_coder = BigIntCoder()
        field_count = 10
        field_names = ['f{}'.format(i) for i in range(field_count)]
        coder = RowCoder([field_coder for _ in range(field_count)],
                         field_names)
        v = Row(**{
            field_names[i]: None if i % 2 == 0 else i
            for i in range(field_count)
        })
        v.set_row_kind(RowKind.INSERT)
        self.check_coder(coder, v)
        v.set_row_kind(RowKind.UPDATE_BEFORE)
        self.check_coder(coder, v)
        v.set_row_kind(RowKind.UPDATE_AFTER)
        self.check_coder(coder, v)
        v.set_row_kind(RowKind.DELETE)
        self.check_coder(coder, v)

        coder = RowCoder([BigIntCoder(), CharCoder()], ['f1', 'f0'])
        v = Row(f0="flink", f1=11)
        self.check_coder(coder, v)
Beispiel #5
0
 def test_bigint_coder(self):
     coder = BigIntCoder()
     self.check_coder(coder, 1, 100, -100, -1000)
Beispiel #6
0
 def test_map_coder(self):
     key_coder = CharCoder()
     value_coder = BigIntCoder()
     coder = MapCoder(key_coder, value_coder)
     self.check_coder(coder, {'flink': 1, 'pyflink': 2, 'coder': None})
Beispiel #7
0
 def test_array_coder(self):
     element_coder = BigIntCoder()
     coder = BasicArrayCoder(element_coder)
     self.check_coder(coder, [1, 2, 3, None])
Beispiel #8
0
 def test_flatten_row_coder(self):
     field_coder = BigIntCoder()
     field_count = 10
     coder = FlattenRowCoder([field_coder for _ in range(field_count)])
     self.check_coder(
         coder, [None if i % 2 == 0 else i for i in range(field_count)])