Problem
PartitioningFilter has no recorded line coverage in the October 5, 2026 .NET 10 coverage run. It selects a partition and routes each message through a serial handling worker, so failures here could reorder events, block unrelated work, or lose accepted messages during shutdown. You can view a test coverage report I generated here: index.html
Source: PartitioningFilter.cs.
Proposed tests
- Send multiple events for the same stream through a configured consume pipeline. Block the first handler and verify that later events in its partition cannot overtake it.
- Send events to distinct partitions and verify that an unblocked partition can progress while another handler is blocked.
- Verify default stream-based partitioning and a configured custom partition key through the partition metadata received by handlers.
- Exercise different keys that map to the same partition and verify serial processing within that partition.
- Begin shutdown while accepted work is queued. Verify that graceful shutdown waits for that work to finish and does not process messages twice.
Acceptance criteria
Validation
Run the focused subscription tests and collect coverage for the partitioning path. Use controlled keys or an injected hash where needed to make partition assignment deterministic, while retaining a test of the default configuration.
Problem
PartitioningFilterhas no recorded line coverage in the October 5, 2026 .NET 10 coverage run. It selects a partition and routes each message through a serial handling worker, so failures here could reorder events, block unrelated work, or lose accepted messages during shutdown. You can view a test coverage report I generated here: index.htmlSource: PartitioningFilter.cs.
Proposed tests
Acceptance criteria
Validation
Run the focused subscription tests and collect coverage for the partitioning path. Use controlled keys or an injected hash where needed to make partition assignment deterministic, while retaining a test of the default configuration.