Skip to content

Commit

Permalink
Test for empty partitions
Browse files Browse the repository at this point in the history
  • Loading branch information
adam-narozniak committed Feb 26, 2024
1 parent 5789d79 commit a2f9a1c
Showing 1 changed file with 20 additions and 1 deletion.
21 changes: 20 additions & 1 deletion datasets/flwr_datasets/partitioner/shard_partitioner_test.py
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ def _dummy_setup(
shard_size: Optional[int],
keep_incomplete_shard: bool = False,
) -> Tuple[Dataset, ShardPartitioner]:
"""Create a dummy dataset for testing.."""
"""Create a dummy dataset for testing."""
data = {
partition_by: [i % 3 for i in range(num_rows)],
"features": list(range(num_rows)),
Expand Down Expand Up @@ -368,6 +368,25 @@ def test_incorrect_specification(self) -> None:
with self.assertRaises(ValueError):
_ = partitioner.load_partition(0)

def test_too_big_shard_size(self) -> None:
"""Test if it is impossible to create an empty partition."""
partition_by = "label"
num_rows = 20
num_partitions = 3
num_shards_per_node = None
shard_size = 10
keep_incomplete_shard = False
_, partitioner = _dummy_setup(
num_rows,
partition_by,
num_partitions,
num_shards_per_node,
shard_size,
keep_incomplete_shard,
)
with self.assertRaises(ValueError):
_ = partitioner.load_partition(2).num_rows


if __name__ == "__main__":
unittest.main()

0 comments on commit a2f9a1c

Please sign in to comment.