-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathpytest_results.json
More file actions
1 lines (1 loc) · 82.9 KB
/
pytest_results.json
File metadata and controls
1 lines (1 loc) · 82.9 KB
1
{"created": 1752281359.5004985, "duration": 6.619509935379028, "exitcode": 1, "root": "/home/justinchiu_cohere_com/librarybench/projects/http_api_mock_server/http_api_mock_server_microservices", "environment": {}, "summary": {"passed": 110, "error": 2, "total": 112, "collected": 112}, "collectors": [{"nodeid": "", "outcome": "passed", "result": [{"nodeid": "tests", "type": "Package"}]}, {"nodeid": "tests/test_chaos_controller.py::TestChaosController", "outcome": "passed", "result": [{"nodeid": "tests/test_chaos_controller.py::TestChaosController::test_create_chaos_event", "type": "Coroutine", "lineno": 75}, {"nodeid": "tests/test_chaos_controller.py::TestChaosController::test_service_down_scenario", "type": "Coroutine", "lineno": 94}, {"nodeid": "tests/test_chaos_controller.py::TestChaosController::test_network_partition_scenario", "type": "Coroutine", "lineno": 122}, {"nodeid": "tests/test_chaos_controller.py::TestChaosController::test_cascade_failure_scenario", "type": "Coroutine", "lineno": 140}, {"nodeid": "tests/test_chaos_controller.py::TestChaosController::test_cascade_failure_probability", "type": "Coroutine", "lineno": 161}, {"nodeid": "tests/test_chaos_controller.py::TestChaosController::test_stop_chaos_event", "type": "Coroutine", "lineno": 182}, {"nodeid": "tests/test_chaos_controller.py::TestChaosController::test_automatic_event_cleanup", "type": "Coroutine", "lineno": 204}, {"nodeid": "tests/test_chaos_controller.py::TestChaosController::test_get_active_events", "type": "Coroutine", "lineno": 226}, {"nodeid": "tests/test_chaos_controller.py::TestChaosController::test_get_events_for_service", "type": "Coroutine", "lineno": 250}, {"nodeid": "tests/test_chaos_controller.py::TestChaosController::test_is_service_affected", "type": "Coroutine", "lineno": 280}, {"nodeid": "tests/test_chaos_controller.py::TestChaosController::test_event_handlers", "type": "Coroutine", "lineno": 297}, {"nodeid": "tests/test_chaos_controller.py::TestChaosController::test_get_chaos_metrics", "type": "Coroutine", "lineno": 320}, {"nodeid": "tests/test_chaos_controller.py::TestChaosController::test_concurrent_chaos_operations", "type": "Coroutine", "lineno": 347}, {"nodeid": "tests/test_chaos_controller.py::TestChaosController::test_multiple_scenarios_same_service", "type": "Coroutine", "lineno": 375}]}, {"nodeid": "tests/test_chaos_controller.py", "outcome": "passed", "result": [{"nodeid": "tests/test_chaos_controller.py::TestChaosController", "type": "Class"}]}, {"nodeid": "tests/test_circuit_breaker.py::TestCircuitBreaker", "outcome": "passed", "result": [{"nodeid": "tests/test_circuit_breaker.py::TestCircuitBreaker::test_initial_state", "type": "Coroutine", "lineno": 28}, {"nodeid": "tests/test_circuit_breaker.py::TestCircuitBreaker::test_successful_calls", "type": "Coroutine", "lineno": 35}, {"nodeid": "tests/test_circuit_breaker.py::TestCircuitBreaker::test_failure_threshold", "type": "Coroutine", "lineno": 49}, {"nodeid": "tests/test_circuit_breaker.py::TestCircuitBreaker::test_open_state_rejection", "type": "Coroutine", "lineno": 66}, {"nodeid": "tests/test_circuit_breaker.py::TestCircuitBreaker::test_half_open_transition", "type": "Coroutine", "lineno": 80}, {"nodeid": "tests/test_circuit_breaker.py::TestCircuitBreaker::test_half_open_to_closed", "type": "Coroutine", "lineno": 103}, {"nodeid": "tests/test_circuit_breaker.py::TestCircuitBreaker::test_half_open_to_open", "type": "Coroutine", "lineno": 120}, {"nodeid": "tests/test_circuit_breaker.py::TestCircuitBreaker::test_half_open_max_requests", "type": "Coroutine", "lineno": 134}, {"nodeid": "tests/test_circuit_breaker.py::TestCircuitBreaker::test_manual_reset", "type": "Coroutine", "lineno": 161}, {"nodeid": "tests/test_circuit_breaker.py::TestCircuitBreaker::test_get_state_info", "type": "Coroutine", "lineno": 175}, {"nodeid": "tests/test_circuit_breaker.py::TestCircuitBreaker::test_concurrent_calls", "type": "Coroutine", "lineno": 187}]}, {"nodeid": "tests/test_circuit_breaker.py::TestCircuitBreakerEngine", "outcome": "passed", "result": [{"nodeid": "tests/test_circuit_breaker.py::TestCircuitBreakerEngine::test_register_endpoint", "type": "Coroutine", "lineno": 225}, {"nodeid": "tests/test_circuit_breaker.py::TestCircuitBreakerEngine::test_unregister_endpoint", "type": "Coroutine", "lineno": 236}, {"nodeid": "tests/test_circuit_breaker.py::TestCircuitBreakerEngine::test_call_with_breaker", "type": "Coroutine", "lineno": 247}, {"nodeid": "tests/test_circuit_breaker.py::TestCircuitBreakerEngine::test_call_without_breaker", "type": "Coroutine", "lineno": 259}, {"nodeid": "tests/test_circuit_breaker.py::TestCircuitBreakerEngine::test_get_all_states", "type": "Coroutine", "lineno": 270}, {"nodeid": "tests/test_circuit_breaker.py::TestCircuitBreakerEngine::test_get_open_circuits", "type": "Coroutine", "lineno": 286}, {"nodeid": "tests/test_circuit_breaker.py::TestCircuitBreakerEngine::test_reset_all", "type": "Coroutine", "lineno": 300}, {"nodeid": "tests/test_circuit_breaker.py::TestCircuitBreakerEngine::test_update_config", "type": "Coroutine", "lineno": 319}, {"nodeid": "tests/test_circuit_breaker.py::TestCircuitBreakerEngine::test_get_counts", "type": "Function", "lineno": 336}, {"nodeid": "tests/test_circuit_breaker.py::TestCircuitBreakerEngine::test_concurrent_operations", "type": "Coroutine", "lineno": 341}]}, {"nodeid": "tests/test_circuit_breaker.py", "outcome": "passed", "result": [{"nodeid": "tests/test_circuit_breaker.py::TestCircuitBreaker", "type": "Class"}, {"nodeid": "tests/test_circuit_breaker.py::TestCircuitBreakerEngine", "type": "Class"}]}, {"nodeid": "tests/test_dependency_manager.py::TestDependencyManager", "outcome": "passed", "result": [{"nodeid": "tests/test_dependency_manager.py::TestDependencyManager::test_add_service", "type": "Coroutine", "lineno": 24}, {"nodeid": "tests/test_dependency_manager.py::TestDependencyManager::test_remove_service", "type": "Coroutine", "lineno": 31}, {"nodeid": "tests/test_dependency_manager.py::TestDependencyManager::test_add_dependency", "type": "Coroutine", "lineno": 57}, {"nodeid": "tests/test_dependency_manager.py::TestDependencyManager::test_remove_dependency", "type": "Coroutine", "lineno": 70}, {"nodeid": "tests/test_dependency_manager.py::TestDependencyManager::test_get_dependencies", "type": "Coroutine", "lineno": 87}, {"nodeid": "tests/test_dependency_manager.py::TestDependencyManager::test_get_dependents", "type": "Coroutine", "lineno": 109}, {"nodeid": "tests/test_dependency_manager.py::TestDependencyManager::test_circular_dependency_detection", "type": "Coroutine", "lineno": 130}, {"nodeid": "tests/test_dependency_manager.py::TestDependencyManager::test_get_circular_dependencies", "type": "Coroutine", "lineno": 153}, {"nodeid": "tests/test_dependency_manager.py::TestDependencyManager::test_topological_order", "type": "Coroutine", "lineno": 177}, {"nodeid": "tests/test_dependency_manager.py::TestDependencyManager::test_topological_order_with_cycle", "type": "Coroutine", "lineno": 201}, {"nodeid": "tests/test_dependency_manager.py::TestDependencyManager::test_get_service_graph", "type": "Coroutine", "lineno": 216}, {"nodeid": "tests/test_dependency_manager.py::TestDependencyManager::test_get_dependency_path", "type": "Coroutine", "lineno": 244}, {"nodeid": "tests/test_dependency_manager.py::TestDependencyManager::test_get_all_paths", "type": "Coroutine", "lineno": 268}, {"nodeid": "tests/test_dependency_manager.py::TestDependencyManager::test_get_isolated_services", "type": "Coroutine", "lineno": 290}, {"nodeid": "tests/test_dependency_manager.py::TestDependencyManager::test_get_critical_services", "type": "Coroutine", "lineno": 310}, {"nodeid": "tests/test_dependency_manager.py::TestDependencyManager::test_validate_dependencies", "type": "Coroutine", "lineno": 330}, {"nodeid": "tests/test_dependency_manager.py::TestDependencyManager::test_get_counts", "type": "Function", "lineno": 354}]}, {"nodeid": "tests/test_dependency_manager.py", "outcome": "passed", "result": [{"nodeid": "tests/test_dependency_manager.py::TestDependencyManager", "type": "Class"}]}, {"nodeid": "tests/test_integration.py::TestMockServerIntegration", "outcome": "passed", "result": [{"nodeid": "tests/test_integration.py::TestMockServerIntegration::test_service_registration_flow", "type": "Coroutine", "lineno": 36}, {"nodeid": "tests/test_integration.py::TestMockServerIntegration::test_dependency_management_flow", "type": "Coroutine", "lineno": 80}, {"nodeid": "tests/test_integration.py::TestMockServerIntegration::test_circuit_breaker_flow", "type": "Coroutine", "lineno": 128}, {"nodeid": "tests/test_integration.py::TestMockServerIntegration::test_tracing_flow", "type": "Coroutine", "lineno": 166}, {"nodeid": "tests/test_integration.py::TestMockServerIntegration::test_chaos_engineering_flow", "type": "Coroutine", "lineno": 227}, {"nodeid": "tests/test_integration.py::TestMockServerIntegration::test_mock_service_behavior", "type": "Coroutine", "lineno": 301}, {"nodeid": "tests/test_integration.py::TestMockServerIntegration::test_service_mesh_scenario", "type": "Coroutine", "lineno": 384}]}, {"nodeid": "tests/test_integration.py", "outcome": "passed", "result": [{"nodeid": "tests/test_integration.py::TestMockServerIntegration", "type": "Class"}]}, {"nodeid": "tests/test_models.py::TestServiceMetadata", "outcome": "passed", "result": [{"nodeid": "tests/test_models.py::TestServiceMetadata::test_create_service_metadata", "type": "Function", "lineno": 22}, {"nodeid": "tests/test_models.py::TestServiceMetadata::test_port_validation", "type": "Function", "lineno": 40}, {"nodeid": "tests/test_models.py::TestServiceMetadata::test_service_with_metadata", "type": "Function", "lineno": 58}]}, {"nodeid": "tests/test_models.py::TestServiceDependency", "outcome": "passed", "result": [{"nodeid": "tests/test_models.py::TestServiceDependency::test_create_dependency", "type": "Function", "lineno": 76}, {"nodeid": "tests/test_models.py::TestServiceDependency::test_dependency_with_custom_config", "type": "Function", "lineno": 90}, {"nodeid": "tests/test_models.py::TestServiceDependency::test_timeout_validation", "type": "Function", "lineno": 106}]}, {"nodeid": "tests/test_models.py::TestCircuitBreakerConfig", "outcome": "passed", "result": [{"nodeid": "tests/test_models.py::TestCircuitBreakerConfig::test_default_config", "type": "Function", "lineno": 119}, {"nodeid": "tests/test_models.py::TestCircuitBreakerConfig::test_custom_config", "type": "Function", "lineno": 128}, {"nodeid": "tests/test_models.py::TestCircuitBreakerConfig::test_validation", "type": "Function", "lineno": 142}]}, {"nodeid": "tests/test_models.py::TestTraceContext", "outcome": "passed", "result": [{"nodeid": "tests/test_models.py::TestTraceContext::test_create_trace_context", "type": "Function", "lineno": 157}, {"nodeid": "tests/test_models.py::TestTraceContext::test_trace_id_validation", "type": "Function", "lineno": 170}, {"nodeid": "tests/test_models.py::TestTraceContext::test_span_id_validation", "type": "Function", "lineno": 186}, {"nodeid": "tests/test_models.py::TestTraceContext::test_case_normalization", "type": "Function", "lineno": 202}]}, {"nodeid": "tests/test_models.py::TestSpan", "outcome": "passed", "result": [{"nodeid": "tests/test_models.py::TestSpan::test_create_span", "type": "Function", "lineno": 216}, {"nodeid": "tests/test_models.py::TestSpan::test_span_with_parent", "type": "Function", "lineno": 235}, {"nodeid": "tests/test_models.py::TestSpan::test_span_with_error", "type": "Function", "lineno": 247}]}, {"nodeid": "tests/test_models.py::TestChaosEvent", "outcome": "passed", "result": [{"nodeid": "tests/test_models.py::TestChaosEvent::test_create_chaos_event", "type": "Function", "lineno": 265}, {"nodeid": "tests/test_models.py::TestChaosEvent::test_chaos_event_with_duration", "type": "Function", "lineno": 282}]}, {"nodeid": "tests/test_models.py::TestServiceGraph", "outcome": "passed", "result": [{"nodeid": "tests/test_models.py::TestServiceGraph::test_create_service_graph", "type": "Function", "lineno": 299}, {"nodeid": "tests/test_models.py::TestServiceGraph::test_get_dependencies_for_service", "type": "Function", "lineno": 328}, {"nodeid": "tests/test_models.py::TestServiceGraph::test_get_dependents_of_service", "type": "Function", "lineno": 346}]}, {"nodeid": "tests/test_models.py", "outcome": "passed", "result": [{"nodeid": "tests/test_models.py::TestServiceMetadata", "type": "Class"}, {"nodeid": "tests/test_models.py::TestServiceDependency", "type": "Class"}, {"nodeid": "tests/test_models.py::TestCircuitBreakerConfig", "type": "Class"}, {"nodeid": "tests/test_models.py::TestTraceContext", "type": "Class"}, {"nodeid": "tests/test_models.py::TestSpan", "type": "Class"}, {"nodeid": "tests/test_models.py::TestChaosEvent", "type": "Class"}, {"nodeid": "tests/test_models.py::TestServiceGraph", "type": "Class"}]}, {"nodeid": "tests/test_service_registry.py::TestServiceRegistry", "outcome": "passed", "result": [{"nodeid": "tests/test_service_registry.py::TestServiceRegistry::test_register_service", "type": "Coroutine", "lineno": 30}, {"nodeid": "tests/test_service_registry.py::TestServiceRegistry::test_register_duplicate_service", "type": "Coroutine", "lineno": 41}, {"nodeid": "tests/test_service_registry.py::TestServiceRegistry::test_deregister_service", "type": "Coroutine", "lineno": 61}, {"nodeid": "tests/test_service_registry.py::TestServiceRegistry::test_deregister_nonexistent_service", "type": "Coroutine", "lineno": 72}, {"nodeid": "tests/test_service_registry.py::TestServiceRegistry::test_get_services_by_name", "type": "Coroutine", "lineno": 77}, {"nodeid": "tests/test_service_registry.py::TestServiceRegistry::test_get_services_by_tag", "type": "Coroutine", "lineno": 105}, {"nodeid": "tests/test_service_registry.py::TestServiceRegistry::test_get_healthy_services", "type": "Coroutine", "lineno": 143}, {"nodeid": "tests/test_service_registry.py::TestServiceRegistry::test_update_service_status", "type": "Coroutine", "lineno": 177}, {"nodeid": "tests/test_service_registry.py::TestServiceRegistry::test_update_nonexistent_service_status", "type": "Coroutine", "lineno": 192}, {"nodeid": "tests/test_service_registry.py::TestServiceRegistry::test_heartbeat", "type": "Coroutine", "lineno": 200}, {"nodeid": "tests/test_service_registry.py::TestServiceRegistry::test_heartbeat_nonexistent_service", "type": "Coroutine", "lineno": 219}, {"nodeid": "tests/test_service_registry.py::TestServiceRegistry::test_health_check_marks_unhealthy", "type": "Coroutine", "lineno": 224}, {"nodeid": "tests/test_service_registry.py::TestServiceRegistry::test_health_check_restores_healthy", "type": "Coroutine", "lineno": 240}, {"nodeid": "tests/test_service_registry.py::TestServiceRegistry::test_get_all_services", "type": "Coroutine", "lineno": 259}, {"nodeid": "tests/test_service_registry.py::TestServiceRegistry::test_service_count", "type": "Function", "lineno": 282}, {"nodeid": "tests/test_service_registry.py::TestServiceRegistry::test_healthy_service_count", "type": "Function", "lineno": 289}, {"nodeid": "tests/test_service_registry.py::TestServiceRegistry::test_concurrent_operations", "type": "Coroutine", "lineno": 296}]}, {"nodeid": "tests/test_service_registry.py", "outcome": "passed", "result": [{"nodeid": "tests/test_service_registry.py::TestServiceRegistry", "type": "Class"}]}, {"nodeid": "tests/test_tracing.py::TestTracingSystem", "outcome": "passed", "result": [{"nodeid": "tests/test_tracing.py::TestTracingSystem::test_generate_trace_id", "type": "Function", "lineno": 18}, {"nodeid": "tests/test_tracing.py::TestTracingSystem::test_generate_span_id", "type": "Function", "lineno": 29}, {"nodeid": "tests/test_tracing.py::TestTracingSystem::test_create_trace_context", "type": "Coroutine", "lineno": 40}, {"nodeid": "tests/test_tracing.py::TestTracingSystem::test_start_span", "type": "Coroutine", "lineno": 60}, {"nodeid": "tests/test_tracing.py::TestTracingSystem::test_end_span", "type": "Coroutine", "lineno": 85}, {"nodeid": "tests/test_tracing.py::TestTracingSystem::test_end_span_with_error", "type": "Coroutine", "lineno": 104}, {"nodeid": "tests/test_tracing.py::TestTracingSystem::test_get_trace", "type": "Coroutine", "lineno": 117}, {"nodeid": "tests/test_tracing.py::TestTracingSystem::test_propagate_context", "type": "Coroutine", "lineno": 145}, {"nodeid": "tests/test_tracing.py::TestTracingSystem::test_parse_traceparent_header", "type": "Function", "lineno": 160}, {"nodeid": "tests/test_tracing.py::TestTracingSystem::test_format_traceparent_header", "type": "Function", "lineno": 184}, {"nodeid": "tests/test_tracing.py::TestTracingSystem::test_get_trace_graph", "type": "Coroutine", "lineno": 195}, {"nodeid": "tests/test_tracing.py::TestTracingSystem::test_get_service_dependencies_from_traces", "type": "Coroutine", "lineno": 233}, {"nodeid": "tests/test_tracing.py::TestTracingSystem::test_get_trace_statistics", "type": "Coroutine", "lineno": 264}, {"nodeid": "tests/test_tracing.py::TestTracingSystem::test_cleanup_old_traces", "type": "Coroutine", "lineno": 299}, {"nodeid": "tests/test_tracing.py::TestTracingSystem::test_concurrent_span_operations", "type": "Coroutine", "lineno": 327}]}, {"nodeid": "tests/test_tracing.py", "outcome": "passed", "result": [{"nodeid": "tests/test_tracing.py::TestTracingSystem", "type": "Class"}]}, {"nodeid": "tests", "outcome": "passed", "result": [{"nodeid": "tests/test_chaos_controller.py", "type": "Module"}, {"nodeid": "tests/test_circuit_breaker.py", "type": "Module"}, {"nodeid": "tests/test_dependency_manager.py", "type": "Module"}, {"nodeid": "tests/test_integration.py", "type": "Module"}, {"nodeid": "tests/test_models.py", "type": "Module"}, {"nodeid": "tests/test_service_registry.py", "type": "Module"}, {"nodeid": "tests/test_tracing.py", "type": "Module"}]}], "tests": [{"nodeid": "tests/test_chaos_controller.py::TestChaosController::test_create_chaos_event", "lineno": 75, "outcome": "passed", "keywords": ["test_create_chaos_event", "asyncio", "TestChaosController", "test_chaos_controller.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.001252886839210987, "outcome": "passed"}, "call": {"duration": 0.00047486647963523865, "outcome": "passed"}, "teardown": {"duration": 0.000359182246029377, "outcome": "passed"}}, {"nodeid": "tests/test_chaos_controller.py::TestChaosController::test_service_down_scenario", "lineno": 94, "outcome": "passed", "keywords": ["test_service_down_scenario", "asyncio", "TestChaosController", "test_chaos_controller.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.0006499532610177994, "outcome": "passed"}, "call": {"duration": 0.0003082249313592911, "outcome": "passed"}, "teardown": {"duration": 0.0002722330391407013, "outcome": "passed"}}, {"nodeid": "tests/test_chaos_controller.py::TestChaosController::test_network_partition_scenario", "lineno": 122, "outcome": "passed", "keywords": ["test_network_partition_scenario", "asyncio", "TestChaosController", "test_chaos_controller.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.0006274562329053879, "outcome": "passed"}, "call": {"duration": 0.00027593597769737244, "outcome": "passed"}, "teardown": {"duration": 0.00028785597532987595, "outcome": "passed"}}, {"nodeid": "tests/test_chaos_controller.py::TestChaosController::test_cascade_failure_scenario", "lineno": 140, "outcome": "passed", "keywords": ["test_cascade_failure_scenario", "asyncio", "TestChaosController", "test_chaos_controller.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.0006115725263953209, "outcome": "passed"}, "call": {"duration": 0.00027604401111602783, "outcome": "passed"}, "teardown": {"duration": 0.0002680141478776932, "outcome": "passed"}}, {"nodeid": "tests/test_chaos_controller.py::TestChaosController::test_cascade_failure_probability", "lineno": 161, "outcome": "passed", "keywords": ["test_cascade_failure_probability", "asyncio", "TestChaosController", "test_chaos_controller.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.0006040781736373901, "outcome": "passed"}, "call": {"duration": 0.0006153909489512444, "outcome": "passed"}, "teardown": {"duration": 0.000285138376057148, "outcome": "passed"}}, {"nodeid": "tests/test_chaos_controller.py::TestChaosController::test_stop_chaos_event", "lineno": 182, "outcome": "passed", "keywords": ["test_stop_chaos_event", "asyncio", "TestChaosController", "test_chaos_controller.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.0006035463884472847, "outcome": "passed"}, "call": {"duration": 0.0002758847549557686, "outcome": "passed"}, "teardown": {"duration": 0.0002723531797528267, "outcome": "passed"}}, {"nodeid": "tests/test_chaos_controller.py::TestChaosController::test_automatic_event_cleanup", "lineno": 204, "outcome": "passed", "keywords": ["test_automatic_event_cleanup", "asyncio", "TestChaosController", "test_chaos_controller.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.0005942704156041145, "outcome": "passed"}, "call": {"duration": 1.5012636622413993, "outcome": "passed"}, "teardown": {"duration": 0.0004584873095154762, "outcome": "passed"}}, {"nodeid": "tests/test_chaos_controller.py::TestChaosController::test_get_active_events", "lineno": 226, "outcome": "passed", "keywords": ["test_get_active_events", "asyncio", "TestChaosController", "test_chaos_controller.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.0007792674005031586, "outcome": "passed"}, "call": {"duration": 0.00035324040800333023, "outcome": "passed"}, "teardown": {"duration": 0.00029444973915815353, "outcome": "passed"}}, {"nodeid": "tests/test_chaos_controller.py::TestChaosController::test_get_events_for_service", "lineno": 250, "outcome": "passed", "keywords": ["test_get_events_for_service", "asyncio", "TestChaosController", "test_chaos_controller.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.0006276834756135941, "outcome": "passed"}, "call": {"duration": 0.0003335801884531975, "outcome": "passed"}, "teardown": {"duration": 0.0002848254516720772, "outcome": "passed"}}, {"nodeid": "tests/test_chaos_controller.py::TestChaosController::test_is_service_affected", "lineno": 280, "outcome": "passed", "keywords": ["test_is_service_affected", "asyncio", "TestChaosController", "test_chaos_controller.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.0005904734134674072, "outcome": "passed"}, "call": {"duration": 0.0002725236117839813, "outcome": "passed"}, "teardown": {"duration": 0.000277799554169178, "outcome": "passed"}}, {"nodeid": "tests/test_chaos_controller.py::TestChaosController::test_event_handlers", "lineno": 297, "outcome": "passed", "keywords": ["test_event_handlers", "asyncio", "TestChaosController", "test_chaos_controller.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.000608992762863636, "outcome": "passed"}, "call": {"duration": 0.0002726670354604721, "outcome": "passed"}, "teardown": {"duration": 0.0002742735669016838, "outcome": "passed"}}, {"nodeid": "tests/test_chaos_controller.py::TestChaosController::test_get_chaos_metrics", "lineno": 320, "outcome": "passed", "keywords": ["test_get_chaos_metrics", "asyncio", "TestChaosController", "test_chaos_controller.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.0005840510129928589, "outcome": "passed"}, "call": {"duration": 0.0006175190210342407, "outcome": "passed", "log": [{"name": "asyncio", "msg": "Task was destroyed but it is pending!\ntask: <Task pending name='Task-3' coro=<ChaosController._schedule_event_cleanup() done, defined at /home/justinchiu_cohere_com/librarybench/projects/http_api_mock_server/http_api_mock_server_microservices/src/pymockapi/chaos_controller.py:267> wait_for=<Future pending cb=[Task.task_wakeup()]>>", "args": null, "levelname": "ERROR", "levelno": 40, "pathname": "/home/justinchiu_cohere_com/.pyenv/versions/3.10.11/lib/python3.10/asyncio/base_events.py", "filename": "base_events.py", "module": "base_events", "exc_info": null, "exc_text": null, "stack_info": null, "lineno": 1758, "funcName": "default_exception_handler", "created": 1752281354.7376697, "msecs": 737.0, "relativeCreated": 1993.9765930175781, "thread": 139883505829696, "threadName": "MainThread", "processName": "MainProcess", "process": 34014}]}, "teardown": {"duration": 0.0002857288345694542, "outcome": "passed"}}, {"nodeid": "tests/test_chaos_controller.py::TestChaosController::test_concurrent_chaos_operations", "lineno": 347, "outcome": "passed", "keywords": ["test_concurrent_chaos_operations", "asyncio", "TestChaosController", "test_chaos_controller.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.000608423724770546, "outcome": "passed"}, "call": {"duration": 0.000718945637345314, "outcome": "passed"}, "teardown": {"duration": 0.0002925451844930649, "outcome": "passed"}}, {"nodeid": "tests/test_chaos_controller.py::TestChaosController::test_multiple_scenarios_same_service", "lineno": 375, "outcome": "passed", "keywords": ["test_multiple_scenarios_same_service", "asyncio", "TestChaosController", "test_chaos_controller.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.0005930829793214798, "outcome": "passed"}, "call": {"duration": 0.0002888217568397522, "outcome": "passed"}, "teardown": {"duration": 0.0002873288467526436, "outcome": "passed"}}, {"nodeid": "tests/test_circuit_breaker.py::TestCircuitBreaker::test_initial_state", "lineno": 28, "outcome": "passed", "keywords": ["test_initial_state", "asyncio", "TestCircuitBreaker", "test_circuit_breaker.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.00042631570249795914, "outcome": "passed"}, "call": {"duration": 0.0002153376117348671, "outcome": "passed"}, "teardown": {"duration": 0.00025881826877593994, "outcome": "passed"}}, {"nodeid": "tests/test_circuit_breaker.py::TestCircuitBreaker::test_successful_calls", "lineno": 35, "outcome": "passed", "keywords": ["test_successful_calls", "asyncio", "TestCircuitBreaker", "test_circuit_breaker.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.00042586587369441986, "outcome": "passed"}, "call": {"duration": 0.0002386774867773056, "outcome": "passed"}, "teardown": {"duration": 0.00024711713194847107, "outcome": "passed"}}, {"nodeid": "tests/test_circuit_breaker.py::TestCircuitBreaker::test_failure_threshold", "lineno": 49, "outcome": "passed", "keywords": ["test_failure_threshold", "asyncio", "TestCircuitBreaker", "test_circuit_breaker.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.0004000812768936157, "outcome": "passed"}, "call": {"duration": 0.00036645401269197464, "outcome": "passed"}, "teardown": {"duration": 0.00025767553597688675, "outcome": "passed"}}, {"nodeid": "tests/test_circuit_breaker.py::TestCircuitBreaker::test_open_state_rejection", "lineno": 66, "outcome": "passed", "keywords": ["test_open_state_rejection", "asyncio", "TestCircuitBreaker", "test_circuit_breaker.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.0004316437989473343, "outcome": "passed"}, "call": {"duration": 0.0002622324973344803, "outcome": "passed"}, "teardown": {"duration": 0.0002612462267279625, "outcome": "passed"}}, {"nodeid": "tests/test_circuit_breaker.py::TestCircuitBreaker::test_half_open_transition", "lineno": 80, "outcome": "passed", "keywords": ["test_half_open_transition", "asyncio", "TestCircuitBreaker", "test_circuit_breaker.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.00041388068348169327, "outcome": "passed"}, "call": {"duration": 1.1016865698620677, "outcome": "passed"}, "teardown": {"duration": 0.00038365554064512253, "outcome": "passed"}}, {"nodeid": "tests/test_circuit_breaker.py::TestCircuitBreaker::test_half_open_to_closed", "lineno": 103, "outcome": "passed", "keywords": ["test_half_open_to_closed", "asyncio", "TestCircuitBreaker", "test_circuit_breaker.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.0005412809550762177, "outcome": "passed"}, "call": {"duration": 0.0002607889473438263, "outcome": "passed"}, "teardown": {"duration": 0.00025886576622724533, "outcome": "passed"}}, {"nodeid": "tests/test_circuit_breaker.py::TestCircuitBreaker::test_half_open_to_open", "lineno": 120, "outcome": "passed", "keywords": ["test_half_open_to_open", "asyncio", "TestCircuitBreaker", "test_circuit_breaker.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.00041433610022068024, "outcome": "passed"}, "call": {"duration": 0.0002631004899740219, "outcome": "passed"}, "teardown": {"duration": 0.00025402382016181946, "outcome": "passed"}}, {"nodeid": "tests/test_circuit_breaker.py::TestCircuitBreaker::test_half_open_max_requests", "lineno": 134, "outcome": "passed", "keywords": ["test_half_open_max_requests", "asyncio", "TestCircuitBreaker", "test_circuit_breaker.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.0003750799223780632, "outcome": "passed"}, "call": {"duration": 0.00029255542904138565, "outcome": "passed"}, "teardown": {"duration": 0.00023597199469804764, "outcome": "passed"}}, {"nodeid": "tests/test_circuit_breaker.py::TestCircuitBreaker::test_manual_reset", "lineno": 161, "outcome": "passed", "keywords": ["test_manual_reset", "asyncio", "TestCircuitBreaker", "test_circuit_breaker.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.00041491445153951645, "outcome": "passed"}, "call": {"duration": 0.00023616012185811996, "outcome": "passed"}, "teardown": {"duration": 0.00024366937577724457, "outcome": "passed"}}, {"nodeid": "tests/test_circuit_breaker.py::TestCircuitBreaker::test_get_state_info", "lineno": 175, "outcome": "passed", "keywords": ["test_get_state_info", "asyncio", "TestCircuitBreaker", "test_circuit_breaker.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.00041126273572444916, "outcome": "passed"}, "call": {"duration": 0.00022230297327041626, "outcome": "passed"}, "teardown": {"duration": 0.00025097932666540146, "outcome": "passed"}}, {"nodeid": "tests/test_circuit_breaker.py::TestCircuitBreaker::test_concurrent_calls", "lineno": 187, "outcome": "passed", "keywords": ["test_concurrent_calls", "asyncio", "TestCircuitBreaker", "test_circuit_breaker.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.0004251953214406967, "outcome": "passed"}, "call": {"duration": 0.0004945611581206322, "outcome": "passed"}, "teardown": {"duration": 0.00026083365082740784, "outcome": "passed"}}, {"nodeid": "tests/test_circuit_breaker.py::TestCircuitBreakerEngine::test_register_endpoint", "lineno": 225, "outcome": "passed", "keywords": ["test_register_endpoint", "asyncio", "TestCircuitBreakerEngine", "test_circuit_breaker.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.0005044890567660332, "outcome": "passed"}, "call": {"duration": 0.0002372991293668747, "outcome": "passed"}, "teardown": {"duration": 0.00024087727069854736, "outcome": "passed"}}, {"nodeid": "tests/test_circuit_breaker.py::TestCircuitBreakerEngine::test_unregister_endpoint", "lineno": 236, "outcome": "passed", "keywords": ["test_unregister_endpoint", "asyncio", "TestCircuitBreakerEngine", "test_circuit_breaker.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.0004924507811665535, "outcome": "passed"}, "call": {"duration": 0.00023478735238313675, "outcome": "passed"}, "teardown": {"duration": 0.0002261195331811905, "outcome": "passed"}}, {"nodeid": "tests/test_circuit_breaker.py::TestCircuitBreakerEngine::test_call_with_breaker", "lineno": 247, "outcome": "passed", "keywords": ["test_call_with_breaker", "asyncio", "TestCircuitBreakerEngine", "test_circuit_breaker.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.0004777833819389343, "outcome": "passed"}, "call": {"duration": 0.00022595468908548355, "outcome": "passed"}, "teardown": {"duration": 0.0002323724329471588, "outcome": "passed"}}, {"nodeid": "tests/test_circuit_breaker.py::TestCircuitBreakerEngine::test_call_without_breaker", "lineno": 259, "outcome": "passed", "keywords": ["test_call_without_breaker", "asyncio", "TestCircuitBreakerEngine", "test_circuit_breaker.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.0004672510549426079, "outcome": "passed"}, "call": {"duration": 0.00020222831517457962, "outcome": "passed"}, "teardown": {"duration": 0.0002406081184744835, "outcome": "passed"}}, {"nodeid": "tests/test_circuit_breaker.py::TestCircuitBreakerEngine::test_get_all_states", "lineno": 270, "outcome": "passed", "keywords": ["test_get_all_states", "asyncio", "TestCircuitBreakerEngine", "test_circuit_breaker.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.00047851819545030594, "outcome": "passed"}, "call": {"duration": 0.0002495544031262398, "outcome": "passed"}, "teardown": {"duration": 0.00023171491920948029, "outcome": "passed"}}, {"nodeid": "tests/test_circuit_breaker.py::TestCircuitBreakerEngine::test_get_open_circuits", "lineno": 286, "outcome": "passed", "keywords": ["test_get_open_circuits", "asyncio", "TestCircuitBreakerEngine", "test_circuit_breaker.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.00048287399113178253, "outcome": "passed"}, "call": {"duration": 0.00023269280791282654, "outcome": "passed"}, "teardown": {"duration": 0.00023062806576490402, "outcome": "passed"}}, {"nodeid": "tests/test_circuit_breaker.py::TestCircuitBreakerEngine::test_reset_all", "lineno": 300, "outcome": "passed", "keywords": ["test_reset_all", "asyncio", "TestCircuitBreakerEngine", "test_circuit_breaker.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.0004527084529399872, "outcome": "passed"}, "call": {"duration": 0.00025451742112636566, "outcome": "passed"}, "teardown": {"duration": 0.00024874694645404816, "outcome": "passed"}}, {"nodeid": "tests/test_circuit_breaker.py::TestCircuitBreakerEngine::test_update_config", "lineno": 319, "outcome": "passed", "keywords": ["test_update_config", "asyncio", "TestCircuitBreakerEngine", "test_circuit_breaker.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.00046270061284303665, "outcome": "passed"}, "call": {"duration": 0.00022449903190135956, "outcome": "passed"}, "teardown": {"duration": 0.00023208186030387878, "outcome": "passed"}}, {"nodeid": "tests/test_circuit_breaker.py::TestCircuitBreakerEngine::test_get_counts", "lineno": 336, "outcome": "passed", "keywords": ["test_get_counts", "TestCircuitBreakerEngine", "test_circuit_breaker.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.00046372972428798676, "outcome": "passed"}, "call": {"duration": 0.0001384476199746132, "outcome": "passed"}, "teardown": {"duration": 0.00023505371063947678, "outcome": "passed"}}, {"nodeid": "tests/test_circuit_breaker.py::TestCircuitBreakerEngine::test_concurrent_operations", "lineno": 341, "outcome": "passed", "keywords": ["test_concurrent_operations", "asyncio", "TestCircuitBreakerEngine", "test_circuit_breaker.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.000462348572909832, "outcome": "passed"}, "call": {"duration": 0.0005598273128271103, "outcome": "passed"}, "teardown": {"duration": 0.00024516042321920395, "outcome": "passed"}}, {"nodeid": "tests/test_dependency_manager.py::TestDependencyManager::test_add_service", "lineno": 24, "outcome": "passed", "keywords": ["test_add_service", "asyncio", "TestDependencyManager", "test_dependency_manager.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.0004725046455860138, "outcome": "passed"}, "call": {"duration": 0.00022465456277132034, "outcome": "passed"}, "teardown": {"duration": 0.0002341233193874359, "outcome": "passed"}}, {"nodeid": "tests/test_dependency_manager.py::TestDependencyManager::test_remove_service", "lineno": 31, "outcome": "passed", "keywords": ["test_remove_service", "asyncio", "TestDependencyManager", "test_dependency_manager.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.00045670848339796066, "outcome": "passed"}, "call": {"duration": 0.0002644732594490051, "outcome": "passed"}, "teardown": {"duration": 0.0002336958423256874, "outcome": "passed"}}, {"nodeid": "tests/test_dependency_manager.py::TestDependencyManager::test_add_dependency", "lineno": 57, "outcome": "passed", "keywords": ["test_add_dependency", "asyncio", "TestDependencyManager", "test_dependency_manager.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.0005345549434423447, "outcome": "passed"}, "call": {"duration": 0.00022258330136537552, "outcome": "passed"}, "teardown": {"duration": 0.00023423787206411362, "outcome": "passed"}}, {"nodeid": "tests/test_dependency_manager.py::TestDependencyManager::test_remove_dependency", "lineno": 70, "outcome": "passed", "keywords": ["test_remove_dependency", "asyncio", "TestDependencyManager", "test_dependency_manager.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.0004999274387955666, "outcome": "passed"}, "call": {"duration": 0.0003163246437907219, "outcome": "passed"}, "teardown": {"duration": 0.0002532433718442917, "outcome": "passed"}}, {"nodeid": "tests/test_dependency_manager.py::TestDependencyManager::test_get_dependencies", "lineno": 87, "outcome": "passed", "keywords": ["test_get_dependencies", "asyncio", "TestDependencyManager", "test_dependency_manager.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.0004731547087430954, "outcome": "passed"}, "call": {"duration": 0.0002575954422354698, "outcome": "passed"}, "teardown": {"duration": 0.00024503935128450394, "outcome": "passed"}}, {"nodeid": "tests/test_dependency_manager.py::TestDependencyManager::test_get_dependents", "lineno": 109, "outcome": "passed", "keywords": ["test_get_dependents", "asyncio", "TestDependencyManager", "test_dependency_manager.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.00045670755207538605, "outcome": "passed"}, "call": {"duration": 0.0002617640420794487, "outcome": "passed"}, "teardown": {"duration": 0.0002318667247891426, "outcome": "passed"}}, {"nodeid": "tests/test_dependency_manager.py::TestDependencyManager::test_circular_dependency_detection", "lineno": 130, "outcome": "passed", "keywords": ["test_circular_dependency_detection", "asyncio", "TestDependencyManager", "test_dependency_manager.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.0004733353853225708, "outcome": "passed"}, "call": {"duration": 0.0009026136249303818, "outcome": "passed"}, "teardown": {"duration": 0.000264165922999382, "outcome": "passed"}}, {"nodeid": "tests/test_dependency_manager.py::TestDependencyManager::test_get_circular_dependencies", "lineno": 153, "outcome": "passed", "keywords": ["test_get_circular_dependencies", "asyncio", "TestDependencyManager", "test_dependency_manager.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.0004967059940099716, "outcome": "passed"}, "call": {"duration": 0.0014306893572211266, "outcome": "passed"}, "teardown": {"duration": 0.00025930069386959076, "outcome": "passed"}}, {"nodeid": "tests/test_dependency_manager.py::TestDependencyManager::test_topological_order", "lineno": 177, "outcome": "passed", "keywords": ["test_topological_order", "asyncio", "TestDependencyManager", "test_dependency_manager.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.0005124211311340332, "outcome": "passed"}, "call": {"duration": 0.000287654809653759, "outcome": "passed"}, "teardown": {"duration": 0.0002402001991868019, "outcome": "passed"}}, {"nodeid": "tests/test_dependency_manager.py::TestDependencyManager::test_topological_order_with_cycle", "lineno": 201, "outcome": "passed", "keywords": ["test_topological_order_with_cycle", "asyncio", "TestDependencyManager", "test_dependency_manager.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.00047125760465860367, "outcome": "passed"}, "call": {"duration": 0.0002502128481864929, "outcome": "passed"}, "teardown": {"duration": 0.0002498077228665352, "outcome": "passed"}}, {"nodeid": "tests/test_dependency_manager.py::TestDependencyManager::test_get_service_graph", "lineno": 216, "outcome": "passed", "keywords": ["test_get_service_graph", "asyncio", "TestDependencyManager", "test_dependency_manager.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.000463646836578846, "outcome": "passed"}, "call": {"duration": 0.0003071250393986702, "outcome": "passed"}, "teardown": {"duration": 0.00023342575877904892, "outcome": "passed"}}, {"nodeid": "tests/test_dependency_manager.py::TestDependencyManager::test_get_dependency_path", "lineno": 244, "outcome": "passed", "keywords": ["test_get_dependency_path", "asyncio", "TestDependencyManager", "test_dependency_manager.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.0004622647538781166, "outcome": "passed"}, "call": {"duration": 0.0006502270698547363, "outcome": "passed"}, "teardown": {"duration": 0.0002456856891512871, "outcome": "passed"}}, {"nodeid": "tests/test_dependency_manager.py::TestDependencyManager::test_get_all_paths", "lineno": 268, "outcome": "passed", "keywords": ["test_get_all_paths", "asyncio", "TestDependencyManager", "test_dependency_manager.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.0004693707451224327, "outcome": "passed"}, "call": {"duration": 0.0006567193195223808, "outcome": "passed"}, "teardown": {"duration": 0.0002774372696876526, "outcome": "passed"}}, {"nodeid": "tests/test_dependency_manager.py::TestDependencyManager::test_get_isolated_services", "lineno": 290, "outcome": "passed", "keywords": ["test_get_isolated_services", "asyncio", "TestDependencyManager", "test_dependency_manager.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.0004905881360173225, "outcome": "passed"}, "call": {"duration": 0.00027752574533224106, "outcome": "passed"}, "teardown": {"duration": 0.0002452163025736809, "outcome": "passed"}}, {"nodeid": "tests/test_dependency_manager.py::TestDependencyManager::test_get_critical_services", "lineno": 310, "outcome": "passed", "keywords": ["test_get_critical_services", "asyncio", "TestDependencyManager", "test_dependency_manager.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.00045714154839515686, "outcome": "passed"}, "call": {"duration": 0.00028327200561761856, "outcome": "passed"}, "teardown": {"duration": 0.0002434905618429184, "outcome": "passed"}}, {"nodeid": "tests/test_dependency_manager.py::TestDependencyManager::test_validate_dependencies", "lineno": 330, "outcome": "passed", "keywords": ["test_validate_dependencies", "asyncio", "TestDependencyManager", "test_dependency_manager.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.0005793487653136253, "outcome": "passed"}, "call": {"duration": 0.0005050413310527802, "outcome": "passed"}, "teardown": {"duration": 0.00024836696684360504, "outcome": "passed"}}, {"nodeid": "tests/test_dependency_manager.py::TestDependencyManager::test_get_counts", "lineno": 354, "outcome": "passed", "keywords": ["test_get_counts", "TestDependencyManager", "test_dependency_manager.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.0004660319536924362, "outcome": "passed"}, "call": {"duration": 0.00015173666179180145, "outcome": "passed"}, "teardown": {"duration": 0.00025924574583768845, "outcome": "passed"}}, {"nodeid": "tests/test_integration.py::TestMockServerIntegration::test_service_registration_flow", "lineno": 36, "outcome": "passed", "keywords": ["test_service_registration_flow", "asyncio", "TestMockServerIntegration", "test_integration.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.002570071257650852, "outcome": "passed"}, "call": {"duration": 0.0036682486534118652, "outcome": "passed"}, "teardown": {"duration": 0.0006068767979741096, "outcome": "passed"}}, {"nodeid": "tests/test_integration.py::TestMockServerIntegration::test_dependency_management_flow", "lineno": 80, "outcome": "passed", "keywords": ["test_dependency_management_flow", "asyncio", "TestMockServerIntegration", "test_integration.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.0013224231079220772, "outcome": "passed"}, "call": {"duration": 0.0037103798240423203, "outcome": "passed"}, "teardown": {"duration": 0.0005723750218749046, "outcome": "passed"}}, {"nodeid": "tests/test_integration.py::TestMockServerIntegration::test_circuit_breaker_flow", "lineno": 128, "outcome": "passed", "keywords": ["test_circuit_breaker_flow", "asyncio", "TestMockServerIntegration", "test_integration.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.0012867618352174759, "outcome": "passed"}, "call": {"duration": 0.002213510684669018, "outcome": "passed"}, "teardown": {"duration": 0.0005193129181861877, "outcome": "passed"}}, {"nodeid": "tests/test_integration.py::TestMockServerIntegration::test_tracing_flow", "lineno": 166, "outcome": "error", "keywords": ["test_tracing_flow", "asyncio", "TestMockServerIntegration", "test_integration.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.00111297145485878, "outcome": "failed", "crash": {"path": "/home/justinchiu_cohere_com/.pyenv/versions/3.10.11/lib/python3.10/asyncio/base_events.py", "lineno": 1519, "message": "OSError: [Errno 98] error while attempting to bind on address ('127.0.0.1', 8765): address already in use"}, "traceback": [{"path": "../tests/test_integration.py", "lineno": 23, "message": ""}, {"path": "pymockapi/mock_server.py", "lineno": 90, "message": "in start"}, {"path": "../../../../../.pyenv/versions/3.10.11/lib/python3.10/site-packages/aiohttp/web_runner.py", "lineno": 121, "message": "in start"}, {"path": "../../../../../.pyenv/versions/3.10.11/lib/python3.10/asyncio/base_events.py", "lineno": 1519, "message": "OSError"}], "longrepr": "self = <tests.test_integration.TestMockServerIntegration object at 0x7f3927b271f0>\n\n @pytest.fixture\n async def server(self):\n \"\"\"Create and start a mock server.\"\"\"\n server = MockServer(port=8765)\n> await server.start()\n\n../tests/test_integration.py:23: \n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ \npymockapi/mock_server.py:90: in start\n await site.start()\n../../../../../.pyenv/versions/3.10.11/lib/python3.10/site-packages/aiohttp/web_runner.py:121: in start\n self._server = await loop.create_server(\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ \n\nself = <_UnixSelectorEventLoop running=False closed=False debug=False>\nprotocol_factory = <aiohttp.web_server.Server object at 0x7f3927884f70>\nhost = '127.0.0.1', port = 8765\n\n async def create_server(\n self, protocol_factory, host=None, port=None,\n *,\n family=socket.AF_UNSPEC,\n flags=socket.AI_PASSIVE,\n sock=None,\n backlog=100,\n ssl=None,\n reuse_address=None,\n reuse_port=None,\n ssl_handshake_timeout=None,\n start_serving=True):\n \"\"\"Create a TCP server.\n \n The host parameter can be a string, in that case the TCP server is\n bound to host and port.\n \n The host parameter can also be a sequence of strings and in that case\n the TCP server is bound to all hosts of the sequence. If a host\n appears multiple times (possibly indirectly e.g. when hostnames\n resolve to the same IP address), the server is only bound once to that\n host.\n \n Return a Server object which can be used to stop the service.\n \n This method is a coroutine.\n \"\"\"\n if isinstance(ssl, bool):\n raise TypeError('ssl argument must be an SSLContext or None')\n \n if ssl_handshake_timeout is not None and ssl is None:\n raise ValueError(\n 'ssl_handshake_timeout is only meaningful with ssl')\n \n if sock is not None:\n _check_ssl_socket(sock)\n \n if host is not None or port is not None:\n if sock is not None:\n raise ValueError(\n 'host/port and sock can not be specified at the same time')\n \n if reuse_address is None:\n reuse_address = os.name == 'posix' and sys.platform != 'cygwin'\n sockets = []\n if host == '':\n hosts = [None]\n elif (isinstance(host, str) or\n not isinstance(host, collections.abc.Iterable)):\n hosts = [host]\n else:\n hosts = host\n \n fs = [self._create_server_getaddrinfo(host, port, family=family,\n flags=flags)\n for host in hosts]\n infos = await tasks.gather(*fs)\n infos = set(itertools.chain.from_iterable(infos))\n \n completed = False\n try:\n for res in infos:\n af, socktype, proto, canonname, sa = res\n try:\n sock = socket.socket(af, socktype, proto)\n except socket.error:\n # Assume it's a bad family/type/protocol combination.\n if self._debug:\n logger.warning('create_server() failed to create '\n 'socket.socket(%r, %r, %r)',\n af, socktype, proto, exc_info=True)\n continue\n sockets.append(sock)\n if reuse_address:\n sock.setsockopt(\n socket.SOL_SOCKET, socket.SO_REUSEADDR, True)\n if reuse_port:\n _set_reuseport(sock)\n # Disable IPv4/IPv6 dual stack support (enabled by\n # default on Linux) which makes a single socket\n # listen on both address families.\n if (_HAS_IPv6 and\n af == socket.AF_INET6 and\n hasattr(socket, 'IPPROTO_IPV6')):\n sock.setsockopt(socket.IPPROTO_IPV6,\n socket.IPV6_V6ONLY,\n True)\n try:\n sock.bind(sa)\n except OSError as err:\n> raise OSError(err.errno, 'error while attempting '\n 'to bind on address %r: %s'\n % (sa, err.strerror.lower())) from None\nE OSError: [Errno 98] error while attempting to bind on address ('127.0.0.1', 8765): address already in use\n\n../../../../../.pyenv/versions/3.10.11/lib/python3.10/asyncio/base_events.py:1519: OSError"}, "teardown": {"duration": 0.00046806037425994873, "outcome": "passed"}}, {"nodeid": "tests/test_integration.py::TestMockServerIntegration::test_chaos_engineering_flow", "lineno": 227, "outcome": "passed", "keywords": ["test_chaos_engineering_flow", "asyncio", "TestMockServerIntegration", "test_integration.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.0015126056969165802, "outcome": "passed"}, "call": {"duration": 0.005744224414229393, "outcome": "passed"}, "teardown": {"duration": 0.0005846060812473297, "outcome": "passed"}}, {"nodeid": "tests/test_integration.py::TestMockServerIntegration::test_mock_service_behavior", "lineno": 301, "outcome": "passed", "keywords": ["test_mock_service_behavior", "asyncio", "TestMockServerIntegration", "test_integration.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.0016719475388526917, "outcome": "passed", "log": [{"name": "asyncio", "msg": "Task was destroyed but it is pending!\ntask: <Task pending name='Task-288' coro=<ChaosController._schedule_event_cleanup() done, defined at /home/justinchiu_cohere_com/librarybench/projects/http_api_mock_server/http_api_mock_server_microservices/src/pymockapi/chaos_controller.py:267> wait_for=<Future pending cb=[Task.task_wakeup()]>>", "args": null, "levelname": "ERROR", "levelno": 40, "pathname": "/home/justinchiu_cohere_com/.pyenv/versions/3.10.11/lib/python3.10/asyncio/base_events.py", "filename": "base_events.py", "module": "base_events", "exc_info": null, "exc_text": null, "stack_info": null, "lineno": 1758, "funcName": "default_exception_handler", "created": 1752281356.0174873, "msecs": 17.0, "relativeCreated": 3273.794174194336, "thread": 139883505829696, "threadName": "MainThread", "processName": "MainProcess", "process": 34014}]}, "call": {"duration": 0.20547718089073896, "outcome": "passed"}, "teardown": {"duration": 0.0006900588050484657, "outcome": "passed"}}, {"nodeid": "tests/test_integration.py::TestMockServerIntegration::test_service_mesh_scenario", "lineno": 384, "outcome": "error", "keywords": ["test_service_mesh_scenario", "asyncio", "TestMockServerIntegration", "test_integration.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.001286976970732212, "outcome": "failed", "crash": {"path": "/home/justinchiu_cohere_com/.pyenv/versions/3.10.11/lib/python3.10/asyncio/base_events.py", "lineno": 1519, "message": "OSError: [Errno 98] error while attempting to bind on address ('127.0.0.1', 8765): address already in use"}, "traceback": [{"path": "../tests/test_integration.py", "lineno": 23, "message": ""}, {"path": "pymockapi/mock_server.py", "lineno": 90, "message": "in start"}, {"path": "../../../../../.pyenv/versions/3.10.11/lib/python3.10/site-packages/aiohttp/web_runner.py", "lineno": 121, "message": "in start"}, {"path": "../../../../../.pyenv/versions/3.10.11/lib/python3.10/asyncio/base_events.py", "lineno": 1519, "message": "OSError"}], "longrepr": "self = <tests.test_integration.TestMockServerIntegration object at 0x7f3927b26da0>\n\n @pytest.fixture\n async def server(self):\n \"\"\"Create and start a mock server.\"\"\"\n server = MockServer(port=8765)\n> await server.start()\n\n../tests/test_integration.py:23: \n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ \npymockapi/mock_server.py:90: in start\n await site.start()\n../../../../../.pyenv/versions/3.10.11/lib/python3.10/site-packages/aiohttp/web_runner.py:121: in start\n self._server = await loop.create_server(\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ \n\nself = <_UnixSelectorEventLoop running=False closed=False debug=False>\nprotocol_factory = <aiohttp.web_server.Server object at 0x7f3927758760>\nhost = '127.0.0.1', port = 8765\n\n async def create_server(\n self, protocol_factory, host=None, port=None,\n *,\n family=socket.AF_UNSPEC,\n flags=socket.AI_PASSIVE,\n sock=None,\n backlog=100,\n ssl=None,\n reuse_address=None,\n reuse_port=None,\n ssl_handshake_timeout=None,\n start_serving=True):\n \"\"\"Create a TCP server.\n \n The host parameter can be a string, in that case the TCP server is\n bound to host and port.\n \n The host parameter can also be a sequence of strings and in that case\n the TCP server is bound to all hosts of the sequence. If a host\n appears multiple times (possibly indirectly e.g. when hostnames\n resolve to the same IP address), the server is only bound once to that\n host.\n \n Return a Server object which can be used to stop the service.\n \n This method is a coroutine.\n \"\"\"\n if isinstance(ssl, bool):\n raise TypeError('ssl argument must be an SSLContext or None')\n \n if ssl_handshake_timeout is not None and ssl is None:\n raise ValueError(\n 'ssl_handshake_timeout is only meaningful with ssl')\n \n if sock is not None:\n _check_ssl_socket(sock)\n \n if host is not None or port is not None:\n if sock is not None:\n raise ValueError(\n 'host/port and sock can not be specified at the same time')\n \n if reuse_address is None:\n reuse_address = os.name == 'posix' and sys.platform != 'cygwin'\n sockets = []\n if host == '':\n hosts = [None]\n elif (isinstance(host, str) or\n not isinstance(host, collections.abc.Iterable)):\n hosts = [host]\n else:\n hosts = host\n \n fs = [self._create_server_getaddrinfo(host, port, family=family,\n flags=flags)\n for host in hosts]\n infos = await tasks.gather(*fs)\n infos = set(itertools.chain.from_iterable(infos))\n \n completed = False\n try:\n for res in infos:\n af, socktype, proto, canonname, sa = res\n try:\n sock = socket.socket(af, socktype, proto)\n except socket.error:\n # Assume it's a bad family/type/protocol combination.\n if self._debug:\n logger.warning('create_server() failed to create '\n 'socket.socket(%r, %r, %r)',\n af, socktype, proto, exc_info=True)\n continue\n sockets.append(sock)\n if reuse_address:\n sock.setsockopt(\n socket.SOL_SOCKET, socket.SO_REUSEADDR, True)\n if reuse_port:\n _set_reuseport(sock)\n # Disable IPv4/IPv6 dual stack support (enabled by\n # default on Linux) which makes a single socket\n # listen on both address families.\n if (_HAS_IPv6 and\n af == socket.AF_INET6 and\n hasattr(socket, 'IPPROTO_IPV6')):\n sock.setsockopt(socket.IPPROTO_IPV6,\n socket.IPV6_V6ONLY,\n True)\n try:\n sock.bind(sa)\n except OSError as err:\n> raise OSError(err.errno, 'error while attempting '\n 'to bind on address %r: %s'\n % (sa, err.strerror.lower())) from None\nE OSError: [Errno 98] error while attempting to bind on address ('127.0.0.1', 8765): address already in use\n\n../../../../../.pyenv/versions/3.10.11/lib/python3.10/asyncio/base_events.py:1519: OSError"}, "teardown": {"duration": 0.0004750033840537071, "outcome": "passed"}}, {"nodeid": "tests/test_models.py::TestServiceMetadata::test_create_service_metadata", "lineno": 22, "outcome": "passed", "keywords": ["test_create_service_metadata", "TestServiceMetadata", "test_models.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.00016917288303375244, "outcome": "passed"}, "call": {"duration": 0.00017990171909332275, "outcome": "passed"}, "teardown": {"duration": 0.00011979788541793823, "outcome": "passed"}}, {"nodeid": "tests/test_models.py::TestServiceMetadata::test_port_validation", "lineno": 40, "outcome": "passed", "keywords": ["test_port_validation", "TestServiceMetadata", "test_models.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.0001407051458954811, "outcome": "passed"}, "call": {"duration": 0.0001958003267645836, "outcome": "passed"}, "teardown": {"duration": 0.00011466164141893387, "outcome": "passed"}}, {"nodeid": "tests/test_models.py::TestServiceMetadata::test_service_with_metadata", "lineno": 58, "outcome": "passed", "keywords": ["test_service_with_metadata", "TestServiceMetadata", "test_models.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.00013116095215082169, "outcome": "passed"}, "call": {"duration": 0.00014788378030061722, "outcome": "passed"}, "teardown": {"duration": 0.00011268258094787598, "outcome": "passed"}}, {"nodeid": "tests/test_models.py::TestServiceDependency::test_create_dependency", "lineno": 76, "outcome": "passed", "keywords": ["test_create_dependency", "TestServiceDependency", "test_models.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.00013484898954629898, "outcome": "passed"}, "call": {"duration": 0.000150337815284729, "outcome": "passed"}, "teardown": {"duration": 0.00011496152728796005, "outcome": "passed"}}, {"nodeid": "tests/test_models.py::TestServiceDependency::test_dependency_with_custom_config", "lineno": 90, "outcome": "passed", "keywords": ["test_dependency_with_custom_config", "TestServiceDependency", "test_models.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.00012666918337345123, "outcome": "passed"}, "call": {"duration": 0.0001372750848531723, "outcome": "passed"}, "teardown": {"duration": 0.00011232588440179825, "outcome": "passed"}}, {"nodeid": "tests/test_models.py::TestServiceDependency::test_timeout_validation", "lineno": 106, "outcome": "passed", "keywords": ["test_timeout_validation", "TestServiceDependency", "test_models.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.00012832693755626678, "outcome": "passed"}, "call": {"duration": 0.00014957692474126816, "outcome": "passed"}, "teardown": {"duration": 0.00010964181274175644, "outcome": "passed"}}, {"nodeid": "tests/test_models.py::TestCircuitBreakerConfig::test_default_config", "lineno": 119, "outcome": "passed", "keywords": ["test_default_config", "TestCircuitBreakerConfig", "test_models.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.00012914370745420456, "outcome": "passed"}, "call": {"duration": 0.00013110972940921783, "outcome": "passed"}, "teardown": {"duration": 0.00010540522634983063, "outcome": "passed"}}, {"nodeid": "tests/test_models.py::TestCircuitBreakerConfig::test_custom_config", "lineno": 128, "outcome": "passed", "keywords": ["test_custom_config", "TestCircuitBreakerConfig", "test_models.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.00013539474457502365, "outcome": "passed"}, "call": {"duration": 0.0001345248892903328, "outcome": "passed"}, "teardown": {"duration": 0.00011193566024303436, "outcome": "passed"}}, {"nodeid": "tests/test_models.py::TestCircuitBreakerConfig::test_validation", "lineno": 142, "outcome": "passed", "keywords": ["test_validation", "TestCircuitBreakerConfig", "test_models.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.00013131089508533478, "outcome": "passed"}, "call": {"duration": 0.00017004087567329407, "outcome": "passed"}, "teardown": {"duration": 0.00010848883539438248, "outcome": "passed"}}, {"nodeid": "tests/test_models.py::TestTraceContext::test_create_trace_context", "lineno": 157, "outcome": "passed", "keywords": ["test_create_trace_context", "TestTraceContext", "test_models.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.00012458208948373795, "outcome": "passed"}, "call": {"duration": 0.00014706794172525406, "outcome": "passed"}, "teardown": {"duration": 0.000105222687125206, "outcome": "passed"}}, {"nodeid": "tests/test_models.py::TestTraceContext::test_trace_id_validation", "lineno": 170, "outcome": "passed", "keywords": ["test_trace_id_validation", "TestTraceContext", "test_models.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.0001246873289346695, "outcome": "passed"}, "call": {"duration": 0.00017526466399431229, "outcome": "passed"}, "teardown": {"duration": 0.00010691024363040924, "outcome": "passed"}}, {"nodeid": "tests/test_models.py::TestTraceContext::test_span_id_validation", "lineno": 186, "outcome": "passed", "keywords": ["test_span_id_validation", "TestTraceContext", "test_models.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.0001233816146850586, "outcome": "passed"}, "call": {"duration": 0.00016399752348661423, "outcome": "passed"}, "teardown": {"duration": 0.00010756775736808777, "outcome": "passed"}}, {"nodeid": "tests/test_models.py::TestTraceContext::test_case_normalization", "lineno": 202, "outcome": "passed", "keywords": ["test_case_normalization", "TestTraceContext", "test_models.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.0001311851665377617, "outcome": "passed"}, "call": {"duration": 0.0001360476016998291, "outcome": "passed"}, "teardown": {"duration": 0.00010873284190893173, "outcome": "passed"}}, {"nodeid": "tests/test_models.py::TestSpan::test_create_span", "lineno": 216, "outcome": "passed", "keywords": ["test_create_span", "TestSpan", "test_models.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.00012821052223443985, "outcome": "passed"}, "call": {"duration": 0.0001420034095644951, "outcome": "passed"}, "teardown": {"duration": 0.00011614803224802017, "outcome": "passed"}}, {"nodeid": "tests/test_models.py::TestSpan::test_span_with_parent", "lineno": 235, "outcome": "passed", "keywords": ["test_span_with_parent", "TestSpan", "test_models.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.000124235637485981, "outcome": "passed"}, "call": {"duration": 0.00013557355850934982, "outcome": "passed"}, "teardown": {"duration": 0.0001060590147972107, "outcome": "passed"}}, {"nodeid": "tests/test_models.py::TestSpan::test_span_with_error", "lineno": 247, "outcome": "passed", "keywords": ["test_span_with_error", "TestSpan", "test_models.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.00012450572103261948, "outcome": "passed"}, "call": {"duration": 0.00013513490557670593, "outcome": "passed"}, "teardown": {"duration": 0.00010813772678375244, "outcome": "passed"}}, {"nodeid": "tests/test_models.py::TestChaosEvent::test_create_chaos_event", "lineno": 265, "outcome": "passed", "keywords": ["test_create_chaos_event", "TestChaosEvent", "test_models.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.0001335451379418373, "outcome": "passed"}, "call": {"duration": 0.00014475267380475998, "outcome": "passed"}, "teardown": {"duration": 0.00010904669761657715, "outcome": "passed"}}, {"nodeid": "tests/test_models.py::TestChaosEvent::test_chaos_event_with_duration", "lineno": 282, "outcome": "passed", "keywords": ["test_chaos_event_with_duration", "TestChaosEvent", "test_models.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.00013418123126029968, "outcome": "passed"}, "call": {"duration": 0.00014137476682662964, "outcome": "passed"}, "teardown": {"duration": 0.00010992493480443954, "outcome": "passed"}}, {"nodeid": "tests/test_models.py::TestServiceGraph::test_create_service_graph", "lineno": 299, "outcome": "passed", "keywords": ["test_create_service_graph", "TestServiceGraph", "test_models.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.00013045035302639008, "outcome": "passed"}, "call": {"duration": 0.00015736743807792664, "outcome": "passed"}, "teardown": {"duration": 0.00010878406465053558, "outcome": "passed"}}, {"nodeid": "tests/test_models.py::TestServiceGraph::test_get_dependencies_for_service", "lineno": 328, "outcome": "passed", "keywords": ["test_get_dependencies_for_service", "TestServiceGraph", "test_models.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.00012504961341619492, "outcome": "passed"}, "call": {"duration": 0.0001552291214466095, "outcome": "passed"}, "teardown": {"duration": 0.00011229608207941055, "outcome": "passed"}}, {"nodeid": "tests/test_models.py::TestServiceGraph::test_get_dependents_of_service", "lineno": 346, "outcome": "passed", "keywords": ["test_get_dependents_of_service", "TestServiceGraph", "test_models.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.0001268535852432251, "outcome": "passed"}, "call": {"duration": 0.00014303065836429596, "outcome": "passed"}, "teardown": {"duration": 0.00011091213673353195, "outcome": "passed"}}, {"nodeid": "tests/test_service_registry.py::TestServiceRegistry::test_register_service", "lineno": 30, "outcome": "passed", "keywords": ["test_register_service", "asyncio", "TestServiceRegistry", "test_service_registry.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.0006215544417500496, "outcome": "passed"}, "call": {"duration": 0.0002288157120347023, "outcome": "passed"}, "teardown": {"duration": 0.00028768647462129593, "outcome": "passed"}}, {"nodeid": "tests/test_service_registry.py::TestServiceRegistry::test_register_duplicate_service", "lineno": 41, "outcome": "passed", "keywords": ["test_register_duplicate_service", "asyncio", "TestServiceRegistry", "test_service_registry.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.0005394844338297844, "outcome": "passed"}, "call": {"duration": 0.0003347303718328476, "outcome": "passed"}, "teardown": {"duration": 0.0002829013392329216, "outcome": "passed"}}, {"nodeid": "tests/test_service_registry.py::TestServiceRegistry::test_deregister_service", "lineno": 61, "outcome": "passed", "keywords": ["test_deregister_service", "asyncio", "TestServiceRegistry", "test_service_registry.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.0005477927625179291, "outcome": "passed"}, "call": {"duration": 0.0002281414344906807, "outcome": "passed"}, "teardown": {"duration": 0.00027340371161699295, "outcome": "passed"}}, {"nodeid": "tests/test_service_registry.py::TestServiceRegistry::test_deregister_nonexistent_service", "lineno": 72, "outcome": "passed", "keywords": ["test_deregister_nonexistent_service", "asyncio", "TestServiceRegistry", "test_service_registry.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.0004702061414718628, "outcome": "passed"}, "call": {"duration": 0.00020329654216766357, "outcome": "passed"}, "teardown": {"duration": 0.00025345198810100555, "outcome": "passed"}}, {"nodeid": "tests/test_service_registry.py::TestServiceRegistry::test_get_services_by_name", "lineno": 77, "outcome": "passed", "keywords": ["test_get_services_by_name", "asyncio", "TestServiceRegistry", "test_service_registry.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.0004554400220513344, "outcome": "passed"}, "call": {"duration": 0.0002515604719519615, "outcome": "passed"}, "teardown": {"duration": 0.000273851677775383, "outcome": "passed"}}, {"nodeid": "tests/test_service_registry.py::TestServiceRegistry::test_get_services_by_tag", "lineno": 105, "outcome": "passed", "keywords": ["test_get_services_by_tag", "asyncio", "TestServiceRegistry", "test_service_registry.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.0004508392885327339, "outcome": "passed"}, "call": {"duration": 0.0002516927197575569, "outcome": "passed"}, "teardown": {"duration": 0.0002635736018419266, "outcome": "passed"}}, {"nodeid": "tests/test_service_registry.py::TestServiceRegistry::test_get_healthy_services", "lineno": 143, "outcome": "passed", "keywords": ["test_get_healthy_services", "asyncio", "TestServiceRegistry", "test_service_registry.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.0004500513896346092, "outcome": "passed"}, "call": {"duration": 0.00024106912314891815, "outcome": "passed"}, "teardown": {"duration": 0.00026289839297533035, "outcome": "passed"}}, {"nodeid": "tests/test_service_registry.py::TestServiceRegistry::test_update_service_status", "lineno": 177, "outcome": "passed", "keywords": ["test_update_service_status", "asyncio", "TestServiceRegistry", "test_service_registry.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.0005202759057283401, "outcome": "passed"}, "call": {"duration": 0.00022144615650177002, "outcome": "passed"}, "teardown": {"duration": 0.00027261022478342056, "outcome": "passed"}}, {"nodeid": "tests/test_service_registry.py::TestServiceRegistry::test_update_nonexistent_service_status", "lineno": 192, "outcome": "passed", "keywords": ["test_update_nonexistent_service_status", "asyncio", "TestServiceRegistry", "test_service_registry.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.0004588998854160309, "outcome": "passed"}, "call": {"duration": 0.00021563097834587097, "outcome": "passed"}, "teardown": {"duration": 0.0002577221021056175, "outcome": "passed"}}, {"nodeid": "tests/test_service_registry.py::TestServiceRegistry::test_heartbeat", "lineno": 200, "outcome": "passed", "keywords": ["test_heartbeat", "asyncio", "TestServiceRegistry", "test_service_registry.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.0005074087530374527, "outcome": "passed"}, "call": {"duration": 0.1005159942433238, "outcome": "passed"}, "teardown": {"duration": 0.0003513507544994354, "outcome": "passed"}}, {"nodeid": "tests/test_service_registry.py::TestServiceRegistry::test_heartbeat_nonexistent_service", "lineno": 219, "outcome": "passed", "keywords": ["test_heartbeat_nonexistent_service", "asyncio", "TestServiceRegistry", "test_service_registry.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.0005267858505249023, "outcome": "passed"}, "call": {"duration": 0.00021807383745908737, "outcome": "passed"}, "teardown": {"duration": 0.000273396261036396, "outcome": "passed"}}, {"nodeid": "tests/test_service_registry.py::TestServiceRegistry::test_health_check_marks_unhealthy", "lineno": 224, "outcome": "passed", "keywords": ["test_health_check_marks_unhealthy", "asyncio", "TestServiceRegistry", "test_service_registry.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.0005383864045143127, "outcome": "passed"}, "call": {"duration": 1.5012947898358107, "outcome": "passed"}, "teardown": {"duration": 0.0004879850894212723, "outcome": "passed"}}, {"nodeid": "tests/test_service_registry.py::TestServiceRegistry::test_health_check_restores_healthy", "lineno": 240, "outcome": "passed", "keywords": ["test_health_check_restores_healthy", "asyncio", "TestServiceRegistry", "test_service_registry.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.0006775530055165291, "outcome": "passed"}, "call": {"duration": 1.5012849606573582, "outcome": "passed"}, "teardown": {"duration": 0.00047060567885637283, "outcome": "passed"}}, {"nodeid": "tests/test_service_registry.py::TestServiceRegistry::test_get_all_services", "lineno": 259, "outcome": "passed", "keywords": ["test_get_all_services", "asyncio", "TestServiceRegistry", "test_service_registry.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.0005904976278543472, "outcome": "passed"}, "call": {"duration": 0.0003204029053449631, "outcome": "passed"}, "teardown": {"duration": 0.0002861926332116127, "outcome": "passed"}}, {"nodeid": "tests/test_service_registry.py::TestServiceRegistry::test_service_count", "lineno": 282, "outcome": "passed", "keywords": ["test_service_count", "TestServiceRegistry", "test_service_registry.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.00048313383013010025, "outcome": "passed"}, "call": {"duration": 0.0001392960548400879, "outcome": "passed"}, "teardown": {"duration": 0.00027410034090280533, "outcome": "passed"}}, {"nodeid": "tests/test_service_registry.py::TestServiceRegistry::test_healthy_service_count", "lineno": 289, "outcome": "passed", "keywords": ["test_healthy_service_count", "TestServiceRegistry", "test_service_registry.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.00047758594155311584, "outcome": "passed"}, "call": {"duration": 0.00014764349907636642, "outcome": "passed"}, "teardown": {"duration": 0.00026778969913721085, "outcome": "passed"}}, {"nodeid": "tests/test_service_registry.py::TestServiceRegistry::test_concurrent_operations", "lineno": 296, "outcome": "passed", "keywords": ["test_concurrent_operations", "asyncio", "TestServiceRegistry", "test_service_registry.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.000549699179828167, "outcome": "passed"}, "call": {"duration": 0.0005438625812530518, "outcome": "passed"}, "teardown": {"duration": 0.00027133338153362274, "outcome": "passed"}}, {"nodeid": "tests/test_tracing.py::TestTracingSystem::test_generate_trace_id", "lineno": 18, "outcome": "passed", "keywords": ["test_generate_trace_id", "TestTracingSystem", "test_tracing.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.00046544522047042847, "outcome": "passed"}, "call": {"duration": 0.0002899952232837677, "outcome": "passed"}, "teardown": {"duration": 0.0002497602254152298, "outcome": "passed"}}, {"nodeid": "tests/test_tracing.py::TestTracingSystem::test_generate_span_id", "lineno": 29, "outcome": "passed", "keywords": ["test_generate_span_id", "TestTracingSystem", "test_tracing.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.00044008903205394745, "outcome": "passed"}, "call": {"duration": 0.0002653747797012329, "outcome": "passed"}, "teardown": {"duration": 0.00023076776415109634, "outcome": "passed"}}, {"nodeid": "tests/test_tracing.py::TestTracingSystem::test_create_trace_context", "lineno": 40, "outcome": "passed", "keywords": ["test_create_trace_context", "asyncio", "TestTracingSystem", "test_tracing.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.00047472305595874786, "outcome": "passed"}, "call": {"duration": 0.00024786684662103653, "outcome": "passed"}, "teardown": {"duration": 0.00024314597249031067, "outcome": "passed"}}, {"nodeid": "tests/test_tracing.py::TestTracingSystem::test_start_span", "lineno": 60, "outcome": "passed", "keywords": ["test_start_span", "asyncio", "TestTracingSystem", "test_tracing.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.00044542551040649414, "outcome": "passed"}, "call": {"duration": 0.00027585774660110474, "outcome": "passed"}, "teardown": {"duration": 0.00023582018911838531, "outcome": "passed"}}, {"nodeid": "tests/test_tracing.py::TestTracingSystem::test_end_span", "lineno": 85, "outcome": "passed", "keywords": ["test_end_span", "asyncio", "TestTracingSystem", "test_tracing.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.0004574386402964592, "outcome": "passed"}, "call": {"duration": 0.00025782734155654907, "outcome": "passed"}, "teardown": {"duration": 0.00024843961000442505, "outcome": "passed"}}, {"nodeid": "tests/test_tracing.py::TestTracingSystem::test_end_span_with_error", "lineno": 104, "outcome": "passed", "keywords": ["test_end_span_with_error", "asyncio", "TestTracingSystem", "test_tracing.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.0004524923861026764, "outcome": "passed"}, "call": {"duration": 0.000256149098277092, "outcome": "passed"}, "teardown": {"duration": 0.00023105833679437637, "outcome": "passed"}}, {"nodeid": "tests/test_tracing.py::TestTracingSystem::test_get_trace", "lineno": 117, "outcome": "passed", "keywords": ["test_get_trace", "asyncio", "TestTracingSystem", "test_tracing.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.00046746525913476944, "outcome": "passed"}, "call": {"duration": 0.00028529204428195953, "outcome": "passed"}, "teardown": {"duration": 0.00023618247359991074, "outcome": "passed"}}, {"nodeid": "tests/test_tracing.py::TestTracingSystem::test_propagate_context", "lineno": 145, "outcome": "passed", "keywords": ["test_propagate_context", "asyncio", "TestTracingSystem", "test_tracing.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.00046341773122549057, "outcome": "passed"}, "call": {"duration": 0.00024334900081157684, "outcome": "passed"}, "teardown": {"duration": 0.00023940205574035645, "outcome": "passed"}}, {"nodeid": "tests/test_tracing.py::TestTracingSystem::test_parse_traceparent_header", "lineno": 160, "outcome": "passed", "keywords": ["test_parse_traceparent_header", "TestTracingSystem", "test_tracing.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.00044427067041397095, "outcome": "passed"}, "call": {"duration": 0.0001930277794599533, "outcome": "passed"}, "teardown": {"duration": 0.00023189373314380646, "outcome": "passed"}}, {"nodeid": "tests/test_tracing.py::TestTracingSystem::test_format_traceparent_header", "lineno": 184, "outcome": "passed", "keywords": ["test_format_traceparent_header", "TestTracingSystem", "test_tracing.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.0004464760422706604, "outcome": "passed"}, "call": {"duration": 0.000153995119035244, "outcome": "passed"}, "teardown": {"duration": 0.0002345442771911621, "outcome": "passed"}}, {"nodeid": "tests/test_tracing.py::TestTracingSystem::test_get_trace_graph", "lineno": 195, "outcome": "passed", "keywords": ["test_get_trace_graph", "asyncio", "TestTracingSystem", "test_tracing.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.00044702179729938507, "outcome": "passed"}, "call": {"duration": 0.030655612237751484, "outcome": "passed"}, "teardown": {"duration": 0.0002636527642607689, "outcome": "passed"}}, {"nodeid": "tests/test_tracing.py::TestTracingSystem::test_get_service_dependencies_from_traces", "lineno": 233, "outcome": "passed", "keywords": ["test_get_service_dependencies_from_traces", "asyncio", "TestTracingSystem", "test_tracing.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.0004901522770524025, "outcome": "passed"}, "call": {"duration": 0.00041569024324417114, "outcome": "passed"}, "teardown": {"duration": 0.00026039499789476395, "outcome": "passed"}}, {"nodeid": "tests/test_tracing.py::TestTracingSystem::test_get_trace_statistics", "lineno": 264, "outcome": "passed", "keywords": ["test_get_trace_statistics", "asyncio", "TestTracingSystem", "test_tracing.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.0004754830151796341, "outcome": "passed"}, "call": {"duration": 0.00042090751230716705, "outcome": "passed"}, "teardown": {"duration": 0.00024717580527067184, "outcome": "passed"}}, {"nodeid": "tests/test_tracing.py::TestTracingSystem::test_cleanup_old_traces", "lineno": 299, "outcome": "passed", "keywords": ["test_cleanup_old_traces", "asyncio", "TestTracingSystem", "test_tracing.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.0004457356408238411, "outcome": "passed"}, "call": {"duration": 0.00030028726905584335, "outcome": "passed"}, "teardown": {"duration": 0.0002434058114886284, "outcome": "passed"}}, {"nodeid": "tests/test_tracing.py::TestTracingSystem::test_concurrent_span_operations", "lineno": 327, "outcome": "passed", "keywords": ["test_concurrent_span_operations", "asyncio", "TestTracingSystem", "test_tracing.py", "tests", "http_api_mock_server_microservices", ""], "setup": {"duration": 0.0005452409386634827, "outcome": "passed"}, "call": {"duration": 0.010765975341200829, "outcome": "passed"}, "teardown": {"duration": 0.0009117787703871727, "outcome": "passed"}}]}