Exemplo n.º 1
0
    def test_derive_schema(self):
        json = Json().derive_schema()

        expected = {'format.derive-schema': 'true',
                    'format.property-version': '1',
                    'format.type': 'json'}

        properties = json.to_properties()
        self.assertEqual(expected, properties)
Exemplo n.º 2
0
    def test_ignore_parse_errors(self):
        json = Json().ignore_parse_errors(True)

        expected = {'format.ignore-parse-errors': 'true',
                    'format.property-version': '1',
                    'format.type': 'json'}

        properties = json.to_properties()
        self.assertEqual(expected, properties)
Exemplo n.º 3
0
    def test_fail_on_missing_field_true(self):
        json = Json().fail_on_missing_field(True)

        expected = {'format.fail-on-missing-field': 'true',
                    'format.property-version': '1',
                    'format.type': 'json'}

        properties = json.to_properties()
        self.assertEqual(expected, properties)
Exemplo n.º 4
0
    def test_schema(self):
        json = Json().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': 'json'}

        properties = json.to_properties()
        self.assertEqual(expected, properties)
Exemplo n.º 5
0
    def test_json_schema(self):
        json = Json().json_schema("{"
                                  "'title': 'Fruit',"
                                  "'type': 'object',"
                                  "'properties': "
                                  "{"
                                  "'name': {'type': 'string'},"
                                  "'count': {'type': 'integer'},"
                                  "'time': "
                                  "{"
                                  "'description': 'row time',"
                                  "'type': 'string',"
                                  "'format': 'date-time'"
                                  "}"
                                  "},"
                                  "'required': ['name', 'count', 'time']"
                                  "}")

        expected = {
            'format.json-schema':
            "{"
            "'title': 'Fruit',"
            "'type': 'object',"
            "'properties': {"
            "'name': {'type': 'string'},"
            "'count': {'type': 'integer'},"
            "'time': {"
            "'description': 'row time',"
            "'type': 'string',"
            "'format': 'date-time'}"
            "},"
            "'required': ['name', 'count', 'time']}",
            'format.property-version':
            '1',
            'format.type':
            'json'
        }

        properties = json.to_properties()
        self.assertEqual(expected, properties)