コード例 #1
0
def test_decimal():
    s = PyArrowSerializer()
    expected = [{'a': Decimal('1.2')}]
    actual = s.deserialize(s.serialize(expected))
    np.testing.assert_array_equal(actual[0]['a'], expected[0]['a'])

    expected = [{'a': [Decimal('1.2')]}]
    actual = s.deserialize(s.serialize(expected))
    np.testing.assert_array_equal(actual[0]['a'], expected[0]['a'])
コード例 #2
0
def test_all_matrix_types():
    s = PyArrowSerializer()
    # We would be using serializer with arrays of dictionaries or arrays of dictionaries of dictionaries (ngram)
    serialized_values = [
        (np.int8, -127),
        (np.uint8, 255),
        (np.int16, -2**15),
        (np.uint16, 2**16 - 1),
        (np.int32, -2**31),
        (np.uint32, 2**32 - 1),
        (np.float16, 1.2),
        (np.float32, 1.2),
        (np.float64, 1.2),
        (np.string_, 'abc'),
        (np.unicode_, u'אבג'),
        (np.int64, -2**63),
        (np.uint64, 2**64 - 1),
    ]

    for type_factory, value in serialized_values:
        desired = [{'value': np.asarray(4 * [value], dtype=type_factory)}]
        actual = s.deserialize(s.serialize(desired))
        assert actual[0]['value'].dtype == desired[0]['value'].dtype
        np.testing.assert_array_equal(actual[0]['value'], desired[0]['value'])
コード例 #3
0
def test_nominal():
    s = PyArrowSerializer()
    expected = [{'a': np.asarray([1, 2], dtype=np.uint64)}]
    actual = s.deserialize(s.serialize(expected))
    np.testing.assert_array_equal(actual[0]['a'], expected[0]['a'])