Orchestrata Ultimate › Tests › Reference › postman › test_error_handler
Tests reference — tests/postman/test_error_handler.py
Module of tests/postman, split out because the directory page would be too large.
Prose pending.
tests/postman/test_error_handler.py
source · 48 tests · 612 lines
Tests for Postman error handler with circuit breaker.
Covers: postman.error_handler, postman.exceptions
| Kind | Name | Line | Description |
|---|---|---|---|
| class | TestCircuitBreaker |
22 | Test CircuitBreaker functionality. |
| method | TestCircuitBreaker.test_init_sets_threshold_and_timeout |
25 | CircuitBreaker.init sets failure_threshold and reset_timeout. |
| method | TestCircuitBreaker.test_init_default_values |
35 | CircuitBreaker.init uses default threshold and timeout. |
| method | TestCircuitBreaker.test_is_open_returns_false_when_closed |
44 | CircuitBreaker.is_open returns False when state is closed. |
| method | TestCircuitBreaker.test_is_open_returns_true_when_open |
50 | CircuitBreaker.is_open returns True when state is open. |
| method | TestCircuitBreaker.test_is_open_transitions_to_half_open_after_timeout |
61 | CircuitBreaker.is_open transitions to half_open after reset_timeout. |
| method | TestCircuitBreaker.test_is_open_remains_true_before_timeout |
77 | CircuitBreaker.is_open remains True before reset_timeout expires. |
| method | TestCircuitBreaker.test_is_open_returns_false_when_half_open |
89 | CircuitBreaker.is_open returns False when state is half_open. |
| method | TestCircuitBreaker.test_record_success_resets_failures |
104 | CircuitBreaker.record_success resets failure count to 0. |
| method | TestCircuitBreaker.test_record_success_closes_half_open_circuit |
115 | CircuitBreaker.record_success closes circuit when half_open. |
| method | TestCircuitBreaker.test_record_success_does_not_change_closed_state |
134 | CircuitBreaker.record_success keeps circuit closed when already closed. |
| method | TestCircuitBreaker.test_record_failure_increments_count |
142 | CircuitBreaker.record_failure increments failure count. |
| method | TestCircuitBreaker.test_record_failure_sets_last_failure_timestamp |
152 | CircuitBreaker.record_failure sets last_failure timestamp. |
| method | TestCircuitBreaker.test_record_failure_opens_at_threshold |
163 | CircuitBreaker.record_failure opens circuit at failure_threshold. |
| method | TestCircuitBreaker.test_record_failure_opens_immediately_at_threshold_one |
178 | CircuitBreaker.record_failure opens circuit immediately with threshold=1. |
| method | TestCircuitBreaker.test_circuit_full_lifecycle |
186 | CircuitBreaker transitions through closed->open->half_open->closed. |
| class | TestPostmanErrorHandler |
211 | Test PostmanErrorHandler functionality. |
| method | TestPostmanErrorHandler.test_init_with_max_retries_and_threshold |
214 | PostmanErrorHandler.init sets max_retries and failure_threshold. |
| method | TestPostmanErrorHandler.test_init_default_values |
224 | PostmanErrorHandler.init uses default max_retries and threshold. |
| method | TestPostmanErrorHandler.test_handle_returns_retry_for_timeout_error |
231 | PostmanErrorHandler.handle returns should_retry=True for timeout. |
| method | TestPostmanErrorHandler.test_handle_returns_no_retry_for_circuit_open_error |
243 | PostmanErrorHandler.handle returns should_retry=False for CircuitOpenError. |
| method | TestPostmanErrorHandler.test_handle_returns_no_retry_for_max_retries_exceeded |
254 | PostmanErrorHandler.handle returns should_retry=False for MaxRetriesExceededError. |
| method | TestPostmanErrorHandler.test_handle_returns_no_retry_for_delivery_failed |
265 | PostmanErrorHandler.handle returns should_retry=False for DeliveryFailedError. |
| method | TestPostmanErrorHandler.test_handle_returns_no_retry_when_max_retries_reached |
276 | PostmanErrorHandler.handle returns should_retry=False when retry_attempt >= max_retries. |
| method | TestPostmanErrorHandler.test_handle_returns_no_retry_when_circuit_open |
287 | PostmanErrorHandler.handle returns should_retry=False when circuit is open. |
| method | TestPostmanErrorHandler.test_handle_records_failure_on_retriable_error |
303 | PostmanErrorHandler.handle records failure for retriable errors. |
| method | TestPostmanErrorHandler.test_handle_records_failure_when_max_retries_reached |
318 | PostmanErrorHandler.handle records failure when max retries exceeded. |
| method | TestPostmanErrorHandler.test_handle_uses_unknown_destination_when_missing |
330 | PostmanErrorHandler.handle uses 'unknown' when destination missing from context. |
| method | TestPostmanErrorHandler.test_handle_defaults_retry_attempt_to_zero |
342 | PostmanErrorHandler.handle defaults retry_attempt to 0 when missing. |
| method | TestPostmanErrorHandler.test_is_circuit_open_returns_false_for_new_destination |
353 | PostmanErrorHandler.is_circuit_open returns False for new destination. |
| method | TestPostmanErrorHandler.test_is_circuit_open_returns_true_when_circuit_open |
359 | PostmanErrorHandler.is_circuit_open returns True when circuit is open. |
| method | TestPostmanErrorHandler.test_is_circuit_open_delegates_to_circuit_breaker |
368 | PostmanErrorHandler.is_circuit_open delegates to CircuitBreaker.is_open. |
| method | TestPostmanErrorHandler.test_record_success_delegates_to_circuit_breaker |
379 | PostmanErrorHandler.record_success delegates to CircuitBreaker.record_success. |
| method | TestPostmanErrorHandler.test_record_success_creates_circuit_if_missing |
390 | PostmanErrorHandler.record_success creates circuit for new destination. |
| method | TestPostmanErrorHandler.test_record_failure_delegates_to_circuit_breaker |
403 | PostmanErrorHandler.record_failure delegates to CircuitBreaker.record_failure. |
| method | TestPostmanErrorHandler.test_record_failure_creates_circuit_if_missing |
413 | PostmanErrorHandler.record_failure creates circuit for new destination. |
| method | TestPostmanErrorHandler.test_get_circuit_returns_existing_circuit |
424 | PostmanErrorHandler._get_circuit returns existing circuit for destination. |
| method | TestPostmanErrorHandler.test_get_circuit_creates_new_circuit_with_threshold |
435 | PostmanErrorHandler._get_circuit creates CircuitBreaker with failure_threshold. |
| method | TestPostmanErrorHandler.test_get_circuit_creates_separate_circuits_per_destination |
444 | PostmanErrorHandler._get_circuit creates separate circuits for each destination. |
| method | TestPostmanErrorHandler.test_calculate_backoff_returns_exponential_delay |
456 | PostmanErrorHandler._calculate_backoff returns exponential delay. |
| method | TestPostmanErrorHandler.test_calculate_backoff_returns_positive_values |
469 | PostmanErrorHandler._calculate_backoff never returns negative values. |
| method | TestPostmanErrorHandler.test_calculate_backoff_increases_with_attempts |
477 | PostmanErrorHandler._calculate_backoff increases with retry attempts. |
| method | TestPostmanErrorHandler.test_handle_multiple_destinations_independent_circuits |
487 | PostmanErrorHandler.handle maintains independent circuits per destination. |
| method | TestPostmanErrorHandler.test_handle_integration_with_circuit_recovery |
507 | PostmanErrorHandler.handle allows recovery after circuit opens and resets. |
| class | TestErrorHandlerEdgeCases |
539 | Test edge cases and error conditions. |
| method | TestErrorHandlerEdgeCases.test_handle_with_empty_context |
542 | PostmanErrorHandler.handle handles empty context gracefully. |
| method | TestErrorHandlerEdgeCases.test_handle_with_negative_retry_attempt |
553 | PostmanErrorHandler.handle treats negative retry_attempt as 0. |
| method | TestErrorHandlerEdgeCases.test_handle_with_very_large_retry_attempt |
568 | PostmanErrorHandler.handle rejects very large retry attempts. |
| method | TestErrorHandlerEdgeCases.test_calculate_backoff_with_zero_attempt |
579 | PostmanErrorHandler._calculate_backoff handles attempt=0. |
| method | TestErrorHandlerEdgeCases.test_calculate_backoff_with_large_attempt |
588 | PostmanErrorHandler._calculate_backoff handles large attempts. |
| method | TestErrorHandlerEdgeCases.test_multiple_handlers_independent_circuits |
597 | Multiple PostmanErrorHandler instances maintain independent circuits. |