45 lines
951 B
Python
45 lines
951 B
Python
from hypothesis import given
|
|
from hypothesis.extra.pandas import data_frames, columns, range_indexes
|
|
|
|
from pandas.util.testing import assert_frame_equal
|
|
|
|
import pandas as pd
|
|
|
|
from demo.classes import CsvSerializer, ParquetSerializer
|
|
|
|
|
|
@given(
|
|
data_frames(
|
|
index=range_indexes(min_size=10), columns=columns(["foo", "bar"], dtype=float)
|
|
)
|
|
)
|
|
def test_csv_serializer(df: pd.DataFrame) -> None:
|
|
serdes = CsvSerializer(df)
|
|
actual = CsvSerializer.from_bytes(serdes.to_bytes())
|
|
|
|
print(df)
|
|
print(actual)
|
|
|
|
assert_frame_equal(
|
|
df,
|
|
actual,
|
|
)
|
|
|
|
|
|
@given(
|
|
data_frames(
|
|
index=range_indexes(min_size=10), columns=columns(["foo", "bar"], dtype=float)
|
|
)
|
|
)
|
|
def test_parquet_serializer(df: pd.DataFrame) -> None:
|
|
serdes = ParquetSerializer(df)
|
|
actual = ParquetSerializer.from_bytes(serdes.to_bytes())
|
|
|
|
print(df)
|
|
print(actual)
|
|
|
|
assert_frame_equal(
|
|
df,
|
|
actual,
|
|
)
|