CombineSingleEventOnlyPublisher Swift Combine publisher implementation for throttling based on test execution, not on time