MCPcopy Create free account
hub / github.com/apache/arrow / test_feather_format_compressed

Function test_feather_format_compressed

python/pyarrow/tests/test_dataset.py:3741–3785  ·  view source on GitHub ↗
(tempdir, compression, dataset_reader)

Source from the content-addressed store, hash-verified

3739 "brotli" # not supported
3740])
3741def test_feather_format_compressed(tempdir, compression, dataset_reader):
3742 table = pa.table({'a': pa.array([0]*300, type="int8"),
3743 'b': pa.array([.1, .2, .3]*100, type="float64")})
3744 if not pa.Codec.is_available(compression):
3745 pytest.skip()
3746
3747 basedir = tempdir / "feather_dataset_compressed"
3748 basedir.mkdir()
3749 file_format = ds.IpcFileFormat()
3750
3751 uncompressed_basedir = tempdir / "feather_dataset_uncompressed"
3752 uncompressed_basedir.mkdir()
3753 ds.write_dataset(
3754 table,
3755 str(uncompressed_basedir / "data.arrow"),
3756 format=file_format,
3757 file_options=file_format.make_write_options(compression=None)
3758 )
3759
3760 if compression == "brotli":
3761 with pytest.raises(ValueError, match="Compression type"):
3762 write_options = file_format.make_write_options(
3763 compression=compression)
3764 with pytest.raises(ValueError, match="Compression type"):
3765 codec = pa.Codec(compression)
3766 write_options = file_format.make_write_options(compression=codec)
3767 return
3768
3769 write_options = file_format.make_write_options(compression=compression)
3770 ds.write_dataset(
3771 table,
3772 str(basedir / "data.arrow"),
3773 format=file_format,
3774 file_options=write_options
3775 )
3776
3777 dataset = ds.dataset(basedir, format=ds.IpcFileFormat())
3778 result = dataset_reader.to_table(dataset)
3779 assert result.equals(table)
3780
3781 compressed_file = basedir / "data.arrow" / "part-0.arrow"
3782 compressed_size = compressed_file.stat().st_size
3783 uncompressed_file = uncompressed_basedir / "data.arrow" / "part-0.arrow"
3784 uncompressed_size = uncompressed_file.stat().st_size
3785 assert compressed_size < uncompressed_size
3786
3787
3788def _create_parquet_dataset_simple(root_path):

Callers

nothing calls this directly

Calls 4

IpcFileFormatMethod · 0.80
equalsMethod · 0.80
arrayMethod · 0.45
to_tableMethod · 0.45

Tested by

no test coverage detected