Coverage report: 19%

Files Functions Classes

coverage.py v7.12.0, created at 2025-11-26 11:34 +0800

File function   statements missing excluded   coverage
src / ss_utils_circuit_breaker / __init__.py (no function)   2 0 0   100%
src / ss_utils_circuit_breaker / breaker.py CircuitBreakerError.__init__   2 2 0   0%
src / ss_utils_circuit_breaker / breaker.py CircuitBreaker.__init__   7 7 0   0%
src / ss_utils_circuit_breaker / breaker.py CircuitBreaker.state   5 5 0   0%
src / ss_utils_circuit_breaker / breaker.py CircuitBreaker.failure_count   1 1 0   0%
src / ss_utils_circuit_breaker / breaker.py CircuitBreaker.open   2 2 0   0%
src / ss_utils_circuit_breaker / breaker.py CircuitBreaker.close   3 3 0   0%
src / ss_utils_circuit_breaker / breaker.py CircuitBreaker.half_open   1 1 0   0%
src / ss_utils_circuit_breaker / breaker.py CircuitBreaker.reset   1 1 0   0%
src / ss_utils_circuit_breaker / breaker.py CircuitBreaker._on_success   4 4 0   0%
src / ss_utils_circuit_breaker / breaker.py CircuitBreaker._on_failure   5 5 0   0%
src / ss_utils_circuit_breaker / breaker.py CircuitBreaker.__call__   3 3 0   0%
src / ss_utils_circuit_breaker / breaker.py CircuitBreaker.__call__.wrapper   9 9 0   0%
src / ss_utils_circuit_breaker / breaker.py RedisCircuitBreaker.__init__   5 5 0   0%
src / ss_utils_circuit_breaker / breaker.py RedisCircuitBreaker._key   1 1 0   0%
src / ss_utils_circuit_breaker / breaker.py RedisCircuitBreaker._ensure_redis   20 20 0   0%
src / ss_utils_circuit_breaker / breaker.py RedisCircuitBreaker._get_state_from_redis   9 9 0   0%
src / ss_utils_circuit_breaker / breaker.py RedisCircuitBreaker._set_state_in_redis   6 6 0   0%
src / ss_utils_circuit_breaker / breaker.py RedisCircuitBreaker._get_failure_count_from_redis   9 9 0   0%
src / ss_utils_circuit_breaker / breaker.py RedisCircuitBreaker._set_failure_count_in_redis   6 6 0   0%
src / ss_utils_circuit_breaker / breaker.py RedisCircuitBreaker._get_opened_at_from_redis   9 9 0   0%
src / ss_utils_circuit_breaker / breaker.py RedisCircuitBreaker._set_opened_at_in_redis   8 8 0   0%
src / ss_utils_circuit_breaker / breaker.py RedisCircuitBreaker._sync_from_redis   9 9 0   0%
src / ss_utils_circuit_breaker / breaker.py RedisCircuitBreaker._sync_to_redis   3 3 0   0%
src / ss_utils_circuit_breaker / breaker.py RedisCircuitBreaker.get_state_async   7 7 0   0%
src / ss_utils_circuit_breaker / breaker.py RedisCircuitBreaker._on_success_async   2 2 0   0%
src / ss_utils_circuit_breaker / breaker.py RedisCircuitBreaker._on_failure_async   2 2 0   0%
src / ss_utils_circuit_breaker / breaker.py RedisCircuitBreaker.__call__   3 3 0   0%
src / ss_utils_circuit_breaker / breaker.py RedisCircuitBreaker.__call__.wrapper   10 10 0   0%
src / ss_utils_circuit_breaker / breaker.py (no function)   39 0 0   100%
tests / conftest.py breaker   2 2 0   0%
tests / conftest.py redis_breaker   2 2 0   0%
tests / conftest.py (no function)   5 0 0   100%
tests / test_circuit_breaker.py TestCircuitBreaker.test_initial_state_is_closed   2 2 0   0%
tests / test_circuit_breaker.py TestCircuitBreaker.test_successful_calls_keep_circuit_closed   7 7 0   0%
tests / test_circuit_breaker.py TestCircuitBreaker.test_successful_calls_keep_circuit_closed.successful_func   1 1 0   0%
tests / test_circuit_breaker.py TestCircuitBreaker.test_circuit_opens_after_threshold_failures   10 10 0   0%
tests / test_circuit_breaker.py TestCircuitBreaker.test_circuit_opens_after_threshold_failures.failing_func   1 1 0   0%
tests / test_circuit_breaker.py TestCircuitBreaker.test_circuit_breaker_error_contains_name   7 7 0   0%
tests / test_circuit_breaker.py TestCircuitBreaker.test_circuit_breaker_error_contains_name.some_func   1 1 0   0%
tests / test_circuit_breaker.py TestCircuitBreaker.test_open_circuit_prevents_calls   7 7 0   0%
tests / test_circuit_breaker.py TestCircuitBreaker.test_open_circuit_prevents_calls.tracked_func   2 2 0   0%
tests / test_circuit_breaker.py TestCircuitBreaker.test_half_open_allows_test_call   7 7 0   0%
tests / test_circuit_breaker.py TestCircuitBreaker.test_half_open_allows_test_call.success_func   1 1 0   0%
tests / test_circuit_breaker.py TestCircuitBreaker.test_half_open_failure_reopens_circuit   7 7 0   0%
tests / test_circuit_breaker.py TestCircuitBreaker.test_half_open_failure_reopens_circuit.failing_func   1 1 0   0%
tests / test_circuit_breaker.py TestCircuitBreaker.test_reset_closes_circuit   5 5 0   0%
tests / test_circuit_breaker.py TestCircuitBreaker.test_close_resets_failure_count   8 8 0   0%
tests / test_circuit_breaker.py TestCircuitBreaker.test_close_resets_failure_count.failing_func   1 1 0   0%
tests / test_circuit_breaker.py TestCircuitBreaker.test_success_resets_failure_count   9 9 0   0%
tests / test_circuit_breaker.py TestCircuitBreaker.test_success_resets_failure_count.maybe_fail   3 3 0   0%
tests / test_circuit_breaker.py TestCircuitBreaker.test_expected_exception_filtering   9 9 0   0%
tests / test_circuit_breaker.py TestCircuitBreaker.test_expected_exception_filtering.multi_error   4 4 0   0%
tests / test_circuit_breaker.py TestCircuitBreaker.test_multiple_expected_exceptions   9 9 0   0%
tests / test_circuit_breaker.py TestCircuitBreaker.test_multiple_expected_exceptions.multi_fail   4 4 0   0%
tests / test_circuit_breaker.py TestCircuitBreaker.test_decorated_function_preserves_return_value   4 4 0   0%
tests / test_circuit_breaker.py TestCircuitBreaker.test_decorated_function_preserves_return_value.get_data   1 1 0   0%
tests / test_circuit_breaker.py TestCircuitBreaker.test_decorated_function_preserves_arguments   4 4 0   0%
tests / test_circuit_breaker.py TestCircuitBreaker.test_decorated_function_preserves_arguments.add   1 1 0   0%
tests / test_circuit_breaker.py TestCircuitBreakerState.test_state_values   3 3 0   0%
tests / test_circuit_breaker.py TestCircuitBreakerState.test_state_is_string_enum   3 3 0   0%
tests / test_circuit_breaker.py (no function)   20 0 0   100%
Total     344 278 0   19%

No items found using the specified filter.