Ejemplo n.º 1
0
    def test_convert_pandas_type_to_json_field_categorical(self):
        data = ['a', 'b', 'c']
        ordereds = [True, False]

        for ordered in ordereds:
            arr = pd.Series(pd.Categorical(data, ordered=ordered), name='cats')
            result = convert_pandas_type_to_json_field(arr)
            expected = {
                "name": "cats",
                "type": "any",
                "constraints": {
                    "enum": data
                },
                "ordered": ordered
            }
            assert result == expected

            arr = pd.CategoricalIndex(data, ordered=ordered, name='cats')
            result = convert_pandas_type_to_json_field(arr)
            expected = {
                "name": "cats",
                "type": "any",
                "constraints": {
                    "enum": data
                },
                "ordered": ordered
            }
            assert result == expected
Ejemplo n.º 2
0
 def test_convert_pandas_type_to_json_field_float(self):
     data = [1., 2., 3.]
     kinds = [pd.Series(data, name='name'), pd.Index(data, name='name')]
     for kind in kinds:
         result = convert_pandas_type_to_json_field(kind)
         expected = {"name": "name", "type": 'number'}
         assert result == expected
Ejemplo n.º 3
0
 def test_convert_pandas_type_to_json_field_datetime(
         self, dt_args, extra_exp, wrapper):
     data = [1., 2., 3.]
     data = pd.to_datetime(data, **dt_args)
     if wrapper is pd.Series:
         data = pd.Series(data, name='values')
     result = convert_pandas_type_to_json_field(data)
     expected = {"name": "values", "type": 'datetime'}
     expected.update(extra_exp)
     assert result == expected
 def test_convert_pandas_type_to_json_field_datetime(self, dt_args,
                                                     extra_exp, wrapper):
     data = [1., 2., 3.]
     data = pd.to_datetime(data, **dt_args)
     if wrapper is pd.Series:
         data = pd.Series(data, name='values')
     result = convert_pandas_type_to_json_field(data)
     expected = {"name": "values", "type": 'datetime'}
     expected.update(extra_exp)
     assert result == expected
    def test_convert_pandas_type_to_json_field_categorical(self, kind,
                                                           ordered):
        data = ['a', 'b', 'c']
        if kind is pd.Categorical:
            arr = pd.Series(kind(data, ordered=ordered), name='cats')
        elif kind is pd.CategoricalIndex:
            arr = kind(data, ordered=ordered, name='cats')

        result = convert_pandas_type_to_json_field(arr)
        expected = {"name": "cats", "type": "any",
                    "constraints": {"enum": data},
                    "ordered": ordered}
        assert result == expected
Ejemplo n.º 6
0
    def test_convert_pandas_type_to_json_field_categorical(self, kind,
                                                           ordered):
        data = ['a', 'b', 'c']
        if kind is pd.Categorical:
            arr = pd.Series(kind(data, ordered=ordered), name='cats')
        elif kind is pd.CategoricalIndex:
            arr = kind(data, ordered=ordered, name='cats')

        result = convert_pandas_type_to_json_field(arr)
        expected = {"name": "cats", "type": "any",
                    "constraints": {"enum": data},
                    "ordered": ordered}
        assert result == expected
Ejemplo n.º 7
0
    def test_convert_pandas_type_to_json_field_datetime(self):
        data = [1., 2., 3.]
        kinds = [
            pd.Series(pd.to_datetime(data), name='values'),
            pd.to_datetime(data)
        ]
        for kind in kinds:
            result = convert_pandas_type_to_json_field(kind)
            expected = {"name": "values", "type": 'datetime'}
            assert result == expected

        kinds = [
            pd.Series(pd.to_datetime(data, utc=True), name='values'),
            pd.to_datetime(data, utc=True)
        ]
        for kind in kinds:
            result = convert_pandas_type_to_json_field(kind)
            expected = {"name": "values", "type": 'datetime', "tz": "UTC"}
            assert result == expected

        arr = pd.period_range('2016', freq='A-DEC', periods=4)
        result = convert_pandas_type_to_json_field(arr)
        expected = {"name": "values", "type": 'datetime', "freq": "A-DEC"}
        assert result == expected
Ejemplo n.º 8
0
 def test_convert_pandas_type_to_json_period_range(self):
     arr = pd.period_range('2016', freq='A-DEC', periods=4)
     result = convert_pandas_type_to_json_field(arr)
     expected = {"name": "values", "type": 'datetime', "freq": "A-DEC"}
     assert result == expected
Ejemplo n.º 9
0
 def test_convert_pandas_type_to_json_field_float(self, kind):
     data = [1., 2., 3.]
     result = convert_pandas_type_to_json_field(kind(data, name='name'))
     expected = {"name": "name", "type": "number"}
     assert result == expected
Ejemplo n.º 10
0
 def test_convert_pandas_type_to_json_field_int(self, kind):
     data = [1, 2, 3]
     result = convert_pandas_type_to_json_field(kind(data, name='name'))
     expected = {"name": "name", "type": "integer"}
     assert result == expected
Ejemplo n.º 11
0
 def test_convert_pandas_type_to_json_period_range(self):
     arr = pd.period_range('2016', freq='A-DEC', periods=4)
     result = convert_pandas_type_to_json_field(arr)
     expected = {"name": "values", "type": 'datetime', "freq": "A-DEC"}
     assert result == expected
Ejemplo n.º 12
0
 def test_convert_pandas_type_to_json_field_float(self, kind):
     data = [1., 2., 3.]
     result = convert_pandas_type_to_json_field(kind(data, name='name'))
     expected = {"name": "name", "type": "number"}
     assert result == expected
Ejemplo n.º 13
0
 def test_convert_pandas_type_to_json_field_int(self, kind):
     data = [1, 2, 3]
     result = convert_pandas_type_to_json_field(kind(data, name='name'))
     expected = {"name": "name", "type": "integer"}
     assert result == expected