def test_column_type_number_from_thrift(self): self.assertEqual( types.ColumnType.from_thrift( ttypes.ColumnType(number_type=ttypes.ColumnTypeNumber("{:,.1%}")) ), types.ColumnType.Number("{:,.1%}"), )
def test_params_to_thrift(self): self.assertEqual( types.Params({ "str": "s", "int": 2, "float": 1.2, "null": None, "bool": False, "column": types.Column("A", types.ColumnType.Number(format="{:,.2f}")), "listofmaps": [{ "A": "a", "B": "b" }, { "C": "c", "D": "d" }], "tab": "TODO tabs", }).to_thrift(), { "str": ttypes.ParamValue(string_value="s"), "int": ttypes.ParamValue(integer_value=2), "float": ttypes.ParamValue(float_value=1.2), "null": ttypes.ParamValue(), "bool": ttypes.ParamValue(boolean_value=False), "column": ttypes.ParamValue(column_value=ttypes.Column( "A", ttypes.ColumnType(number_type=ttypes.ColumnTypeNumber( format="{:,.2f}")), )), "listofmaps": ttypes.ParamValue(list_value=[ ttypes.ParamValue( map_value={ "A": ttypes.ParamValue(string_value="a"), "B": ttypes.ParamValue(string_value="b"), }), ttypes.ParamValue( map_value={ "C": ttypes.ParamValue(string_value="c"), "D": ttypes.ParamValue(string_value="d"), }), ]), "tab": ttypes.ParamValue(string_value="TODO tabs"), }, )
def test_column_type_number_from_thrift_invalid_format(self): thrift_value = ttypes.ColumnType(number_type=ttypes.ColumnTypeNumber("{:T}")) with self.assertRaisesRegex(ValueError, "Unknown format code 'T'"): types.ColumnType.from_thrift(thrift_value)
def test_column_type_number_to_thrift(self): self.assertEqual( types.arrow_column_type_to_thrift( types.ColumnType.Number("{:,.1%}")), ttypes.ColumnType(number_type=ttypes.ColumnTypeNumber("{:,.1%}")), )