def test_field_delimiter(self): csv = Csv().field_delimiter("|") properties = csv.to_properties() expected = {'format.field-delimiter': '|', 'format.type': 'csv', 'format.property-version': '1'} self.assertEqual(expected, properties)
def test_derive_schema(self): csv = Csv().derive_schema() expected = {'format.derive-schema': 'true', 'format.property-version': '1', 'format.type': 'csv'} properties = csv.to_properties() self.assertEqual(expected, properties)
def test_null_literal(self): csv = Csv().null_literal("null") expected = {'format.null-literal': 'null', 'format.property-version': '1', 'format.type': 'csv'} properties = csv.to_properties() self.assertEqual(expected, properties)
def test_escape_character(self): csv = Csv().escape_character("\\") expected = {'format.escape-character': '\\', 'format.property-version': '1', 'format.type': 'csv'} properties = csv.to_properties() self.assertEqual(expected, properties)
def test_array_element_delimiter(self): csv = Csv().array_element_delimiter("/") expected = {'format.array-element-delimiter': '/', 'format.property-version': '1', 'format.type': 'csv'} properties = csv.to_properties() self.assertEqual(expected, properties)
def test_ignore_parse_errors(self): csv = Csv().ignore_parse_errors() expected = {'format.ignore-parse-errors': 'true', 'format.property-version': '1', 'format.type': 'csv'} properties = csv.to_properties() self.assertEqual(expected, properties)
def test_allow_comments(self): csv = Csv().allow_comments() expected = {'format.allow-comments': 'true', 'format.property-version': '1', 'format.type': 'csv'} properties = csv.to_properties() self.assertEqual(expected, properties)
def test_quote_character(self): csv = Csv().quote_character("'") expected = {'format.quote-character': "'", 'format.property-version': '1', 'format.type': 'csv'} properties = csv.to_properties() self.assertEqual(expected, properties)
def test_line_delimiter(self): csv = Csv().line_delimiter(";") expected = {'format.line-delimiter': ';', 'format.property-version': '1', 'format.type': 'csv'} properties = csv.to_properties() self.assertEqual(expected, properties)
def test_schema(self): csv = Csv().schema(DataTypes.ROW([DataTypes.FIELD("a", DataTypes.INT()), DataTypes.FIELD("b", DataTypes.STRING())])) expected = {'format.schema': 'ROW<a INT, b VARCHAR>', 'format.property-version': '1', 'format.type': 'csv'} properties = csv.to_properties() self.assertEqual(expected, properties)