structuredAttrs is enabled Sourcing python-remove-tests-dir-hook Sourcing python-catch-conflicts-hook.sh Sourcing python-remove-bin-bytecode-hook.sh Sourcing pypa-build-hook Using pypaBuildPhase Sourcing python-runtime-deps-check-hook Using pythonRuntimeDepsCheckHook Sourcing pypa-install-hook Using pypaInstallPhase Sourcing python-imports-check-hook.sh Using pythonImportsCheckPhase Sourcing python-metadata-check-hook.sh Using pythonMetadataCheckPhase Sourcing python-namespaces-hook Sourcing python-catch-conflicts-hook.sh Sourcing pytest-check-hook Using pytestCheckPhase Running phase: unpackPhase unpacking source archive /nix/store/gm4qvi5cby3h7cjwfcnr4n4kpdvq413q-source source root is source setting SOURCE_DATE_EPOCH to timestamp 315619200 of file "source/uv.lock" Running phase: patchPhase Running phase: updateAutotoolsGnuConfigScriptsPhase Running phase: configurePhase no configure script, doing nothing Running phase: buildPhase Executing pypaBuildPhase Setting UV_DYNAMIC_VERSIONING_BYPASS to 1.29.0 Creating a wheel... pypa build flags: --no-isolation --outdir dist/ --wheel * Getting build dependencies for wheel... * Building wheel... Successfully built mcp-1.29.0-py3-none-any.whl Finished creating a wheel... /nix/var/nix/builds/nix-74342-1081325246/source/dist /nix/var/nix/builds/nix-74342-1081325246/source Unpacking to: unpacked/mcp-1.29.0...OK Repacking wheel as ./mcp-1.29.0-py3-none-any.whl...OK /nix/var/nix/builds/nix-74342-1081325246/source Finished executing pypaBuildPhase Running phase: pythonRuntimeDepsCheckHook Executing pythonRuntimeDepsCheck Checking runtime dependencies for mcp-1.29.0-py3-none-any.whl Finished executing pythonRuntimeDepsCheck Running phase: installPhase Executing pypaInstallPhase Successfully installed mcp-1.29.0-py3-none-any.whl Finished executing pypaInstallPhase Running phase: pythonOutputDistPhase Executing pythonOutputDistPhase Finished executing pythonOutputDistPhase Running phase: fixupPhase checking for references to /nix/var/nix/builds/nix-74342-1081325246/ in /nix/store/8fs9crdv7c6gr6pb3dwxxzggnh58hkmc-python3.14-mcp-1.29.0-dist... patching script interpreter paths in /nix/store/8fs9crdv7c6gr6pb3dwxxzggnh58hkmc-python3.14-mcp-1.29.0-dist checking for references to /nix/var/nix/builds/nix-74342-1081325246/ in /nix/store/mh1imkcbbhzdnyycc9cf87ppvmyz667h-python3.14-mcp-1.29.0... patching script interpreter paths in /nix/store/mh1imkcbbhzdnyycc9cf87ppvmyz667h-python3.14-mcp-1.29.0 stripping (with command strip and flags -S) in /nix/store/mh1imkcbbhzdnyycc9cf87ppvmyz667h-python3.14-mcp-1.29.0/lib /nix/store/mh1imkcbbhzdnyycc9cf87ppvmyz667h-python3.14-mcp-1.29.0/bin Rewriting #!/nix/store/kmq6qdcg0yq6r4awf02dgq003n42r6zk-python3-3.14.7/bin/python3.14 to #!/nix/store/kmq6qdcg0yq6r4awf02dgq003n42r6zk-python3-3.14.7 wrapping `/nix/store/mh1imkcbbhzdnyycc9cf87ppvmyz667h-python3.14-mcp-1.29.0/bin/mcp'... Executing pythonRemoveTestsDir Finished executing pythonRemoveTestsDir Running phase: installCheckPhase no Makefile or custom installCheckPhase, doing nothing Running phase: pythonCatchConflictsPhase Running phase: pythonRemoveBinBytecodePhase Running phase: pythonImportsCheckPhase Executing pythonImportsCheckPhase Check whether the following modules can be imported: mcp Running phase: pythonMetadataCheckPhase Executing pythonMetadataCheckPhase Running phase: pytestCheckPhase Executing pytestCheckPhase pytest flags: -m pytest -k not\ \(test_command_execution\)\ and\ not\ \(test_lifespan_cleanup_executed\)\ and\ not\ \(test_basic_child_process_cleanup\)\ and\ not\ \(test_nested_process_tree\)\ and\ not\ \(test_early_parent_exit\)\ and\ not\ \(test_list_tools_returns_all_tools\)\ and\ not\ \(test_stdin_close_triggers_cleanup\)\ and\ not\ \(test_resource_template_client_interaction\)\ and\ not\ \(test_notification_validation_error\)\ and\ not\ \(test_sse_security_\)\ and\ not\ \(test_streamable_http_\)\ and\ not\ \(test_streamablehttp_\)\ and\ not\ \(test_messages_are_executed_concurrently\)\ and\ not\ \(test_tool_progress\) -Wignore::pytest.PytestRemovedIn10Warning --numprocesses=10 ============================= test session starts ============================== platform darwin -- Python 3.14.7, pytest-9.1.1, pluggy-1.6.0 rootdir: /nix/var/nix/builds/nix-74342-1081325246/source configfile: pyproject.toml plugins: inline-snapshot-0.34.2, asyncio-1.4.0, examples-0.0.18, xdist-3.8.0, anyio-4.14.2 asyncio: mode=Mode.STRICT, debug=False, asyncio_default_fixture_loop_scope=None, asyncio_default_test_loop_scope=function 10 workers [1160 items] scheduling tests via LoadScheduling tests/client/test_auth.py::test_build_metadata[with-path-param] tests/client/test_session_group.py::TestClientSessionGroup::test_connect_to_server tests/client/test_list_methods_cursor.py::test_list_methods_raises_error_when_both_cursor_and_params_provided[list_resource_templates] [gw6] [ 0%] PASSED tests/client/test_session_group.py::TestClientSessionGroup::test_connect_to_server tests/client/test_session_group.py::TestClientSessionGroup::test_connect_to_server_with_name_hook [gw6] [ 0%] PASSED tests/client/test_session_group.py::TestClientSessionGroup::test_connect_to_server_with_name_hook tests/client/test_session_group.py::TestClientSessionGroup::test_disconnect_from_server [gw6] [ 0%] PASSED tests/client/test_session_group.py::TestClientSessionGroup::test_disconnect_from_server tests/client/test_session_group.py::TestClientSessionGroup::test_connect_to_server_duplicate_tool_raises_error [gw6] [ 0%] PASSED tests/client/test_session_group.py::TestClientSessionGroup::test_connect_to_server_duplicate_tool_raises_error tests/client/test_session_group.py::TestClientSessionGroup::test_disconnect_non_existent_server [gw6] [ 0%] PASSED tests/client/test_session_group.py::TestClientSessionGroup::test_disconnect_non_existent_server tests/client/test_session_group.py::TestClientSessionGroup::test_establish_session_parameterized[server_params_instance0-stdio-mcp.client.session_group.mcp.stdio_client] [gw6] [ 0%] PASSED tests/client/test_session_group.py::TestClientSessionGroup::test_establish_session_parameterized[server_params_instance0-stdio-mcp.client.session_group.mcp.stdio_client] tests/client/test_session_group.py::TestClientSessionGroup::test_establish_session_parameterized[server_params_instance1-sse-mcp.client.session_group.sse_client] [gw6] [ 0%] PASSED tests/client/test_session_group.py::TestClientSessionGroup::test_establish_session_parameterized[server_params_instance1-sse-mcp.client.session_group.sse_client] tests/client/test_session_group.py::TestClientSessionGroup::test_establish_session_parameterized[server_params_instance2-streamablehttp-mcp.client.session_group.streamable_http_client] tests/experimental/tasks/client/test_handlers.py::test_client_returns_error_for_unhandled_cancel_task_request [gw5] [ 0%] PASSED tests/experimental/tasks/client/test_handlers.py::test_client_returns_error_for_unhandled_cancel_task_request tests/experimental/tasks/client/test_handlers.py::test_client_returns_error_for_unhandled_task_augmented_sampling [gw5] [ 0%] PASSED tests/experimental/tasks/client/test_handlers.py::test_client_returns_error_for_unhandled_task_augmented_sampling tests/experimental/tasks/client/test_handlers.py::test_client_returns_error_for_unhandled_task_augmented_elicitation [gw5] [ 0%] PASSED tests/experimental/tasks/client/test_handlers.py::test_client_returns_error_for_unhandled_task_augmented_elicitation tests/experimental/tasks/client/test_poll_task.py::test_poll_task_yields_until_completed [gw5] [ 0%] PASSED tests/experimental/tasks/client/test_poll_task.py::test_poll_task_yields_until_completed tests/experimental/tasks/client/test_poll_task.py::test_poll_task_exits_on_terminal[completed] [gw5] [ 1%] PASSED tests/experimental/tasks/client/test_poll_task.py::test_poll_task_exits_on_terminal[completed] tests/experimental/tasks/client/test_poll_task.py::test_poll_task_exits_on_terminal[failed] [gw5] [ 1%] PASSED tests/experimental/tasks/client/test_poll_task.py::test_poll_task_exits_on_terminal[failed] tests/experimental/tasks/client/test_poll_task.py::test_poll_task_exits_on_terminal[cancelled] [gw5] [ 1%] PASSED tests/experimental/tasks/client/test_poll_task.py::test_poll_task_exits_on_terminal[cancelled] tests/experimental/tasks/client/test_poll_task.py::test_poll_task_continues_through_input_required [gw5] [ 1%] PASSED tests/experimental/tasks/client/test_poll_task.py::test_poll_task_continues_through_input_required tests/experimental/tasks/client/test_poll_task.py::test_poll_task_passes_task_id [gw5] [ 1%] PASSED tests/experimental/tasks/client/test_poll_task.py::test_poll_task_passes_task_id tests/experimental/tasks/client/test_poll_task.py::test_poll_task_yields_full_result [gw5] [ 1%] PASSED tests/experimental/tasks/client/test_poll_task.py::test_poll_task_yields_full_result tests/experimental/tasks/client/test_tasks.py::test_session_experimental_get_task tests/client/test_auth.py::TestOAuthFlow::test_create_oauth_metadata_request [gw4] [ 1%] PASSED tests/client/test_list_methods_cursor.py::test_list_methods_raises_error_when_both_cursor_and_params_provided[list_resource_templates] tests/client/test_list_methods_cursor.py::test_list_tools_with_strict_server_validation [gw4] [ 1%] PASSED tests/client/test_list_methods_cursor.py::test_list_tools_with_strict_server_validation tests/client/test_list_roots_callback.py::test_list_roots_callback tests/experimental/tasks/server/test_store.py::test_list_tasks tests/cli/test_utils.py::test_parse_file_path_accepts_valid_specs[server.py-None] [gw1] [ 1%] PASSED tests/cli/test_utils.py::test_parse_file_path_accepts_valid_specs[server.py-None] tests/cli/test_utils.py::test_parse_file_path_accepts_valid_specs[foo.py:srv_obj-srv_obj] [gw1] [ 1%] PASSED tests/cli/test_utils.py::test_parse_file_path_accepts_valid_specs[foo.py:srv_obj-srv_obj] tests/cli/test_utils.py::test_parse_file_path_missing [gw1] [ 1%] PASSED tests/cli/test_utils.py::test_parse_file_path_missing tests/cli/test_utils.py::test_parse_file_exit_on_dir [gw1] [ 1%] PASSED tests/cli/test_utils.py::test_parse_file_exit_on_dir [gw4] [ 2%] PASSED tests/client/test_list_roots_callback.py::test_list_roots_callback tests/client/test_logging_callback.py::test_logging_callback [gw2] [ 2%] PASSED tests/client/test_auth.py::test_build_metadata[with-path-param] tests/client/test_auth.py::TestLegacyServerFallback::test_legacy_server_no_prm_falls_back_to_root_oauth_discovery [gw9] [ 2%] PASSED tests/experimental/tasks/server/test_store.py::test_list_tasks tests/experimental/tasks/server/test_store.py::test_list_tasks_pagination [gw9] [ 2%] PASSED tests/experimental/tasks/server/test_store.py::test_list_tasks_pagination tests/experimental/tasks/server/test_store.py::test_list_tasks_invalid_cursor [gw9] [ 2%] PASSED tests/experimental/tasks/server/test_store.py::test_list_tasks_invalid_cursor tests/experimental/tasks/server/test_store.py::test_delete_task [gw9] [ 2%] PASSED tests/experimental/tasks/server/test_store.py::test_delete_task tests/experimental/tasks/server/test_store.py::test_get_all_tasks_helper [gw9] [ 2%] PASSED tests/experimental/tasks/server/test_store.py::test_get_all_tasks_helper tests/experimental/tasks/server/test_store.py::test_store_result_nonexistent_raises [gw9] [ 2%] PASSED tests/experimental/tasks/server/test_store.py::test_store_result_nonexistent_raises tests/experimental/tasks/server/test_store.py::test_create_task_with_null_ttl [gw9] [ 2%] PASSED tests/experimental/tasks/server/test_store.py::test_create_task_with_null_ttl [gw5] [ 2%] PASSED tests/experimental/tasks/client/test_tasks.py::test_session_experimental_get_task tests/experimental/tasks/client/test_tasks.py::test_session_experimental_get_task_result [gw5] [ 2%] PASSED tests/experimental/tasks/client/test_tasks.py::test_session_experimental_get_task_result tests/experimental/tasks/client/test_tasks.py::test_session_experimental_list_tasks [gw5] [ 3%] PASSED tests/experimental/tasks/client/test_tasks.py::test_session_experimental_list_tasks tests/experimental/tasks/client/test_tasks.py::test_session_experimental_cancel_task [gw5] [ 3%] PASSED tests/experimental/tasks/client/test_tasks.py::test_session_experimental_cancel_task tests/experimental/tasks/server/test_context.py::test_task_context_properties [gw5] [ 3%] PASSED tests/experimental/tasks/server/test_context.py::test_task_context_properties tests/experimental/tasks/server/test_context.py::test_task_context_update_status [gw5] [ 3%] PASSED tests/experimental/tasks/server/test_context.py::test_task_context_update_status tests/experimental/tasks/server/test_context.py::test_task_context_complete [gw5] [ 3%] PASSED tests/experimental/tasks/server/test_context.py::test_task_context_complete tests/experimental/tasks/server/test_context.py::test_task_context_fail [gw5] [ 3%] PASSED tests/experimental/tasks/server/test_context.py::test_task_context_fail tests/experimental/tasks/server/test_context.py::test_task_context_cancellation [gw5] [ 3%] PASSED tests/experimental/tasks/server/test_context.py::test_task_context_cancellation tests/experimental/tasks/server/test_context.py::test_create_task_state_generates_id [gw5] [ 3%] PASSED tests/experimental/tasks/server/test_context.py::test_create_task_state_generates_id tests/experimental/tasks/server/test_context.py::test_create_task_state_uses_provided_id [gw5] [ 3%] PASSED tests/experimental/tasks/server/test_context.py::test_create_task_state_uses_provided_id tests/experimental/tasks/server/test_context.py::test_create_task_state_null_ttl [gw5] [ 3%] PASSED tests/experimental/tasks/server/test_context.py::test_create_task_state_null_ttl tests/experimental/tasks/server/test_context.py::test_create_task_state_has_created_at [gw5] [ 3%] PASSED tests/experimental/tasks/server/test_context.py::test_create_task_state_has_created_at tests/experimental/tasks/server/test_context.py::test_task_execution_provides_context [gw5] [ 3%] PASSED tests/experimental/tasks/server/test_context.py::test_task_execution_provides_context tests/experimental/tasks/server/test_context.py::test_task_execution_auto_fails_on_exception [gw5] [ 4%] PASSED tests/experimental/tasks/server/test_context.py::test_task_execution_auto_fails_on_exception tests/experimental/tasks/server/test_context.py::test_task_execution_doesnt_fail_if_already_terminal [gw5] [ 4%] PASSED tests/experimental/tasks/server/test_context.py::test_task_execution_doesnt_fail_if_already_terminal tests/experimental/tasks/server/test_context.py::test_task_execution_not_found [gw5] [ 4%] PASSED tests/experimental/tasks/server/test_context.py::test_task_execution_not_found tests/experimental/tasks/server/test_integration.py::test_task_lifecycle_with_task_execution [gw5] [ 4%] PASSED tests/experimental/tasks/server/test_integration.py::test_task_lifecycle_with_task_execution tests/cli/test_utils.py::test_build_uv_command_minimal [gw1] [ 4%] PASSED tests/cli/test_utils.py::test_build_uv_command_minimal tests/cli/test_utils.py::test_build_uv_command_adds_editable_and_packages [gw1] [ 4%] PASSED tests/cli/test_utils.py::test_build_uv_command_adds_editable_and_packages tests/cli/test_utils.py::test_get_npx_unix_like [gw1] [ 4%] PASSED tests/cli/test_utils.py::test_get_npx_unix_like tests/cli/test_utils.py::test_get_npx_windows [gw1] [ 4%] PASSED tests/cli/test_utils.py::test_get_npx_windows tests/cli/test_utils.py::test_get_npx_returns_none_when_npx_missing [gw1] [ 4%] PASSED tests/cli/test_utils.py::test_get_npx_returns_none_when_npx_missing tests/client/auth/extensions/test_client_credentials.py::TestOAuthFlowClientCredentials::test_token_exchange_request_jwt_predefined [gw1] [ 4%] PASSED tests/client/auth/extensions/test_client_credentials.py::TestOAuthFlowClientCredentials::test_token_exchange_request_jwt_predefined tests/client/auth/extensions/test_client_credentials.py::TestOAuthFlowClientCredentials::test_token_exchange_request_jwt [gw1] [ 4%] PASSED tests/client/auth/extensions/test_client_credentials.py::TestOAuthFlowClientCredentials::test_token_exchange_request_jwt tests/client/auth/extensions/test_client_credentials.py::TestClientCredentialsOAuthProvider::test_init_sets_client_info [gw1] [ 5%] PASSED tests/client/auth/extensions/test_client_credentials.py::TestClientCredentialsOAuthProvider::test_init_sets_client_info tests/client/auth/extensions/test_client_credentials.py::TestClientCredentialsOAuthProvider::test_init_with_scopes [gw1] [ 5%] PASSED tests/client/auth/extensions/test_client_credentials.py::TestClientCredentialsOAuthProvider::test_init_with_scopes tests/client/auth/extensions/test_client_credentials.py::TestClientCredentialsOAuthProvider::test_init_with_client_secret_post [gw1] [ 5%] PASSED tests/client/auth/extensions/test_client_credentials.py::TestClientCredentialsOAuthProvider::test_init_with_client_secret_post tests/client/auth/extensions/test_client_credentials.py::TestClientCredentialsOAuthProvider::test_exchange_token_client_credentials [gw1] [ 5%] PASSED tests/client/auth/extensions/test_client_credentials.py::TestClientCredentialsOAuthProvider::test_exchange_token_client_credentials tests/client/auth/extensions/test_client_credentials.py::TestClientCredentialsOAuthProvider::test_exchange_token_without_scopes [gw1] [ 5%] PASSED tests/client/auth/extensions/test_client_credentials.py::TestClientCredentialsOAuthProvider::test_exchange_token_without_scopes tests/client/auth/extensions/test_client_credentials.py::TestPrivateKeyJWTOAuthProvider::test_init_sets_client_info [gw1] [ 5%] PASSED tests/client/auth/extensions/test_client_credentials.py::TestPrivateKeyJWTOAuthProvider::test_init_sets_client_info tests/client/auth/extensions/test_client_credentials.py::TestPrivateKeyJWTOAuthProvider::test_exchange_token_client_credentials [gw1] [ 5%] PASSED tests/client/auth/extensions/test_client_credentials.py::TestPrivateKeyJWTOAuthProvider::test_exchange_token_client_credentials tests/client/auth/extensions/test_client_credentials.py::TestPrivateKeyJWTOAuthProvider::test_exchange_token_without_scopes [gw1] [ 5%] PASSED tests/client/auth/extensions/test_client_credentials.py::TestPrivateKeyJWTOAuthProvider::test_exchange_token_without_scopes tests/client/auth/extensions/test_client_credentials.py::TestSignedJWTParameters::test_create_assertion_provider [gw1] [ 5%] PASSED tests/client/auth/extensions/test_client_credentials.py::TestSignedJWTParameters::test_create_assertion_provider tests/client/auth/extensions/test_client_credentials.py::TestSignedJWTParameters::test_create_assertion_provider_with_additional_claims [gw1] [ 5%] PASSED tests/client/auth/extensions/test_client_credentials.py::TestSignedJWTParameters::test_create_assertion_provider_with_additional_claims tests/client/auth/extensions/test_client_credentials.py::TestStaticAssertionProvider::test_returns_static_token [gw1] [ 5%] PASSED tests/client/auth/extensions/test_client_credentials.py::TestStaticAssertionProvider::test_returns_static_token tests/client/test_auth.py::TestPKCEParameters::test_pkce_generation [gw1] [ 5%] PASSED tests/client/test_auth.py::TestPKCEParameters::test_pkce_generation tests/client/test_auth.py::TestPKCEParameters::test_pkce_uniqueness [gw1] [ 6%] PASSED tests/client/test_auth.py::TestPKCEParameters::test_pkce_uniqueness tests/client/test_auth.py::TestOAuthContext::test_oauth_provider_initialization [gw1] [ 6%] PASSED tests/client/test_auth.py::TestOAuthContext::test_oauth_provider_initialization tests/client/test_auth.py::TestOAuthContext::test_context_url_parsing [gw1] [ 6%] PASSED tests/client/test_auth.py::TestOAuthContext::test_context_url_parsing tests/client/test_auth.py::TestOAuthContext::test_token_validity_checking [gw1] [ 6%] PASSED tests/client/test_auth.py::TestOAuthContext::test_token_validity_checking tests/client/test_auth.py::TestOAuthContext::test_clear_tokens [gw1] [ 6%] PASSED tests/client/test_auth.py::TestOAuthContext::test_clear_tokens tests/experimental/tasks/server/test_run_task_flow.py::test_run_task_basic_flow [gw7] [ 6%] PASSED tests/experimental/tasks/server/test_run_task_flow.py::test_run_task_basic_flow tests/experimental/tasks/server/test_run_task_flow.py::test_run_task_auto_fails_on_exception [gw7] [ 6%] PASSED tests/experimental/tasks/server/test_run_task_flow.py::test_run_task_auto_fails_on_exception tests/experimental/tasks/server/test_run_task_flow.py::test_enable_tasks_auto_registers_handlers [gw7] [ 6%] PASSED tests/experimental/tasks/server/test_run_task_flow.py::test_enable_tasks_auto_registers_handlers tests/experimental/tasks/server/test_run_task_flow.py::test_enable_tasks_with_custom_store_and_queue [gw7] [ 6%] PASSED tests/experimental/tasks/server/test_run_task_flow.py::test_enable_tasks_with_custom_store_and_queue tests/experimental/tasks/server/test_run_task_flow.py::test_enable_tasks_skips_default_handlers_when_custom_registered [gw7] [ 6%] PASSED tests/experimental/tasks/server/test_run_task_flow.py::test_enable_tasks_skips_default_handlers_when_custom_registered tests/experimental/tasks/server/test_run_task_flow.py::test_run_task_without_enable_tasks_raises [gw7] [ 6%] PASSED tests/experimental/tasks/server/test_run_task_flow.py::test_run_task_without_enable_tasks_raises tests/experimental/tasks/server/test_run_task_flow.py::test_task_support_task_group_before_run_raises [gw7] [ 6%] PASSED tests/experimental/tasks/server/test_run_task_flow.py::test_task_support_task_group_before_run_raises tests/experimental/tasks/server/test_run_task_flow.py::test_run_task_without_session_raises [gw7] [ 7%] PASSED tests/experimental/tasks/server/test_run_task_flow.py::test_run_task_without_session_raises tests/experimental/tasks/server/test_run_task_flow.py::test_run_task_without_task_metadata_raises [gw7] [ 7%] PASSED tests/experimental/tasks/server/test_run_task_flow.py::test_run_task_without_task_metadata_raises tests/experimental/tasks/server/test_run_task_flow.py::test_run_task_with_model_immediate_response [gw7] [ 7%] PASSED tests/experimental/tasks/server/test_run_task_flow.py::test_run_task_with_model_immediate_response tests/experimental/tasks/server/test_run_task_flow.py::test_run_task_doesnt_complete_if_already_terminal [gw7] [ 7%] PASSED tests/experimental/tasks/server/test_run_task_flow.py::test_run_task_doesnt_complete_if_already_terminal tests/experimental/tasks/server/test_run_task_flow.py::test_run_task_doesnt_fail_if_already_terminal [gw7] [ 7%] PASSED tests/experimental/tasks/server/test_run_task_flow.py::test_run_task_doesnt_fail_if_already_terminal tests/experimental/tasks/server/test_server.py::test_list_tasks_handler [gw7] [ 7%] PASSED tests/experimental/tasks/server/test_server.py::test_list_tasks_handler tests/experimental/tasks/server/test_server.py::test_get_task_handler [gw7] [ 7%] PASSED tests/experimental/tasks/server/test_server.py::test_get_task_handler tests/experimental/tasks/server/test_server.py::test_get_task_result_handler [gw7] [ 7%] PASSED tests/experimental/tasks/server/test_server.py::test_get_task_result_handler tests/experimental/tasks/server/test_server.py::test_cancel_task_handler [gw7] [ 7%] PASSED tests/experimental/tasks/server/test_server.py::test_cancel_task_handler tests/experimental/tasks/server/test_server.py::test_server_capabilities_include_tasks [gw7] [ 7%] PASSED tests/experimental/tasks/server/test_server.py::test_server_capabilities_include_tasks tests/experimental/tasks/server/test_server.py::test_server_capabilities_partial_tasks [gw7] [ 7%] PASSED tests/experimental/tasks/server/test_server.py::test_server_capabilities_partial_tasks tests/experimental/tasks/server/test_server.py::test_tool_with_task_execution_metadata [gw7] [ 8%] PASSED tests/experimental/tasks/server/test_server.py::test_tool_with_task_execution_metadata tests/experimental/tasks/server/test_server.py::test_task_metadata_in_call_tool_request [gw7] [ 8%] PASSED tests/experimental/tasks/server/test_server.py::test_task_metadata_in_call_tool_request tests/experimental/tasks/server/test_server.py::test_task_metadata_is_task_property [gw7] [ 8%] PASSED tests/experimental/tasks/server/test_server.py::test_task_metadata_is_task_property tests/experimental/tasks/server/test_server.py::test_update_capabilities_no_handlers tests/experimental/tasks/server/test_server.py::test_response_routing_skips_non_matching_routers [gw8] [ 8%] PASSED tests/experimental/tasks/server/test_server.py::test_response_routing_skips_non_matching_routers tests/experimental/tasks/server/test_server.py::test_error_routing_skips_non_matching_routers [gw8] [ 8%] PASSED tests/experimental/tasks/server/test_server.py::test_error_routing_skips_non_matching_routers tests/experimental/tasks/server/test_server_task_context.py::test_server_task_context_properties [gw8] [ 8%] PASSED tests/experimental/tasks/server/test_server_task_context.py::test_server_task_context_properties tests/experimental/tasks/server/test_server_task_context.py::test_server_task_context_request_cancellation [gw8] [ 8%] PASSED tests/experimental/tasks/server/test_server_task_context.py::test_server_task_context_request_cancellation tests/experimental/tasks/server/test_server_task_context.py::test_server_task_context_update_status_with_notify [gw8] [ 8%] PASSED tests/experimental/tasks/server/test_server_task_context.py::test_server_task_context_update_status_with_notify tests/experimental/tasks/server/test_server_task_context.py::test_server_task_context_update_status_without_notify [gw8] [ 8%] PASSED tests/experimental/tasks/server/test_server_task_context.py::test_server_task_context_update_status_without_notify tests/experimental/tasks/server/test_server_task_context.py::test_server_task_context_complete_with_notify [gw8] [ 8%] PASSED tests/experimental/tasks/server/test_server_task_context.py::test_server_task_context_complete_with_notify tests/experimental/tasks/server/test_server_task_context.py::test_server_task_context_fail_with_notify [gw8] [ 8%] PASSED tests/experimental/tasks/server/test_server_task_context.py::test_server_task_context_fail_with_notify tests/experimental/tasks/server/test_server_task_context.py::test_elicit_raises_when_client_lacks_capability [gw8] [ 8%] PASSED tests/experimental/tasks/server/test_server_task_context.py::test_elicit_raises_when_client_lacks_capability tests/experimental/tasks/server/test_server_task_context.py::test_create_message_raises_when_client_lacks_capability [gw8] [ 9%] PASSED tests/experimental/tasks/server/test_server_task_context.py::test_create_message_raises_when_client_lacks_capability tests/experimental/tasks/server/test_server_task_context.py::test_elicit_raises_without_handler [gw8] [ 9%] PASSED tests/experimental/tasks/server/test_server_task_context.py::test_elicit_raises_without_handler tests/experimental/tasks/server/test_server_task_context.py::test_elicit_url_raises_without_handler [gw8] [ 9%] PASSED tests/experimental/tasks/server/test_server_task_context.py::test_elicit_url_raises_without_handler tests/experimental/tasks/server/test_server_task_context.py::test_create_message_raises_without_handler [gw8] [ 9%] PASSED tests/experimental/tasks/server/test_server_task_context.py::test_create_message_raises_without_handler tests/experimental/tasks/server/test_server_task_context.py::test_elicit_queues_request_and_waits_for_response [gw8] [ 9%] PASSED tests/experimental/tasks/server/test_server_task_context.py::test_elicit_queues_request_and_waits_for_response tests/experimental/tasks/server/test_server_task_context.py::test_elicit_url_queues_request_and_waits_for_response [gw8] [ 9%] PASSED tests/experimental/tasks/server/test_server_task_context.py::test_elicit_url_queues_request_and_waits_for_response tests/experimental/tasks/server/test_server_task_context.py::test_create_message_queues_request_and_waits_for_response [gw8] [ 9%] PASSED tests/experimental/tasks/server/test_server_task_context.py::test_create_message_queues_request_and_waits_for_response tests/experimental/tasks/server/test_server_task_context.py::test_elicit_restores_status_on_cancellation [gw8] [ 9%] PASSED tests/experimental/tasks/server/test_server_task_context.py::test_elicit_restores_status_on_cancellation tests/experimental/tasks/server/test_server_task_context.py::test_create_message_restores_status_on_cancellation [gw8] [ 9%] PASSED tests/experimental/tasks/server/test_server_task_context.py::test_create_message_restores_status_on_cancellation tests/experimental/tasks/server/test_server_task_context.py::test_elicit_as_task_raises_without_handler [gw8] [ 9%] PASSED tests/experimental/tasks/server/test_server_task_context.py::test_elicit_as_task_raises_without_handler tests/experimental/tasks/server/test_server_task_context.py::test_create_message_as_task_raises_without_handler [gw8] [ 9%] PASSED tests/experimental/tasks/server/test_server_task_context.py::test_create_message_as_task_raises_without_handler tests/experimental/tasks/server/test_store.py::test_create_and_get [gw4] [ 10%] PASSED tests/client/test_logging_callback.py::test_logging_callback tests/client/test_notification_response.py::test_non_compliant_notification_response [gw2] [ 10%] PASSED tests/client/test_auth.py::TestLegacyServerFallback::test_legacy_server_no_prm_falls_back_to_root_oauth_discovery tests/client/test_auth.py::TestLegacyServerFallback::test_legacy_server_with_different_prm_and_root_urls [gw2] [ 10%] PASSED tests/client/test_auth.py::TestLegacyServerFallback::test_legacy_server_with_different_prm_and_root_urls tests/client/test_auth.py::TestSEP985Discovery::test_path_based_fallback_when_no_www_authenticate [gw2] [ 10%] PASSED tests/client/test_auth.py::TestSEP985Discovery::test_path_based_fallback_when_no_www_authenticate tests/client/test_auth.py::TestSEP985Discovery::test_root_based_fallback_after_path_based_404 [gw2] [ 10%] PASSED tests/client/test_auth.py::TestSEP985Discovery::test_root_based_fallback_after_path_based_404 tests/client/test_auth.py::TestSEP985Discovery::test_www_authenticate_takes_priority_over_well_known [gw2] [ 10%] PASSED tests/client/test_auth.py::TestSEP985Discovery::test_www_authenticate_takes_priority_over_well_known tests/client/test_auth.py::TestWWWAuthenticate::test_extract_field_from_www_auth_valid_cases[Bearer scope="read write"-scope-read write] [gw2] [ 10%] PASSED tests/client/test_auth.py::TestWWWAuthenticate::test_extract_field_from_www_auth_valid_cases[Bearer scope="read write"-scope-read write] tests/client/test_auth.py::TestWWWAuthenticate::test_extract_field_from_www_auth_valid_cases[Bearer resource_metadata="https://api.example.com/.well-known/oauth-protected-resource"-resource_metadata-https://api.example.com/.well-known/oauth-protected-resource] [gw2] [ 10%] PASSED tests/client/test_auth.py::TestWWWAuthenticate::test_extract_field_from_www_auth_valid_cases[Bearer resource_metadata="https://api.example.com/.well-known/oauth-protected-resource"-resource_metadata-https://api.example.com/.well-known/oauth-protected-resource] tests/client/test_auth.py::TestWWWAuthenticate::test_extract_field_from_www_auth_valid_cases[Bearer error="insufficient_scope"-error-insufficient_scope] [gw2] [ 10%] PASSED tests/client/test_auth.py::TestWWWAuthenticate::test_extract_field_from_www_auth_valid_cases[Bearer error="insufficient_scope"-error-insufficient_scope] tests/client/test_auth.py::TestWWWAuthenticate::test_extract_field_from_www_auth_valid_cases[Bearer scope=read-scope-read] [gw2] [ 10%] PASSED tests/client/test_auth.py::TestWWWAuthenticate::test_extract_field_from_www_auth_valid_cases[Bearer scope=read-scope-read] tests/client/test_auth.py::TestWWWAuthenticate::test_extract_field_from_www_auth_valid_cases[Bearer resource_metadata=https://api.example.com/.well-known/oauth-protected-resource-resource_metadata-https://api.example.com/.well-known/oauth-protected-resource] [gw2] [ 10%] PASSED tests/client/test_auth.py::TestWWWAuthenticate::test_extract_field_from_www_auth_valid_cases[Bearer resource_metadata=https://api.example.com/.well-known/oauth-protected-resource-resource_metadata-https://api.example.com/.well-known/oauth-protected-resource] tests/client/test_auth.py::TestWWWAuthenticate::test_extract_field_from_www_auth_valid_cases[Bearer error=invalid_token-error-invalid_token] [gw2] [ 10%] PASSED tests/client/test_auth.py::TestWWWAuthenticate::test_extract_field_from_www_auth_valid_cases[Bearer error=invalid_token-error-invalid_token] tests/client/test_auth.py::TestWWWAuthenticate::test_extract_field_from_www_auth_valid_cases[Bearer realm="api", scope="admin:write resource:read", error="insufficient_scope"-scope-admin:write resource:read] [gw2] [ 11%] PASSED tests/client/test_auth.py::TestWWWAuthenticate::test_extract_field_from_www_auth_valid_cases[Bearer realm="api", scope="admin:write resource:read", error="insufficient_scope"-scope-admin:write resource:read] tests/client/test_auth.py::TestWWWAuthenticate::test_extract_field_from_www_auth_valid_cases[Bearer realm="api", resource_metadata="https://api.example.com/.well-known/oauth-protected-resource", error="insufficient_scope"-resource_metadata-https://api.example.com/.well-known/oauth-protected-resource] [gw2] [ 11%] PASSED tests/client/test_auth.py::TestWWWAuthenticate::test_extract_field_from_www_auth_valid_cases[Bearer realm="api", resource_metadata="https://api.example.com/.well-known/oauth-protected-resource", error="insufficient_scope"-resource_metadata-https://api.example.com/.well-known/oauth-protected-resource] tests/client/test_auth.py::TestWWWAuthenticate::test_extract_field_from_www_auth_valid_cases[Bearer realm="api", scope=basic-scope-basic] [gw2] [ 11%] PASSED tests/client/test_auth.py::TestWWWAuthenticate::test_extract_field_from_www_auth_valid_cases[Bearer realm="api", scope=basic-scope-basic] tests/client/test_auth.py::TestWWWAuthenticate::test_extract_field_from_www_auth_valid_cases[Bearer scope="resource:read resource:write user_profile"-scope-resource:read resource:write user_profile] [gw2] [ 11%] PASSED tests/client/test_auth.py::TestWWWAuthenticate::test_extract_field_from_www_auth_valid_cases[Bearer scope="resource:read resource:write user_profile"-scope-resource:read resource:write user_profile] tests/client/test_auth.py::TestWWWAuthenticate::test_extract_field_from_www_auth_valid_cases[Bearer resource_metadata="https://api.example.com/auth/metadata?version=1"-resource_metadata-https://api.example.com/auth/metadata?version=1] [gw2] [ 11%] PASSED tests/client/test_auth.py::TestWWWAuthenticate::test_extract_field_from_www_auth_valid_cases[Bearer resource_metadata="https://api.example.com/auth/metadata?version=1"-resource_metadata-https://api.example.com/auth/metadata?version=1] tests/client/test_auth.py::TestWWWAuthenticate::test_extract_field_from_www_auth_invalid_cases[None-scope-no WWW-Authenticate header] [gw2] [ 11%] PASSED tests/client/test_auth.py::TestWWWAuthenticate::test_extract_field_from_www_auth_invalid_cases[None-scope-no WWW-Authenticate header] tests/client/test_auth.py::TestWWWAuthenticate::test_extract_field_from_www_auth_invalid_cases[-scope-empty WWW-Authenticate header] [gw2] [ 11%] PASSED tests/client/test_auth.py::TestWWWAuthenticate::test_extract_field_from_www_auth_invalid_cases[-scope-empty WWW-Authenticate header] tests/client/test_auth.py::TestWWWAuthenticate::test_extract_field_from_www_auth_invalid_cases[Bearer realm="api", error="insufficient_scope"-scope-no scope parameter] [gw2] [ 11%] PASSED tests/client/test_auth.py::TestWWWAuthenticate::test_extract_field_from_www_auth_invalid_cases[Bearer realm="api", error="insufficient_scope"-scope-no scope parameter] tests/client/test_auth.py::TestWWWAuthenticate::test_extract_field_from_www_auth_invalid_cases[Bearer realm="api", scope="read write"-resource_metadata-no resource_metadata parameter] [gw2] [ 11%] PASSED tests/client/test_auth.py::TestWWWAuthenticate::test_extract_field_from_www_auth_invalid_cases[Bearer realm="api", scope="read write"-resource_metadata-no resource_metadata parameter] tests/client/test_auth.py::TestWWWAuthenticate::test_extract_field_from_www_auth_invalid_cases[Bearer scope=-scope-malformed scope parameter] [gw2] [ 11%] PASSED tests/client/test_auth.py::TestWWWAuthenticate::test_extract_field_from_www_auth_invalid_cases[Bearer scope=-scope-malformed scope parameter] tests/client/test_auth.py::TestWWWAuthenticate::test_extract_field_from_www_auth_invalid_cases[Bearer resource_metadata=-resource_metadata-malformed resource_metadata parameter] [gw2] [ 11%] PASSED tests/client/test_auth.py::TestWWWAuthenticate::test_extract_field_from_www_auth_invalid_cases[Bearer resource_metadata=-resource_metadata-malformed resource_metadata parameter] tests/client/test_auth.py::TestCIMD::test_is_valid_client_metadata_url[https://example.com/client-True] [gw2] [ 11%] PASSED tests/client/test_auth.py::TestCIMD::test_is_valid_client_metadata_url[https://example.com/client-True] tests/client/test_auth.py::TestCIMD::test_is_valid_client_metadata_url[https://example.com/client-metadata.json-True] [gw2] [ 12%] PASSED tests/client/test_auth.py::TestCIMD::test_is_valid_client_metadata_url[https://example.com/client-metadata.json-True] tests/client/test_auth.py::TestCIMD::test_is_valid_client_metadata_url[https://example.com/path/to/client-True] [gw2] [ 12%] PASSED tests/client/test_auth.py::TestCIMD::test_is_valid_client_metadata_url[https://example.com/path/to/client-True] tests/client/test_auth.py::TestCIMD::test_is_valid_client_metadata_url[https://example.com:8443/client-True] [gw2] [ 12%] PASSED tests/client/test_auth.py::TestCIMD::test_is_valid_client_metadata_url[https://example.com:8443/client-True] tests/client/test_auth.py::TestCIMD::test_is_valid_client_metadata_url[http://example.com/client-False] [gw2] [ 12%] PASSED tests/client/test_auth.py::TestCIMD::test_is_valid_client_metadata_url[http://example.com/client-False] tests/client/test_auth.py::TestCIMD::test_is_valid_client_metadata_url[https://example.com/-False] [gw3] [ 12%] PASSED tests/client/test_auth.py::TestCIMD::test_is_valid_client_metadata_url[https://example.com/-False] tests/client/test_auth.py::TestCIMD::test_is_valid_client_metadata_url[None-False] [gw3] [ 12%] PASSED tests/client/test_auth.py::TestCIMD::test_is_valid_client_metadata_url[None-False] tests/client/test_auth.py::TestCIMD::test_is_valid_client_metadata_url[-False] [gw3] [ 12%] PASSED tests/client/test_auth.py::TestCIMD::test_is_valid_client_metadata_url[-False] tests/client/test_auth.py::TestCIMD::test_is_valid_client_metadata_url[http://[::1/foo/-False] [gw3] [ 12%] PASSED tests/client/test_auth.py::TestCIMD::test_is_valid_client_metadata_url[http://[::1/foo/-False] tests/client/test_auth.py::TestCIMD::test_should_use_client_metadata_url_when_server_supports [gw3] [ 12%] PASSED tests/client/test_auth.py::TestCIMD::test_should_use_client_metadata_url_when_server_supports tests/client/test_auth.py::TestCIMD::test_should_not_use_client_metadata_url_when_server_does_not_support [gw3] [ 12%] PASSED tests/client/test_auth.py::TestCIMD::test_should_not_use_client_metadata_url_when_server_does_not_support tests/client/test_auth.py::TestCIMD::test_should_not_use_client_metadata_url_when_not_provided [gw3] [ 12%] PASSED tests/client/test_auth.py::TestCIMD::test_should_not_use_client_metadata_url_when_not_provided tests/client/test_auth.py::TestCIMD::test_should_not_use_client_metadata_url_when_no_metadata [gw3] [ 13%] PASSED tests/client/test_auth.py::TestCIMD::test_should_not_use_client_metadata_url_when_no_metadata tests/client/test_auth.py::TestCIMD::test_create_client_info_from_metadata_url [gw3] [ 13%] PASSED tests/client/test_auth.py::TestCIMD::test_create_client_info_from_metadata_url tests/client/test_auth.py::TestCIMD::test_oauth_provider_with_valid_client_metadata_url [gw3] [ 13%] PASSED tests/client/test_auth.py::TestCIMD::test_oauth_provider_with_valid_client_metadata_url tests/client/test_auth.py::TestCIMD::test_oauth_provider_with_invalid_client_metadata_url_raises_error [gw3] [ 13%] PASSED tests/client/test_auth.py::TestCIMD::test_oauth_provider_with_invalid_client_metadata_url_raises_error tests/client/test_auth.py::TestCIMD::test_auth_flow_uses_cimd_when_server_supports [gw3] [ 13%] PASSED tests/client/test_auth.py::TestCIMD::test_auth_flow_uses_cimd_when_server_supports tests/client/test_auth.py::TestCIMD::test_auth_flow_falls_back_to_dcr_when_no_cimd_support [gw3] [ 13%] PASSED tests/client/test_auth.py::TestCIMD::test_auth_flow_falls_back_to_dcr_when_no_cimd_support tests/client/test_auth.py::test_validate_resource_rejects_mismatched_resource [gw3] [ 13%] PASSED tests/client/test_auth.py::test_validate_resource_rejects_mismatched_resource tests/client/test_auth.py::test_validate_resource_accepts_matching_resource [gw3] [ 13%] PASSED tests/client/test_auth.py::test_validate_resource_accepts_matching_resource tests/client/test_auth.py::test_validate_resource_accepts_root_url_with_trailing_slash [gw3] [ 13%] PASSED tests/client/test_auth.py::test_validate_resource_accepts_root_url_with_trailing_slash tests/client/test_auth.py::test_get_resource_url_falls_back_when_prm_mismatches [gw3] [ 13%] PASSED tests/client/test_auth.py::test_get_resource_url_falls_back_when_prm_mismatches tests/client/test_config.py::test_absolute_uv_path [gw3] [ 13%] PASSED tests/client/test_config.py::test_absolute_uv_path tests/client/test_list_methods_cursor.py::test_list_methods_cursor_parameter[list_tools-tools/list] [gw3] [ 13%] PASSED tests/client/test_list_methods_cursor.py::test_list_methods_cursor_parameter[list_tools-tools/list] tests/client/test_list_methods_cursor.py::test_list_methods_cursor_parameter[list_resources-resources/list] [gw3] [ 14%] PASSED tests/client/test_list_methods_cursor.py::test_list_methods_cursor_parameter[list_resources-resources/list] tests/client/test_list_methods_cursor.py::test_list_methods_cursor_parameter[list_prompts-prompts/list] [gw3] [ 14%] PASSED tests/client/test_list_methods_cursor.py::test_list_methods_cursor_parameter[list_prompts-prompts/list] tests/client/test_list_methods_cursor.py::test_list_methods_cursor_parameter[list_resource_templates-resources/templates/list] [gw3] [ 14%] PASSED tests/client/test_list_methods_cursor.py::test_list_methods_cursor_parameter[list_resource_templates-resources/templates/list] tests/client/test_list_methods_cursor.py::test_list_methods_params_parameter[list_tools-tools/list] tests/experimental/tasks/server/test_store.py::test_task_expiration_cleanup [gw9] [ 14%] PASSED tests/experimental/tasks/server/test_store.py::test_task_expiration_cleanup tests/experimental/tasks/server/test_store.py::test_task_with_null_ttl_never_expires [gw9] [ 14%] PASSED tests/experimental/tasks/server/test_store.py::test_task_with_null_ttl_never_expires tests/experimental/tasks/server/test_store.py::test_terminal_task_ttl_reset [gw9] [ 14%] PASSED tests/experimental/tasks/server/test_store.py::test_terminal_task_ttl_reset tests/experimental/tasks/server/test_store.py::test_terminal_status_transition_rejected [gw9] [ 14%] PASSED tests/experimental/tasks/server/test_store.py::test_terminal_status_transition_rejected tests/experimental/tasks/server/test_store.py::test_terminal_status_allows_same_status [gw9] [ 14%] PASSED tests/experimental/tasks/server/test_store.py::test_terminal_status_allows_same_status tests/experimental/tasks/server/test_store.py::test_wait_for_update_nonexistent_raises [gw9] [ 14%] PASSED tests/experimental/tasks/server/test_store.py::test_wait_for_update_nonexistent_raises tests/experimental/tasks/server/test_store.py::test_cancel_task_succeeds_for_working_task [gw9] [ 14%] PASSED tests/experimental/tasks/server/test_store.py::test_cancel_task_succeeds_for_working_task tests/experimental/tasks/server/test_store.py::test_cancel_task_rejects_nonexistent_task [gw9] [ 14%] PASSED tests/experimental/tasks/server/test_store.py::test_cancel_task_rejects_nonexistent_task tests/experimental/tasks/server/test_store.py::test_cancel_task_rejects_completed_task [gw9] [ 15%] PASSED tests/experimental/tasks/server/test_store.py::test_cancel_task_rejects_completed_task tests/experimental/tasks/server/test_store.py::test_cancel_task_rejects_failed_task [gw9] [ 15%] PASSED tests/experimental/tasks/server/test_store.py::test_cancel_task_rejects_failed_task tests/experimental/tasks/server/test_store.py::test_cancel_task_rejects_already_cancelled_task [gw9] [ 15%] PASSED tests/experimental/tasks/server/test_store.py::test_cancel_task_rejects_already_cancelled_task tests/experimental/tasks/server/test_store.py::test_cancel_task_succeeds_for_input_required_task [gw9] [ 15%] PASSED tests/experimental/tasks/server/test_store.py::test_cancel_task_succeeds_for_input_required_task tests/experimental/tasks/server/test_task_result_handler.py::test_handle_returns_result_for_completed_task [gw9] [ 15%] PASSED tests/experimental/tasks/server/test_task_result_handler.py::test_handle_returns_result_for_completed_task tests/experimental/tasks/server/test_task_result_handler.py::test_handle_omits_none_fields_from_completed_task_payload [gw9] [ 15%] PASSED tests/experimental/tasks/server/test_task_result_handler.py::test_handle_omits_none_fields_from_completed_task_payload tests/experimental/tasks/server/test_task_result_handler.py::test_handle_raises_for_nonexistent_task [gw9] [ 15%] PASSED tests/experimental/tasks/server/test_task_result_handler.py::test_handle_raises_for_nonexistent_task tests/experimental/tasks/server/test_task_result_handler.py::test_handle_returns_empty_result_when_no_result_stored [gw9] [ 15%] PASSED tests/experimental/tasks/server/test_task_result_handler.py::test_handle_returns_empty_result_when_no_result_stored tests/experimental/tasks/server/test_task_result_handler.py::test_handle_delivers_queued_messages [gw9] [ 15%] PASSED tests/experimental/tasks/server/test_task_result_handler.py::test_handle_delivers_queued_messages tests/experimental/tasks/server/test_task_result_handler.py::test_handle_waits_for_task_completion [gw9] [ 15%] PASSED tests/experimental/tasks/server/test_task_result_handler.py::test_handle_waits_for_task_completion tests/experimental/tasks/server/test_task_result_handler.py::test_route_response_resolves_pending_request [gw9] [ 15%] PASSED tests/experimental/tasks/server/test_task_result_handler.py::test_route_response_resolves_pending_request tests/experimental/tasks/server/test_task_result_handler.py::test_route_response_returns_false_for_unknown_request [gw9] [ 15%] PASSED tests/experimental/tasks/server/test_task_result_handler.py::test_route_response_returns_false_for_unknown_request tests/experimental/tasks/server/test_task_result_handler.py::test_route_response_returns_false_for_already_done_resolver [gw9] [ 16%] PASSED tests/experimental/tasks/server/test_task_result_handler.py::test_route_response_returns_false_for_already_done_resolver [gw0] [ 16%] PASSED tests/client/test_auth.py::TestOAuthFlow::test_create_oauth_metadata_request tests/client/test_auth.py::TestOAuthFallback::test_oauth_discovery_legacy_fallback_when_no_prm [gw0] [ 16%] PASSED tests/client/test_auth.py::TestOAuthFallback::test_oauth_discovery_legacy_fallback_when_no_prm tests/client/test_auth.py::TestOAuthFallback::test_oauth_discovery_path_aware_when_auth_server_has_path [gw0] [ 16%] PASSED tests/client/test_auth.py::TestOAuthFallback::test_oauth_discovery_path_aware_when_auth_server_has_path tests/client/test_auth.py::TestOAuthFallback::test_oauth_discovery_root_when_auth_server_has_no_path [gw0] [ 16%] PASSED tests/client/test_auth.py::TestOAuthFallback::test_oauth_discovery_root_when_auth_server_has_no_path tests/client/test_auth.py::TestOAuthFallback::test_oauth_discovery_root_when_auth_server_has_only_slash [gw0] [ 16%] PASSED tests/client/test_auth.py::TestOAuthFallback::test_oauth_discovery_root_when_auth_server_has_only_slash tests/client/test_auth.py::TestOAuthFallback::test_oauth_discovery_fallback_order [gw0] [ 16%] PASSED tests/client/test_auth.py::TestOAuthFallback::test_oauth_discovery_fallback_order tests/client/test_auth.py::TestOAuthFallback::test_oauth_discovery_fallback_conditions [gw0] [ 16%] PASSED tests/client/test_auth.py::TestOAuthFallback::test_oauth_discovery_fallback_conditions tests/client/test_auth.py::TestOAuthFallback::test_handle_metadata_response_success [gw0] [ 16%] PASSED tests/client/test_auth.py::TestOAuthFallback::test_handle_metadata_response_success tests/client/test_auth.py::TestOAuthFallback::test_prioritize_www_auth_scope_over_prm [gw0] [ 16%] PASSED tests/client/test_auth.py::TestOAuthFallback::test_prioritize_www_auth_scope_over_prm tests/client/test_auth.py::TestOAuthFallback::test_prioritize_prm_scopes_when_no_www_auth_scope [gw0] [ 16%] PASSED tests/client/test_auth.py::TestOAuthFallback::test_prioritize_prm_scopes_when_no_www_auth_scope tests/client/test_auth.py::TestOAuthFallback::test_omit_scope_when_no_prm_scopes_or_www_auth [gw0] [ 16%] PASSED tests/client/test_auth.py::TestOAuthFallback::test_omit_scope_when_no_prm_scopes_or_www_auth tests/client/test_auth.py::TestOAuthFallback::test_token_exchange_request_authorization_code [gw0] [ 17%] PASSED tests/client/test_auth.py::TestOAuthFallback::test_token_exchange_request_authorization_code tests/client/test_auth.py::TestOAuthFallback::test_refresh_token_request [gw0] [ 17%] PASSED tests/client/test_auth.py::TestOAuthFallback::test_refresh_token_request tests/client/test_auth.py::TestOAuthFallback::test_basic_auth_token_exchange [gw0] [ 17%] PASSED tests/client/test_auth.py::TestOAuthFallback::test_basic_auth_token_exchange tests/client/test_auth.py::TestOAuthFallback::test_basic_auth_refresh_token [gw0] [ 17%] PASSED tests/client/test_auth.py::TestOAuthFallback::test_basic_auth_refresh_token tests/client/test_auth.py::TestOAuthFallback::test_none_auth_method [gw0] [ 17%] PASSED tests/client/test_auth.py::TestOAuthFallback::test_none_auth_method tests/client/test_auth.py::TestProtectedResourceMetadata::test_resource_param_included_with_recent_protocol_version [gw0] [ 17%] PASSED tests/client/test_auth.py::TestProtectedResourceMetadata::test_resource_param_included_with_recent_protocol_version tests/client/test_auth.py::TestProtectedResourceMetadata::test_resource_param_excluded_with_old_protocol_version [gw0] [ 17%] PASSED tests/client/test_auth.py::TestProtectedResourceMetadata::test_resource_param_excluded_with_old_protocol_version tests/client/test_auth.py::TestProtectedResourceMetadata::test_resource_param_included_with_protected_resource_metadata [gw0] [ 17%] PASSED tests/client/test_auth.py::TestProtectedResourceMetadata::test_resource_param_included_with_protected_resource_metadata tests/client/test_auth.py::TestRegistrationResponse::test_handle_registration_response_reads_before_accessing_text [gw0] [ 17%] PASSED tests/client/test_auth.py::TestRegistrationResponse::test_handle_registration_response_reads_before_accessing_text tests/client/test_auth.py::TestCreateClientRegistrationRequest::test_uses_registration_endpoint_from_metadata [gw0] [ 17%] PASSED tests/client/test_auth.py::TestCreateClientRegistrationRequest::test_uses_registration_endpoint_from_metadata tests/client/test_auth.py::TestCreateClientRegistrationRequest::test_falls_back_to_default_register_endpoint_when_no_metadata [gw0] [ 17%] PASSED tests/client/test_auth.py::TestCreateClientRegistrationRequest::test_falls_back_to_default_register_endpoint_when_no_metadata tests/client/test_auth.py::TestCreateClientRegistrationRequest::test_falls_back_when_metadata_has_no_registration_endpoint [gw0] [ 18%] PASSED tests/client/test_auth.py::TestCreateClientRegistrationRequest::test_falls_back_when_metadata_has_no_registration_endpoint tests/client/test_auth.py::TestAuthFlow::test_auth_flow_with_valid_tokens [gw0] [ 18%] PASSED tests/client/test_auth.py::TestAuthFlow::test_auth_flow_with_valid_tokens tests/client/test_auth.py::TestAuthFlow::test_auth_flow_with_no_tokens [gw0] [ 18%] PASSED tests/client/test_auth.py::TestAuthFlow::test_auth_flow_with_no_tokens tests/client/test_auth.py::TestAuthFlow::test_auth_flow_no_unnecessary_retry_after_oauth [gw0] [ 18%] PASSED tests/client/test_auth.py::TestAuthFlow::test_auth_flow_no_unnecessary_retry_after_oauth tests/client/test_auth.py::TestAuthFlow::test_403_insufficient_scope_updates_scope_from_header [gw0] [ 18%] PASSED tests/client/test_auth.py::TestAuthFlow::test_403_insufficient_scope_updates_scope_from_header tests/client/test_auth.py::test_build_metadata[simple-url] [gw8] [ 18%] PASSED tests/experimental/tasks/server/test_store.py::test_create_and_get [gw7] [ 18%] PASSED tests/experimental/tasks/server/test_server.py::test_update_capabilities_no_handlers tests/experimental/tasks/server/test_server.py::test_default_task_handlers_via_enable_tasks tests/experimental/tasks/server/test_integration.py::test_task_auto_fails_on_exception tests/client/test_auth.py::TestOAuthFlow::test_build_protected_resource_discovery_urls tests/experimental/tasks/server/test_store.py::test_create_with_custom_id [gw1] [ 18%] PASSED tests/client/test_auth.py::TestOAuthFlow::test_build_protected_resource_discovery_urls tests/experimental/tasks/server/test_task_visibility.py::test_a_client_sees_its_own_task_when_listing_tasks [gw8] [ 18%] PASSED tests/experimental/tasks/server/test_store.py::test_create_with_custom_id [gw7] [ 18%] PASSED tests/experimental/tasks/server/test_server.py::test_default_task_handlers_via_enable_tasks tests/experimental/tasks/server/test_server.py::test_build_elicit_form_request [gw5] [ 18%] PASSED tests/experimental/tasks/server/test_integration.py::test_task_auto_fails_on_exception tests/experimental/tasks/server/test_task_result_handler.py::test_route_error_returns_false_for_unknown_request [gw5] [ 18%] PASSED tests/experimental/tasks/server/test_task_result_handler.py::test_route_error_returns_false_for_unknown_request tests/experimental/tasks/server/test_task_result_handler.py::test_deliver_registers_resolver_for_request_messages [gw5] [ 19%] PASSED tests/experimental/tasks/server/test_task_result_handler.py::test_deliver_registers_resolver_for_request_messages tests/experimental/tasks/server/test_task_result_handler.py::test_deliver_skips_resolver_registration_when_no_original_id [gw5] [ 19%] PASSED tests/experimental/tasks/server/test_task_result_handler.py::test_deliver_skips_resolver_registration_when_no_original_id tests/experimental/tasks/server/test_task_result_handler.py::test_wait_for_task_update_handles_store_exception [gw5] [ 19%] PASSED tests/experimental/tasks/server/test_task_result_handler.py::test_wait_for_task_update_handles_store_exception tests/experimental/tasks/server/test_task_result_handler.py::test_wait_for_task_update_handles_queue_exception [gw5] [ 19%] PASSED tests/experimental/tasks/server/test_task_result_handler.py::test_wait_for_task_update_handles_queue_exception tests/experimental/tasks/server/test_task_scope.py::test_new_session_scope_is_unique [gw5] [ 19%] PASSED tests/experimental/tasks/server/test_task_scope.py::test_new_session_scope_is_unique tests/experimental/tasks/server/test_task_scope.py::test_scoped_task_id_round_trips_its_scope [gw5] [ 19%] PASSED tests/experimental/tasks/server/test_task_scope.py::test_scoped_task_id_round_trips_its_scope tests/experimental/tasks/server/test_task_scope.py::test_scoped_task_ids_are_unique_within_a_scope [gw1] [ 19%] PASSED tests/experimental/tasks/server/test_task_visibility.py::test_a_client_sees_its_own_task_when_listing_tasks tests/experimental/tasks/server/test_task_visibility.py::test_a_client_can_cancel_its_own_task [gw1] [ 19%] PASSED tests/experimental/tasks/server/test_task_visibility.py::test_a_client_can_cancel_its_own_task tests/experimental/tasks/server/test_task_visibility.py::test_a_client_cannot_get_the_status_of_another_clients_task [gw7] [ 19%] PASSED tests/experimental/tasks/server/test_server.py::test_build_elicit_form_request tests/experimental/tasks/server/test_server.py::test_build_elicit_url_request [gw7] [ 19%] PASSED tests/experimental/tasks/server/test_server.py::test_build_elicit_url_request tests/experimental/tasks/server/test_server.py::test_build_create_message_request [gw7] [ 19%] PASSED tests/experimental/tasks/server/test_server.py::test_build_create_message_request tests/experimental/tasks/server/test_server.py::test_send_message [gw7] [ 20%] PASSED tests/experimental/tasks/server/test_server.py::test_send_message tests/experimental/tasks/server/test_server.py::test_response_routing_success [gw7] [ 20%] PASSED tests/experimental/tasks/server/test_server.py::test_response_routing_success tests/experimental/tasks/server/test_server.py::test_response_routing_error [gw7] [ 20%] PASSED tests/experimental/tasks/server/test_server.py::test_response_routing_error tests/experimental/tasks/test_capabilities.py::TestCheckTasksCapability::test_elicitation_without_create_required [gw7] [ 20%] PASSED tests/experimental/tasks/test_capabilities.py::TestCheckTasksCapability::test_elicitation_without_create_required tests/experimental/tasks/test_capabilities.py::TestCheckTasksCapability::test_sampling_without_create_message_required [gw7] [ 20%] PASSED tests/experimental/tasks/test_capabilities.py::TestCheckTasksCapability::test_sampling_without_create_message_required tests/experimental/tasks/test_capabilities.py::TestHasTaskAugmentedElicitation::test_tasks_none [gw7] [ 20%] PASSED tests/experimental/tasks/test_capabilities.py::TestHasTaskAugmentedElicitation::test_tasks_none tests/experimental/tasks/test_capabilities.py::TestHasTaskAugmentedElicitation::test_requests_none [gw7] [ 20%] PASSED tests/experimental/tasks/test_capabilities.py::TestHasTaskAugmentedElicitation::test_requests_none tests/experimental/tasks/test_capabilities.py::TestHasTaskAugmentedElicitation::test_elicitation_none [gw7] [ 20%] PASSED tests/experimental/tasks/test_capabilities.py::TestHasTaskAugmentedElicitation::test_elicitation_none [gw1] [ 20%] PASSED tests/experimental/tasks/server/test_task_visibility.py::test_a_client_cannot_get_the_status_of_another_clients_task tests/experimental/tasks/server/test_store.py::test_create_duplicate_id_raises [gw8] [ 20%] PASSED tests/experimental/tasks/server/test_store.py::test_create_duplicate_id_raises tests/experimental/tasks/server/test_store.py::test_get_nonexistent_returns_none tests/experimental/tasks/server/test_task_visibility.py::test_a_client_cannot_get_the_result_of_another_clients_task tests/client/test_auth.py::TestCIMD::test_is_valid_client_metadata_url[https://example.com-False] [gw2] [ 20%] PASSED tests/client/test_auth.py::TestCIMD::test_is_valid_client_metadata_url[https://example.com-False] tests/experimental/tasks/test_message_queue.py::TestInMemoryTaskMessageQueue::test_wait_for_message_blocks_until_message [gw2] [ 20%] PASSED tests/experimental/tasks/test_message_queue.py::TestInMemoryTaskMessageQueue::test_wait_for_message_blocks_until_message tests/experimental/tasks/test_message_queue.py::TestInMemoryTaskMessageQueue::test_notify_message_available_wakes_waiter tests/experimental/tasks/server/test_task_result_handler.py::test_route_error_resolves_pending_request_with_exception [gw8] [ 21%] PASSED tests/experimental/tasks/server/test_store.py::test_get_nonexistent_returns_none tests/experimental/tasks/test_capabilities.py::TestHasTaskAugmentedElicitation::test_create_none [gw2] [ 21%] PASSED tests/experimental/tasks/test_message_queue.py::TestInMemoryTaskMessageQueue::test_notify_message_available_wakes_waiter tests/experimental/tasks/test_message_queue.py::TestInMemoryTaskMessageQueue::test_peek_empty_queue_returns_none [gw3] [ 21%] PASSED tests/client/test_list_methods_cursor.py::test_list_methods_params_parameter[list_tools-tools/list] [gw2] [ 21%] PASSED tests/experimental/tasks/test_message_queue.py::TestInMemoryTaskMessageQueue::test_peek_empty_queue_returns_none [gw9] [ 21%] PASSED tests/experimental/tasks/server/test_task_result_handler.py::test_route_error_resolves_pending_request_with_exception tests/experimental/tasks/test_message_queue.py::TestInMemoryTaskMessageQueue::test_wait_for_message_double_check_race_condition tests/experimental/tasks/test_spec_compliance.py::TestToolLevelNegotiation::test_tool_execution_task_forbidden_rejects_task_augmented_call tests/client/test_list_methods_cursor.py::test_list_methods_params_parameter[list_resources-resources/list] [gw9] [ 21%] SKIPPED tests/experimental/tasks/test_spec_compliance.py::TestToolLevelNegotiation::test_tool_execution_task_forbidden_rejects_task_augmented_call tests/experimental/tasks/server/test_store.py::test_update_status tests/experimental/tasks/test_spec_compliance.py::TestToolLevelNegotiation::test_tool_execution_task_absent_rejects_task_augmented_call [gw9] [ 21%] SKIPPED tests/experimental/tasks/test_spec_compliance.py::TestToolLevelNegotiation::test_tool_execution_task_absent_rejects_task_augmented_call tests/experimental/tasks/test_spec_compliance.py::TestToolLevelNegotiation::test_tool_execution_task_optional_accepts_normal_call [gw8] [ 21%] PASSED tests/experimental/tasks/server/test_store.py::test_update_status [gw9] [ 21%] SKIPPED tests/experimental/tasks/test_spec_compliance.py::TestToolLevelNegotiation::test_tool_execution_task_optional_accepts_normal_call tests/experimental/tasks/test_spec_compliance.py::TestToolLevelNegotiation::test_tool_execution_task_optional_accepts_task_augmented_call [gw9] [ 21%] SKIPPED tests/experimental/tasks/test_spec_compliance.py::TestToolLevelNegotiation::test_tool_execution_task_optional_accepts_task_augmented_call tests/experimental/tasks/test_spec_compliance.py::TestToolLevelNegotiation::test_tool_execution_task_required_rejects_normal_call [gw9] [ 21%] SKIPPED tests/experimental/tasks/test_spec_compliance.py::TestToolLevelNegotiation::test_tool_execution_task_required_rejects_normal_call tests/experimental/tasks/test_spec_compliance.py::TestToolLevelNegotiation::test_tool_execution_task_required_accepts_task_augmented_call [gw9] [ 21%] SKIPPED tests/experimental/tasks/test_spec_compliance.py::TestToolLevelNegotiation::test_tool_execution_task_required_accepts_task_augmented_call tests/experimental/tasks/server/test_store.py::test_update_nonexistent_raises tests/experimental/tasks/test_spec_compliance.py::TestCapabilityNegotiation::test_receiver_without_capability_ignores_task_metadata [gw9] [ 22%] SKIPPED tests/experimental/tasks/test_spec_compliance.py::TestCapabilityNegotiation::test_receiver_without_capability_ignores_task_metadata tests/experimental/tasks/test_spec_compliance.py::TestCapabilityNegotiation::test_receiver_with_capability_may_require_task_augmentation [gw9] [ 22%] SKIPPED tests/experimental/tasks/test_spec_compliance.py::TestCapabilityNegotiation::test_receiver_with_capability_may_require_task_augmentation tests/experimental/tasks/test_spec_compliance.py::TestTaskStatusLifecycle::test_task_begins_in_working_status [gw9] [ 22%] SKIPPED tests/experimental/tasks/test_spec_compliance.py::TestTaskStatusLifecycle::test_task_begins_in_working_status tests/experimental/tasks/test_spec_compliance.py::TestTaskStatusLifecycle::test_working_to_completed_transition [gw9] [ 22%] SKIPPED tests/experimental/tasks/test_spec_compliance.py::TestTaskStatusLifecycle::test_working_to_completed_transition tests/experimental/tasks/test_spec_compliance.py::TestTaskStatusLifecycle::test_working_to_failed_transition [gw8] [ 22%] PASSED tests/experimental/tasks/server/test_store.py::test_update_nonexistent_raises [gw2] [ 22%] PASSED tests/experimental/tasks/test_message_queue.py::TestInMemoryTaskMessageQueue::test_wait_for_message_double_check_race_condition tests/experimental/tasks/test_message_queue.py::TestResolver::test_set_result_and_wait [gw2] [ 22%] PASSED tests/experimental/tasks/test_message_queue.py::TestResolver::test_set_result_and_wait tests/experimental/tasks/test_message_queue.py::TestResolver::test_set_exception_and_wait [gw2] [ 22%] PASSED tests/experimental/tasks/test_message_queue.py::TestResolver::test_set_exception_and_wait tests/experimental/tasks/test_message_queue.py::TestResolver::test_set_result_when_already_completed_raises [gw2] [ 22%] PASSED tests/experimental/tasks/test_message_queue.py::TestResolver::test_set_result_when_already_completed_raises tests/experimental/tasks/test_message_queue.py::TestResolver::test_set_exception_when_already_completed_raises [gw2] [ 22%] PASSED tests/experimental/tasks/test_message_queue.py::TestResolver::test_set_exception_when_already_completed_raises tests/experimental/tasks/test_message_queue.py::TestResolver::test_done_returns_false_before_completion [gw2] [ 22%] PASSED tests/experimental/tasks/test_message_queue.py::TestResolver::test_done_returns_false_before_completion tests/experimental/tasks/test_request_context.py::test_is_task_true_when_metadata_present [gw2] [ 23%] PASSED tests/experimental/tasks/test_request_context.py::test_is_task_true_when_metadata_present tests/experimental/tasks/test_request_context.py::test_is_task_false_when_no_metadata [gw2] [ 23%] PASSED tests/experimental/tasks/test_request_context.py::test_is_task_false_when_no_metadata tests/experimental/tasks/server/test_store.py::test_store_and_get_result tests/experimental/tasks/test_request_context.py::test_client_supports_tasks_true [gw5] [ 23%] PASSED tests/experimental/tasks/server/test_task_scope.py::test_scoped_task_ids_are_unique_within_a_scope tests/experimental/tasks/server/test_task_scope.py::test_session_scope_of_returns_none_for_unscoped_ids[plain-task-id] [gw5] [ 23%] PASSED tests/experimental/tasks/server/test_task_scope.py::test_session_scope_of_returns_none_for_unscoped_ids[plain-task-id] [gw8] [ 23%] PASSED tests/experimental/tasks/server/test_store.py::test_store_and_get_result [gw9] [ 23%] SKIPPED tests/experimental/tasks/test_spec_compliance.py::TestTaskStatusLifecycle::test_working_to_failed_transition tests/experimental/tasks/server/test_task_scope.py::test_session_scope_of_returns_none_for_unscoped_ids[550e8400-e29b-41d4-a716-446655440000] tests/experimental/tasks/test_spec_compliance.py::TestTaskStatusLifecycle::test_working_to_cancelled_transition [gw9] [ 23%] SKIPPED tests/experimental/tasks/test_spec_compliance.py::TestTaskStatusLifecycle::test_working_to_cancelled_transition tests/experimental/tasks/server/test_store.py::test_get_result_nonexistent_returns_none tests/experimental/tasks/test_spec_compliance.py::TestTaskStatusLifecycle::test_working_to_input_required_transition [gw9] [ 23%] SKIPPED tests/experimental/tasks/test_spec_compliance.py::TestTaskStatusLifecycle::test_working_to_input_required_transition [gw5] [ 23%] PASSED tests/experimental/tasks/server/test_task_scope.py::test_session_scope_of_returns_none_for_unscoped_ids[550e8400-e29b-41d4-a716-446655440000] tests/experimental/tasks/server/test_task_scope.py::test_session_scope_of_returns_none_for_unscoped_ids[] [gw8] [ 23%] PASSED tests/experimental/tasks/server/test_store.py::test_get_result_nonexistent_returns_none tests/experimental/tasks/test_spec_compliance.py::TestTaskStatusLifecycle::test_input_required_to_working_transition [gw9] [ 23%] SKIPPED tests/experimental/tasks/test_spec_compliance.py::TestTaskStatusLifecycle::test_input_required_to_working_transition tests/experimental/tasks/test_spec_compliance.py::TestTaskStatusLifecycle::test_input_required_to_terminal_transition [gw3] [ 23%] PASSED tests/client/test_list_methods_cursor.py::test_list_methods_params_parameter[list_resources-resources/list] tests/experimental/tasks/server/test_store.py::test_get_result_no_result_returns_none tests/client/test_list_methods_cursor.py::test_list_methods_params_parameter[list_prompts-prompts/list] [gw5] [ 24%] PASSED tests/experimental/tasks/server/test_task_scope.py::test_session_scope_of_returns_none_for_unscoped_ids[] tests/experimental/tasks/server/test_task_scope.py::test_session_scope_of_returns_none_for_unscoped_ids[not-a-scope:550e8400-e29b-41d4-a716-446655440000] [gw5] [ 24%] PASSED tests/experimental/tasks/server/test_task_scope.py::test_session_scope_of_returns_none_for_unscoped_ids[not-a-scope:550e8400-e29b-41d4-a716-446655440000] [gw8] [ 24%] PASSED tests/experimental/tasks/server/test_store.py::test_get_result_no_result_returns_none tests/experimental/tasks/server/test_task_scope.py::test_session_scope_of_returns_none_for_unscoped_ids[0123456789abcdef0123456789abcdef:not-a-uuid] [gw5] [ 24%] PASSED tests/experimental/tasks/server/test_task_scope.py::test_session_scope_of_returns_none_for_unscoped_ids[0123456789abcdef0123456789abcdef:not-a-uuid] tests/experimental/tasks/server/test_task_scope.py::test_session_scope_of_returns_none_for_unscoped_ids[0123456789ABCDEF0123456789ABCDEF:550e8400-e29b-41d4-a716-446655440000] [gw5] [ 24%] PASSED tests/experimental/tasks/server/test_task_scope.py::test_session_scope_of_returns_none_for_unscoped_ids[0123456789ABCDEF0123456789ABCDEF:550e8400-e29b-41d4-a716-446655440000] tests/experimental/tasks/server/test_task_scope.py::test_a_scoped_task_is_usable_only_from_the_scope_that_created_it [gw5] [ 24%] PASSED tests/experimental/tasks/server/test_task_scope.py::test_a_scoped_task_is_usable_only_from_the_scope_that_created_it tests/experimental/tasks/server/test_task_scope.py::test_an_unscoped_task_is_usable_from_any_scope tests/experimental/tasks/test_deprecations.py::test_plain_session_usage_does_not_warn [gw9] [ 24%] SKIPPED tests/experimental/tasks/test_spec_compliance.py::TestTaskStatusLifecycle::test_input_required_to_terminal_transition tests/experimental/tasks/test_spec_compliance.py::TestTaskStatusLifecycle::test_terminal_state_no_further_transitions [gw9] [ 24%] SKIPPED tests/experimental/tasks/test_spec_compliance.py::TestTaskStatusLifecycle::test_terminal_state_no_further_transitions tests/experimental/tasks/test_spec_compliance.py::TestTaskStatusLifecycle::test_completed_is_terminal [gw9] [ 24%] SKIPPED tests/experimental/tasks/test_spec_compliance.py::TestTaskStatusLifecycle::test_completed_is_terminal tests/experimental/tasks/test_spec_compliance.py::TestTaskStatusLifecycle::test_failed_is_terminal [gw9] [ 24%] SKIPPED tests/experimental/tasks/test_spec_compliance.py::TestTaskStatusLifecycle::test_failed_is_terminal tests/experimental/tasks/test_spec_compliance.py::TestTaskStatusLifecycle::test_cancelled_is_terminal [gw9] [ 24%] SKIPPED tests/experimental/tasks/test_spec_compliance.py::TestTaskStatusLifecycle::test_cancelled_is_terminal tests/experimental/tasks/test_spec_compliance.py::TestInputRequiredStatus::test_input_required_status_retrievable_via_tasks_get [gw9] [ 25%] SKIPPED tests/experimental/tasks/test_spec_compliance.py::TestInputRequiredStatus::test_input_required_status_retrievable_via_tasks_get tests/experimental/tasks/test_spec_compliance.py::TestTaskManagement::test_receiver_may_delete_tasks_after_ttl [gw8] [ 25%] PASSED tests/experimental/tasks/test_deprecations.py::test_plain_session_usage_does_not_warn tests/experimental/tasks/test_elicitation_scenarios.py::test_scenario1_normal_tool_normal_elicitation [gw9] [ 25%] SKIPPED tests/experimental/tasks/test_spec_compliance.py::TestTaskManagement::test_receiver_may_delete_tasks_after_ttl tests/experimental/tasks/test_spec_compliance.py::TestTaskManagement::test_related_task_metadata_in_task_messages [gw3] [ 25%] PASSED tests/client/test_list_methods_cursor.py::test_list_methods_params_parameter[list_prompts-prompts/list] [gw9] [ 25%] SKIPPED tests/experimental/tasks/test_spec_compliance.py::TestTaskManagement::test_related_task_metadata_in_task_messages tests/experimental/tasks/test_spec_compliance.py::TestTaskManagement::test_tasks_get_does_not_require_related_task_metadata tests/client/test_list_methods_cursor.py::test_list_methods_params_parameter[list_resource_templates-resources/templates/list] [gw1] [ 25%] PASSED tests/experimental/tasks/server/test_task_visibility.py::test_a_client_cannot_get_the_result_of_another_clients_task tests/experimental/tasks/server/test_task_visibility.py::test_a_client_cannot_cancel_another_clients_task [gw8] [ 25%] PASSED tests/experimental/tasks/test_elicitation_scenarios.py::test_scenario1_normal_tool_normal_elicitation tests/experimental/tasks/test_elicitation_scenarios.py::test_scenario2_normal_tool_task_augmented_elicitation [gw1] [ 25%] PASSED tests/experimental/tasks/server/test_task_visibility.py::test_a_client_cannot_cancel_another_clients_task [gw2] [ 25%] PASSED tests/experimental/tasks/test_request_context.py::test_client_supports_tasks_true tests/experimental/tasks/test_request_context.py::test_client_supports_tasks_false_no_tasks [gw2] [ 25%] PASSED tests/experimental/tasks/test_request_context.py::test_client_supports_tasks_false_no_tasks tests/experimental/tasks/test_request_context.py::test_client_supports_tasks_false_no_capabilities [gw7] [ 25%] PASSED tests/experimental/tasks/test_capabilities.py::TestHasTaskAugmentedElicitation::test_create_none [gw2] [ 25%] PASSED tests/experimental/tasks/test_request_context.py::test_client_supports_tasks_false_no_capabilities tests/experimental/tasks/test_request_context.py::test_validate_task_mode_required_with_task_is_valid [gw5] [ 26%] PASSED tests/experimental/tasks/server/test_task_scope.py::test_an_unscoped_task_is_usable_from_any_scope tests/experimental/tasks/test_capabilities.py::TestHasTaskAugmentedElicitation::test_create_present [gw7] [ 26%] PASSED tests/experimental/tasks/test_capabilities.py::TestHasTaskAugmentedElicitation::test_create_present [gw2] [ 26%] PASSED tests/experimental/tasks/test_request_context.py::test_validate_task_mode_required_with_task_is_valid tests/experimental/tasks/test_capabilities.py::TestHasTaskAugmentedSampling::test_tasks_none tests/experimental/tasks/server/test_task_scope.py::test_a_scoped_task_is_listable_only_in_the_scope_that_created_it tests/experimental/tasks/test_request_context.py::test_validate_task_mode_required_without_task_returns_error [gw9] [ 26%] SKIPPED tests/experimental/tasks/test_spec_compliance.py::TestTaskManagement::test_tasks_get_does_not_require_related_task_metadata tests/experimental/tasks/test_spec_compliance.py::TestTaskManagement::test_tasks_list_does_not_require_related_task_metadata [gw5] [ 26%] PASSED tests/experimental/tasks/server/test_task_scope.py::test_a_scoped_task_is_listable_only_in_the_scope_that_created_it [gw9] [ 26%] SKIPPED tests/experimental/tasks/test_spec_compliance.py::TestTaskManagement::test_tasks_list_does_not_require_related_task_metadata tests/experimental/tasks/test_spec_compliance.py::TestTaskManagement::test_tasks_cancel_does_not_require_related_task_metadata tests/experimental/tasks/server/test_task_scope.py::test_an_unscoped_task_is_never_listable [gw7] [ 26%] PASSED tests/experimental/tasks/test_capabilities.py::TestHasTaskAugmentedSampling::test_tasks_none [gw5] [ 26%] PASSED tests/experimental/tasks/server/test_task_scope.py::test_an_unscoped_task_is_never_listable tests/experimental/tasks/server/test_task_scope.py::test_configure_session_assigns_a_scope tests/experimental/tasks/test_capabilities.py::TestHasTaskAugmentedSampling::test_requests_none [gw2] [ 26%] PASSED tests/experimental/tasks/test_request_context.py::test_validate_task_mode_required_without_task_returns_error tests/experimental/tasks/test_request_context.py::test_validate_task_mode_required_without_task_raises_by_default [gw9] [ 26%] SKIPPED tests/experimental/tasks/test_spec_compliance.py::TestTaskManagement::test_tasks_cancel_does_not_require_related_task_metadata [gw7] [ 26%] PASSED tests/experimental/tasks/test_capabilities.py::TestHasTaskAugmentedSampling::test_requests_none [gw2] [ 26%] PASSED tests/experimental/tasks/test_request_context.py::test_validate_task_mode_required_without_task_raises_by_default tests/experimental/tasks/test_capabilities.py::TestHasTaskAugmentedSampling::test_sampling_none tests/experimental/tasks/test_spec_compliance.py::TestResultHandling::test_create_task_result_returned_immediately tests/experimental/tasks/test_request_context.py::test_validate_task_mode_forbidden_without_task_is_valid [gw2] [ 27%] PASSED tests/experimental/tasks/test_request_context.py::test_validate_task_mode_forbidden_without_task_is_valid tests/experimental/tasks/test_request_context.py::test_validate_task_mode_forbidden_with_task_returns_error [gw7] [ 27%] PASSED tests/experimental/tasks/test_capabilities.py::TestHasTaskAugmentedSampling::test_sampling_none tests/experimental/tasks/test_capabilities.py::TestHasTaskAugmentedSampling::test_create_message_none [gw2] [ 27%] PASSED tests/experimental/tasks/test_request_context.py::test_validate_task_mode_forbidden_with_task_returns_error tests/experimental/tasks/test_request_context.py::test_validate_task_mode_forbidden_with_task_raises_by_default [gw2] [ 27%] PASSED tests/experimental/tasks/test_request_context.py::test_validate_task_mode_forbidden_with_task_raises_by_default tests/experimental/tasks/test_request_context.py::test_validate_task_mode_none_treated_as_forbidden [gw2] [ 27%] PASSED tests/experimental/tasks/test_request_context.py::test_validate_task_mode_none_treated_as_forbidden [gw7] [ 27%] PASSED tests/experimental/tasks/test_capabilities.py::TestHasTaskAugmentedSampling::test_create_message_none tests/experimental/tasks/test_capabilities.py::TestHasTaskAugmentedSampling::test_create_message_present [gw7] [ 27%] PASSED tests/experimental/tasks/test_capabilities.py::TestHasTaskAugmentedSampling::test_create_message_present tests/experimental/tasks/test_capabilities.py::TestRequireTaskAugmentedElicitation::test_raises_when_none tests/experimental/tasks/test_spec_compliance.py::TestTaskExecutionErrors::test_tasks_result_returns_underlying_error [gw2] [ 27%] SKIPPED tests/experimental/tasks/test_spec_compliance.py::TestTaskExecutionErrors::test_tasks_result_returns_underlying_error [gw7] [ 27%] PASSED tests/experimental/tasks/test_capabilities.py::TestRequireTaskAugmentedElicitation::test_raises_when_none tests/experimental/tasks/test_capabilities.py::TestRequireTaskAugmentedElicitation::test_raises_when_missing [gw7] [ 27%] PASSED tests/experimental/tasks/test_capabilities.py::TestRequireTaskAugmentedElicitation::test_raises_when_missing tests/experimental/tasks/test_spec_compliance.py::TestTaskExecutionErrors::test_tool_call_is_error_true_moves_to_failed [gw2] [ 27%] SKIPPED tests/experimental/tasks/test_spec_compliance.py::TestTaskExecutionErrors::test_tool_call_is_error_true_moves_to_failed tests/experimental/tasks/test_spec_compliance.py::TestTaskObject::test_task_has_task_id_string [gw2] [ 28%] SKIPPED tests/experimental/tasks/test_spec_compliance.py::TestTaskObject::test_task_has_task_id_string tests/experimental/tasks/test_spec_compliance.py::TestTaskObject::test_task_has_status [gw2] [ 28%] SKIPPED tests/experimental/tasks/test_spec_compliance.py::TestTaskObject::test_task_has_status tests/experimental/tasks/test_spec_compliance.py::TestTaskObject::test_task_status_message_is_optional [gw2] [ 28%] SKIPPED tests/experimental/tasks/test_spec_compliance.py::TestTaskObject::test_task_status_message_is_optional tests/experimental/tasks/test_spec_compliance.py::TestTaskObject::test_task_has_created_at [gw2] [ 28%] SKIPPED tests/experimental/tasks/test_spec_compliance.py::TestTaskObject::test_task_has_created_at [gw9] [ 28%] SKIPPED tests/experimental/tasks/test_spec_compliance.py::TestResultHandling::test_create_task_result_returned_immediately tests/experimental/tasks/test_capabilities.py::TestRequireTaskAugmentedElicitation::test_passes_when_present tests/experimental/tasks/test_spec_compliance.py::TestTaskObject::test_task_ttl_is_optional [gw2] [ 28%] SKIPPED tests/experimental/tasks/test_spec_compliance.py::TestTaskObject::test_task_ttl_is_optional tests/experimental/tasks/test_spec_compliance.py::TestTaskObject::test_task_poll_interval_is_optional tests/experimental/tasks/test_spec_compliance.py::TestResultHandling::test_tasks_result_matches_underlying_result_structure [gw2] [ 28%] SKIPPED tests/experimental/tasks/test_spec_compliance.py::TestTaskObject::test_task_poll_interval_is_optional tests/experimental/tasks/test_spec_compliance.py::TestRelatedTaskMetadata::test_related_task_metadata_structure [gw7] [ 28%] PASSED tests/experimental/tasks/test_capabilities.py::TestRequireTaskAugmentedElicitation::test_passes_when_present tests/experimental/tasks/test_capabilities.py::TestRequireTaskAugmentedSampling::test_raises_when_none [gw2] [ 28%] SKIPPED tests/experimental/tasks/test_spec_compliance.py::TestRelatedTaskMetadata::test_related_task_metadata_structure tests/experimental/tasks/test_spec_compliance.py::TestRelatedTaskMetadata::test_related_task_metadata_contains_task_id [gw7] [ 28%] PASSED tests/experimental/tasks/test_capabilities.py::TestRequireTaskAugmentedSampling::test_raises_when_none tests/experimental/tasks/test_capabilities.py::TestRequireTaskAugmentedSampling::test_raises_when_missing [gw2] [ 28%] SKIPPED tests/experimental/tasks/test_spec_compliance.py::TestRelatedTaskMetadata::test_related_task_metadata_contains_task_id tests/experimental/tasks/test_spec_compliance.py::TestAccessAndIsolation::test_task_bound_to_authorization_context [gw2] [ 28%] SKIPPED tests/experimental/tasks/test_spec_compliance.py::TestAccessAndIsolation::test_task_bound_to_authorization_context tests/experimental/tasks/test_spec_compliance.py::TestAccessAndIsolation::test_reject_task_operations_outside_authorization_context [gw2] [ 29%] SKIPPED tests/experimental/tasks/test_spec_compliance.py::TestAccessAndIsolation::test_reject_task_operations_outside_authorization_context [gw9] [ 29%] SKIPPED tests/experimental/tasks/test_spec_compliance.py::TestResultHandling::test_tasks_result_matches_underlying_result_structure [gw7] [ 29%] PASSED tests/experimental/tasks/test_capabilities.py::TestRequireTaskAugmentedSampling::test_raises_when_missing tests/experimental/tasks/test_capabilities.py::TestRequireTaskAugmentedSampling::test_passes_when_present [gw7] [ 29%] PASSED tests/experimental/tasks/test_capabilities.py::TestRequireTaskAugmentedSampling::test_passes_when_present tests/experimental/tasks/test_spec_compliance.py::TestResultHandling::test_tasks_result_for_tool_call_returns_call_tool_result tests/experimental/tasks/test_deprecations.py::test_client_session_experimental_property_is_deprecated [gw5] [ 29%] PASSED tests/experimental/tasks/server/test_task_scope.py::test_configure_session_assigns_a_scope tests/experimental/tasks/server/test_task_scope.py::test_configure_session_assigns_distinct_scopes_per_session tests/experimental/tasks/server/test_task_visibility.py::test_a_client_does_not_see_another_clients_task_when_listing_tasks [gw9] [ 29%] SKIPPED tests/experimental/tasks/test_spec_compliance.py::TestResultHandling::test_tasks_result_for_tool_call_returns_call_tool_result tests/experimental/tasks/test_spec_compliance.py::TestProgressTracking::test_progress_token_valid_throughout_task_lifetime [gw9] [ 29%] SKIPPED tests/experimental/tasks/test_spec_compliance.py::TestProgressTracking::test_progress_token_valid_throughout_task_lifetime tests/experimental/tasks/test_spec_compliance.py::TestProgressTracking::test_progress_notifications_sent_during_task_execution [gw7] [ 29%] PASSED tests/experimental/tasks/test_deprecations.py::test_client_session_experimental_property_is_deprecated [gw5] [ 29%] PASSED tests/experimental/tasks/server/test_task_scope.py::test_configure_session_assigns_distinct_scopes_per_session tests/experimental/tasks/test_deprecations.py::test_client_session_experimental_task_handlers_kwarg_is_deprecated [gw9] [ 29%] SKIPPED tests/experimental/tasks/test_spec_compliance.py::TestProgressTracking::test_progress_notifications_sent_during_task_execution tests/experimental/tasks/test_spec_compliance.py::TestProtocolErrors::test_invalid_request_for_required_task_augmentation tests/experimental/tasks/server/test_task_scope.py::test_configure_session_is_idempotent [gw9] [ 29%] SKIPPED tests/experimental/tasks/test_spec_compliance.py::TestProtocolErrors::test_invalid_request_for_required_task_augmentation tests/experimental/tasks/test_spec_compliance.py::TestProtocolErrors::test_invalid_params_for_invalid_task_id [gw9] [ 30%] SKIPPED tests/experimental/tasks/test_spec_compliance.py::TestProtocolErrors::test_invalid_params_for_invalid_task_id tests/experimental/tasks/test_spec_compliance.py::TestProtocolErrors::test_invalid_params_for_nonexistent_task_id [gw5] [ 30%] PASSED tests/experimental/tasks/server/test_task_scope.py::test_configure_session_is_idempotent [gw7] [ 30%] PASSED tests/experimental/tasks/test_deprecations.py::test_client_session_experimental_task_handlers_kwarg_is_deprecated tests/experimental/tasks/test_deprecations.py::test_server_session_experimental_property_is_deprecated [gw9] [ 30%] SKIPPED tests/experimental/tasks/test_spec_compliance.py::TestProtocolErrors::test_invalid_params_for_nonexistent_task_id tests/experimental/tasks/server/test_task_scope.py::test_configure_session_assigns_no_scope_to_stateless_sessions tests/experimental/tasks/test_spec_compliance.py::TestProtocolErrors::test_invalid_params_for_invalid_cursor [gw9] [ 30%] SKIPPED tests/experimental/tasks/test_spec_compliance.py::TestProtocolErrors::test_invalid_params_for_invalid_cursor tests/experimental/tasks/test_spec_compliance.py::TestProtocolErrors::test_invalid_params_for_cancel_terminal_task [gw9] [ 30%] SKIPPED tests/experimental/tasks/test_spec_compliance.py::TestProtocolErrors::test_invalid_params_for_cancel_terminal_task tests/experimental/tasks/test_spec_compliance.py::TestProtocolErrors::test_internal_error_for_server_failure [gw9] [ 30%] SKIPPED tests/experimental/tasks/test_spec_compliance.py::TestProtocolErrors::test_internal_error_for_server_failure tests/experimental/tasks/test_spec_compliance.py::TestTaskExecutionErrors::test_underlying_failure_moves_task_to_failed [gw9] [ 30%] SKIPPED tests/experimental/tasks/test_spec_compliance.py::TestTaskExecutionErrors::test_underlying_failure_moves_task_to_failed tests/experimental/tasks/test_spec_compliance.py::TestTaskExecutionErrors::test_failed_task_has_status_message [gw9] [ 30%] SKIPPED tests/experimental/tasks/test_spec_compliance.py::TestTaskExecutionErrors::test_failed_task_has_status_message [gw1] [ 30%] PASSED tests/experimental/tasks/server/test_task_visibility.py::test_a_client_does_not_see_another_clients_task_when_listing_tasks tests/issues/test_malformed_input.py::test_malformed_initialize_request_does_not_crash_server [gw7] [ 30%] PASSED tests/experimental/tasks/test_deprecations.py::test_server_session_experimental_property_is_deprecated tests/experimental/tasks/test_deprecations.py::test_lowlevel_server_experimental_property_is_deprecated tests/experimental/tasks/server/test_task_visibility.py::test_each_client_lists_only_its_own_tasks [gw7] [ 30%] PASSED tests/experimental/tasks/test_deprecations.py::test_lowlevel_server_experimental_property_is_deprecated tests/issues/test_1338_icons_and_metadata.py::test_icons_and_website_url [gw5] [ 31%] PASSED tests/experimental/tasks/server/test_task_scope.py::test_configure_session_assigns_no_scope_to_stateless_sessions tests/experimental/tasks/server/test_task_visibility.py::test_a_client_can_poll_its_own_task_to_completion_and_read_the_result [gw1] [ 31%] PASSED tests/experimental/tasks/server/test_task_visibility.py::test_each_client_lists_only_its_own_tasks tests/experimental/tasks/server/test_task_visibility.py::test_listing_tasks_reveals_nothing_about_other_clients_tasks_however_many_there_are tests/experimental/tasks/test_spec_compliance.py::TestAccessAndIsolation::test_non_authorized_environments_use_secure_ids [gw2] [ 31%] SKIPPED tests/experimental/tasks/test_spec_compliance.py::TestAccessAndIsolation::test_non_authorized_environments_use_secure_ids [gw5] [ 31%] PASSED tests/experimental/tasks/server/test_task_visibility.py::test_a_client_can_poll_its_own_task_to_completion_and_read_the_result tests/experimental/tasks/test_spec_compliance.py::TestAccessAndIsolation::test_non_authorized_environments_use_shorter_ttls [gw2] [ 31%] SKIPPED tests/experimental/tasks/test_spec_compliance.py::TestAccessAndIsolation::test_non_authorized_environments_use_shorter_ttls tests/experimental/tasks/test_spec_compliance.py::TestResourceLimits::test_concurrent_task_limit_enforced [gw2] [ 31%] SKIPPED tests/experimental/tasks/test_spec_compliance.py::TestResourceLimits::test_concurrent_task_limit_enforced tests/experimental/tasks/test_spec_compliance.py::TestResourceLimits::test_maximum_ttl_constraint_enforced [gw2] [ 31%] SKIPPED tests/experimental/tasks/test_spec_compliance.py::TestResourceLimits::test_maximum_ttl_constraint_enforced tests/experimental/tasks/test_spec_compliance.py::TestRetrievingResults::test_tasks_result_includes_related_task_metadata tests/experimental/tasks/test_spec_compliance.py::TestResourceLimits::test_expired_tasks_cleaned_up [gw2] [ 31%] SKIPPED tests/experimental/tasks/test_spec_compliance.py::TestResourceLimits::test_expired_tasks_cleaned_up [gw5] [ 31%] SKIPPED tests/experimental/tasks/test_spec_compliance.py::TestRetrievingResults::test_tasks_result_includes_related_task_metadata tests/experimental/tasks/test_spec_compliance.py::TestRetrievingResults::test_tasks_result_returns_error_for_failed_task tests/issues/test_129_resource_templates.py::test_resource_templates [gw5] [ 31%] SKIPPED tests/experimental/tasks/test_spec_compliance.py::TestRetrievingResults::test_tasks_result_returns_error_for_failed_task tests/experimental/tasks/test_spec_compliance.py::TestRetrievingResults::test_tasks_result_invalid_task_id_returns_error [gw5] [ 31%] SKIPPED tests/experimental/tasks/test_spec_compliance.py::TestRetrievingResults::test_tasks_result_invalid_task_id_returns_error tests/experimental/tasks/test_spec_compliance.py::TestListingTasks::test_tasks_list_returns_array_of_tasks [gw5] [ 31%] SKIPPED tests/experimental/tasks/test_spec_compliance.py::TestListingTasks::test_tasks_list_returns_array_of_tasks tests/experimental/tasks/test_spec_compliance.py::TestListingTasks::test_tasks_list_pagination_with_cursor [gw5] [ 32%] SKIPPED tests/experimental/tasks/test_spec_compliance.py::TestListingTasks::test_tasks_list_pagination_with_cursor tests/experimental/tasks/test_spec_compliance.py::TestListingTasks::test_tasks_list_returns_next_cursor_when_more_results [gw5] [ 32%] SKIPPED tests/experimental/tasks/test_spec_compliance.py::TestListingTasks::test_tasks_list_returns_next_cursor_when_more_results tests/experimental/tasks/test_spec_compliance.py::TestListingTasks::test_tasks_list_cursors_are_opaque [gw5] [ 32%] SKIPPED tests/experimental/tasks/test_spec_compliance.py::TestListingTasks::test_tasks_list_cursors_are_opaque tests/experimental/tasks/test_spec_compliance.py::TestListingTasks::test_tasks_list_invalid_cursor_returns_error [gw5] [ 32%] SKIPPED tests/experimental/tasks/test_spec_compliance.py::TestListingTasks::test_tasks_list_invalid_cursor_returns_error tests/experimental/tasks/test_spec_compliance.py::TestCancellingTasks::test_tasks_cancel_returns_cancelled_task [gw5] [ 32%] SKIPPED tests/experimental/tasks/test_spec_compliance.py::TestCancellingTasks::test_tasks_cancel_returns_cancelled_task tests/experimental/tasks/test_spec_compliance.py::TestCancellingTasks::test_tasks_cancel_terminal_task_returns_error [gw5] [ 32%] SKIPPED tests/experimental/tasks/test_spec_compliance.py::TestCancellingTasks::test_tasks_cancel_terminal_task_returns_error tests/experimental/tasks/test_spec_compliance.py::TestCancellingTasks::test_tasks_cancel_completed_task_returns_error [gw5] [ 32%] SKIPPED tests/experimental/tasks/test_spec_compliance.py::TestCancellingTasks::test_tasks_cancel_completed_task_returns_error tests/experimental/tasks/test_spec_compliance.py::TestCancellingTasks::test_tasks_cancel_failed_task_returns_error [gw5] [ 32%] SKIPPED tests/experimental/tasks/test_spec_compliance.py::TestCancellingTasks::test_tasks_cancel_failed_task_returns_error [gw7] [ 32%] PASSED tests/issues/test_1338_icons_and_metadata.py::test_icons_and_website_url tests/experimental/tasks/test_spec_compliance.py::TestCancellingTasks::test_tasks_cancel_already_cancelled_task_returns_error tests/issues/test_1338_icons_and_metadata.py::test_multiple_icons [gw5] [ 32%] SKIPPED tests/experimental/tasks/test_spec_compliance.py::TestCancellingTasks::test_tasks_cancel_already_cancelled_task_returns_error tests/experimental/tasks/test_spec_compliance.py::TestCancellingTasks::test_tasks_cancel_invalid_task_id_returns_error [gw5] [ 32%] SKIPPED tests/experimental/tasks/test_spec_compliance.py::TestCancellingTasks::test_tasks_cancel_invalid_task_id_returns_error [gw2] [ 33%] PASSED tests/issues/test_129_resource_templates.py::test_resource_templates tests/experimental/tasks/test_spec_compliance.py::TestStatusNotifications::test_receiver_may_send_status_notification [gw8] [ 33%] PASSED tests/experimental/tasks/test_elicitation_scenarios.py::test_scenario2_normal_tool_task_augmented_elicitation [gw5] [ 33%] SKIPPED tests/experimental/tasks/test_spec_compliance.py::TestStatusNotifications::test_receiver_may_send_status_notification tests/experimental/tasks/test_elicitation_scenarios.py::test_scenario3_task_augmented_tool_normal_elicitation [gw1] [ 33%] PASSED tests/experimental/tasks/server/test_task_visibility.py::test_listing_tasks_reveals_nothing_about_other_clients_tasks_however_many_there_are tests/experimental/tasks/test_spec_compliance.py::TestStatusNotifications::test_status_notification_contains_task_id tests/server/auth/middleware/test_bearer_auth.py::TestRequireAuthMiddleware::test_has_required_scopes [gw7] [ 33%] PASSED tests/issues/test_1338_icons_and_metadata.py::test_multiple_icons tests/issues/test_1338_icons_and_metadata.py::test_no_icons_or_website tests/experimental/tasks/server/test_task_visibility.py::test_a_client_with_more_than_one_store_page_of_tasks_lists_all_of_them [gw7] [ 33%] PASSED tests/issues/test_1338_icons_and_metadata.py::test_no_icons_or_website tests/issues/test_1363_race_condition_streamable_http.py::test_race_condition_invalid_accept_headers [gw8] [ 33%] PASSED tests/experimental/tasks/test_elicitation_scenarios.py::test_scenario3_task_augmented_tool_normal_elicitation tests/experimental/tasks/test_elicitation_scenarios.py::test_scenario4_task_augmented_tool_task_augmented_elicitation [gw5] [ 33%] SKIPPED tests/experimental/tasks/test_spec_compliance.py::TestStatusNotifications::test_status_notification_contains_task_id [gw3] [ 33%] PASSED tests/client/test_list_methods_cursor.py::test_list_methods_params_parameter[list_resource_templates-resources/templates/list] tests/client/test_list_methods_cursor.py::test_list_methods_raises_error_when_both_cursor_and_params_provided[list_tools] tests/experimental/tasks/test_spec_compliance.py::TestStatusNotifications::test_status_notification_contains_status [gw5] [ 33%] SKIPPED tests/experimental/tasks/test_spec_compliance.py::TestStatusNotifications::test_status_notification_contains_status tests/experimental/tasks/test_spec_compliance.py::TestTaskManagement::test_task_ids_are_unique_strings [gw2] [ 33%] PASSED tests/server/auth/middleware/test_bearer_auth.py::TestRequireAuthMiddleware::test_has_required_scopes tests/server/auth/middleware/test_bearer_auth.py::TestRequireAuthMiddleware::test_multiple_required_scopes [gw5] [ 33%] SKIPPED tests/experimental/tasks/test_spec_compliance.py::TestTaskManagement::test_task_ids_are_unique_strings tests/experimental/tasks/test_spec_compliance.py::TestTaskManagement::test_multiple_tasks_have_unique_ids [gw5] [ 34%] SKIPPED tests/experimental/tasks/test_spec_compliance.py::TestTaskManagement::test_multiple_tasks_have_unique_ids [gw2] [ 34%] PASSED tests/server/auth/middleware/test_bearer_auth.py::TestRequireAuthMiddleware::test_multiple_required_scopes tests/server/auth/test_protected_resource.py::TestMetadataUrlConstruction::test_various_resource_configurations[http://localhost:8001/mcp-http://localhost:8001/.well-known/oauth-protected-resource/mcp] tests/server/auth/middleware/test_bearer_auth.py::TestRequireAuthMiddleware::test_no_required_scopes [gw2] [ 34%] PASSED tests/server/auth/middleware/test_bearer_auth.py::TestRequireAuthMiddleware::test_no_required_scopes [gw5] [ 34%] PASSED tests/server/auth/test_protected_resource.py::TestMetadataUrlConstruction::test_various_resource_configurations[http://localhost:8001/mcp-http://localhost:8001/.well-known/oauth-protected-resource/mcp] [gw1] [ 34%] PASSED tests/experimental/tasks/server/test_task_visibility.py::test_a_client_with_more_than_one_store_page_of_tasks_lists_all_of_them tests/server/auth/test_error_handling.py::TestRegistrationErrorHandling::test_registration_error_handling tests/server/auth/test_protected_resource.py::TestRouteConsistency::test_route_path_matches_metadata_url [gw8] [ 34%] PASSED tests/experimental/tasks/test_elicitation_scenarios.py::test_scenario4_task_augmented_tool_task_augmented_elicitation [gw5] [ 34%] PASSED tests/server/auth/test_protected_resource.py::TestRouteConsistency::test_route_path_matches_metadata_url tests/server/auth/test_protected_resource.py::TestRouteConsistency::test_consistent_paths_for_various_resources[https://example.com-/.well-known/oauth-protected-resource] [gw5] [ 34%] PASSED tests/server/auth/test_protected_resource.py::TestRouteConsistency::test_consistent_paths_for_various_resources[https://example.com-/.well-known/oauth-protected-resource] tests/server/auth/test_protected_resource.py::TestRouteConsistency::test_consistent_paths_for_various_resources[https://example.com/-/.well-known/oauth-protected-resource] tests/experimental/tasks/test_elicitation_scenarios.py::test_scenario2_sampling_normal_tool_task_augmented_sampling tests/experimental/tasks/server/test_task_visibility.py::test_a_task_whose_id_was_chosen_by_the_server_is_accessible_to_every_client [gw5] [ 34%] PASSED tests/server/auth/test_protected_resource.py::TestRouteConsistency::test_consistent_paths_for_various_resources[https://example.com/-/.well-known/oauth-protected-resource] tests/server/auth/test_protected_resource.py::TestRouteConsistency::test_consistent_paths_for_various_resources[https://example.com/mcp-/.well-known/oauth-protected-resource/mcp] [gw3] [ 34%] PASSED tests/client/test_list_methods_cursor.py::test_list_methods_raises_error_when_both_cursor_and_params_provided[list_tools] [gw5] [ 34%] PASSED tests/server/auth/test_protected_resource.py::TestRouteConsistency::test_consistent_paths_for_various_resources[https://example.com/mcp-/.well-known/oauth-protected-resource/mcp] tests/server/auth/test_provider.py::TestConstructRedirectUri::test_construct_redirect_uri_no_existing_params tests/client/test_list_methods_cursor.py::test_list_methods_raises_error_when_both_cursor_and_params_provided[list_resources] [gw5] [ 35%] PASSED tests/server/auth/test_provider.py::TestConstructRedirectUri::test_construct_redirect_uri_no_existing_params tests/server/auth/test_provider.py::TestConstructRedirectUri::test_construct_redirect_uri_with_existing_params [gw5] [ 35%] PASSED tests/server/auth/test_provider.py::TestConstructRedirectUri::test_construct_redirect_uri_with_existing_params tests/server/auth/test_provider.py::TestConstructRedirectUri::test_construct_redirect_uri_multiple_existing_params [gw5] [ 35%] PASSED tests/server/auth/test_provider.py::TestConstructRedirectUri::test_construct_redirect_uri_multiple_existing_params tests/server/auth/test_provider.py::TestConstructRedirectUri::test_construct_redirect_uri_with_none_values [gw5] [ 35%] PASSED tests/server/auth/test_provider.py::TestConstructRedirectUri::test_construct_redirect_uri_with_none_values tests/server/auth/test_provider.py::TestConstructRedirectUri::test_construct_redirect_uri_empty_params [gw5] [ 35%] PASSED tests/server/auth/test_provider.py::TestConstructRedirectUri::test_construct_redirect_uri_empty_params tests/server/auth/test_provider.py::TestConstructRedirectUri::test_construct_redirect_uri_duplicate_param_names [gw5] [ 35%] PASSED tests/server/auth/test_provider.py::TestConstructRedirectUri::test_construct_redirect_uri_duplicate_param_names tests/server/auth/test_provider.py::TestConstructRedirectUri::test_construct_redirect_uri_multivalued_existing_params [gw5] [ 35%] PASSED tests/server/auth/test_provider.py::TestConstructRedirectUri::test_construct_redirect_uri_multivalued_existing_params tests/server/auth/test_provider.py::TestConstructRedirectUri::test_construct_redirect_uri_encoded_values [gw5] [ 35%] PASSED tests/server/auth/test_provider.py::TestConstructRedirectUri::test_construct_redirect_uri_encoded_values tests/server/fastmcp/auth/test_auth_integration.py::TestAuthEndpoints::test_metadata_endpoint [gw3] [ 35%] PASSED tests/client/test_list_methods_cursor.py::test_list_methods_raises_error_when_both_cursor_and_params_provided[list_resources] [gw1] [ 35%] PASSED tests/experimental/tasks/server/test_task_visibility.py::test_a_task_whose_id_was_chosen_by_the_server_is_accessible_to_every_client [gw8] [ 35%] PASSED tests/experimental/tasks/test_elicitation_scenarios.py::test_scenario2_sampling_normal_tool_task_augmented_sampling tests/experimental/tasks/test_elicitation_scenarios.py::test_scenario4_sampling_task_augmented_tool_task_augmented_sampling tests/client/test_list_methods_cursor.py::test_list_methods_raises_error_when_both_cursor_and_params_provided[list_prompts] tests/experimental/tasks/server/test_task_visibility.py::test_a_stateless_server_serves_a_task_to_any_session_that_knows_its_id [gw1] [ 35%] PASSED tests/experimental/tasks/server/test_task_visibility.py::test_a_stateless_server_serves_a_task_to_any_session_that_knows_its_id [gw3] [ 36%] PASSED tests/client/test_list_methods_cursor.py::test_list_methods_raises_error_when_both_cursor_and_params_provided[list_prompts] tests/experimental/tasks/server/test_task_visibility.py::test_a_stateless_server_lists_no_tasks [gw5] [ 36%] PASSED tests/server/fastmcp/auth/test_auth_integration.py::TestAuthEndpoints::test_metadata_endpoint [gw2] [ 36%] PASSED tests/server/auth/test_error_handling.py::TestRegistrationErrorHandling::test_registration_error_handling tests/server/auth/test_error_handling.py::TestAuthorizeErrorHandling::test_authorize_error_handling [gw2] [ 36%] PASSED tests/server/auth/test_error_handling.py::TestAuthorizeErrorHandling::test_authorize_error_handling tests/server/auth/test_error_handling.py::TestTokenErrorHandling::test_token_error_handling_auth_code tests/server/fastmcp/auth/test_auth_integration.py::TestAuthEndpoints::test_token_validation_error [gw5] [ 36%] PASSED tests/server/fastmcp/auth/test_auth_integration.py::TestAuthEndpoints::test_token_validation_error tests/server/fastmcp/auth/test_auth_integration.py::TestAuthEndpoints::test_token_invalid_auth_code [gw1] [ 36%] PASSED tests/experimental/tasks/server/test_task_visibility.py::test_a_stateless_server_lists_no_tasks tests/experimental/tasks/server/test_task_visibility.py::test_clients_are_isolated_when_the_server_uses_a_custom_task_store [gw2] [ 36%] PASSED tests/server/auth/test_error_handling.py::TestTokenErrorHandling::test_token_error_handling_auth_code tests/experimental/tasks/test_request_context.py::test_validate_task_mode_optional_with_task_is_valid tests/server/auth/test_error_handling.py::TestTokenErrorHandling::test_token_error_handling_refresh_token [gw3] [ 36%] PASSED tests/experimental/tasks/test_request_context.py::test_validate_task_mode_optional_with_task_is_valid tests/experimental/tasks/test_request_context.py::test_validate_task_mode_optional_without_task_is_valid [gw3] [ 36%] PASSED tests/experimental/tasks/test_request_context.py::test_validate_task_mode_optional_without_task_is_valid [gw1] [ 36%] PASSED tests/experimental/tasks/server/test_task_visibility.py::test_clients_are_isolated_when_the_server_uses_a_custom_task_store tests/experimental/tasks/test_capabilities.py::TestCheckTasksCapability::test_required_requests_none_returns_true tests/experimental/tasks/test_request_context.py::test_validate_for_tool_with_execution_required [gw1] [ 36%] PASSED tests/experimental/tasks/test_capabilities.py::TestCheckTasksCapability::test_required_requests_none_returns_true tests/experimental/tasks/test_capabilities.py::TestCheckTasksCapability::test_client_requests_none_returns_false [gw1] [ 36%] PASSED tests/experimental/tasks/test_capabilities.py::TestCheckTasksCapability::test_client_requests_none_returns_false tests/experimental/tasks/test_capabilities.py::TestCheckTasksCapability::test_elicitation_required_but_client_missing [gw1] [ 37%] PASSED tests/experimental/tasks/test_capabilities.py::TestCheckTasksCapability::test_elicitation_required_but_client_missing tests/experimental/tasks/test_capabilities.py::TestCheckTasksCapability::test_elicitation_create_required_but_client_missing [gw1] [ 37%] PASSED tests/experimental/tasks/test_capabilities.py::TestCheckTasksCapability::test_elicitation_create_required_but_client_missing tests/experimental/tasks/test_capabilities.py::TestCheckTasksCapability::test_elicitation_create_present [gw1] [ 37%] PASSED tests/experimental/tasks/test_capabilities.py::TestCheckTasksCapability::test_elicitation_create_present tests/experimental/tasks/test_capabilities.py::TestCheckTasksCapability::test_sampling_required_but_client_missing [gw1] [ 37%] PASSED tests/experimental/tasks/test_capabilities.py::TestCheckTasksCapability::test_sampling_required_but_client_missing tests/experimental/tasks/test_capabilities.py::TestCheckTasksCapability::test_sampling_create_message_required_but_client_missing [gw1] [ 37%] PASSED tests/experimental/tasks/test_capabilities.py::TestCheckTasksCapability::test_sampling_create_message_required_but_client_missing [gw3] [ 37%] PASSED tests/experimental/tasks/test_request_context.py::test_validate_for_tool_with_execution_required tests/experimental/tasks/test_request_context.py::test_validate_for_tool_without_execution [gw3] [ 37%] PASSED tests/experimental/tasks/test_request_context.py::test_validate_for_tool_without_execution tests/experimental/tasks/test_request_context.py::test_validate_for_tool_optional_with_task [gw3] [ 37%] PASSED tests/experimental/tasks/test_request_context.py::test_validate_for_tool_optional_with_task tests/experimental/tasks/test_request_context.py::test_can_use_tool_required_with_task_support tests/experimental/tasks/test_capabilities.py::TestCheckTasksCapability::test_sampling_create_message_present [gw3] [ 37%] PASSED tests/experimental/tasks/test_request_context.py::test_can_use_tool_required_with_task_support tests/experimental/tasks/test_request_context.py::test_can_use_tool_required_without_task_support [gw2] [ 37%] PASSED tests/server/auth/test_error_handling.py::TestTokenErrorHandling::test_token_error_handling_refresh_token [gw3] [ 37%] PASSED tests/experimental/tasks/test_request_context.py::test_can_use_tool_required_without_task_support tests/experimental/tasks/test_request_context.py::test_can_use_tool_optional_without_task_support [gw3] [ 38%] PASSED tests/experimental/tasks/test_request_context.py::test_can_use_tool_optional_without_task_support tests/experimental/tasks/test_request_context.py::test_can_use_tool_forbidden_without_task_support [gw8] [ 38%] PASSED tests/experimental/tasks/test_elicitation_scenarios.py::test_scenario4_sampling_task_augmented_tool_task_augmented_sampling [gw3] [ 38%] PASSED tests/experimental/tasks/test_request_context.py::test_can_use_tool_forbidden_without_task_support tests/experimental/tasks/test_request_context.py::test_can_use_tool_none_without_task_support [gw1] [ 38%] PASSED tests/experimental/tasks/test_capabilities.py::TestCheckTasksCapability::test_sampling_create_message_present tests/experimental/tasks/test_message_queue.py::TestInMemoryTaskMessageQueue::test_enqueue_and_dequeue [gw3] [ 38%] PASSED tests/experimental/tasks/test_request_context.py::test_can_use_tool_none_without_task_support tests/experimental/tasks/test_request_context.py::test_run_task_with_an_explicit_task_id_emits_a_deprecation_warning tests/experimental/tasks/test_capabilities.py::TestCheckTasksCapability::test_both_elicitation_and_sampling_present tests/server/auth/test_protected_resource.py::test_metadata_endpoint_with_path [gw8] [ 38%] PASSED tests/experimental/tasks/test_message_queue.py::TestInMemoryTaskMessageQueue::test_enqueue_and_dequeue tests/experimental/tasks/test_message_queue.py::TestInMemoryTaskMessageQueue::test_dequeue_empty_returns_none [gw1] [ 38%] PASSED tests/experimental/tasks/test_capabilities.py::TestCheckTasksCapability::test_both_elicitation_and_sampling_present [gw3] [ 38%] PASSED tests/experimental/tasks/test_request_context.py::test_run_task_with_an_explicit_task_id_emits_a_deprecation_warning tests/experimental/tasks/test_request_context.py::test_run_task_without_a_task_id_does_not_warn [gw8] [ 38%] PASSED tests/experimental/tasks/test_message_queue.py::TestInMemoryTaskMessageQueue::test_dequeue_empty_returns_none tests/experimental/tasks/test_message_queue.py::TestInMemoryTaskMessageQueue::test_fifo_ordering [gw3] [ 38%] PASSED tests/experimental/tasks/test_request_context.py::test_run_task_without_a_task_id_does_not_warn tests/experimental/tasks/test_spec_compliance.py::test_server_without_task_handlers_has_no_tasks_capability [gw3] [ 38%] PASSED tests/experimental/tasks/test_spec_compliance.py::test_server_without_task_handlers_has_no_tasks_capability tests/experimental/tasks/test_spec_compliance.py::test_server_with_list_tasks_handler_declares_list_capability [gw8] [ 38%] PASSED tests/experimental/tasks/test_message_queue.py::TestInMemoryTaskMessageQueue::test_fifo_ordering [gw3] [ 39%] PASSED tests/experimental/tasks/test_spec_compliance.py::test_server_with_list_tasks_handler_declares_list_capability tests/experimental/tasks/test_message_queue.py::TestInMemoryTaskMessageQueue::test_separate_queues_per_task [gw2] [ 39%] PASSED tests/server/auth/test_protected_resource.py::test_metadata_endpoint_with_path [gw8] [ 39%] PASSED tests/experimental/tasks/test_message_queue.py::TestInMemoryTaskMessageQueue::test_separate_queues_per_task tests/experimental/tasks/test_message_queue.py::TestInMemoryTaskMessageQueue::test_peek_does_not_remove tests/experimental/tasks/test_spec_compliance.py::test_server_with_cancel_task_handler_declares_cancel_capability tests/server/fastmcp/auth/test_auth_integration.py::TestAuthEndpoints::test_client_registration_invalid_grant_type [gw8] [ 39%] PASSED tests/experimental/tasks/test_message_queue.py::TestInMemoryTaskMessageQueue::test_peek_does_not_remove tests/experimental/tasks/test_message_queue.py::TestInMemoryTaskMessageQueue::test_is_empty tests/server/auth/test_protected_resource.py::test_metadata_endpoint_root_path_returns_404 [gw8] [ 39%] PASSED tests/experimental/tasks/test_message_queue.py::TestInMemoryTaskMessageQueue::test_is_empty tests/experimental/tasks/test_message_queue.py::TestInMemoryTaskMessageQueue::test_clear_returns_all_messages [gw3] [ 39%] PASSED tests/experimental/tasks/test_spec_compliance.py::test_server_with_cancel_task_handler_declares_cancel_capability [gw8] [ 39%] PASSED tests/experimental/tasks/test_message_queue.py::TestInMemoryTaskMessageQueue::test_clear_returns_all_messages tests/experimental/tasks/test_message_queue.py::TestInMemoryTaskMessageQueue::test_clear_empty_queue [gw8] [ 39%] PASSED tests/experimental/tasks/test_message_queue.py::TestInMemoryTaskMessageQueue::test_clear_empty_queue tests/experimental/tasks/test_message_queue.py::TestInMemoryTaskMessageQueue::test_notification_messages [gw5] [ 39%] PASSED tests/server/fastmcp/auth/test_auth_integration.py::TestAuthEndpoints::test_token_invalid_auth_code [gw9] [ 39%] PASSED tests/issues/test_malformed_input.py::test_malformed_initialize_request_does_not_crash_server [gw8] [ 39%] PASSED tests/experimental/tasks/test_message_queue.py::TestInMemoryTaskMessageQueue::test_notification_messages tests/server/fastmcp/auth/test_auth_integration.py::TestAuthorizeEndpointErrors::test_authorize_invalid_redirect_uri tests/experimental/tasks/test_message_queue.py::TestInMemoryTaskMessageQueue::test_message_timestamp tests/issues/test_malformed_input.py::test_multiple_concurrent_malformed_requests tests/experimental/tasks/test_spec_compliance.py::test_server_with_get_task_handler_declares_requests_tools_call_capability [gw2] [ 40%] PASSED tests/server/auth/test_protected_resource.py::test_metadata_endpoint_root_path_returns_404 [gw3] [ 40%] PASSED tests/experimental/tasks/test_spec_compliance.py::test_server_with_get_task_handler_declares_requests_tools_call_capability tests/experimental/tasks/test_spec_compliance.py::test_server_without_list_handler_has_no_list_capability [gw8] [ 40%] PASSED tests/experimental/tasks/test_message_queue.py::TestInMemoryTaskMessageQueue::test_message_timestamp [gw3] [ 40%] PASSED tests/experimental/tasks/test_spec_compliance.py::test_server_without_list_handler_has_no_list_capability tests/experimental/tasks/test_message_queue.py::TestInMemoryTaskMessageQueue::test_message_with_resolver [gw0] [ 40%] XFAIL tests/client/test_auth.py::test_build_metadata[simple-url] tests/client/test_auth.py::test_build_metadata[with-trailing-slash] tests/server/auth/test_protected_resource.py::test_metadata_endpoint_without_path tests/experimental/tasks/test_spec_compliance.py::test_server_without_cancel_handler_has_no_cancel_capability [gw0] [ 40%] PASSED tests/client/test_auth.py::test_build_metadata[with-trailing-slash] [gw5] [ 40%] PASSED tests/server/fastmcp/auth/test_auth_integration.py::TestAuthorizeEndpointErrors::test_authorize_invalid_redirect_uri [gw3] [ 40%] PASSED tests/experimental/tasks/test_spec_compliance.py::test_server_without_cancel_handler_has_no_cancel_capability tests/experimental/tasks/test_spec_compliance.py::TestInputRequiredStatus::test_input_required_related_task_metadata_in_requests [gw0] [ 40%] SKIPPED tests/experimental/tasks/test_spec_compliance.py::TestInputRequiredStatus::test_input_required_related_task_metadata_in_requests tests/experimental/tasks/test_spec_compliance.py::test_server_with_all_task_handlers_has_full_capability [gw3] [ 40%] PASSED tests/experimental/tasks/test_spec_compliance.py::test_server_with_all_task_handlers_has_full_capability tests/experimental/tasks/test_spec_compliance.py::TestClientCapabilities::test_client_declares_tasks_capability tests/experimental/tasks/test_spec_compliance.py::TestCreatingTask::test_task_augmented_request_returns_create_task_result [gw3] [ 40%] SKIPPED tests/experimental/tasks/test_spec_compliance.py::TestClientCapabilities::test_client_declares_tasks_capability tests/server/fastmcp/prompts/test_base.py::TestRenderPrompt::test_fn_returns_mixed_content tests/server/fastmcp/auth/test_auth_integration.py::TestAuthorizeEndpointErrors::test_authorize_missing_redirect_uri_multiple_registered[registered_client0] [gw0] [ 40%] SKIPPED tests/experimental/tasks/test_spec_compliance.py::TestCreatingTask::test_task_augmented_request_returns_create_task_result tests/experimental/tasks/test_spec_compliance.py::TestCreatingTask::test_create_task_result_contains_task_id [gw0] [ 41%] SKIPPED tests/experimental/tasks/test_spec_compliance.py::TestCreatingTask::test_create_task_result_contains_task_id tests/experimental/tasks/test_spec_compliance.py::TestCreatingTask::test_create_task_result_contains_status_working [gw0] [ 41%] SKIPPED tests/experimental/tasks/test_spec_compliance.py::TestCreatingTask::test_create_task_result_contains_status_working tests/experimental/tasks/test_spec_compliance.py::TestCreatingTask::test_create_task_result_contains_created_at [gw8] [ 41%] PASSED tests/experimental/tasks/test_message_queue.py::TestInMemoryTaskMessageQueue::test_message_with_resolver [gw0] [ 41%] SKIPPED tests/experimental/tasks/test_spec_compliance.py::TestCreatingTask::test_create_task_result_contains_created_at tests/experimental/tasks/test_spec_compliance.py::TestCreatingTask::test_create_task_result_created_at_is_iso8601 [gw0] [ 41%] SKIPPED tests/experimental/tasks/test_spec_compliance.py::TestCreatingTask::test_create_task_result_created_at_is_iso8601 tests/experimental/tasks/test_message_queue.py::TestInMemoryTaskMessageQueue::test_cleanup_specific_task tests/experimental/tasks/test_spec_compliance.py::TestCreatingTask::test_create_task_result_may_contain_ttl [gw5] [ 41%] PASSED tests/server/fastmcp/auth/test_auth_integration.py::TestAuthorizeEndpointErrors::test_authorize_missing_redirect_uri_multiple_registered[registered_client0] [gw0] [ 41%] SKIPPED tests/experimental/tasks/test_spec_compliance.py::TestCreatingTask::test_create_task_result_may_contain_ttl tests/experimental/tasks/test_spec_compliance.py::TestCreatingTask::test_create_task_result_may_contain_poll_interval tests/server/fastmcp/auth/test_auth_integration.py::TestAuthorizeEndpointErrors::test_authorize_unsupported_response_type [gw0] [ 41%] SKIPPED tests/experimental/tasks/test_spec_compliance.py::TestCreatingTask::test_create_task_result_may_contain_poll_interval tests/experimental/tasks/test_spec_compliance.py::TestCreatingTask::test_create_task_result_may_contain_status_message [gw0] [ 41%] SKIPPED tests/experimental/tasks/test_spec_compliance.py::TestCreatingTask::test_create_task_result_may_contain_status_message tests/experimental/tasks/test_spec_compliance.py::TestCreatingTask::test_receiver_may_override_requested_ttl [gw2] [ 41%] PASSED tests/server/auth/test_protected_resource.py::test_metadata_endpoint_without_path [gw0] [ 41%] SKIPPED tests/experimental/tasks/test_spec_compliance.py::TestCreatingTask::test_receiver_may_override_requested_ttl tests/experimental/tasks/test_spec_compliance.py::TestCreatingTask::test_model_immediate_response_in_meta [gw8] [ 41%] PASSED tests/experimental/tasks/test_message_queue.py::TestInMemoryTaskMessageQueue::test_cleanup_specific_task [gw0] [ 42%] PASSED tests/experimental/tasks/test_spec_compliance.py::TestCreatingTask::test_model_immediate_response_in_meta tests/experimental/tasks/test_spec_compliance.py::TestGettingTaskStatus::test_tasks_get_returns_task_object [gw5] [ 42%] PASSED tests/server/fastmcp/auth/test_auth_integration.py::TestAuthorizeEndpointErrors::test_authorize_unsupported_response_type [gw0] [ 42%] SKIPPED tests/experimental/tasks/test_spec_compliance.py::TestGettingTaskStatus::test_tasks_get_returns_task_object tests/experimental/tasks/test_spec_compliance.py::TestGettingTaskStatus::test_tasks_get_returns_current_status [gw0] [ 42%] SKIPPED tests/experimental/tasks/test_spec_compliance.py::TestGettingTaskStatus::test_tasks_get_returns_current_status tests/server/fastmcp/auth/test_auth_integration.py::TestAuthorizeEndpointErrors::test_authorize_missing_response_type tests/experimental/tasks/test_spec_compliance.py::TestGettingTaskStatus::test_tasks_get_may_return_poll_interval tests/experimental/tasks/test_message_queue.py::TestInMemoryTaskMessageQueue::test_cleanup_all [gw0] [ 42%] SKIPPED tests/experimental/tasks/test_spec_compliance.py::TestGettingTaskStatus::test_tasks_get_may_return_poll_interval tests/experimental/tasks/test_spec_compliance.py::TestGettingTaskStatus::test_tasks_get_invalid_task_id_returns_error [gw0] [ 42%] SKIPPED tests/experimental/tasks/test_spec_compliance.py::TestGettingTaskStatus::test_tasks_get_invalid_task_id_returns_error tests/experimental/tasks/test_spec_compliance.py::TestGettingTaskStatus::test_tasks_get_nonexistent_task_id_returns_error [gw0] [ 42%] SKIPPED tests/experimental/tasks/test_spec_compliance.py::TestGettingTaskStatus::test_tasks_get_nonexistent_task_id_returns_error tests/experimental/tasks/test_spec_compliance.py::TestRetrievingResults::test_tasks_result_returns_underlying_result [gw0] [ 42%] SKIPPED tests/experimental/tasks/test_spec_compliance.py::TestRetrievingResults::test_tasks_result_returns_underlying_result [gw5] [ 42%] PASSED tests/server/fastmcp/auth/test_auth_integration.py::TestAuthorizeEndpointErrors::test_authorize_missing_response_type tests/experimental/tasks/test_spec_compliance.py::TestRetrievingResults::test_tasks_result_blocks_until_terminal [gw0] [ 42%] SKIPPED tests/experimental/tasks/test_spec_compliance.py::TestRetrievingResults::test_tasks_result_blocks_until_terminal tests/server/fastmcp/auth/test_auth_integration.py::TestAuthorizeEndpointErrors::test_authorize_missing_pkce_challenge tests/experimental/tasks/test_spec_compliance.py::TestRetrievingResults::test_tasks_result_unblocks_on_terminal [gw0] [ 42%] SKIPPED tests/experimental/tasks/test_spec_compliance.py::TestRetrievingResults::test_tasks_result_unblocks_on_terminal tests/server/fastmcp/resources/test_resource_manager.py::TestResourceManager::test_add_resource [gw0] [ 43%] PASSED tests/server/fastmcp/resources/test_resource_manager.py::TestResourceManager::test_add_resource tests/server/fastmcp/resources/test_resource_manager.py::TestResourceManager::test_add_duplicate_resource [gw5] [ 43%] PASSED tests/server/fastmcp/auth/test_auth_integration.py::TestAuthorizeEndpointErrors::test_authorize_missing_pkce_challenge tests/server/auth/test_protected_resource.py::TestMetadataUrlConstruction::test_url_without_path [gw8] [ 43%] PASSED tests/experimental/tasks/test_message_queue.py::TestInMemoryTaskMessageQueue::test_cleanup_all tests/server/fastmcp/auth/test_auth_integration.py::TestAuthorizeEndpointErrors::test_authorize_invalid_scope [gw2] [ 43%] PASSED tests/server/auth/test_protected_resource.py::TestMetadataUrlConstruction::test_url_without_path tests/experimental/tasks/test_message_queue.py::TestInMemoryTaskMessageQueue::test_wait_for_message_returns_immediately_if_message_exists tests/server/auth/test_protected_resource.py::TestMetadataUrlConstruction::test_url_with_path_component [gw5] [ 43%] PASSED tests/server/fastmcp/auth/test_auth_integration.py::TestAuthorizeEndpointErrors::test_authorize_invalid_scope tests/server/fastmcp/prompts/test_base.py::TestRenderPrompt::test_basic_fn [gw2] [ 43%] PASSED tests/server/auth/test_protected_resource.py::TestMetadataUrlConstruction::test_url_with_path_component [gw8] [ 43%] PASSED tests/experimental/tasks/test_message_queue.py::TestInMemoryTaskMessageQueue::test_wait_for_message_returns_immediately_if_message_exists tests/server/fastmcp/resources/test_file_resources.py::TestFileResource::test_relative_path_error tests/server/auth/test_protected_resource.py::TestMetadataUrlConstruction::test_url_with_trailing_slash_only [gw2] [ 43%] PASSED tests/server/auth/test_protected_resource.py::TestMetadataUrlConstruction::test_url_with_trailing_slash_only tests/server/auth/test_protected_resource.py::TestMetadataUrlConstruction::test_various_resource_configurations[https://example.com-https://example.com/.well-known/oauth-protected-resource] [gw8] [ 43%] PASSED tests/server/fastmcp/resources/test_file_resources.py::TestFileResource::test_relative_path_error tests/server/fastmcp/resources/test_file_resources.py::TestFileResource::test_missing_file_error [gw5] [ 43%] PASSED tests/server/fastmcp/prompts/test_base.py::TestRenderPrompt::test_basic_fn [gw8] [ 43%] PASSED tests/server/fastmcp/resources/test_file_resources.py::TestFileResource::test_missing_file_error tests/server/fastmcp/resources/test_file_resources.py::TestFileResource::test_permission_error tests/server/fastmcp/prompts/test_base.py::TestRenderPrompt::test_async_fn [gw3] [ 43%] PASSED tests/server/fastmcp/prompts/test_base.py::TestRenderPrompt::test_fn_returns_mixed_content [gw0] [ 44%] PASSED tests/server/fastmcp/resources/test_resource_manager.py::TestResourceManager::test_add_duplicate_resource [gw2] [ 44%] PASSED tests/server/auth/test_protected_resource.py::TestMetadataUrlConstruction::test_various_resource_configurations[https://example.com-https://example.com/.well-known/oauth-protected-resource] tests/server/auth/test_protected_resource.py::TestMetadataUrlConstruction::test_various_resource_configurations[https://example.com/-https://example.com/.well-known/oauth-protected-resource] [gw2] [ 44%] PASSED tests/server/auth/test_protected_resource.py::TestMetadataUrlConstruction::test_various_resource_configurations[https://example.com/-https://example.com/.well-known/oauth-protected-resource] [gw5] [ 44%] PASSED tests/server/fastmcp/prompts/test_base.py::TestRenderPrompt::test_async_fn tests/server/fastmcp/prompts/test_base.py::TestRenderPrompt::test_fn_with_args [gw5] [ 44%] PASSED tests/server/fastmcp/prompts/test_base.py::TestRenderPrompt::test_fn_with_args tests/server/fastmcp/prompts/test_base.py::TestRenderPrompt::test_fn_with_invalid_kwargs [gw5] [ 44%] PASSED tests/server/fastmcp/prompts/test_base.py::TestRenderPrompt::test_fn_with_invalid_kwargs tests/server/fastmcp/prompts/test_base.py::TestRenderPrompt::test_fn_returns_message [gw8] [ 44%] PASSED tests/server/fastmcp/resources/test_file_resources.py::TestFileResource::test_permission_error tests/server/fastmcp/resources/test_function_resources.py::TestFunctionResource::test_function_resource_creation [gw8] [ 44%] PASSED tests/server/fastmcp/resources/test_function_resources.py::TestFunctionResource::test_function_resource_creation tests/server/fastmcp/resources/test_function_resources.py::TestFunctionResource::test_read_text [gw1] [ 44%] PASSED tests/server/fastmcp/auth/test_auth_integration.py::TestAuthEndpoints::test_client_registration_invalid_grant_type tests/server/fastmcp/prompts/test_base.py::TestRenderPrompt::test_fn_returns_dict_with_resource [gw3] [ 44%] PASSED tests/server/fastmcp/prompts/test_base.py::TestRenderPrompt::test_fn_returns_dict_with_resource tests/server/fastmcp/prompts/test_manager.py::TestPromptManager::test_add_prompt [gw3] [ 44%] PASSED tests/server/fastmcp/prompts/test_manager.py::TestPromptManager::test_add_prompt tests/server/fastmcp/prompts/test_manager.py::TestPromptManager::test_add_duplicate_prompt [gw8] [ 45%] PASSED tests/server/fastmcp/resources/test_function_resources.py::TestFunctionResource::test_read_text [gw5] [ 45%] PASSED tests/server/fastmcp/prompts/test_base.py::TestRenderPrompt::test_fn_returns_message tests/server/fastmcp/prompts/test_base.py::TestRenderPrompt::test_fn_returns_assistant_message tests/server/fastmcp/resources/test_function_resources.py::TestFunctionResource::test_read_binary tests/server/auth/test_protected_resource.py::TestMetadataUrlConstruction::test_various_resource_configurations[https://example.com/mcp-https://example.com/.well-known/oauth-protected-resource/mcp] [gw2] [ 45%] PASSED tests/server/auth/test_protected_resource.py::TestMetadataUrlConstruction::test_various_resource_configurations[https://example.com/mcp-https://example.com/.well-known/oauth-protected-resource/mcp] tests/server/fastmcp/auth/test_auth_integration.py::TestAuthEndpoints::test_token_expired_auth_code [gw3] [ 45%] PASSED tests/server/fastmcp/prompts/test_manager.py::TestPromptManager::test_add_duplicate_prompt tests/server/fastmcp/prompts/test_manager.py::TestPromptManager::test_disable_warn_on_duplicate_prompts [gw2] [ 45%] PASSED tests/server/fastmcp/auth/test_auth_integration.py::TestAuthEndpoints::test_token_expired_auth_code tests/server/fastmcp/auth/test_auth_integration.py::TestAuthEndpoints::test_token_redirect_uri_mismatch[registered_client0] [gw2] [ 45%] PASSED tests/server/fastmcp/auth/test_auth_integration.py::TestAuthEndpoints::test_token_redirect_uri_mismatch[registered_client0] tests/server/fastmcp/auth/test_auth_integration.py::TestAuthEndpoints::test_token_code_verifier_mismatch [gw2] [ 45%] PASSED tests/server/fastmcp/auth/test_auth_integration.py::TestAuthEndpoints::test_token_code_verifier_mismatch tests/server/fastmcp/resources/test_resource_manager.py::TestResourceManager::test_warn_on_duplicate_resources tests/server/fastmcp/auth/test_auth_integration.py::TestAuthEndpoints::test_token_invalid_refresh_token [gw9] [ 45%] PASSED tests/issues/test_malformed_input.py::test_multiple_concurrent_malformed_requests tests/server/auth/middleware/test_auth_context.py::TestAuthContextMiddleware::test_with_authenticated_user [gw2] [ 45%] PASSED tests/server/fastmcp/auth/test_auth_integration.py::TestAuthEndpoints::test_token_invalid_refresh_token [gw9] [ 45%] PASSED tests/server/auth/middleware/test_auth_context.py::TestAuthContextMiddleware::test_with_authenticated_user tests/server/auth/middleware/test_auth_context.py::TestAuthContextMiddleware::test_with_no_user tests/server/fastmcp/auth/test_auth_integration.py::TestAuthEndpoints::test_token_expired_refresh_token [gw9] [ 45%] PASSED tests/server/auth/middleware/test_auth_context.py::TestAuthContextMiddleware::test_with_no_user tests/server/auth/middleware/test_bearer_auth.py::TestBearerAuthBackend::test_no_auth_header [gw9] [ 45%] PASSED tests/server/auth/middleware/test_bearer_auth.py::TestBearerAuthBackend::test_no_auth_header tests/server/auth/middleware/test_bearer_auth.py::TestBearerAuthBackend::test_non_bearer_auth_header [gw9] [ 46%] PASSED tests/server/auth/middleware/test_bearer_auth.py::TestBearerAuthBackend::test_non_bearer_auth_header tests/server/auth/middleware/test_bearer_auth.py::TestBearerAuthBackend::test_invalid_token [gw9] [ 46%] PASSED tests/server/auth/middleware/test_bearer_auth.py::TestBearerAuthBackend::test_invalid_token [gw2] [ 46%] PASSED tests/server/fastmcp/auth/test_auth_integration.py::TestAuthEndpoints::test_token_expired_refresh_token tests/server/auth/middleware/test_bearer_auth.py::TestBearerAuthBackend::test_expired_token tests/server/fastmcp/auth/test_auth_integration.py::TestAuthEndpoints::test_token_invalid_scope [gw9] [ 46%] PASSED tests/server/auth/middleware/test_bearer_auth.py::TestBearerAuthBackend::test_expired_token tests/server/auth/middleware/test_bearer_auth.py::TestBearerAuthBackend::test_valid_token [gw2] [ 46%] PASSED tests/server/fastmcp/auth/test_auth_integration.py::TestAuthEndpoints::test_token_invalid_scope tests/server/fastmcp/auth/test_auth_integration.py::TestAuthEndpoints::test_client_registration [gw2] [ 46%] PASSED tests/server/fastmcp/auth/test_auth_integration.py::TestAuthEndpoints::test_client_registration tests/server/fastmcp/auth/test_auth_integration.py::TestAuthEndpoints::test_client_registration_missing_required_fields [gw7] [ 46%] PASSED tests/issues/test_1363_race_condition_streamable_http.py::test_race_condition_invalid_accept_headers tests/issues/test_1363_race_condition_streamable_http.py::test_race_condition_invalid_content_type [gw9] [ 46%] PASSED tests/server/auth/middleware/test_bearer_auth.py::TestBearerAuthBackend::test_valid_token tests/server/auth/middleware/test_bearer_auth.py::TestBearerAuthBackend::test_token_without_expiry [gw9] [ 46%] PASSED tests/server/auth/middleware/test_bearer_auth.py::TestBearerAuthBackend::test_token_without_expiry tests/server/auth/middleware/test_bearer_auth.py::TestBearerAuthBackend::test_lowercase_bearer_prefix [gw9] [ 46%] PASSED tests/server/auth/middleware/test_bearer_auth.py::TestBearerAuthBackend::test_lowercase_bearer_prefix tests/server/auth/middleware/test_bearer_auth.py::TestBearerAuthBackend::test_mixed_case_bearer_prefix [gw9] [ 46%] PASSED tests/server/auth/middleware/test_bearer_auth.py::TestBearerAuthBackend::test_mixed_case_bearer_prefix tests/server/auth/middleware/test_bearer_auth.py::TestBearerAuthBackend::test_mixed_case_authorization_header [gw9] [ 46%] PASSED tests/server/auth/middleware/test_bearer_auth.py::TestBearerAuthBackend::test_mixed_case_authorization_header tests/server/auth/middleware/test_bearer_auth.py::TestRequireAuthMiddleware::test_no_user [gw9] [ 47%] PASSED tests/server/auth/middleware/test_bearer_auth.py::TestRequireAuthMiddleware::test_no_user tests/server/auth/middleware/test_bearer_auth.py::TestRequireAuthMiddleware::test_non_authenticated_user tests/server/fastmcp/auth/test_auth_integration.py::TestAuthEndpoints::test_client_registration_with_additional_grant_type [gw9] [ 47%] PASSED tests/server/auth/middleware/test_bearer_auth.py::TestRequireAuthMiddleware::test_non_authenticated_user tests/server/auth/middleware/test_bearer_auth.py::TestRequireAuthMiddleware::test_missing_required_scope [gw1] [ 47%] PASSED tests/server/fastmcp/auth/test_auth_integration.py::TestAuthEndpoints::test_client_registration_with_additional_grant_type [gw3] [ 47%] PASSED tests/server/fastmcp/prompts/test_manager.py::TestPromptManager::test_disable_warn_on_duplicate_prompts tests/server/fastmcp/prompts/test_manager.py::TestPromptManager::test_list_prompts tests/server/fastmcp/auth/test_auth_integration.py::TestAuthEndpoints::test_client_registration_with_additional_response_types [gw1] [ 47%] PASSED tests/server/fastmcp/auth/test_auth_integration.py::TestAuthEndpoints::test_client_registration_with_additional_response_types [gw9] [ 47%] PASSED tests/server/auth/middleware/test_bearer_auth.py::TestRequireAuthMiddleware::test_missing_required_scope tests/server/auth/middleware/test_bearer_auth.py::TestRequireAuthMiddleware::test_no_auth_credentials [gw9] [ 47%] PASSED tests/server/auth/middleware/test_bearer_auth.py::TestRequireAuthMiddleware::test_no_auth_credentials tests/server/fastmcp/test_func_metadata.py::test_structured_output_dict_str_types tests/server/fastmcp/auth/test_auth_integration.py::TestAuthEndpoints::test_client_registration_response_types_without_code [gw1] [ 47%] PASSED tests/server/fastmcp/auth/test_auth_integration.py::TestAuthEndpoints::test_client_registration_response_types_without_code [gw6] [ 47%] PASSED tests/client/test_session_group.py::TestClientSessionGroup::test_establish_session_parameterized[server_params_instance2-streamablehttp-mcp.client.session_group.streamable_http_client] tests/client/test_stdio.py::test_stdio_context_manager_exiting tests/server/fastmcp/auth/test_auth_integration.py::TestAuthEndpoints::test_client_registration_default_response_types [gw1] [ 47%] PASSED tests/server/fastmcp/auth/test_auth_integration.py::TestAuthEndpoints::test_client_registration_default_response_types tests/server/fastmcp/auth/test_auth_integration.py::TestAuthEndpoints::test_client_secret_basic_authentication [gw1] [ 47%] PASSED tests/server/fastmcp/auth/test_auth_integration.py::TestAuthEndpoints::test_client_secret_basic_authentication [gw3] [ 48%] PASSED tests/server/fastmcp/prompts/test_manager.py::TestPromptManager::test_list_prompts tests/server/fastmcp/prompts/test_manager.py::TestPromptManager::test_render_prompt [gw8] [ 48%] PASSED tests/server/fastmcp/resources/test_function_resources.py::TestFunctionResource::test_read_binary tests/server/fastmcp/resources/test_function_resources.py::TestFunctionResource::test_json_conversion tests/server/fastmcp/auth/test_auth_integration.py::TestAuthEndpoints::test_wrong_auth_method_without_valid_credentials_fails [gw8] [ 48%] PASSED tests/server/fastmcp/resources/test_function_resources.py::TestFunctionResource::test_json_conversion tests/server/fastmcp/resources/test_function_resources.py::TestFunctionResource::test_error_handling [gw8] [ 48%] PASSED tests/server/fastmcp/resources/test_function_resources.py::TestFunctionResource::test_error_handling tests/server/fastmcp/resources/test_function_resources.py::TestFunctionResource::test_basemodel_conversion [gw3] [ 48%] PASSED tests/server/fastmcp/prompts/test_manager.py::TestPromptManager::test_render_prompt [gw1] [ 48%] PASSED tests/server/fastmcp/auth/test_auth_integration.py::TestAuthEndpoints::test_wrong_auth_method_without_valid_credentials_fails tests/server/fastmcp/prompts/test_manager.py::TestPromptManager::test_render_prompt_with_args [gw8] [ 48%] PASSED tests/server/fastmcp/resources/test_function_resources.py::TestFunctionResource::test_basemodel_conversion tests/server/fastmcp/auth/test_auth_integration.py::TestAuthEndpoints::test_basic_auth_without_header_fails [gw0] [ 48%] PASSED tests/server/fastmcp/resources/test_resource_manager.py::TestResourceManager::test_warn_on_duplicate_resources tests/server/fastmcp/resources/test_function_resources.py::TestFunctionResource::test_custom_type_conversion [gw8] [ 48%] PASSED tests/server/fastmcp/resources/test_function_resources.py::TestFunctionResource::test_custom_type_conversion [gw3] [ 48%] PASSED tests/server/fastmcp/prompts/test_manager.py::TestPromptManager::test_render_prompt_with_args tests/server/fastmcp/resources/test_function_resources.py::TestFunctionResource::test_async_read_text tests/server/fastmcp/prompts/test_manager.py::TestPromptManager::test_render_unknown_prompt [gw8] [ 48%] PASSED tests/server/fastmcp/resources/test_function_resources.py::TestFunctionResource::test_async_read_text [gw1] [ 48%] PASSED tests/server/fastmcp/auth/test_auth_integration.py::TestAuthEndpoints::test_basic_auth_without_header_fails tests/server/fastmcp/resources/test_function_resources.py::TestFunctionResource::test_from_function [gw3] [ 49%] PASSED tests/server/fastmcp/prompts/test_manager.py::TestPromptManager::test_render_unknown_prompt tests/server/fastmcp/prompts/test_manager.py::TestPromptManager::test_render_prompt_with_missing_args tests/server/fastmcp/auth/test_auth_integration.py::TestAuthEndpoints::test_basic_auth_invalid_base64_fails [gw8] [ 49%] PASSED tests/server/fastmcp/resources/test_function_resources.py::TestFunctionResource::test_from_function tests/server/fastmcp/resources/test_function_resources.py::TestFunctionResourceMetadata::test_from_function_with_metadata [gw8] [ 49%] PASSED tests/server/fastmcp/resources/test_function_resources.py::TestFunctionResourceMetadata::test_from_function_with_metadata tests/server/fastmcp/resources/test_function_resources.py::TestFunctionResourceMetadata::test_from_function_without_metadata [gw8] [ 49%] PASSED tests/server/fastmcp/resources/test_function_resources.py::TestFunctionResourceMetadata::test_from_function_without_metadata tests/server/fastmcp/resources/test_resources.py::TestResourceValidation::test_resource_name_validation [gw8] [ 49%] PASSED tests/server/fastmcp/resources/test_resources.py::TestResourceValidation::test_resource_name_validation tests/server/fastmcp/resources/test_resources.py::TestResourceValidation::test_resource_mime_type [gw8] [ 49%] PASSED tests/server/fastmcp/resources/test_resources.py::TestResourceValidation::test_resource_mime_type tests/server/fastmcp/resources/test_resources.py::TestResourceValidation::test_resource_read_abstract [gw1] [ 49%] PASSED tests/server/fastmcp/auth/test_auth_integration.py::TestAuthEndpoints::test_basic_auth_invalid_base64_fails tests/server/fastmcp/auth/test_auth_integration.py::TestAuthEndpoints::test_basic_auth_no_colon_fails tests/server/fastmcp/resources/test_resource_manager.py::TestResourceManager::test_disable_warn_on_duplicate_resources [gw8] [ 49%] PASSED tests/server/fastmcp/resources/test_resources.py::TestResourceValidation::test_resource_read_abstract tests/server/fastmcp/resources/test_resources.py::TestResourceAnnotations::test_resource_with_annotations [gw8] [ 49%] PASSED tests/server/fastmcp/resources/test_resources.py::TestResourceAnnotations::test_resource_with_annotations tests/server/fastmcp/resources/test_resources.py::TestResourceAnnotations::test_resource_without_annotations [gw8] [ 49%] PASSED tests/server/fastmcp/resources/test_resources.py::TestResourceAnnotations::test_resource_without_annotations [gw6] [ 49%] PASSED tests/client/test_stdio.py::test_stdio_context_manager_exiting tests/client/test_stdio.py::test_stdio_client tests/server/fastmcp/resources/test_resources.py::TestResourceAnnotations::test_resource_annotations_in_fastmcp [gw1] [ 50%] PASSED tests/server/fastmcp/auth/test_auth_integration.py::TestAuthEndpoints::test_basic_auth_no_colon_fails tests/server/fastmcp/auth/test_auth_integration.py::TestAuthEndpoints::test_basic_auth_client_id_mismatch_fails [gw1] [ 50%] PASSED tests/server/fastmcp/auth/test_auth_integration.py::TestAuthEndpoints::test_basic_auth_client_id_mismatch_fails tests/server/fastmcp/auth/test_auth_integration.py::TestAuthEndpoints::test_none_auth_method_public_client [gw1] [ 50%] PASSED tests/server/fastmcp/auth/test_auth_integration.py::TestAuthEndpoints::test_none_auth_method_public_client [gw0] [ 50%] PASSED tests/server/fastmcp/resources/test_resource_manager.py::TestResourceManager::test_disable_warn_on_duplicate_resources tests/server/fastmcp/auth/test_auth_integration.py::TestAuthorizeEndpointErrors::test_authorize_missing_client_id tests/server/fastmcp/resources/test_resource_manager.py::TestResourceManager::test_get_resource [gw3] [ 50%] PASSED tests/server/fastmcp/prompts/test_manager.py::TestPromptManager::test_render_prompt_with_missing_args tests/server/fastmcp/resources/test_file_resources.py::TestFileResource::test_file_resource_creation [gw1] [ 50%] PASSED tests/server/fastmcp/auth/test_auth_integration.py::TestAuthorizeEndpointErrors::test_authorize_missing_client_id [gw6] [ 50%] PASSED tests/client/test_stdio.py::test_stdio_client [gw3] [ 50%] PASSED tests/server/fastmcp/resources/test_file_resources.py::TestFileResource::test_file_resource_creation tests/server/fastmcp/resources/test_file_resources.py::TestFileResource::test_file_resource_str_path_conversion tests/client/test_stdio.py::test_stdio_client_bad_path [gw0] [ 50%] PASSED tests/server/fastmcp/resources/test_resource_manager.py::TestResourceManager::test_get_resource tests/server/fastmcp/resources/test_resource_manager.py::TestResourceManager::test_get_resource_from_template [gw3] [ 50%] PASSED tests/server/fastmcp/resources/test_file_resources.py::TestFileResource::test_file_resource_str_path_conversion [gw0] [ 50%] PASSED tests/server/fastmcp/resources/test_resource_manager.py::TestResourceManager::test_get_resource_from_template tests/server/fastmcp/resources/test_resource_manager.py::TestResourceManager::test_get_unknown_resource [gw5] [ 50%] PASSED tests/server/fastmcp/prompts/test_base.py::TestRenderPrompt::test_fn_returns_assistant_message tests/server/fastmcp/prompts/test_base.py::TestRenderPrompt::test_fn_returns_multiple_messages [gw0] [ 51%] PASSED tests/server/fastmcp/resources/test_resource_manager.py::TestResourceManager::test_get_unknown_resource tests/server/fastmcp/resources/test_resource_manager.py::TestResourceManager::test_list_resources [gw9] [ 51%] PASSED tests/server/fastmcp/test_func_metadata.py::test_structured_output_dict_str_types [gw0] [ 51%] PASSED tests/server/fastmcp/resources/test_resource_manager.py::TestResourceManager::test_list_resources tests/server/fastmcp/resources/test_resource_manager.py::TestResourceManagerMetadata::test_add_template_with_metadata [gw5] [ 51%] PASSED tests/server/fastmcp/prompts/test_base.py::TestRenderPrompt::test_fn_returns_multiple_messages tests/server/fastmcp/resources/test_file_resources.py::TestFileResource::test_read_text_file tests/server/fastmcp/prompts/test_base.py::TestRenderPrompt::test_fn_returns_list_of_strings tests/server/fastmcp/test_func_metadata.py::test_lambda_function [gw5] [ 51%] PASSED tests/server/fastmcp/prompts/test_base.py::TestRenderPrompt::test_fn_returns_list_of_strings tests/server/fastmcp/prompts/test_base.py::TestRenderPrompt::test_fn_returns_resource_content [gw8] [ 51%] PASSED tests/server/fastmcp/resources/test_resources.py::TestResourceAnnotations::test_resource_annotations_in_fastmcp [gw5] [ 51%] PASSED tests/server/fastmcp/prompts/test_base.py::TestRenderPrompt::test_fn_returns_resource_content tests/server/fastmcp/resources/test_resource_template.py::TestResourceTemplate::test_template_error tests/server/fastmcp/resources/test_resources.py::TestResourceAnnotations::test_resource_annotations_with_both_audiences [gw9] [ 51%] PASSED tests/server/fastmcp/test_func_metadata.py::test_lambda_function tests/server/fastmcp/test_func_metadata.py::test_complex_function_json_schema [gw5] [ 51%] PASSED tests/server/fastmcp/resources/test_resource_template.py::TestResourceTemplate::test_template_error tests/server/fastmcp/resources/test_resource_template.py::TestResourceTemplate::test_async_text_resource [gw8] [ 51%] PASSED tests/server/fastmcp/resources/test_resources.py::TestResourceAnnotations::test_resource_annotations_with_both_audiences tests/server/fastmcp/resources/test_resources.py::TestAnnotationsValidation::test_priority_validation [gw5] [ 51%] PASSED tests/server/fastmcp/resources/test_resource_template.py::TestResourceTemplate::test_async_text_resource tests/server/fastmcp/resources/test_resource_template.py::TestResourceTemplate::test_async_binary_resource [gw8] [ 51%] PASSED tests/server/fastmcp/resources/test_resources.py::TestAnnotationsValidation::test_priority_validation tests/server/fastmcp/resources/test_resources.py::TestAnnotationsValidation::test_audience_validation [gw5] [ 52%] PASSED tests/server/fastmcp/resources/test_resource_template.py::TestResourceTemplate::test_async_binary_resource tests/server/fastmcp/resources/test_resource_template.py::TestResourceTemplate::test_basemodel_conversion [gw8] [ 52%] PASSED tests/server/fastmcp/resources/test_resources.py::TestAnnotationsValidation::test_audience_validation tests/server/fastmcp/resources/test_resources.py::TestResourceMetadata::test_resource_with_metadata [gw8] [ 52%] PASSED tests/server/fastmcp/resources/test_resources.py::TestResourceMetadata::test_resource_with_metadata tests/server/fastmcp/resources/test_resources.py::TestResourceMetadata::test_resource_without_metadata [gw8] [ 52%] PASSED tests/server/fastmcp/resources/test_resources.py::TestResourceMetadata::test_resource_without_metadata tests/server/fastmcp/servers/test_file_server.py::test_list_resources [gw9] [ 52%] PASSED tests/server/fastmcp/test_func_metadata.py::test_complex_function_json_schema [gw5] [ 52%] PASSED tests/server/fastmcp/resources/test_resource_template.py::TestResourceTemplate::test_basemodel_conversion tests/server/fastmcp/resources/test_resource_template.py::TestResourceTemplate::test_custom_type_conversion tests/server/fastmcp/test_func_metadata.py::test_str_vs_int [gw9] [ 52%] PASSED tests/server/fastmcp/test_func_metadata.py::test_str_vs_int tests/server/fastmcp/test_func_metadata.py::test_str_annotation_preserves_json_string [gw5] [ 52%] PASSED tests/server/fastmcp/resources/test_resource_template.py::TestResourceTemplate::test_custom_type_conversion tests/server/fastmcp/resources/test_resource_template.py::TestResourceTemplateAnnotations::test_template_with_annotations [gw9] [ 52%] PASSED tests/server/fastmcp/test_func_metadata.py::test_str_annotation_preserves_json_string tests/server/fastmcp/test_func_metadata.py::test_str_annotation_runtime_validation [gw5] [ 52%] PASSED tests/server/fastmcp/resources/test_resource_template.py::TestResourceTemplateAnnotations::test_template_with_annotations [gw3] [ 52%] PASSED tests/server/fastmcp/resources/test_file_resources.py::TestFileResource::test_read_text_file tests/server/fastmcp/resources/test_file_resources.py::TestFileResource::test_read_binary_file [gw3] [ 53%] PASSED tests/server/fastmcp/resources/test_file_resources.py::TestFileResource::test_read_binary_file tests/server/fastmcp/servers/test_file_server.py::test_read_resource_file [gw8] [ 53%] PASSED tests/server/fastmcp/servers/test_file_server.py::test_list_resources tests/server/fastmcp/servers/test_file_server.py::test_read_resource_dir [gw9] [ 53%] PASSED tests/server/fastmcp/test_func_metadata.py::test_str_annotation_runtime_validation tests/server/fastmcp/test_func_metadata.py::test_structured_output_requires_return_annotation [gw0] [ 53%] PASSED tests/server/fastmcp/resources/test_resource_manager.py::TestResourceManagerMetadata::test_add_template_with_metadata [gw9] [ 53%] PASSED tests/server/fastmcp/test_func_metadata.py::test_structured_output_requires_return_annotation tests/server/fastmcp/test_func_metadata.py::test_structured_output_basemodel tests/server/fastmcp/resources/test_resource_manager.py::TestResourceManagerMetadata::test_add_template_without_metadata [gw9] [ 53%] PASSED tests/server/fastmcp/test_func_metadata.py::test_structured_output_basemodel tests/server/fastmcp/test_func_metadata.py::test_structured_output_primitives [gw9] [ 53%] PASSED tests/server/fastmcp/test_func_metadata.py::test_structured_output_primitives tests/server/fastmcp/test_func_metadata.py::test_structured_output_generic_types [gw0] [ 53%] PASSED tests/server/fastmcp/resources/test_resource_manager.py::TestResourceManagerMetadata::test_add_template_without_metadata tests/server/fastmcp/resources/test_resource_template.py::TestResourceTemplate::test_template_creation [gw2] [ 53%] PASSED tests/server/fastmcp/auth/test_auth_integration.py::TestAuthEndpoints::test_client_registration_missing_required_fields tests/server/fastmcp/auth/test_auth_integration.py::TestAuthEndpoints::test_client_registration_invalid_uri [gw0] [ 53%] PASSED tests/server/fastmcp/resources/test_resource_template.py::TestResourceTemplate::test_template_creation [gw2] [ 53%] PASSED tests/server/fastmcp/auth/test_auth_integration.py::TestAuthEndpoints::test_client_registration_invalid_uri tests/server/fastmcp/resources/test_resource_template.py::TestResourceTemplate::test_template_matches tests/server/fastmcp/auth/test_auth_integration.py::TestAuthEndpoints::test_client_registration_empty_redirect_uris [gw2] [ 53%] PASSED tests/server/fastmcp/auth/test_auth_integration.py::TestAuthEndpoints::test_client_registration_empty_redirect_uris [gw0] [ 54%] PASSED tests/server/fastmcp/resources/test_resource_template.py::TestResourceTemplate::test_template_matches tests/server/fastmcp/resources/test_resource_template.py::TestResourceTemplate::test_template_matches_rejects_trailing_newline_after_literal [gw3] [ 54%] PASSED tests/server/fastmcp/servers/test_file_server.py::test_read_resource_file tests/server/fastmcp/resources/test_resource_template.py::TestResourceTemplateAnnotations::test_template_without_annotations tests/server/fastmcp/auth/test_auth_integration.py::TestAuthEndpoints::test_authorize_form_post tests/server/fastmcp/servers/test_file_server.py::test_delete_file [gw0] [ 54%] PASSED tests/server/fastmcp/resources/test_resource_template.py::TestResourceTemplate::test_template_matches_rejects_trailing_newline_after_literal tests/server/fastmcp/resources/test_resource_template.py::TestResourceTemplate::test_create_resource [gw0] [ 54%] PASSED tests/server/fastmcp/resources/test_resource_template.py::TestResourceTemplate::test_create_resource [gw2] [ 54%] PASSED tests/server/fastmcp/auth/test_auth_integration.py::TestAuthEndpoints::test_authorize_form_post tests/server/fastmcp/test_parameter_descriptions.py::test_parameter_descriptions tests/server/fastmcp/auth/test_auth_integration.py::TestAuthEndpoints::test_authorization_get [gw3] [ 54%] PASSED tests/server/fastmcp/servers/test_file_server.py::test_delete_file tests/server/fastmcp/servers/test_file_server.py::test_delete_file_and_check_resources [gw3] [ 54%] PASSED tests/server/fastmcp/servers/test_file_server.py::test_delete_file_and_check_resources tests/server/fastmcp/test_elicitation.py::test_stdio_elicitation [gw2] [ 54%] PASSED tests/server/fastmcp/auth/test_auth_integration.py::TestAuthEndpoints::test_authorization_get [gw0] [ 54%] PASSED tests/server/fastmcp/test_parameter_descriptions.py::test_parameter_descriptions tests/server/fastmcp/test_server.py::TestServer::test_create_server tests/server/fastmcp/auth/test_auth_integration.py::TestAuthorizeEndpointErrors::test_authorize_invalid_client_id tests/server/fastmcp/auth/test_auth_integration.py::TestAuthEndpoints::test_revoke_invalid_token [gw8] [ 54%] PASSED tests/server/fastmcp/servers/test_file_server.py::test_read_resource_dir [gw3] [ 54%] PASSED tests/server/fastmcp/test_elicitation.py::test_stdio_elicitation tests/server/fastmcp/test_integration.py::test_sampling[server_transport1] tests/server/fastmcp/test_elicitation.py::test_stdio_elicitation_decline [gw3] [ 55%] PASSED tests/server/fastmcp/test_elicitation.py::test_stdio_elicitation_decline tests/server/fastmcp/test_elicitation.py::test_elicitation_schema_validation [gw2] [ 55%] PASSED tests/server/fastmcp/auth/test_auth_integration.py::TestAuthEndpoints::test_revoke_invalid_token [gw0] [ 55%] PASSED tests/server/fastmcp/test_server.py::TestServer::test_create_server tests/server/fastmcp/test_server.py::TestServer::test_normalize_path tests/server/fastmcp/auth/test_auth_integration.py::TestAuthEndpoints::test_revoke_with_malformed_token [gw3] [ 55%] PASSED tests/server/fastmcp/test_elicitation.py::test_elicitation_schema_validation tests/server/fastmcp/test_elicitation.py::test_elicitation_with_optional_fields [gw9] [ 55%] PASSED tests/server/fastmcp/test_func_metadata.py::test_structured_output_generic_types [gw1] [ 55%] PASSED tests/server/fastmcp/auth/test_auth_integration.py::TestAuthorizeEndpointErrors::test_authorize_invalid_client_id [gw5] [ 55%] PASSED tests/server/fastmcp/resources/test_resource_template.py::TestResourceTemplateAnnotations::test_template_without_annotations tests/server/fastmcp/auth/test_auth_integration.py::TestAuthorizeEndpointErrors::test_authorize_missing_redirect_uri tests/server/fastmcp/test_func_metadata.py::test_structured_output_dataclass tests/server/fastmcp/resources/test_resource_template.py::TestResourceTemplateAnnotations::test_template_annotations_in_fastmcp [gw9] [ 55%] PASSED tests/server/fastmcp/test_func_metadata.py::test_structured_output_dataclass tests/server/fastmcp/test_func_metadata.py::test_structured_output_typeddict [gw9] [ 55%] PASSED tests/server/fastmcp/test_func_metadata.py::test_structured_output_typeddict [gw1] [ 55%] PASSED tests/server/fastmcp/auth/test_auth_integration.py::TestAuthorizeEndpointErrors::test_authorize_missing_redirect_uri [gw5] [ 55%] PASSED tests/server/fastmcp/resources/test_resource_template.py::TestResourceTemplateAnnotations::test_template_annotations_in_fastmcp tests/server/fastmcp/test_server.py::TestDnsRebindingProtection::test_auto_enabled_for_localhost tests/server/fastmcp/resources/test_resource_template.py::TestResourceTemplateAnnotations::test_template_created_resources_inherit_annotations tests/server/fastmcp/test_func_metadata.py::test_basemodel_reserved_names [gw5] [ 55%] PASSED tests/server/fastmcp/resources/test_resource_template.py::TestResourceTemplateAnnotations::test_template_created_resources_inherit_annotations tests/server/fastmcp/resources/test_resource_template.py::TestResourceTemplateMetadata::test_template_from_function_with_metadata [gw1] [ 56%] PASSED tests/server/fastmcp/test_func_metadata.py::test_basemodel_reserved_names tests/server/fastmcp/test_func_metadata.py::test_basemodel_reserved_names_validation [gw5] [ 56%] PASSED tests/server/fastmcp/resources/test_resource_template.py::TestResourceTemplateMetadata::test_template_from_function_with_metadata tests/server/fastmcp/resources/test_resource_template.py::TestResourceTemplateMetadata::test_template_created_resources_inherit_metadata [gw0] [ 56%] PASSED tests/server/fastmcp/test_server.py::TestServer::test_normalize_path [gw7] [ 56%] PASSED tests/issues/test_1363_race_condition_streamable_http.py::test_race_condition_invalid_content_type tests/issues/test_1363_race_condition_streamable_http.py::test_race_condition_message_router_async_for [gw9] [ 56%] PASSED tests/server/fastmcp/test_server.py::TestDnsRebindingProtection::test_auto_enabled_for_localhost [gw1] [ 56%] PASSED tests/server/fastmcp/test_func_metadata.py::test_basemodel_reserved_names_validation [gw5] [ 56%] PASSED tests/server/fastmcp/resources/test_resource_template.py::TestResourceTemplateMetadata::test_template_created_resources_inherit_metadata tests/server/fastmcp/test_func_metadata.py::test_basemodel_reserved_names_with_json_preparsing tests/server/fastmcp/resources/test_resources.py::TestResourceValidation::test_resource_uri_validation [gw5] [ 56%] PASSED tests/server/fastmcp/resources/test_resources.py::TestResourceValidation::test_resource_uri_validation tests/server/fastmcp/resources/test_resources.py::TestResourceValidation::test_resource_name_from_uri [gw1] [ 56%] PASSED tests/server/fastmcp/test_func_metadata.py::test_basemodel_reserved_names_with_json_preparsing tests/server/fastmcp/test_func_metadata.py::test_disallowed_type_qualifier [gw5] [ 56%] PASSED tests/server/fastmcp/resources/test_resources.py::TestResourceValidation::test_resource_name_from_uri [gw1] [ 56%] PASSED tests/server/fastmcp/test_func_metadata.py::test_disallowed_type_qualifier tests/server/fastmcp/test_func_metadata.py::test_preserves_pydantic_metadata [gw1] [ 56%] PASSED tests/server/fastmcp/test_func_metadata.py::test_preserves_pydantic_metadata tests/server/fastmcp/test_integration.py::test_basic_tools[server_transport0] tests/server/fastmcp/test_server.py::TestServerTools::test_tool_image_helper tests/server/fastmcp/test_server.py::TestDnsRebindingProtection::test_auto_enabled_for_ipv6_localhost tests/server/fastmcp/test_server.py::TestServer::test_sse_app_with_mount_path [gw9] [ 57%] PASSED tests/server/fastmcp/test_server.py::TestDnsRebindingProtection::test_auto_enabled_for_ipv6_localhost tests/server/fastmcp/test_server.py::TestDnsRebindingProtection::test_not_auto_enabled_for_other_hosts [gw9] [ 57%] PASSED tests/server/fastmcp/test_server.py::TestDnsRebindingProtection::test_not_auto_enabled_for_other_hosts tests/server/fastmcp/test_server.py::TestDnsRebindingProtection::test_explicit_settings_not_overridden [gw2] [ 57%] PASSED tests/server/fastmcp/auth/test_auth_integration.py::TestAuthEndpoints::test_revoke_with_malformed_token [gw0] [ 57%] PASSED tests/server/fastmcp/test_server.py::TestServer::test_sse_app_with_mount_path tests/server/fastmcp/test_server.py::TestServer::test_starlette_routes_with_mount_path tests/server/fastmcp/auth/test_auth_integration.py::TestAuthEndpoints::test_client_registration_disallowed_scopes [gw2] [ 57%] PASSED tests/server/fastmcp/auth/test_auth_integration.py::TestAuthEndpoints::test_client_registration_disallowed_scopes [gw0] [ 57%] PASSED tests/server/fastmcp/test_server.py::TestServer::test_starlette_routes_with_mount_path tests/server/fastmcp/test_server.py::TestServer::test_non_ascii_description tests/server/fastmcp/auth/test_auth_integration.py::TestAuthEndpoints::test_client_registration_default_scopes [gw2] [ 57%] PASSED tests/server/fastmcp/auth/test_auth_integration.py::TestAuthEndpoints::test_client_registration_default_scopes [gw9] [ 57%] PASSED tests/server/fastmcp/test_server.py::TestDnsRebindingProtection::test_explicit_settings_not_overridden tests/server/fastmcp/test_func_metadata.py::test_structured_output_ordinary_class [gw2] [ 57%] PASSED tests/server/fastmcp/test_func_metadata.py::test_structured_output_ordinary_class tests/server/fastmcp/test_func_metadata.py::test_unstructured_output_unannotated_class [gw2] [ 57%] PASSED tests/server/fastmcp/test_func_metadata.py::test_unstructured_output_unannotated_class tests/server/fastmcp/test_server.py::TestServerTools::test_add_tool tests/server/fastmcp/test_func_metadata.py::test_tool_call_result_is_unstructured_and_not_converted [gw2] [ 57%] PASSED tests/server/fastmcp/test_func_metadata.py::test_tool_call_result_is_unstructured_and_not_converted tests/server/fastmcp/test_func_metadata.py::test_tool_call_result_annotated_is_structured_and_converted [gw2] [ 58%] PASSED tests/server/fastmcp/test_func_metadata.py::test_tool_call_result_annotated_is_structured_and_converted tests/server/fastmcp/test_func_metadata.py::test_tool_call_result_annotated_is_structured_and_invalid [gw2] [ 58%] PASSED tests/server/fastmcp/test_func_metadata.py::test_tool_call_result_annotated_is_structured_and_invalid tests/server/fastmcp/test_func_metadata.py::test_tool_call_result_in_optional_is_rejected [gw2] [ 58%] PASSED tests/server/fastmcp/test_func_metadata.py::test_tool_call_result_in_optional_is_rejected tests/server/fastmcp/test_func_metadata.py::test_tool_call_result_in_union_is_rejected [gw2] [ 58%] PASSED tests/server/fastmcp/test_func_metadata.py::test_tool_call_result_in_union_is_rejected tests/server/fastmcp/test_func_metadata.py::test_tool_call_result_in_pipe_union_is_rejected [gw2] [ 58%] PASSED tests/server/fastmcp/test_func_metadata.py::test_tool_call_result_in_pipe_union_is_rejected tests/server/fastmcp/test_func_metadata.py::test_structured_output_with_field_descriptions [gw2] [ 58%] PASSED tests/server/fastmcp/test_func_metadata.py::test_structured_output_with_field_descriptions tests/server/fastmcp/test_func_metadata.py::test_structured_output_nested_models [gw6] [ 58%] PASSED tests/client/test_stdio.py::test_stdio_client_bad_path tests/client/test_stdio.py::test_stdio_client_nonexistent_command [gw9] [ 58%] PASSED tests/server/fastmcp/test_server.py::TestServerTools::test_add_tool tests/server/fastmcp/test_server.py::TestServerTools::test_list_tools [gw6] [ 58%] PASSED tests/client/test_stdio.py::test_stdio_client_nonexistent_command tests/client/test_stdio.py::test_stdio_client_universal_cleanup [gw5] [ 58%] PASSED tests/server/fastmcp/test_server.py::TestServerTools::test_tool_image_helper tests/server/fastmcp/test_server.py::TestServerTools::test_tool_audio_helper [gw9] [ 58%] PASSED tests/server/fastmcp/test_server.py::TestServerTools::test_list_tools tests/server/fastmcp/test_server.py::TestServerTools::test_call_tool [gw5] [ 58%] PASSED tests/server/fastmcp/test_server.py::TestServerTools::test_tool_audio_helper [gw9] [ 59%] PASSED tests/server/fastmcp/test_server.py::TestServerTools::test_call_tool tests/server/fastmcp/test_server.py::TestServerTools::test_tool_audio_suffix_detection[test.wav-audio/wav] tests/server/fastmcp/test_server.py::TestServerTools::test_tool_exception_handling [gw0] [ 59%] PASSED tests/server/fastmcp/test_server.py::TestServer::test_non_ascii_description tests/server/fastmcp/test_server.py::TestServer::test_add_tool_decorator [gw9] [ 59%] PASSED tests/server/fastmcp/test_server.py::TestServerTools::test_tool_exception_handling tests/server/fastmcp/test_server.py::TestServerTools::test_tool_error_handling [gw5] [ 59%] PASSED tests/server/fastmcp/test_server.py::TestServerTools::test_tool_audio_suffix_detection[test.wav-audio/wav] tests/server/fastmcp/test_server.py::TestServerTools::test_tool_audio_suffix_detection[test.mp3-audio/mpeg] [gw2] [ 59%] PASSED tests/server/fastmcp/test_func_metadata.py::test_structured_output_nested_models tests/server/fastmcp/test_func_metadata.py::test_structured_output_unserializable_type_error [gw2] [ 59%] PASSED tests/server/fastmcp/test_func_metadata.py::test_structured_output_unserializable_type_error tests/server/fastmcp/test_func_metadata.py::test_structured_output_aliases [gw2] [ 59%] PASSED tests/server/fastmcp/test_func_metadata.py::test_structured_output_aliases [gw0] [ 59%] PASSED tests/server/fastmcp/test_server.py::TestServer::test_add_tool_decorator tests/server/fastmcp/test_server.py::TestServerPrompts::test_prompt_decorator_with_description [gw9] [ 59%] PASSED tests/server/fastmcp/test_server.py::TestServerTools::test_tool_error_handling tests/server/fastmcp/test_server.py::TestServerTools::test_tool_error_details tests/server/fastmcp/test_server.py::TestServer::test_add_tool_decorator_incorrect_usage [gw2] [ 59%] PASSED tests/server/fastmcp/test_server.py::TestServerPrompts::test_prompt_decorator_with_description tests/server/fastmcp/test_server.py::TestServerPrompts::test_prompt_decorator_error [gw2] [ 59%] PASSED tests/server/fastmcp/test_server.py::TestServerPrompts::test_prompt_decorator_error [gw9] [ 60%] PASSED tests/server/fastmcp/test_server.py::TestServerTools::test_tool_error_details tests/server/fastmcp/test_server.py::TestServerTools::test_tool_return_value_conversion [gw0] [ 60%] PASSED tests/server/fastmcp/test_server.py::TestServer::test_add_tool_decorator_incorrect_usage tests/server/fastmcp/test_server.py::TestServer::test_add_resource_decorator tests/server/fastmcp/test_server.py::TestServerPrompts::test_list_prompts [gw0] [ 60%] PASSED tests/server/fastmcp/test_server.py::TestServer::test_add_resource_decorator [gw9] [ 60%] PASSED tests/server/fastmcp/test_server.py::TestServerTools::test_tool_return_value_conversion tests/server/fastmcp/test_server.py::TestContextInjection::test_context_logging tests/server/fastmcp/test_server.py::TestServer::test_add_resource_decorator_incorrect_usage [gw9] [ 60%] PASSED tests/server/fastmcp/test_server.py::TestContextInjection::test_context_logging tests/server/fastmcp/test_server.py::TestContextInjection::test_optional_context [gw9] [ 60%] PASSED tests/server/fastmcp/test_server.py::TestContextInjection::test_optional_context tests/server/fastmcp/test_server.py::TestContextInjection::test_context_resource_access [gw0] [ 60%] PASSED tests/server/fastmcp/test_server.py::TestServer::test_add_resource_decorator_incorrect_usage tests/server/fastmcp/test_server.py::TestDnsRebindingProtection::test_auto_enabled_for_127_0_0_1 [gw5] [ 60%] PASSED tests/server/fastmcp/test_server.py::TestServerTools::test_tool_audio_suffix_detection[test.mp3-audio/mpeg] tests/server/fastmcp/test_server.py::TestServerTools::test_tool_audio_suffix_detection[test.ogg-audio/ogg] [gw3] [ 60%] PASSED tests/server/fastmcp/test_elicitation.py::test_elicitation_with_optional_fields tests/server/fastmcp/test_elicitation.py::test_elicitation_with_default_values [gw5] [ 60%] PASSED tests/server/fastmcp/test_server.py::TestServerTools::test_tool_audio_suffix_detection[test.ogg-audio/ogg] tests/server/fastmcp/test_server.py::TestServerTools::test_tool_audio_suffix_detection[test.flac-audio/flac] [gw2] [ 60%] PASSED tests/server/fastmcp/test_server.py::TestServerPrompts::test_list_prompts tests/server/fastmcp/test_server.py::TestServerPrompts::test_get_prompt [gw7] [ 60%] PASSED tests/issues/test_1363_race_condition_streamable_http.py::test_race_condition_message_router_async_for tests/issues/test_141_resource_templates.py::test_resource_template_edge_cases [gw5] [ 61%] PASSED tests/server/fastmcp/test_server.py::TestServerTools::test_tool_audio_suffix_detection[test.flac-audio/flac] tests/server/fastmcp/test_server.py::TestServerTools::test_tool_audio_suffix_detection[test.aac-audio/aac] [gw7] [ 61%] PASSED tests/issues/test_141_resource_templates.py::test_resource_template_edge_cases tests/issues/test_152_resource_mime_type.py::test_fastmcp_resource_mime_type [gw2] [ 61%] PASSED tests/server/fastmcp/test_server.py::TestServerPrompts::test_get_prompt tests/server/fastmcp/test_server.py::TestServerPrompts::test_get_prompt_with_description [gw7] [ 61%] PASSED tests/issues/test_152_resource_mime_type.py::test_fastmcp_resource_mime_type tests/issues/test_152_resource_mime_type.py::test_lowlevel_resource_mime_type [gw5] [ 61%] PASSED tests/server/fastmcp/test_server.py::TestServerTools::test_tool_audio_suffix_detection[test.aac-audio/aac] tests/server/fastmcp/test_server.py::TestServerTools::test_tool_audio_suffix_detection[test.m4a-audio/mp4] [gw7] [ 61%] PASSED tests/issues/test_152_resource_mime_type.py::test_lowlevel_resource_mime_type tests/issues/test_1754_mime_type_parameters.py::test_mime_type_with_parameters [gw5] [ 61%] PASSED tests/server/fastmcp/test_server.py::TestServerTools::test_tool_audio_suffix_detection[test.m4a-audio/mp4] tests/server/fastmcp/test_server.py::TestServerTools::test_tool_audio_suffix_detection[test.unknown-application/octet-stream] [gw7] [ 61%] PASSED tests/issues/test_1754_mime_type_parameters.py::test_mime_type_with_parameters tests/issues/test_1754_mime_type_parameters.py::test_mime_type_with_parameters_and_space [gw7] [ 61%] PASSED tests/issues/test_1754_mime_type_parameters.py::test_mime_type_with_parameters_and_space tests/issues/test_1754_mime_type_parameters.py::test_mime_type_with_multiple_parameters [gw2] [ 61%] PASSED tests/server/fastmcp/test_server.py::TestServerPrompts::test_get_prompt_with_description tests/server/fastmcp/test_server.py::TestServerPrompts::test_get_prompt_without_description [gw0] [ 61%] PASSED tests/server/fastmcp/test_server.py::TestDnsRebindingProtection::test_auto_enabled_for_127_0_0_1 tests/server/fastmcp/test_server.py::TestServerResources::test_text_resource [gw7] [ 61%] PASSED tests/issues/test_1754_mime_type_parameters.py::test_mime_type_with_multiple_parameters tests/issues/test_1754_mime_type_parameters.py::test_mime_type_preserved_in_read_resource [gw7] [ 62%] PASSED tests/issues/test_1754_mime_type_parameters.py::test_mime_type_preserved_in_read_resource tests/issues/test_176_progress_token.py::test_progress_token_zero_first_call [gw7] [ 62%] PASSED tests/issues/test_176_progress_token.py::test_progress_token_zero_first_call tests/issues/test_192_request_id.py::test_request_id_match [gw0] [ 62%] PASSED tests/server/fastmcp/test_server.py::TestServerResources::test_text_resource tests/server/fastmcp/test_server.py::TestServerResources::test_binary_resource [gw7] [ 62%] PASSED tests/issues/test_192_request_id.py::test_request_id_match tests/issues/test_342_base64_encoding.py::test_server_base64_encoding_issue [gw7] [ 62%] PASSED tests/issues/test_342_base64_encoding.py::test_server_base64_encoding_issue tests/issues/test_552_windows_hang.py::test_windows_stdio_client_with_session [gw7] [ 62%] SKIPPED tests/issues/test_552_windows_hang.py::test_windows_stdio_client_with_session tests/server/fastmcp/test_tool_manager.py::TestCallTools::test_call_object_tool [gw7] [ 62%] PASSED tests/server/fastmcp/test_tool_manager.py::TestCallTools::test_call_object_tool tests/server/fastmcp/test_tool_manager.py::TestCallTools::test_call_async_object_tool [gw0] [ 62%] PASSED tests/server/fastmcp/test_server.py::TestServerResources::test_binary_resource tests/server/fastmcp/test_server.py::TestServerResources::test_file_resource_text [gw7] [ 62%] PASSED tests/server/fastmcp/test_tool_manager.py::TestCallTools::test_call_async_object_tool tests/server/fastmcp/test_tool_manager.py::TestCallTools::test_call_tool_with_default_args [gw7] [ 62%] PASSED tests/server/fastmcp/test_tool_manager.py::TestCallTools::test_call_tool_with_default_args tests/server/fastmcp/test_tool_manager.py::TestCallTools::test_call_tool_with_missing_args [gw7] [ 62%] PASSED tests/server/fastmcp/test_tool_manager.py::TestCallTools::test_call_tool_with_missing_args tests/server/fastmcp/test_tool_manager.py::TestCallTools::test_call_unknown_tool [gw0] [ 63%] PASSED tests/server/fastmcp/test_server.py::TestServerResources::test_file_resource_text tests/server/fastmcp/test_server.py::TestServerResources::test_file_resource_binary [gw7] [ 63%] PASSED tests/server/fastmcp/test_tool_manager.py::TestCallTools::test_call_unknown_tool tests/server/fastmcp/test_tool_manager.py::TestCallTools::test_call_tool_with_list_int_input [gw7] [ 63%] PASSED tests/server/fastmcp/test_tool_manager.py::TestCallTools::test_call_tool_with_list_int_input tests/server/fastmcp/test_tool_manager.py::TestCallTools::test_call_tool_with_list_str_or_str_input [gw7] [ 63%] PASSED tests/server/fastmcp/test_tool_manager.py::TestCallTools::test_call_tool_with_list_str_or_str_input tests/server/fastmcp/test_tool_manager.py::TestCallTools::test_call_tool_with_complex_model [gw0] [ 63%] PASSED tests/server/fastmcp/test_server.py::TestServerResources::test_file_resource_binary tests/server/fastmcp/test_server.py::TestServerResources::test_function_resource [gw7] [ 63%] PASSED tests/server/fastmcp/test_tool_manager.py::TestCallTools::test_call_tool_with_complex_model tests/server/fastmcp/test_tool_manager.py::TestToolSchema::test_context_arg_excluded_from_schema [gw7] [ 63%] PASSED tests/server/fastmcp/test_tool_manager.py::TestToolSchema::test_context_arg_excluded_from_schema tests/server/fastmcp/test_tool_manager.py::TestContextHandling::test_context_parameter_detection [gw0] [ 63%] PASSED tests/server/fastmcp/test_server.py::TestServerResources::test_function_resource [gw7] [ 63%] PASSED tests/server/fastmcp/test_tool_manager.py::TestContextHandling::test_context_parameter_detection tests/server/fastmcp/test_server.py::TestServerResourceTemplates::test_resource_with_params tests/server/fastmcp/test_tool_manager.py::TestContextHandling::test_context_injection [gw0] [ 63%] PASSED tests/server/fastmcp/test_server.py::TestServerResourceTemplates::test_resource_with_params tests/server/fastmcp/test_server.py::TestServerResourceTemplates::test_resource_with_uri_params [gw7] [ 63%] PASSED tests/server/fastmcp/test_tool_manager.py::TestContextHandling::test_context_injection tests/server/fastmcp/test_tool_manager.py::TestContextHandling::test_context_injection_async [gw0] [ 63%] PASSED tests/server/fastmcp/test_server.py::TestServerResourceTemplates::test_resource_with_uri_params [gw3] [ 64%] PASSED tests/server/fastmcp/test_elicitation.py::test_elicitation_with_default_values tests/server/fastmcp/test_elicitation.py::test_elicitation_with_enum_titles [gw9] [ 64%] PASSED tests/server/fastmcp/test_server.py::TestContextInjection::test_context_resource_access tests/server/fastmcp/test_server.py::TestContextInjection::test_resource_with_context [gw5] [ 64%] PASSED tests/server/fastmcp/test_server.py::TestServerTools::test_tool_audio_suffix_detection[test.unknown-application/octet-stream] tests/server/fastmcp/test_server.py::TestServerTools::test_tool_mixed_content tests/server/fastmcp/test_server.py::TestServerResourceTemplates::test_resource_with_untyped_params [gw2] [ 64%] PASSED tests/server/fastmcp/test_server.py::TestServerPrompts::test_get_prompt_without_description tests/server/fastmcp/test_server.py::TestServerPrompts::test_get_prompt_with_docstring_description [gw2] [ 64%] PASSED tests/server/fastmcp/test_server.py::TestServerPrompts::test_get_prompt_with_docstring_description tests/server/fastmcp/test_server.py::TestServerPrompts::test_get_prompt_with_resource [gw2] [ 64%] PASSED tests/server/fastmcp/test_server.py::TestServerPrompts::test_get_prompt_with_resource tests/server/fastmcp/test_server.py::TestServerPrompts::test_get_unknown_prompt [gw3] [ 64%] PASSED tests/server/fastmcp/test_elicitation.py::test_elicitation_with_enum_titles tests/server/fastmcp/test_func_metadata.py::test_complex_function_runtime_arg_validation_non_json [gw3] [ 64%] PASSED tests/server/fastmcp/test_func_metadata.py::test_complex_function_runtime_arg_validation_non_json tests/server/fastmcp/test_func_metadata.py::test_complex_function_runtime_arg_validation_with_json [gw3] [ 64%] PASSED tests/server/fastmcp/test_func_metadata.py::test_complex_function_runtime_arg_validation_with_json tests/server/fastmcp/test_func_metadata.py::test_str_vs_list_str [gw3] [ 64%] PASSED tests/server/fastmcp/test_func_metadata.py::test_str_vs_list_str tests/server/fastmcp/test_func_metadata.py::test_skip_names [gw3] [ 64%] PASSED tests/server/fastmcp/test_func_metadata.py::test_skip_names tests/server/fastmcp/test_server.py::TestServerTools::test_tool_structured_output_basemodel [gw9] [ 65%] PASSED tests/server/fastmcp/test_server.py::TestContextInjection::test_resource_with_context tests/server/fastmcp/test_server.py::TestContextInjection::test_resource_without_context [gw0] [ 65%] PASSED tests/server/fastmcp/test_server.py::TestServerResourceTemplates::test_resource_with_untyped_params tests/server/fastmcp/test_server.py::TestServerResourceTemplates::test_resource_matching_params [gw9] [ 65%] PASSED tests/server/fastmcp/test_server.py::TestContextInjection::test_resource_without_context [gw7] [ 65%] PASSED tests/server/fastmcp/test_tool_manager.py::TestContextHandling::test_context_injection_async tests/server/fastmcp/test_server.py::TestContextInjection::test_resource_context_custom_name tests/server/fastmcp/test_tool_manager.py::TestContextHandling::test_context_optional [gw2] [ 65%] PASSED tests/server/fastmcp/test_server.py::TestServerPrompts::test_get_unknown_prompt tests/server/fastmcp/test_server.py::TestServerPrompts::test_get_prompt_missing_args [gw0] [ 65%] PASSED tests/server/fastmcp/test_server.py::TestServerResourceTemplates::test_resource_matching_params tests/server/fastmcp/test_server.py::TestServerResourceTemplates::test_resource_mismatched_params [gw7] [ 65%] PASSED tests/server/fastmcp/test_tool_manager.py::TestContextHandling::test_context_optional tests/server/fastmcp/test_tool_manager.py::TestContextHandling::test_context_error_handling [gw0] [ 65%] PASSED tests/server/fastmcp/test_server.py::TestServerResourceTemplates::test_resource_mismatched_params tests/server/fastmcp/test_tool_manager.py::TestStructuredOutput::test_tool_with_primitive_output [gw9] [ 65%] PASSED tests/server/fastmcp/test_server.py::TestContextInjection::test_resource_context_custom_name tests/server/fastmcp/test_server.py::TestContextInjection::test_prompt_with_context [gw9] [ 65%] PASSED tests/server/fastmcp/test_server.py::TestContextInjection::test_prompt_with_context tests/server/fastmcp/test_server.py::TestContextInjection::test_prompt_without_context [gw9] [ 65%] PASSED tests/server/fastmcp/test_server.py::TestContextInjection::test_prompt_without_context tests/server/fastmcp/test_server.py::TestServerPrompts::test_prompt_decorator [gw9] [ 65%] PASSED tests/server/fastmcp/test_server.py::TestServerPrompts::test_prompt_decorator tests/server/fastmcp/test_server.py::TestServerPrompts::test_prompt_decorator_with_name [gw9] [ 66%] PASSED tests/server/fastmcp/test_server.py::TestServerPrompts::test_prompt_decorator_with_name tests/server/fastmcp/test_tool_manager.py::TestRemoveTools::test_remove_existing_tool [gw9] [ 66%] PASSED tests/server/fastmcp/test_tool_manager.py::TestRemoveTools::test_remove_existing_tool tests/server/fastmcp/test_tool_manager.py::TestRemoveTools::test_remove_nonexistent_tool [gw9] [ 66%] PASSED tests/server/fastmcp/test_tool_manager.py::TestRemoveTools::test_remove_nonexistent_tool tests/server/fastmcp/test_tool_manager.py::TestRemoveTools::test_remove_tool_from_multiple_tools [gw9] [ 66%] PASSED tests/server/fastmcp/test_tool_manager.py::TestRemoveTools::test_remove_tool_from_multiple_tools tests/server/fastmcp/test_tool_manager.py::TestRemoveTools::test_call_removed_tool_raises_error [gw9] [ 66%] PASSED tests/server/fastmcp/test_tool_manager.py::TestRemoveTools::test_call_removed_tool_raises_error tests/server/fastmcp/test_tool_manager.py::TestRemoveTools::test_remove_tool_case_sensitive [gw9] [ 66%] PASSED tests/server/fastmcp/test_tool_manager.py::TestRemoveTools::test_remove_tool_case_sensitive tests/server/fastmcp/test_url_elicitation.py::test_url_elicitation_accept [gw7] [ 66%] PASSED tests/server/fastmcp/test_tool_manager.py::TestContextHandling::test_context_error_handling tests/server/fastmcp/test_tool_manager.py::TestToolAnnotations::test_tool_annotations [gw7] [ 66%] PASSED tests/server/fastmcp/test_tool_manager.py::TestToolAnnotations::test_tool_annotations tests/server/fastmcp/test_tool_manager.py::TestToolAnnotations::test_tool_annotations_in_fastmcp [gw7] [ 66%] PASSED tests/server/fastmcp/test_tool_manager.py::TestToolAnnotations::test_tool_annotations_in_fastmcp tests/server/fastmcp/test_tool_manager.py::TestStructuredOutput::test_tool_with_basemodel_output [gw7] [ 66%] PASSED tests/server/fastmcp/test_tool_manager.py::TestStructuredOutput::test_tool_with_basemodel_output tests/server/fastmcp/test_tool_manager.py::TestToolMetadata::test_add_tool_with_metadata [gw7] [ 66%] PASSED tests/server/fastmcp/test_tool_manager.py::TestToolMetadata::test_add_tool_with_metadata tests/server/fastmcp/test_tool_manager.py::TestToolMetadata::test_add_tool_without_metadata [gw7] [ 66%] PASSED tests/server/fastmcp/test_tool_manager.py::TestToolMetadata::test_add_tool_without_metadata tests/server/fastmcp/test_tool_manager.py::TestToolMetadata::test_metadata_in_fastmcp_decorator [gw7] [ 67%] PASSED tests/server/fastmcp/test_tool_manager.py::TestToolMetadata::test_metadata_in_fastmcp_decorator tests/server/fastmcp/test_tool_manager.py::TestToolMetadata::test_metadata_in_list_tools [gw7] [ 67%] PASSED tests/server/fastmcp/test_tool_manager.py::TestToolMetadata::test_metadata_in_list_tools tests/server/fastmcp/test_tool_manager.py::TestToolMetadata::test_multiple_tools_with_different_metadata [gw7] [ 67%] PASSED tests/server/fastmcp/test_tool_manager.py::TestToolMetadata::test_multiple_tools_with_different_metadata tests/server/fastmcp/test_tool_manager.py::TestToolMetadata::test_metadata_with_complex_structure [gw7] [ 67%] PASSED tests/server/fastmcp/test_tool_manager.py::TestToolMetadata::test_metadata_with_complex_structure tests/server/fastmcp/test_tool_manager.py::TestToolMetadata::test_metadata_empty_dict [gw7] [ 67%] PASSED tests/server/fastmcp/test_tool_manager.py::TestToolMetadata::test_metadata_empty_dict [gw2] [ 67%] PASSED tests/server/fastmcp/test_server.py::TestServerPrompts::test_get_prompt_missing_args tests/server/fastmcp/test_title.py::test_tool_title_precedence [gw2] [ 67%] PASSED tests/server/fastmcp/test_title.py::test_tool_title_precedence tests/server/fastmcp/test_title.py::test_prompt_title [gw2] [ 67%] PASSED tests/server/fastmcp/test_title.py::test_prompt_title tests/server/fastmcp/test_title.py::test_resource_title [gw2] [ 67%] PASSED tests/server/fastmcp/test_title.py::test_resource_title tests/server/fastmcp/test_title.py::test_get_display_name_utility [gw2] [ 67%] PASSED tests/server/fastmcp/test_title.py::test_get_display_name_utility tests/server/fastmcp/test_tool_manager.py::TestAddTools::test_basic_function [gw2] [ 67%] PASSED tests/server/fastmcp/test_tool_manager.py::TestAddTools::test_basic_function tests/server/fastmcp/test_tool_manager.py::TestAddTools::test_init_with_tools [gw2] [ 68%] PASSED tests/server/fastmcp/test_tool_manager.py::TestAddTools::test_init_with_tools tests/server/fastmcp/test_tool_manager.py::TestAddTools::test_async_function [gw5] [ 68%] PASSED tests/server/fastmcp/test_server.py::TestServerTools::test_tool_mixed_content tests/server/fastmcp/test_server.py::TestServerTools::test_tool_mixed_list_with_audio_and_image [gw3] [ 68%] PASSED tests/server/fastmcp/test_server.py::TestServerTools::test_tool_structured_output_basemodel tests/server/fastmcp/test_server.py::TestServerTools::test_tool_structured_output_primitive [gw3] [ 68%] PASSED tests/server/fastmcp/test_server.py::TestServerTools::test_tool_structured_output_primitive tests/server/fastmcp/test_server.py::TestServerTools::test_tool_structured_output_list [gw3] [ 68%] PASSED tests/server/fastmcp/test_server.py::TestServerTools::test_tool_structured_output_list tests/server/fastmcp/test_server.py::TestServerTools::test_tool_structured_output_server_side_validation_error [gw0] [ 68%] PASSED tests/server/fastmcp/test_tool_manager.py::TestStructuredOutput::test_tool_with_primitive_output tests/server/fastmcp/test_tool_manager.py::TestStructuredOutput::test_tool_with_typeddict_output [gw0] [ 68%] PASSED tests/server/fastmcp/test_tool_manager.py::TestStructuredOutput::test_tool_with_typeddict_output tests/server/fastmcp/test_tool_manager.py::TestStructuredOutput::test_tool_with_dataclass_output [gw0] [ 68%] PASSED tests/server/fastmcp/test_tool_manager.py::TestStructuredOutput::test_tool_with_dataclass_output tests/server/fastmcp/test_tool_manager.py::TestStructuredOutput::test_tool_with_list_output [gw0] [ 68%] PASSED tests/server/fastmcp/test_tool_manager.py::TestStructuredOutput::test_tool_with_list_output tests/server/fastmcp/test_tool_manager.py::TestStructuredOutput::test_tool_without_structured_output [gw0] [ 68%] PASSED tests/server/fastmcp/test_tool_manager.py::TestStructuredOutput::test_tool_without_structured_output tests/server/fastmcp/test_tool_manager.py::TestStructuredOutput::test_tool_output_schema_property [gw0] [ 68%] PASSED tests/server/fastmcp/test_tool_manager.py::TestStructuredOutput::test_tool_output_schema_property tests/server/fastmcp/test_tool_manager.py::TestStructuredOutput::test_tool_with_dict_str_any_output [gw0] [ 68%] PASSED tests/server/fastmcp/test_tool_manager.py::TestStructuredOutput::test_tool_with_dict_str_any_output tests/server/fastmcp/test_tool_manager.py::TestToolMetadata::test_metadata_with_annotations [gw2] [ 69%] PASSED tests/server/fastmcp/test_tool_manager.py::TestAddTools::test_async_function tests/server/fastmcp/test_tool_manager.py::TestAddTools::test_pydantic_model_function tests/server/fastmcp/test_tool_manager.py::TestStructuredOutput::test_tool_with_dict_str_typed_output [gw2] [ 69%] PASSED tests/server/fastmcp/test_tool_manager.py::TestAddTools::test_pydantic_model_function tests/server/lowlevel/test_func_inspection.py::test_optional_typed_request_with_default_none_is_deprecated [gw9] [ 69%] PASSED tests/server/fastmcp/test_url_elicitation.py::test_url_elicitation_accept tests/server/fastmcp/test_url_elicitation.py::test_url_elicitation_decline [gw7] [ 69%] PASSED tests/server/fastmcp/test_tool_manager.py::TestToolMetadata::test_metadata_with_annotations tests/server/fastmcp/test_url_elicitation_error_throw.py::test_url_elicitation_error_thrown_from_tool [gw2] [ 69%] PASSED tests/server/lowlevel/test_func_inspection.py::test_optional_typed_request_with_default_none_is_deprecated tests/server/lowlevel/test_func_inspection.py::test_untyped_request_param_is_deprecated [gw3] [ 69%] PASSED tests/server/fastmcp/test_server.py::TestServerTools::test_tool_structured_output_server_side_validation_error tests/server/fastmcp/test_server.py::TestServerTools::test_tool_structured_output_dict_str_any [gw0] [ 69%] PASSED tests/server/fastmcp/test_tool_manager.py::TestStructuredOutput::test_tool_with_dict_str_typed_output tests/server/lowlevel/test_func_inspection.py::test_keyword_only_param_with_correct_type [gw2] [ 69%] PASSED tests/server/lowlevel/test_func_inspection.py::test_untyped_request_param_is_deprecated tests/server/lowlevel/test_func_inspection.py::test_any_typed_request_param_is_deprecated [gw0] [ 69%] PASSED tests/server/lowlevel/test_func_inspection.py::test_keyword_only_param_with_correct_type [gw5] [ 69%] PASSED tests/server/fastmcp/test_server.py::TestServerTools::test_tool_mixed_list_with_audio_and_image tests/server/fastmcp/test_tool_manager.py::TestAddTools::test_add_callable_object tests/server/lowlevel/test_func_inspection.py::test_different_request_types [gw5] [ 69%] PASSED tests/server/fastmcp/test_tool_manager.py::TestAddTools::test_add_callable_object tests/server/fastmcp/test_tool_manager.py::TestAddTools::test_add_async_callable_object [gw0] [ 70%] PASSED tests/server/lowlevel/test_func_inspection.py::test_different_request_types [gw2] [ 70%] PASSED tests/server/lowlevel/test_func_inspection.py::test_any_typed_request_param_is_deprecated tests/server/lowlevel/test_func_inspection.py::test_mixed_params_with_typed_request tests/server/lowlevel/test_func_inspection.py::test_generic_typed_request_param_is_deprecated [gw5] [ 70%] PASSED tests/server/fastmcp/test_tool_manager.py::TestAddTools::test_add_async_callable_object [gw0] [ 70%] PASSED tests/server/lowlevel/test_func_inspection.py::test_mixed_params_with_typed_request [gw2] [ 70%] PASSED tests/server/lowlevel/test_func_inspection.py::test_generic_typed_request_param_is_deprecated tests/server/lowlevel/test_helper_types.py::TestReadResourceContentsMetadata::test_read_resource_contents_with_metadata tests/server/fastmcp/test_tool_manager.py::TestAddTools::test_add_invalid_tool [gw0] [ 70%] PASSED tests/server/lowlevel/test_helper_types.py::TestReadResourceContentsMetadata::test_read_resource_contents_with_metadata tests/server/lowlevel/test_helper_types.py::TestReadResourceContentsMetadata::test_read_resource_contents_without_metadata tests/server/lowlevel/test_func_inspection.py::test_wrong_typed_request_param_is_deprecated [gw0] [ 70%] PASSED tests/server/lowlevel/test_helper_types.py::TestReadResourceContentsMetadata::test_read_resource_contents_without_metadata tests/server/lowlevel/test_helper_types.py::TestReadResourceContentsMetadata::test_read_resource_contents_with_bytes [gw0] [ 70%] PASSED tests/server/lowlevel/test_helper_types.py::TestReadResourceContentsMetadata::test_read_resource_contents_with_bytes [gw5] [ 70%] PASSED tests/server/fastmcp/test_tool_manager.py::TestAddTools::test_add_invalid_tool tests/server/lowlevel/test_server_listing.py::test_list_prompts_basic tests/server/fastmcp/test_tool_manager.py::TestAddTools::test_add_lambda [gw7] [ 70%] PASSED tests/server/fastmcp/test_url_elicitation_error_throw.py::test_url_elicitation_error_thrown_from_tool [gw0] [ 70%] PASSED tests/server/lowlevel/test_server_listing.py::test_list_prompts_basic tests/server/fastmcp/test_url_elicitation_error_throw.py::test_url_elicitation_error_from_error tests/server/lowlevel/test_server_pagination.py::test_list_tools_pagination [gw3] [ 70%] PASSED tests/server/fastmcp/test_server.py::TestServerTools::test_tool_structured_output_dict_str_any [gw2] [ 71%] PASSED tests/server/lowlevel/test_func_inspection.py::test_wrong_typed_request_param_is_deprecated [gw0] [ 71%] PASSED tests/server/lowlevel/test_server_pagination.py::test_list_tools_pagination tests/server/fastmcp/test_server.py::TestServerTools::test_tool_structured_output_dict_str_typed [gw5] [ 71%] PASSED tests/server/fastmcp/test_tool_manager.py::TestAddTools::test_add_lambda tests/server/test_cancel_handling.py::test_server_remains_functional_after_cancel tests/server/lowlevel/test_func_inspection.py::test_required_param_before_typed_request_attempts_to_pass tests/server/fastmcp/test_tool_manager.py::TestAddTools::test_add_lambda_with_no_name [gw9] [ 71%] PASSED tests/server/fastmcp/test_url_elicitation.py::test_url_elicitation_decline [gw5] [ 71%] PASSED tests/server/fastmcp/test_tool_manager.py::TestAddTools::test_add_lambda_with_no_name tests/server/fastmcp/test_url_elicitation.py::test_url_elicitation_cancel tests/server/fastmcp/test_tool_manager.py::TestAddTools::test_warn_on_duplicate_tools [gw2] [ 71%] PASSED tests/server/lowlevel/test_func_inspection.py::test_required_param_before_typed_request_attempts_to_pass tests/server/lowlevel/test_func_inspection.py::test_positional_only_param_with_correct_type [gw0] [ 71%] PASSED tests/server/test_cancel_handling.py::test_server_remains_functional_after_cancel tests/server/test_cancel_handling.py::test_server_cancels_in_flight_handlers_on_transport_close [gw5] [ 71%] PASSED tests/server/fastmcp/test_tool_manager.py::TestAddTools::test_warn_on_duplicate_tools [gw2] [ 71%] PASSED tests/server/lowlevel/test_func_inspection.py::test_positional_only_param_with_correct_type [gw0] [ 71%] PASSED tests/server/test_cancel_handling.py::test_server_cancels_in_flight_handlers_on_transport_close tests/server/test_cancel_handling.py::test_server_handles_transport_close_with_pending_server_to_client_requests tests/server/lowlevel/test_server_listing.py::test_list_resources_basic tests/server/fastmcp/test_tool_manager.py::TestAddTools::test_disable_warn_on_duplicate_tools [gw0] [ 71%] PASSED tests/server/test_cancel_handling.py::test_server_handles_transport_close_with_pending_server_to_client_requests tests/server/test_completion_with_context.py::test_completion_handler_receives_context [gw0] [ 71%] PASSED tests/server/test_completion_with_context.py::test_completion_handler_receives_context tests/server/test_completion_with_context.py::test_completion_backward_compatibility [gw0] [ 72%] PASSED tests/server/test_completion_with_context.py::test_completion_backward_compatibility tests/server/test_completion_with_context.py::test_dependent_completion_scenario [gw5] [ 72%] PASSED tests/server/fastmcp/test_tool_manager.py::TestAddTools::test_disable_warn_on_duplicate_tools [gw0] [ 72%] PASSED tests/server/test_completion_with_context.py::test_dependent_completion_scenario tests/server/test_lowlevel_exception_handling.py::test_exception_handling_with_raise_exceptions_false[Exception-Basic error] tests/server/fastmcp/test_tool_manager.py::TestCallTools::test_call_tool [gw0] [ 72%] PASSED tests/server/test_lowlevel_exception_handling.py::test_exception_handling_with_raise_exceptions_false[Exception-Basic error] tests/server/test_lowlevel_exception_handling.py::test_normal_message_handling_not_affected [gw5] [ 72%] PASSED tests/server/fastmcp/test_tool_manager.py::TestCallTools::test_call_tool tests/server/fastmcp/test_tool_manager.py::TestCallTools::test_call_async_tool [gw0] [ 72%] PASSED tests/server/test_lowlevel_exception_handling.py::test_normal_message_handling_not_affected tests/server/test_lowlevel_input_validation.py::test_valid_tool_call [gw5] [ 72%] PASSED tests/server/fastmcp/test_tool_manager.py::TestCallTools::test_call_async_tool tests/server/test_completion_with_context.py::test_completion_error_on_missing_context [gw5] [ 72%] PASSED tests/server/test_completion_with_context.py::test_completion_error_on_missing_context tests/server/test_lifespan.py::test_lowlevel_server_lifespan [gw0] [ 72%] PASSED tests/server/test_lowlevel_input_validation.py::test_valid_tool_call tests/server/test_lowlevel_input_validation.py::test_invalid_tool_call_missing_required [gw2] [ 72%] PASSED tests/server/lowlevel/test_server_listing.py::test_list_resources_basic tests/server/lowlevel/test_server_listing.py::test_list_tools_basic [gw7] [ 72%] PASSED tests/server/fastmcp/test_url_elicitation_error_throw.py::test_url_elicitation_error_from_error tests/server/fastmcp/test_url_elicitation_error_throw.py::test_normal_exceptions_still_return_error_result [gw2] [ 73%] PASSED tests/server/lowlevel/test_server_listing.py::test_list_tools_basic tests/server/lowlevel/test_server_listing.py::test_list_prompts_empty [gw2] [ 73%] PASSED tests/server/lowlevel/test_server_listing.py::test_list_prompts_empty tests/server/lowlevel/test_server_listing.py::test_list_resources_empty [gw2] [ 73%] PASSED tests/server/lowlevel/test_server_listing.py::test_list_resources_empty tests/server/lowlevel/test_server_listing.py::test_list_tools_empty [gw5] [ 73%] PASSED tests/server/test_lifespan.py::test_lowlevel_server_lifespan [gw2] [ 73%] PASSED tests/server/lowlevel/test_server_listing.py::test_list_tools_empty tests/server/lowlevel/test_server_pagination.py::test_list_prompts_pagination tests/server/test_lifespan.py::test_fastmcp_server_lifespan [gw3] [ 73%] PASSED tests/server/fastmcp/test_server.py::TestServerTools::test_tool_structured_output_dict_str_typed [gw2] [ 73%] PASSED tests/server/lowlevel/test_server_pagination.py::test_list_prompts_pagination tests/server/lowlevel/test_server_pagination.py::test_list_resources_pagination [gw2] [ 73%] PASSED tests/server/lowlevel/test_server_pagination.py::test_list_resources_pagination tests/server/test_lowlevel_output_validation.py::test_valid_dict_with_output_schema tests/server/fastmcp/test_server.py::TestServerTools::test_remove_tool [gw9] [ 73%] PASSED tests/server/fastmcp/test_url_elicitation.py::test_url_elicitation_cancel [gw3] [ 73%] PASSED tests/server/fastmcp/test_server.py::TestServerTools::test_remove_tool tests/server/fastmcp/test_server.py::TestServerTools::test_remove_nonexistent_tool tests/server/fastmcp/test_url_elicitation.py::test_url_elicitation_helper_function [gw3] [ 73%] PASSED tests/server/fastmcp/test_server.py::TestServerTools::test_remove_nonexistent_tool [gw2] [ 73%] PASSED tests/server/test_lowlevel_output_validation.py::test_valid_dict_with_output_schema tests/server/fastmcp/test_server.py::TestServerTools::test_remove_tool_and_list tests/server/test_lowlevel_output_validation.py::test_invalid_dict_with_output_schema [gw7] [ 74%] PASSED tests/server/fastmcp/test_url_elicitation_error_throw.py::test_normal_exceptions_still_return_error_result tests/server/lowlevel/test_func_inspection.py::test_no_params_returns_deprecated_wrapper [gw2] [ 74%] PASSED tests/server/test_lowlevel_output_validation.py::test_invalid_dict_with_output_schema tests/server/test_lowlevel_output_validation.py::test_both_content_and_valid_dict_with_output_schema [gw7] [ 74%] PASSED tests/server/lowlevel/test_func_inspection.py::test_no_params_returns_deprecated_wrapper tests/server/lowlevel/test_func_inspection.py::test_param_with_default_returns_deprecated_wrapper [gw7] [ 74%] PASSED tests/server/lowlevel/test_func_inspection.py::test_param_with_default_returns_deprecated_wrapper tests/server/lowlevel/test_func_inspection.py::test_typed_request_param_passes_request [gw9] [ 74%] PASSED tests/server/fastmcp/test_url_elicitation.py::test_url_elicitation_helper_function [gw7] [ 74%] PASSED tests/server/lowlevel/test_func_inspection.py::test_typed_request_param_passes_request tests/server/lowlevel/test_func_inspection.py::test_typed_request_with_default_param_passes_request tests/server/fastmcp/test_url_elicitation.py::test_url_no_content_in_response [gw3] [ 74%] PASSED tests/server/fastmcp/test_server.py::TestServerTools::test_remove_tool_and_list [gw7] [ 74%] PASSED tests/server/lowlevel/test_func_inspection.py::test_typed_request_with_default_param_passes_request [gw2] [ 74%] PASSED tests/server/test_lowlevel_output_validation.py::test_both_content_and_valid_dict_with_output_schema tests/server/fastmcp/test_server.py::TestServerTools::test_remove_tool_and_call tests/server/test_session.py::test_ping_request_before_initialization tests/server/test_lowlevel_output_validation.py::test_tool_call_result [gw7] [ 74%] PASSED tests/server/test_session.py::test_ping_request_before_initialization tests/server/test_session.py::test_create_message_tool_result_validation [gw2] [ 74%] PASSED tests/server/test_lowlevel_output_validation.py::test_tool_call_result tests/server/test_lowlevel_output_validation.py::test_output_schema_type_validation [gw2] [ 75%] PASSED tests/server/test_lowlevel_output_validation.py::test_output_schema_type_validation tests/server/test_lowlevel_tool_annotations.py::test_lowlevel_server_tool_annotations [gw9] [ 75%] PASSED tests/server/fastmcp/test_url_elicitation.py::test_url_no_content_in_response tests/server/fastmcp/test_url_elicitation.py::test_form_mode_still_works [gw2] [ 75%] PASSED tests/server/test_lowlevel_tool_annotations.py::test_lowlevel_server_tool_annotations tests/server/test_sse_security.py::test_sse_post_requires_the_credential_that_created_the_session[unauthenticated-sender] [gw2] [ 75%] PASSED tests/server/test_sse_security.py::test_sse_post_requires_the_credential_that_created_the_session[unauthenticated-sender] tests/server/test_sse_security.py::test_sse_post_requires_the_credential_that_created_the_session[same-client-different-subject] [gw2] [ 75%] PASSED tests/server/test_sse_security.py::test_sse_post_requires_the_credential_that_created_the_session[same-client-different-subject] tests/server/test_sse_security.py::test_sse_post_requires_the_credential_that_created_the_session[same-client-no-subject] [gw2] [ 75%] PASSED tests/server/test_sse_security.py::test_sse_post_requires_the_credential_that_created_the_session[same-client-no-subject] tests/server/test_sse_security.py::test_sse_post_requires_the_credential_that_created_the_session[different-issuer] [gw2] [ 75%] PASSED tests/server/test_sse_security.py::test_sse_post_requires_the_credential_that_created_the_session[different-issuer] tests/server/test_sse_security.py::test_sse_post_requires_the_credential_that_created_the_session[unauthenticated-creator] [gw2] [ 75%] PASSED tests/server/test_sse_security.py::test_sse_post_requires_the_credential_that_created_the_session[unauthenticated-creator] tests/server/test_sse_security.py::test_sse_post_requires_the_credential_that_created_the_session[same-client] [gw5] [ 75%] PASSED tests/server/test_lifespan.py::test_fastmcp_server_lifespan tests/server/test_lowlevel_exception_handling.py::test_exception_handling_with_raise_exceptions_true [gw5] [ 75%] PASSED tests/server/test_lowlevel_exception_handling.py::test_exception_handling_with_raise_exceptions_true [gw7] [ 75%] PASSED tests/server/test_session.py::test_create_message_tool_result_validation tests/server/test_lowlevel_exception_handling.py::test_exception_handling_with_raise_exceptions_false[ValueError-Test validation error] tests/server/test_session.py::test_create_message_without_tools_capability [gw0] [ 75%] PASSED tests/server/test_lowlevel_input_validation.py::test_invalid_tool_call_missing_required [gw5] [ 76%] PASSED tests/server/test_lowlevel_exception_handling.py::test_exception_handling_with_raise_exceptions_false[ValueError-Test validation error] [gw3] [ 76%] PASSED tests/server/fastmcp/test_server.py::TestServerTools::test_remove_tool_and_call tests/server/test_lowlevel_exception_handling.py::test_exception_handling_with_raise_exceptions_false[RuntimeError-Test runtime error] tests/server/test_lowlevel_input_validation.py::test_invalid_tool_call_wrong_type tests/server/test_read_resource.py::test_read_resource_text [gw7] [ 76%] PASSED tests/server/test_session.py::test_create_message_without_tools_capability tests/server/test_session.py::test_other_requests_blocked_before_initialization [gw3] [ 76%] PASSED tests/server/test_read_resource.py::test_read_resource_text [gw5] [ 76%] PASSED tests/server/test_lowlevel_exception_handling.py::test_exception_handling_with_raise_exceptions_false[RuntimeError-Test runtime error] tests/server/test_read_resource.py::test_read_resource_binary tests/server/test_lowlevel_exception_handling.py::test_exception_handling_with_raise_exceptions_false[KeyError-Test key error] [gw3] [ 76%] PASSED tests/server/test_read_resource.py::test_read_resource_binary [gw5] [ 76%] PASSED tests/server/test_lowlevel_exception_handling.py::test_exception_handling_with_raise_exceptions_false[KeyError-Test key error] tests/server/test_read_resource.py::test_read_resource_default_mime tests/server/test_validation.py::TestCheckSamplingToolsCapability::test_returns_false_when_tools_none [gw5] [ 76%] PASSED tests/server/test_validation.py::TestCheckSamplingToolsCapability::test_returns_false_when_tools_none tests/server/test_validation.py::TestCheckSamplingToolsCapability::test_returns_true_when_tools_present [gw3] [ 76%] PASSED tests/server/test_read_resource.py::test_read_resource_default_mime [gw5] [ 76%] PASSED tests/server/test_validation.py::TestCheckSamplingToolsCapability::test_returns_true_when_tools_present [gw9] [ 76%] PASSED tests/server/fastmcp/test_url_elicitation.py::test_form_mode_still_works tests/server/fastmcp/test_url_elicitation.py::test_elicit_complete_notification tests/server/test_session.py::test_server_session_initialize tests/server/test_validation.py::TestValidateSamplingTools::test_no_error_when_tools_none [gw5] [ 76%] PASSED tests/server/test_validation.py::TestValidateSamplingTools::test_no_error_when_tools_none tests/server/test_validation.py::TestValidateSamplingTools::test_raises_when_tools_provided_but_no_capability [gw5] [ 77%] PASSED tests/server/test_validation.py::TestValidateSamplingTools::test_raises_when_tools_provided_but_no_capability tests/server/test_validation.py::TestValidateSamplingTools::test_raises_when_tool_choice_provided_but_no_capability [gw5] [ 77%] PASSED tests/server/test_validation.py::TestValidateSamplingTools::test_raises_when_tool_choice_provided_but_no_capability [gw3] [ 77%] PASSED tests/server/test_session.py::test_server_session_initialize tests/server/test_websocket_security.py::test_ws_security_allowed_origin tests/server/test_session.py::test_server_capabilities [gw0] [ 77%] PASSED tests/server/test_lowlevel_input_validation.py::test_invalid_tool_call_wrong_type [gw3] [ 77%] PASSED tests/server/test_session.py::test_server_capabilities tests/server/test_lowlevel_input_validation.py::test_cache_refresh_on_missing_tool tests/server/test_session.py::test_server_session_initialize_with_older_protocol_version [gw3] [ 77%] PASSED tests/server/test_session.py::test_server_session_initialize_with_older_protocol_version tests/server/test_validation.py::TestValidateToolUseResultMessages::test_raises_when_tool_result_ids_dont_match_tool_use [gw3] [ 77%] PASSED tests/server/test_validation.py::TestValidateToolUseResultMessages::test_raises_when_tool_result_ids_dont_match_tool_use tests/server/test_validation.py::TestValidateToolUseResultMessages::test_no_error_when_tool_result_matches_tool_use [gw3] [ 77%] PASSED tests/server/test_validation.py::TestValidateToolUseResultMessages::test_no_error_when_tool_result_matches_tool_use tests/server/test_websocket_security.py::test_ws_security_default_settings [gw0] [ 77%] PASSED tests/server/test_lowlevel_input_validation.py::test_cache_refresh_on_missing_tool tests/server/test_lowlevel_input_validation.py::test_enum_constraint_validation [gw0] [ 77%] PASSED tests/server/test_lowlevel_input_validation.py::test_enum_constraint_validation tests/server/test_lowlevel_input_validation.py::test_tool_not_in_list_logs_warning [gw0] [ 77%] PASSED tests/server/test_lowlevel_input_validation.py::test_tool_not_in_list_logs_warning tests/server/test_lowlevel_output_validation.py::test_content_only_without_output_schema [gw7] [ 78%] PASSED tests/server/test_session.py::test_other_requests_blocked_before_initialization tests/server/test_session_race_condition.py::test_request_immediately_after_initialize_response [gw7] [ 78%] PASSED tests/server/test_session_race_condition.py::test_request_immediately_after_initialize_response tests/server/test_sse_security.py::test_sse_post_requires_the_credential_that_created_the_session[different-client] [gw7] [ 78%] PASSED tests/server/test_sse_security.py::test_sse_post_requires_the_credential_that_created_the_session[different-client] tests/server/test_validation.py::TestValidateSamplingTools::test_no_error_when_capability_present [gw7] [ 78%] PASSED tests/server/test_validation.py::TestValidateSamplingTools::test_no_error_when_capability_present tests/server/test_validation.py::TestValidateToolUseResultMessages::test_no_error_for_empty_messages [gw9] [ 78%] PASSED tests/server/fastmcp/test_url_elicitation.py::test_elicit_complete_notification [gw7] [ 78%] PASSED tests/server/test_validation.py::TestValidateToolUseResultMessages::test_no_error_for_empty_messages tests/server/fastmcp/test_url_elicitation.py::test_url_elicitation_required_error_code tests/server/test_validation.py::TestValidateToolUseResultMessages::test_no_error_for_simple_text_messages [gw7] [ 78%] PASSED tests/server/test_validation.py::TestValidateToolUseResultMessages::test_no_error_for_simple_text_messages tests/server/test_validation.py::TestValidateToolUseResultMessages::test_raises_when_tool_result_mixed_with_other_content [gw7] [ 78%] PASSED tests/server/test_validation.py::TestValidateToolUseResultMessages::test_raises_when_tool_result_mixed_with_other_content tests/server/test_validation.py::TestValidateToolUseResultMessages::test_raises_when_tool_result_without_previous_tool_use [gw7] [ 78%] PASSED tests/server/test_validation.py::TestValidateToolUseResultMessages::test_raises_when_tool_result_without_previous_tool_use tests/shared/test_auth.py::TestOAuthMetadata::test_oauth_with_jarm [gw7] [ 78%] PASSED tests/shared/test_auth.py::TestOAuthMetadata::test_oauth_with_jarm tests/shared/test_auth.py::test_optional_url_empty_string_coerced_to_none[client_uri] [gw7] [ 78%] PASSED tests/shared/test_auth.py::test_optional_url_empty_string_coerced_to_none[client_uri] tests/shared/test_auth.py::test_optional_url_empty_string_coerced_to_none[logo_uri] [gw7] [ 78%] PASSED tests/shared/test_auth.py::test_optional_url_empty_string_coerced_to_none[logo_uri] [gw9] [ 79%] PASSED tests/server/fastmcp/test_url_elicitation.py::test_url_elicitation_required_error_code tests/shared/test_auth.py::test_optional_url_empty_string_coerced_to_none[tos_uri] [gw2] [ 79%] PASSED tests/server/test_sse_security.py::test_sse_post_requires_the_credential_that_created_the_session[same-client] tests/server/fastmcp/test_url_elicitation.py::test_elicit_url_typed_results tests/server/test_sse_security.py::test_sse_post_requires_the_credential_that_created_the_session[same-client-and-subject] [gw7] [ 79%] PASSED tests/shared/test_auth.py::test_optional_url_empty_string_coerced_to_none[tos_uri] tests/shared/test_auth.py::test_optional_url_empty_string_coerced_to_none[policy_uri] [gw7] [ 79%] PASSED tests/shared/test_auth.py::test_optional_url_empty_string_coerced_to_none[policy_uri] tests/shared/test_auth.py::test_optional_url_empty_string_coerced_to_none[jwks_uri] [gw7] [ 79%] PASSED tests/shared/test_auth.py::test_optional_url_empty_string_coerced_to_none[jwks_uri] tests/shared/test_auth.py::test_all_optional_urls_empty_together [gw2] [ 79%] PASSED tests/server/test_sse_security.py::test_sse_post_requires_the_credential_that_created_the_session[same-client-and-subject] tests/server/test_sse_security.py::test_sse_post_requires_the_credential_that_created_the_session[both-unauthenticated] [gw7] [ 79%] PASSED tests/shared/test_auth.py::test_all_optional_urls_empty_together tests/shared/test_auth.py::test_valid_url_passes_through_unchanged [gw2] [ 79%] PASSED tests/server/test_sse_security.py::test_sse_post_requires_the_credential_that_created_the_session[both-unauthenticated] tests/server/test_stdio.py::test_stdio_server [gw7] [ 79%] PASSED tests/shared/test_auth.py::test_valid_url_passes_through_unchanged tests/shared/test_auth.py::test_information_full_inherits_coercion [gw2] [ 79%] PASSED tests/server/test_stdio.py::test_stdio_server tests/server/test_stdio.py::test_stdio_server_invalid_utf8 [gw7] [ 79%] PASSED tests/shared/test_auth.py::test_information_full_inherits_coercion tests/shared/test_auth.py::test_invalid_non_empty_url_still_rejected [gw2] [ 80%] PASSED tests/server/test_stdio.py::test_stdio_server_invalid_utf8 [gw9] [ 80%] PASSED tests/server/fastmcp/test_url_elicitation.py::test_elicit_url_typed_results tests/server/test_validation.py::TestCheckSamplingToolsCapability::test_returns_false_when_caps_none tests/server/fastmcp/test_url_elicitation.py::test_deprecated_elicit_method [gw2] [ 80%] PASSED tests/server/test_validation.py::TestCheckSamplingToolsCapability::test_returns_false_when_caps_none [gw7] [ 80%] PASSED tests/shared/test_auth.py::test_invalid_non_empty_url_still_rejected tests/server/test_validation.py::TestCheckSamplingToolsCapability::test_returns_false_when_sampling_none [gw2] [ 80%] PASSED tests/server/test_validation.py::TestCheckSamplingToolsCapability::test_returns_false_when_sampling_none tests/shared/test_auth_utils.py::TestResourceUrlFromServerUrl::test_handles_pydantic_urls tests/shared/test_auth_utils.py::TestResourceUrlFromServerUrl::test_removes_fragment [gw2] [ 80%] PASSED tests/shared/test_auth_utils.py::TestResourceUrlFromServerUrl::test_handles_pydantic_urls tests/shared/test_auth_utils.py::TestCheckResourceAllowed::test_identical_urls [gw2] [ 80%] PASSED tests/shared/test_auth_utils.py::TestCheckResourceAllowed::test_identical_urls tests/shared/test_auth_utils.py::TestCheckResourceAllowed::test_different_schemes [gw2] [ 80%] PASSED tests/shared/test_auth_utils.py::TestCheckResourceAllowed::test_different_schemes tests/shared/test_auth_utils.py::TestCheckResourceAllowed::test_different_domains [gw2] [ 80%] PASSED tests/shared/test_auth_utils.py::TestCheckResourceAllowed::test_different_domains tests/shared/test_auth_utils.py::TestCheckResourceAllowed::test_case_insensitive_origin [gw2] [ 80%] PASSED tests/shared/test_auth_utils.py::TestCheckResourceAllowed::test_case_insensitive_origin tests/shared/test_auth_utils.py::TestCheckResourceAllowed::test_empty_paths [gw2] [ 80%] PASSED tests/shared/test_auth_utils.py::TestCheckResourceAllowed::test_empty_paths tests/shared/test_exceptions.py::TestUrlElicitationRequiredError::test_create_with_single_elicitation [gw2] [ 80%] PASSED tests/shared/test_exceptions.py::TestUrlElicitationRequiredError::test_create_with_single_elicitation tests/shared/test_exceptions.py::TestUrlElicitationRequiredError::test_create_with_multiple_elicitations [gw2] [ 81%] PASSED tests/shared/test_exceptions.py::TestUrlElicitationRequiredError::test_create_with_multiple_elicitations [gw7] [ 81%] PASSED tests/shared/test_auth_utils.py::TestResourceUrlFromServerUrl::test_removes_fragment tests/shared/test_exceptions.py::TestUrlElicitationRequiredError::test_custom_message tests/shared/test_auth_utils.py::TestResourceUrlFromServerUrl::test_preserves_path [gw2] [ 81%] PASSED tests/shared/test_exceptions.py::TestUrlElicitationRequiredError::test_custom_message tests/shared/test_exceptions.py::TestUrlElicitationRequiredError::test_from_error_data [gw2] [ 81%] PASSED tests/shared/test_exceptions.py::TestUrlElicitationRequiredError::test_from_error_data tests/shared/test_exceptions.py::TestUrlElicitationRequiredError::test_from_error_data_wrong_code [gw2] [ 81%] PASSED tests/shared/test_exceptions.py::TestUrlElicitationRequiredError::test_from_error_data_wrong_code tests/shared/test_exceptions.py::TestUrlElicitationRequiredError::test_serialization_roundtrip [gw2] [ 81%] PASSED tests/shared/test_exceptions.py::TestUrlElicitationRequiredError::test_serialization_roundtrip [gw0] [ 81%] PASSED tests/server/test_lowlevel_output_validation.py::test_content_only_without_output_schema tests/server/test_lowlevel_output_validation.py::test_dict_only_without_output_schema [gw7] [ 81%] PASSED tests/shared/test_auth_utils.py::TestResourceUrlFromServerUrl::test_preserves_path tests/shared/test_auth_utils.py::TestResourceUrlFromServerUrl::test_preserves_query [gw7] [ 81%] PASSED tests/shared/test_auth_utils.py::TestResourceUrlFromServerUrl::test_preserves_query tests/shared/test_auth_utils.py::TestResourceUrlFromServerUrl::test_preserves_port [gw0] [ 81%] PASSED tests/server/test_lowlevel_output_validation.py::test_dict_only_without_output_schema tests/server/test_lowlevel_output_validation.py::test_both_content_and_dict_without_output_schema [gw7] [ 81%] PASSED tests/shared/test_auth_utils.py::TestResourceUrlFromServerUrl::test_preserves_port [gw0] [ 81%] PASSED tests/server/test_lowlevel_output_validation.py::test_both_content_and_dict_without_output_schema tests/server/test_lowlevel_output_validation.py::test_content_only_with_output_schema_error tests/shared/test_auth_utils.py::TestResourceUrlFromServerUrl::test_lowercase_scheme_and_host [gw7] [ 82%] PASSED tests/shared/test_auth_utils.py::TestResourceUrlFromServerUrl::test_lowercase_scheme_and_host tests/shared/test_httpx_utils.py::test_custom_parameters tests/shared/test_exceptions.py::TestUrlElicitationRequiredError::test_error_data_contains_elicitations [gw0] [ 82%] PASSED tests/server/test_lowlevel_output_validation.py::test_content_only_with_output_schema_error tests/shared/test_progress_notifications.py::test_progress_callback_exception_logging [gw2] [ 82%] PASSED tests/shared/test_exceptions.py::TestUrlElicitationRequiredError::test_error_data_contains_elicitations [gw0] [ 82%] PASSED tests/shared/test_progress_notifications.py::test_progress_callback_exception_logging tests/shared/test_session.py::test_in_flight_requests_cleared_after_completion [gw9] [ 82%] PASSED tests/server/fastmcp/test_url_elicitation.py::test_deprecated_elicit_method tests/server/fastmcp/test_url_elicitation.py::test_ctx_elicit_url_convenience_method tests/shared/test_exceptions.py::TestUrlElicitationRequiredError::test_inherits_from_mcp_error [gw0] [ 82%] PASSED tests/shared/test_session.py::test_in_flight_requests_cleared_after_completion tests/shared/test_session.py::test_request_cancellation [gw2] [ 82%] PASSED tests/shared/test_exceptions.py::TestUrlElicitationRequiredError::test_inherits_from_mcp_error [gw0] [ 82%] PASSED tests/shared/test_session.py::test_request_cancellation tests/shared/test_session.py::test_response_id_type_mismatch_string_to_int [gw0] [ 82%] PASSED tests/shared/test_session.py::test_response_id_type_mismatch_string_to_int tests/shared/test_session.py::test_error_response_id_type_mismatch_string_to_int [gw0] [ 82%] PASSED tests/shared/test_session.py::test_error_response_id_type_mismatch_string_to_int tests/shared/test_session.py::test_response_id_non_numeric_string_no_match tests/shared/test_exceptions.py::TestUrlElicitationRequiredError::test_exception_message [gw9] [ 82%] PASSED tests/server/fastmcp/test_url_elicitation.py::test_ctx_elicit_url_convenience_method [gw2] [ 83%] PASSED tests/shared/test_exceptions.py::TestUrlElicitationRequiredError::test_exception_message tests/shared/test_auth_utils.py::TestCheckResourceAllowed::test_different_ports [gw9] [ 83%] PASSED tests/shared/test_auth_utils.py::TestCheckResourceAllowed::test_different_ports tests/shared/test_auth_utils.py::TestCheckResourceAllowed::test_hierarchical_matching tests/shared/test_httpx_utils.py::test_default_settings [gw9] [ 83%] PASSED tests/shared/test_auth_utils.py::TestCheckResourceAllowed::test_hierarchical_matching tests/shared/test_auth_utils.py::TestCheckResourceAllowed::test_path_boundary_matching [gw9] [ 83%] PASSED tests/shared/test_auth_utils.py::TestCheckResourceAllowed::test_path_boundary_matching tests/shared/test_auth_utils.py::TestCheckResourceAllowed::test_trailing_slash_handling [gw9] [ 83%] PASSED tests/shared/test_auth_utils.py::TestCheckResourceAllowed::test_trailing_slash_handling tests/shared/test_sse.py::test_extract_session_id_from_endpoint[/messages?sessionId=abc&session_id=def-abc] [gw9] [ 83%] PASSED tests/shared/test_sse.py::test_extract_session_id_from_endpoint[/messages?sessionId=abc&session_id=def-abc] tests/shared/test_sse.py::test_extract_session_id_from_endpoint[/messages?other=value-None] [gw9] [ 83%] PASSED tests/shared/test_sse.py::test_extract_session_id_from_endpoint[/messages?other=value-None] tests/shared/test_sse.py::test_extract_session_id_from_endpoint[/messages-None] [gw9] [ 83%] PASSED tests/shared/test_sse.py::test_extract_session_id_from_endpoint[/messages-None] tests/shared/test_sse.py::test_extract_session_id_from_endpoint[-None] [gw9] [ 83%] PASSED tests/shared/test_sse.py::test_extract_session_id_from_endpoint[-None] tests/shared/test_sse.py::test_sse_client_on_session_created_not_called_when_no_session_id [gw7] [ 83%] PASSED tests/shared/test_httpx_utils.py::test_custom_parameters tests/shared/test_memory.py::test_memory_server_and_client_connection [gw7] [ 83%] PASSED tests/shared/test_memory.py::test_memory_server_and_client_connection tests/shared/test_progress_notifications.py::test_bidirectional_progress_notifications [gw2] [ 83%] PASSED tests/shared/test_httpx_utils.py::test_default_settings tests/shared/test_sse.py::test_sse_client_basic_connection [gw0] [ 84%] PASSED tests/shared/test_session.py::test_response_id_non_numeric_string_no_match tests/shared/test_session.py::test_connection_closed [gw0] [ 84%] PASSED tests/shared/test_session.py::test_connection_closed tests/shared/test_sse.py::test_raw_sse_connection [gw7] [ 84%] PASSED tests/shared/test_progress_notifications.py::test_bidirectional_progress_notifications tests/shared/test_progress_notifications.py::test_progress_context_manager [gw6] [ 84%] PASSED tests/client/test_stdio.py::test_stdio_client_universal_cleanup tests/client/test_stdio.py::test_stdio_client_sigint_only_process [gw7] [ 84%] PASSED tests/shared/test_progress_notifications.py::test_progress_context_manager tests/shared/test_sse.py::test_request_context_isolation [gw6] [ 84%] PASSED tests/client/test_stdio.py::test_stdio_client_sigint_only_process tests/client/test_stdio.py::test_stdio_client_graceful_stdin_exit [gw6] [ 84%] PASSED tests/client/test_stdio.py::test_stdio_client_graceful_stdin_exit tests/client/test_stdio.py::test_stdio_client_stdin_close_ignored [gw4] [ 84%] ERROR tests/client/test_notification_response.py::test_non_compliant_notification_response tests/client/test_output_schema_validation.py::TestClientOutputSchemaValidation::test_tool_structured_output_client_side_validation_basemodel [gw4] [ 84%] PASSED tests/client/test_output_schema_validation.py::TestClientOutputSchemaValidation::test_tool_structured_output_client_side_validation_basemodel tests/client/test_output_schema_validation.py::TestClientOutputSchemaValidation::test_tool_structured_output_client_side_validation_primitive [gw6] [ 84%] PASSED tests/client/test_stdio.py::test_stdio_client_stdin_close_ignored tests/experimental/tasks/client/test_capabilities.py::test_client_capabilities_without_tasks [gw6] [ 84%] PASSED tests/experimental/tasks/client/test_capabilities.py::test_client_capabilities_without_tasks tests/experimental/tasks/client/test_capabilities.py::test_client_capabilities_with_tasks [gw6] [ 85%] PASSED tests/experimental/tasks/client/test_capabilities.py::test_client_capabilities_with_tasks tests/experimental/tasks/client/test_capabilities.py::test_client_capabilities_auto_built_from_handlers [gw6] [ 85%] PASSED tests/experimental/tasks/client/test_capabilities.py::test_client_capabilities_auto_built_from_handlers tests/experimental/tasks/client/test_capabilities.py::test_client_capabilities_with_task_augmented_handlers [gw6] [ 85%] PASSED tests/experimental/tasks/client/test_capabilities.py::test_client_capabilities_with_task_augmented_handlers tests/experimental/tasks/client/test_handlers.py::test_client_handles_get_task_request [gw4] [ 85%] PASSED tests/client/test_output_schema_validation.py::TestClientOutputSchemaValidation::test_tool_structured_output_client_side_validation_primitive tests/client/test_output_schema_validation.py::TestClientOutputSchemaValidation::test_tool_structured_output_client_side_validation_dict_typed [gw6] [ 85%] PASSED tests/experimental/tasks/client/test_handlers.py::test_client_handles_get_task_request tests/experimental/tasks/client/test_handlers.py::test_client_handles_get_task_result_request [gw6] [ 85%] PASSED tests/experimental/tasks/client/test_handlers.py::test_client_handles_get_task_result_request tests/experimental/tasks/client/test_handlers.py::test_client_handles_list_tasks_request [gw6] [ 85%] PASSED tests/experimental/tasks/client/test_handlers.py::test_client_handles_list_tasks_request tests/experimental/tasks/client/test_handlers.py::test_client_handles_cancel_task_request [gw4] [ 85%] PASSED tests/client/test_output_schema_validation.py::TestClientOutputSchemaValidation::test_tool_structured_output_client_side_validation_dict_typed tests/client/test_output_schema_validation.py::TestClientOutputSchemaValidation::test_tool_structured_output_client_side_validation_missing_required [gw6] [ 85%] PASSED tests/experimental/tasks/client/test_handlers.py::test_client_handles_cancel_task_request tests/experimental/tasks/client/test_handlers.py::test_client_task_augmented_sampling [gw6] [ 85%] PASSED tests/experimental/tasks/client/test_handlers.py::test_client_task_augmented_sampling tests/experimental/tasks/client/test_handlers.py::test_client_task_augmented_elicitation [gw4] [ 85%] PASSED tests/client/test_output_schema_validation.py::TestClientOutputSchemaValidation::test_tool_structured_output_client_side_validation_missing_required tests/client/test_output_schema_validation.py::TestClientOutputSchemaValidation::test_tool_not_listed_warning [gw6] [ 85%] PASSED tests/experimental/tasks/client/test_handlers.py::test_client_task_augmented_elicitation tests/experimental/tasks/client/test_handlers.py::test_client_returns_error_for_unhandled_task_request [gw4] [ 86%] PASSED tests/client/test_output_schema_validation.py::TestClientOutputSchemaValidation::test_tool_not_listed_warning tests/client/test_resource_cleanup.py::test_send_request_stream_cleanup [gw4] [ 86%] PASSED tests/client/test_resource_cleanup.py::test_send_request_stream_cleanup tests/client/test_sampling_callback.py::test_sampling_callback [gw6] [ 86%] PASSED tests/experimental/tasks/client/test_handlers.py::test_client_returns_error_for_unhandled_task_request tests/experimental/tasks/client/test_handlers.py::test_client_returns_error_for_unhandled_task_result_request [gw6] [ 86%] PASSED tests/experimental/tasks/client/test_handlers.py::test_client_returns_error_for_unhandled_task_result_request tests/experimental/tasks/client/test_handlers.py::test_client_returns_error_for_unhandled_list_tasks_request [gw6] [ 86%] PASSED tests/experimental/tasks/client/test_handlers.py::test_client_returns_error_for_unhandled_list_tasks_request tests/shared/test_sse.py::test_sse_server_transport_endpoint_validation[messages/-/messages/] [gw6] [ 86%] PASSED tests/shared/test_sse.py::test_sse_server_transport_endpoint_validation[messages/-/messages/] tests/shared/test_sse.py::test_sse_server_transport_endpoint_validation[/-/] [gw6] [ 86%] PASSED tests/shared/test_sse.py::test_sse_server_transport_endpoint_validation[/-/] tests/shared/test_sse.py::test_sse_server_transport_endpoint_validation[http://example.com/messages/-ValueError] [gw6] [ 86%] PASSED tests/shared/test_sse.py::test_sse_server_transport_endpoint_validation[http://example.com/messages/-ValueError] tests/shared/test_sse.py::test_sse_server_transport_endpoint_validation[//example.com/messages/-ValueError] [gw6] [ 86%] PASSED tests/shared/test_sse.py::test_sse_server_transport_endpoint_validation[//example.com/messages/-ValueError] tests/shared/test_sse.py::test_sse_server_transport_endpoint_validation[ftp://example.com/messages/-ValueError] [gw6] [ 86%] PASSED tests/shared/test_sse.py::test_sse_server_transport_endpoint_validation[ftp://example.com/messages/-ValueError] tests/shared/test_sse.py::test_sse_server_transport_endpoint_validation[/messages/?param=value-ValueError] [gw6] [ 86%] PASSED tests/shared/test_sse.py::test_sse_server_transport_endpoint_validation[/messages/?param=value-ValueError] tests/shared/test_sse.py::test_sse_server_transport_endpoint_validation[/messages/#fragment-ValueError] [gw6] [ 86%] PASSED tests/shared/test_sse.py::test_sse_server_transport_endpoint_validation[/messages/#fragment-ValueError] tests/shared/test_sse.py::test_sse_client_handles_empty_keepalive_pings [gw4] [ 87%] PASSED tests/client/test_sampling_callback.py::test_sampling_callback tests/client/test_sampling_callback.py::test_create_message_backwards_compat_single_content [gw6] [ 87%] PASSED tests/shared/test_sse.py::test_sse_client_handles_empty_keepalive_pings tests/shared/test_streamable_http.py::test_accept_header_validation [gw4] [ 87%] PASSED tests/client/test_sampling_callback.py::test_create_message_backwards_compat_single_content tests/client/test_sampling_callback.py::test_create_message_result_with_tools_type [gw4] [ 87%] PASSED tests/client/test_sampling_callback.py::test_create_message_result_with_tools_type tests/client/test_scope_bug_1630.py::test_401_uses_www_auth_scope_not_resource_metadata_url [gw4] [ 87%] PASSED tests/client/test_scope_bug_1630.py::test_401_uses_www_auth_scope_not_resource_metadata_url tests/client/test_session.py::test_client_session_initialize [gw4] [ 87%] PASSED tests/client/test_session.py::test_client_session_initialize tests/client/test_session.py::test_client_session_custom_client_info [gw4] [ 87%] PASSED tests/client/test_session.py::test_client_session_custom_client_info tests/client/test_session.py::test_client_session_default_client_info [gw4] [ 87%] PASSED tests/client/test_session.py::test_client_session_default_client_info tests/client/test_session.py::test_client_session_version_negotiation_success [gw4] [ 87%] PASSED tests/client/test_session.py::test_client_session_version_negotiation_success tests/client/test_session.py::test_client_session_version_negotiation_failure [gw4] [ 87%] PASSED tests/client/test_session.py::test_client_session_version_negotiation_failure tests/client/test_session.py::test_client_capabilities_default [gw4] [ 87%] PASSED tests/client/test_session.py::test_client_capabilities_default tests/client/test_session.py::test_client_capabilities_with_custom_callbacks [gw4] [ 88%] PASSED tests/client/test_session.py::test_client_capabilities_with_custom_callbacks tests/client/test_session.py::test_client_capabilities_with_sampling_tools [gw4] [ 88%] PASSED tests/client/test_session.py::test_client_capabilities_with_sampling_tools tests/client/test_session.py::test_get_server_capabilities [gw4] [ 88%] PASSED tests/client/test_session.py::test_get_server_capabilities tests/client/test_session.py::test_client_tool_call_with_meta[None] [gw4] [ 88%] PASSED tests/client/test_session.py::test_client_tool_call_with_meta[None] tests/client/test_session.py::test_client_tool_call_with_meta[meta1] [gw4] [ 88%] PASSED tests/client/test_session.py::test_client_tool_call_with_meta[meta1] tests/client/test_session_group.py::TestClientSessionGroup::test_init [gw4] [ 88%] PASSED tests/client/test_session_group.py::TestClientSessionGroup::test_init tests/client/test_session_group.py::TestClientSessionGroup::test_component_properties [gw4] [ 88%] PASSED tests/client/test_session_group.py::TestClientSessionGroup::test_component_properties tests/client/test_session_group.py::TestClientSessionGroup::test_call_tool [gw4] [ 88%] PASSED tests/client/test_session_group.py::TestClientSessionGroup::test_call_tool tests/shared/test_streamable_http.py::test_method_not_allowed [gw4] [ 88%] PASSED tests/shared/test_streamable_http.py::test_method_not_allowed tests/shared/test_streamable_http.py::test_session_validation [gw2] [ 88%] PASSED tests/shared/test_sse.py::test_sse_client_basic_connection tests/shared/test_sse.py::test_sse_client_on_session_created [gw6] [ 88%] PASSED tests/shared/test_streamable_http.py::test_accept_header_validation tests/shared/test_streamable_http.py::test_content_type_validation [gw3] [ 88%] PASSED tests/server/test_websocket_security.py::test_ws_security_default_settings tests/server/test_websocket_security.py::test_ws_security_invalid_origin_header [gw5] [ 89%] PASSED tests/server/test_websocket_security.py::test_ws_security_allowed_origin tests/server/test_websocket_security.py::test_ws_security_disabled [gw7] [ 89%] PASSED tests/shared/test_sse.py::test_request_context_isolation tests/shared/test_sse.py::test_sse_message_id_coercion [gw7] [ 89%] PASSED tests/shared/test_sse.py::test_sse_message_id_coercion tests/shared/test_sse.py::test_sse_server_transport_endpoint_validation[/messages/-/messages/] [gw7] [ 89%] PASSED tests/shared/test_sse.py::test_sse_server_transport_endpoint_validation[/messages/-/messages/] tests/shared/test_streamable_http.py::test_response [gw1] [ 89%] PASSED tests/server/fastmcp/test_integration.py::test_basic_tools[server_transport0] tests/server/fastmcp/test_integration.py::test_basic_tools[server_transport1] [gw9] [ 89%] PASSED tests/shared/test_sse.py::test_sse_client_on_session_created_not_called_when_no_session_id tests/shared/test_sse.py::test_sse_client_happy_request_and_response [gw8] [ 89%] PASSED tests/server/fastmcp/test_integration.py::test_sampling[server_transport1] tests/server/fastmcp/test_integration.py::test_elicitation[server_transport0] [gw0] [ 89%] PASSED tests/shared/test_sse.py::test_raw_sse_connection tests/shared/test_sse.py::test_sse_client_timeout [gw0] [ 89%] SKIPPED tests/shared/test_sse.py::test_sse_client_timeout tests/shared/test_sse.py::test_sse_client_basic_connection_mounted_app [gw2] [ 89%] PASSED tests/shared/test_sse.py::test_sse_client_on_session_created tests/shared/test_sse.py::test_extract_session_id_from_endpoint[/messages?sessionId=abc123-abc123] [gw2] [ 89%] PASSED tests/shared/test_sse.py::test_extract_session_id_from_endpoint[/messages?sessionId=abc123-abc123] tests/shared/test_sse.py::test_extract_session_id_from_endpoint[/messages?session_id=def456-def456] [gw2] [ 90%] PASSED tests/shared/test_sse.py::test_extract_session_id_from_endpoint[/messages?session_id=def456-def456] tests/shared/test_streamable_http.py::test_json_response_accept_json_only [gw4] [ 90%] PASSED tests/shared/test_streamable_http.py::test_session_validation tests/shared/test_streamable_http.py::test_session_id_pattern [gw4] [ 90%] PASSED tests/shared/test_streamable_http.py::test_session_id_pattern tests/shared/test_streamable_http.py::test_session_termination [gw3] [ 90%] PASSED tests/server/test_websocket_security.py::test_ws_security_invalid_origin_header tests/server/test_websocket_security.py::test_ws_security_invalid_host_header [gw6] [ 90%] PASSED tests/shared/test_streamable_http.py::test_content_type_validation tests/shared/test_streamable_http.py::test_json_validation [gw5] [ 90%] PASSED tests/server/test_websocket_security.py::test_ws_security_disabled tests/server/test_websocket_security.py::test_ws_security_rejects_before_accept [gw5] [ 90%] PASSED tests/server/test_websocket_security.py::test_ws_security_rejects_before_accept tests/shared/test_auth.py::TestOAuthMetadata::test_oauth [gw5] [ 90%] PASSED tests/shared/test_auth.py::TestOAuthMetadata::test_oauth tests/shared/test_auth.py::TestOAuthMetadata::test_oidc [gw5] [ 90%] PASSED tests/shared/test_auth.py::TestOAuthMetadata::test_oidc tests/shared/test_streamable_http.py::test_server_validates_protocol_version_header [gw7] [ 90%] PASSED tests/shared/test_streamable_http.py::test_response tests/shared/test_streamable_http.py::test_json_response [gw9] [ 90%] PASSED tests/shared/test_sse.py::test_sse_client_happy_request_and_response tests/shared/test_sse.py::test_sse_client_exception_handling [gw0] [ 90%] PASSED tests/shared/test_sse.py::test_sse_client_basic_connection_mounted_app tests/shared/test_sse.py::test_request_context_propagation [gw1] [ 91%] PASSED tests/server/fastmcp/test_integration.py::test_basic_tools[server_transport1] tests/server/fastmcp/test_integration.py::test_basic_resources[server_transport0] [gw8] [ 91%] PASSED tests/server/fastmcp/test_integration.py::test_elicitation[server_transport0] tests/server/fastmcp/test_integration.py::test_elicitation[server_transport1] [gw2] [ 91%] PASSED tests/shared/test_streamable_http.py::test_json_response_accept_json_only tests/shared/test_streamable_http.py::test_json_response_missing_accept_header [gw3] [ 91%] PASSED tests/server/test_websocket_security.py::test_ws_security_invalid_host_header tests/shared/test_streamable_http.py::test_get_validation [gw6] [ 91%] PASSED tests/shared/test_streamable_http.py::test_json_validation tests/shared/test_streamable_http.py::test_json_parsing [gw4] [ 91%] PASSED tests/shared/test_streamable_http.py::test_session_termination tests/shared/test_streamable_http.py::test_json_response_incorrect_accept_header [gw5] [ 91%] PASSED tests/shared/test_streamable_http.py::test_server_validates_protocol_version_header tests/shared/test_streamable_http.py::test_server_backwards_compatibility_no_protocol_version [gw7] [ 91%] PASSED tests/shared/test_streamable_http.py::test_json_response tests/shared/test_streamable_http.py::test_client_crash_handled [gw9] [ 91%] PASSED tests/shared/test_sse.py::test_sse_client_exception_handling tests/shared/test_streamable_http.py::test_priming_event_not_minted_for_old_protocol_version [gw9] [ 91%] PASSED tests/shared/test_streamable_http.py::test_priming_event_not_minted_for_old_protocol_version tests/shared/test_streamable_http.py::test_priming_event_not_minted_without_event_store [gw9] [ 91%] PASSED tests/shared/test_streamable_http.py::test_priming_event_not_minted_without_event_store tests/shared/test_tool_name_validation.py::TestValidateToolName::TestValidNames::test_accepts_valid_names[with_underscores] [gw9] [ 91%] PASSED tests/shared/test_tool_name_validation.py::TestValidateToolName::TestValidNames::test_accepts_valid_names[with_underscores] tests/shared/test_tool_name_validation.py::TestValidateToolName::TestValidNames::test_accepts_valid_names[with_dashes] [gw9] [ 92%] PASSED tests/shared/test_tool_name_validation.py::TestValidateToolName::TestValidNames::test_accepts_valid_names[with_dashes] tests/shared/test_tool_name_validation.py::TestValidateToolName::TestValidNames::test_accepts_valid_names[with_dots] [gw9] [ 92%] PASSED tests/shared/test_tool_name_validation.py::TestValidateToolName::TestValidNames::test_accepts_valid_names[with_dots] tests/shared/test_tool_name_validation.py::TestValidateToolName::TestValidNames::test_accepts_valid_names[mixed_characters] [gw9] [ 92%] PASSED tests/shared/test_tool_name_validation.py::TestValidateToolName::TestValidNames::test_accepts_valid_names[mixed_characters] tests/shared/test_tool_name_validation.py::TestValidateToolName::TestValidNames::test_accepts_valid_names[single_character] [gw9] [ 92%] PASSED tests/shared/test_tool_name_validation.py::TestValidateToolName::TestValidNames::test_accepts_valid_names[single_character] tests/shared/test_tool_name_validation.py::TestValidateToolName::TestValidNames::test_accepts_valid_names[max_length_128] [gw9] [ 92%] PASSED tests/shared/test_tool_name_validation.py::TestValidateToolName::TestValidNames::test_accepts_valid_names[max_length_128] tests/shared/test_tool_name_validation.py::TestValidateToolName::TestInvalidNames::test_rejects_empty_name [gw9] [ 92%] PASSED tests/shared/test_tool_name_validation.py::TestValidateToolName::TestInvalidNames::test_rejects_empty_name tests/shared/test_tool_name_validation.py::TestValidateToolName::TestInvalidNames::test_rejects_name_exceeding_max_length [gw9] [ 92%] PASSED tests/shared/test_tool_name_validation.py::TestValidateToolName::TestInvalidNames::test_rejects_name_exceeding_max_length tests/shared/test_tool_name_validation.py::TestValidateToolName::TestInvalidNames::test_rejects_invalid_characters[with_spaces] [gw9] [ 92%] PASSED tests/shared/test_tool_name_validation.py::TestValidateToolName::TestInvalidNames::test_rejects_invalid_characters[with_spaces] tests/shared/test_tool_name_validation.py::TestValidateToolName::TestInvalidNames::test_rejects_invalid_characters[with_commas] [gw9] [ 92%] PASSED tests/shared/test_tool_name_validation.py::TestValidateToolName::TestInvalidNames::test_rejects_invalid_characters[with_commas] tests/shared/test_tool_name_validation.py::TestValidateToolName::TestInvalidNames::test_rejects_invalid_characters[with_slashes] [gw9] [ 92%] PASSED tests/shared/test_tool_name_validation.py::TestValidateToolName::TestInvalidNames::test_rejects_invalid_characters[with_slashes] tests/shared/test_tool_name_validation.py::TestValidateToolName::TestInvalidNames::test_rejects_invalid_characters[with_at_symbol] [gw9] [ 92%] PASSED tests/shared/test_tool_name_validation.py::TestValidateToolName::TestInvalidNames::test_rejects_invalid_characters[with_at_symbol] tests/shared/test_tool_name_validation.py::TestValidateToolName::TestInvalidNames::test_rejects_invalid_characters[with_trailing_newline] [gw9] [ 93%] PASSED tests/shared/test_tool_name_validation.py::TestValidateToolName::TestInvalidNames::test_rejects_invalid_characters[with_trailing_newline] tests/shared/test_tool_name_validation.py::TestValidateToolName::TestInvalidNames::test_rejects_invalid_characters[max_length_with_trailing_newline] [gw9] [ 93%] PASSED tests/shared/test_tool_name_validation.py::TestValidateToolName::TestInvalidNames::test_rejects_invalid_characters[max_length_with_trailing_newline] tests/shared/test_tool_name_validation.py::TestValidateToolName::TestInvalidNames::test_rejects_multiple_invalid_chars [gw9] [ 93%] PASSED tests/shared/test_tool_name_validation.py::TestValidateToolName::TestInvalidNames::test_rejects_multiple_invalid_chars tests/shared/test_tool_name_validation.py::TestValidateToolName::TestInvalidNames::test_rejects_unicode_characters [gw9] [ 93%] PASSED tests/shared/test_tool_name_validation.py::TestValidateToolName::TestInvalidNames::test_rejects_unicode_characters tests/shared/test_tool_name_validation.py::TestValidateToolName::TestWarningsForProblematicPatterns::test_warns_on_leading_dash [gw9] [ 93%] PASSED tests/shared/test_tool_name_validation.py::TestValidateToolName::TestWarningsForProblematicPatterns::test_warns_on_leading_dash tests/shared/test_tool_name_validation.py::TestValidateToolName::TestWarningsForProblematicPatterns::test_warns_on_trailing_dash [gw9] [ 93%] PASSED tests/shared/test_tool_name_validation.py::TestValidateToolName::TestWarningsForProblematicPatterns::test_warns_on_trailing_dash tests/shared/test_tool_name_validation.py::TestValidateToolName::TestWarningsForProblematicPatterns::test_warns_on_leading_dot [gw9] [ 93%] PASSED tests/shared/test_tool_name_validation.py::TestValidateToolName::TestWarningsForProblematicPatterns::test_warns_on_leading_dot tests/shared/test_tool_name_validation.py::TestValidateToolName::TestWarningsForProblematicPatterns::test_warns_on_trailing_dot [gw9] [ 93%] PASSED tests/shared/test_tool_name_validation.py::TestValidateToolName::TestWarningsForProblematicPatterns::test_warns_on_trailing_dot tests/shared/test_tool_name_validation.py::TestIssueToolNameWarning::test_logs_warnings [gw9] [ 93%] PASSED tests/shared/test_tool_name_validation.py::TestIssueToolNameWarning::test_logs_warnings tests/shared/test_tool_name_validation.py::TestIssueToolNameWarning::test_no_logging_for_empty_warnings [gw9] [ 93%] PASSED tests/shared/test_tool_name_validation.py::TestIssueToolNameWarning::test_no_logging_for_empty_warnings tests/shared/test_tool_name_validation.py::TestValidateAndWarnToolName::test_returns_true_for_valid_name [gw9] [ 93%] PASSED tests/shared/test_tool_name_validation.py::TestValidateAndWarnToolName::test_returns_true_for_valid_name tests/shared/test_tool_name_validation.py::TestValidateAndWarnToolName::test_returns_false_for_invalid_name [gw9] [ 93%] PASSED tests/shared/test_tool_name_validation.py::TestValidateAndWarnToolName::test_returns_false_for_invalid_name tests/shared/test_tool_name_validation.py::TestValidateAndWarnToolName::test_logs_warnings_for_invalid_name [gw9] [ 94%] PASSED tests/shared/test_tool_name_validation.py::TestValidateAndWarnToolName::test_logs_warnings_for_invalid_name tests/shared/test_tool_name_validation.py::TestValidateAndWarnToolName::test_no_warnings_for_clean_valid_name [gw9] [ 94%] PASSED tests/shared/test_tool_name_validation.py::TestValidateAndWarnToolName::test_no_warnings_for_clean_valid_name tests/shared/test_tool_name_validation.py::TestEdgeCases::test_edge_cases[only_dots] [gw9] [ 94%] PASSED tests/shared/test_tool_name_validation.py::TestEdgeCases::test_edge_cases[only_dots] tests/shared/test_tool_name_validation.py::TestEdgeCases::test_edge_cases[only_dashes] [gw9] [ 94%] PASSED tests/shared/test_tool_name_validation.py::TestEdgeCases::test_edge_cases[only_dashes] tests/shared/test_tool_name_validation.py::TestEdgeCases::test_edge_cases[only_slashes] [gw9] [ 94%] PASSED tests/shared/test_tool_name_validation.py::TestEdgeCases::test_edge_cases[only_slashes] tests/shared/test_tool_name_validation.py::TestEdgeCases::test_edge_cases[mixed_valid_invalid] [gw9] [ 94%] PASSED tests/shared/test_tool_name_validation.py::TestEdgeCases::test_edge_cases[mixed_valid_invalid] tests/shared/test_ws.py::test_ws_client_basic_connection [gw0] [ 94%] PASSED tests/shared/test_sse.py::test_request_context_propagation tests/shared/test_streamable_http.py::test_priming_event_includes_retry_interval [gw0] [ 94%] PASSED tests/shared/test_streamable_http.py::test_priming_event_includes_retry_interval tests/shared/test_streamable_http.py::test_close_sse_stream_callback_not_provided_for_old_protocol_version [gw0] [ 94%] PASSED tests/shared/test_streamable_http.py::test_close_sse_stream_callback_not_provided_for_old_protocol_version tests/shared/test_ws.py::test_ws_client_exception_handling [gw1] [ 94%] PASSED tests/server/fastmcp/test_integration.py::test_basic_resources[server_transport0] tests/server/fastmcp/test_integration.py::test_basic_resources[server_transport1] [gw8] [ 94%] PASSED tests/server/fastmcp/test_integration.py::test_elicitation[server_transport1] tests/server/fastmcp/test_integration.py::test_notifications[server_transport0] [gw2] [ 95%] PASSED tests/shared/test_streamable_http.py::test_json_response_missing_accept_header tests/shared/test_streamable_http.py::test_server_close_sse_stream_via_context [gw6] [ 95%] PASSED tests/shared/test_streamable_http.py::test_json_parsing tests/shared/test_streamable_http.py::test_standalone_get_stream_reconnection [gw4] [ 95%] PASSED tests/shared/test_streamable_http.py::test_json_response_incorrect_accept_header tests/shared/test_streamable_http.py::test_get_sse_stream [gw3] [ 95%] PASSED tests/shared/test_streamable_http.py::test_get_validation tests/shared/test_streamable_http.py::test_client_includes_protocol_version_header_after_init [gw5] [ 95%] PASSED tests/shared/test_streamable_http.py::test_server_backwards_compatibility_no_protocol_version tests/shared/test_tool_name_validation.py::TestValidateToolName::TestValidNames::test_accepts_valid_names[simple_alphanumeric] [gw5] [ 95%] PASSED tests/shared/test_tool_name_validation.py::TestValidateToolName::TestValidNames::test_accepts_valid_names[simple_alphanumeric] tests/test_examples.py::test_direct_call_tool_result_return [gw9] [ 95%] PASSED tests/shared/test_ws.py::test_ws_client_basic_connection tests/shared/test_ws.py::test_ws_client_happy_request_and_response [gw0] [ 95%] PASSED tests/shared/test_ws.py::test_ws_client_exception_handling tests/shared/test_ws.py::test_ws_client_timeout [gw5] [ 95%] PASSED tests/test_examples.py::test_direct_call_tool_result_return tests/test_examples.py::test_desktop [gw5] [ 95%] PASSED tests/test_examples.py::test_desktop tests/test_types.py::test_method_initialization [gw5] [ 95%] PASSED tests/test_types.py::test_method_initialization tests/test_types.py::test_tool_use_content [gw5] [ 95%] PASSED tests/test_types.py::test_tool_use_content tests/test_types.py::test_tool_result_content [gw5] [ 96%] PASSED tests/test_types.py::test_tool_result_content tests/test_types.py::test_tool_choice [gw5] [ 96%] PASSED tests/test_types.py::test_tool_choice tests/test_types.py::test_sampling_message_with_user_role [gw5] [ 96%] PASSED tests/test_types.py::test_sampling_message_with_user_role tests/test_types.py::test_sampling_message_with_assistant_role [gw5] [ 96%] PASSED tests/test_types.py::test_sampling_message_with_assistant_role tests/test_types.py::test_sampling_message_backward_compatibility [gw5] [ 96%] PASSED tests/test_types.py::test_sampling_message_backward_compatibility tests/test_types.py::test_create_message_request_params_with_tools [gw5] [ 96%] PASSED tests/test_types.py::test_create_message_request_params_with_tools tests/test_types.py::test_create_message_result_with_tool_use [gw5] [ 96%] PASSED tests/test_types.py::test_create_message_result_with_tool_use tests/test_types.py::test_create_message_result_basic [gw5] [ 96%] PASSED tests/test_types.py::test_create_message_result_basic tests/test_types.py::test_client_capabilities_with_sampling_tools [gw5] [ 96%] PASSED tests/test_types.py::test_client_capabilities_with_sampling_tools tests/test_types.py::test_tool_preserves_json_schema_2020_12_fields [gw5] [ 96%] PASSED tests/test_types.py::test_tool_preserves_json_schema_2020_12_fields tests/test_types.py::test_list_tools_result_preserves_json_schema_2020_12_fields [gw5] [ 96%] PASSED tests/test_types.py::test_list_tools_result_preserves_json_schema_2020_12_fields [gw1] [ 96%] PASSED tests/server/fastmcp/test_integration.py::test_basic_resources[server_transport1] tests/server/fastmcp/test_integration.py::test_basic_prompts[server_transport0] [gw8] [ 97%] PASSED tests/server/fastmcp/test_integration.py::test_notifications[server_transport0] tests/server/fastmcp/test_integration.py::test_notifications[server_transport1] [gw7] [ 97%] PASSED tests/shared/test_streamable_http.py::test_client_crash_handled tests/shared/test_streamable_http.py::test_handle_sse_event_skips_empty_data [gw7] [ 97%] PASSED tests/shared/test_streamable_http.py::test_handle_sse_event_skips_empty_data [gw4] [ 97%] PASSED tests/shared/test_streamable_http.py::test_get_sse_stream tests/test_examples.py::test_simple_echo [gw4] [ 97%] PASSED tests/test_examples.py::test_simple_echo [gw9] [ 97%] PASSED tests/shared/test_ws.py::test_ws_client_happy_request_and_response [gw2] [ 97%] PASSED tests/shared/test_streamable_http.py::test_server_close_sse_stream_via_context tests/shared/test_ws.py::test_websocket_client_is_deprecated [gw2] [ 97%] PASSED tests/shared/test_ws.py::test_websocket_client_is_deprecated tests/test_examples.py::test_docs_examples[README.md:92-136] [gw0] [ 97%] PASSED tests/shared/test_ws.py::test_ws_client_timeout tests/test_types.py::test_jsonrpc_request [gw1] [ 97%] PASSED tests/server/fastmcp/test_integration.py::test_basic_prompts[server_transport0] tests/server/fastmcp/test_integration.py::test_basic_prompts[server_transport1] [gw0] [ 97%] PASSED tests/test_types.py::test_jsonrpc_request [gw8] [ 98%] PASSED tests/server/fastmcp/test_integration.py::test_notifications[server_transport1] tests/server/fastmcp/test_integration.py::test_completion[server_transport0] [gw3] [ 98%] PASSED tests/shared/test_streamable_http.py::test_client_includes_protocol_version_header_after_init tests/test_examples.py::test_complex_inputs [gw3] [ 98%] PASSED tests/test_examples.py::test_complex_inputs [gw9] [ 98%] PASSED tests/test_examples.py::test_docs_examples[README.md:92-136] [gw1] [ 98%] PASSED tests/server/fastmcp/test_integration.py::test_basic_prompts[server_transport1] tests/server/fastmcp/test_integration.py::test_sampling[server_transport0] [gw8] [ 98%] PASSED tests/server/fastmcp/test_integration.py::test_completion[server_transport0] tests/server/fastmcp/test_integration.py::test_completion[server_transport1] [gw6] [ 98%] PASSED tests/shared/test_streamable_http.py::test_standalone_get_stream_reconnection tests/shared/test_ws.py::test_websocket_server_is_deprecated [gw6] [ 98%] PASSED tests/shared/test_ws.py::test_websocket_server_is_deprecated [gw1] [ 98%] PASSED tests/server/fastmcp/test_integration.py::test_sampling[server_transport0] tests/server/fastmcp/test_server.py::TestServerResourceTemplates::test_resource_multiple_params [gw1] [ 98%] PASSED tests/server/fastmcp/test_server.py::TestServerResourceTemplates::test_resource_multiple_params tests/server/fastmcp/test_server.py::TestServerResourceTemplates::test_resource_multiple_mismatched_params [gw8] [ 98%] PASSED tests/server/fastmcp/test_integration.py::test_completion[server_transport1] tests/server/fastmcp/test_integration.py::test_fastmcp_quickstart[server_transport0] [gw1] [ 98%] PASSED tests/server/fastmcp/test_server.py::TestServerResourceTemplates::test_resource_multiple_mismatched_params tests/server/fastmcp/test_server.py::TestServerResourceTemplates::test_template_to_resource_conversion [gw1] [ 99%] PASSED tests/server/fastmcp/test_server.py::TestServerResourceTemplates::test_template_to_resource_conversion tests/server/fastmcp/test_server.py::TestServerResourceTemplates::test_resource_template_includes_mime_type [gw1] [ 99%] PASSED tests/server/fastmcp/test_server.py::TestServerResourceTemplates::test_resource_template_includes_mime_type tests/server/fastmcp/test_server.py::TestServerResourceMetadata::test_resource_decorator_with_metadata [gw1] [ 99%] PASSED tests/server/fastmcp/test_server.py::TestServerResourceMetadata::test_resource_decorator_with_metadata tests/server/fastmcp/test_server.py::TestServerResourceMetadata::test_resource_template_decorator_with_metadata [gw1] [ 99%] PASSED tests/server/fastmcp/test_server.py::TestServerResourceMetadata::test_resource_template_decorator_with_metadata tests/server/fastmcp/test_server.py::TestServerResourceMetadata::test_read_resource_returns_meta [gw1] [ 99%] PASSED tests/server/fastmcp/test_server.py::TestServerResourceMetadata::test_read_resource_returns_meta tests/server/fastmcp/test_server.py::TestContextInjection::test_context_detection [gw1] [ 99%] PASSED tests/server/fastmcp/test_server.py::TestContextInjection::test_context_detection tests/server/fastmcp/test_server.py::TestContextInjection::test_context_injection [gw1] [ 99%] PASSED tests/server/fastmcp/test_server.py::TestContextInjection::test_context_injection tests/server/fastmcp/test_server.py::TestContextInjection::test_async_context [gw1] [ 99%] PASSED tests/server/fastmcp/test_server.py::TestContextInjection::test_async_context [gw8] [ 99%] PASSED tests/server/fastmcp/test_integration.py::test_fastmcp_quickstart[server_transport0] tests/server/fastmcp/test_integration.py::test_fastmcp_quickstart[server_transport1] [gw8] [ 99%] PASSED tests/server/fastmcp/test_integration.py::test_fastmcp_quickstart[server_transport1] tests/server/fastmcp/test_integration.py::test_structured_output[server_transport0] [gw8] [ 99%] PASSED tests/server/fastmcp/test_integration.py::test_structured_output[server_transport0] tests/server/fastmcp/test_integration.py::test_structured_output[server_transport1] [gw8] [100%] PASSED tests/server/fastmcp/test_integration.py::test_structured_output[server_transport1] ═══════════════════════════════ inline-snapshot ════════════════════════════════ INFO: inline-snapshot was disabled because you used xdist. This means that tests with snapshots will continue to run, but snapshot(x) will only return x and inline-snapshot will not be able to fix snapshots or generate reports. ==================================== ERRORS ==================================== __________ ERROR at setup of test_non_compliant_notification_response __________ [gw4] darwin -- Python 3.14.7 /nix/store/kmq6qdcg0yq6r4awf02dgq003n42r6zk-python3-3.14.7/bin/python3.14 non_sdk_server_port = 54445 @pytest.fixture def non_sdk_server(non_sdk_server_port: int) -> Generator[None, None, None]: """Start a non-SDK server for testing.""" proc = multiprocessing.Process(target=run_non_sdk_server, kwargs={"port": non_sdk_server_port}, daemon=True) proc.start() # Wait for server to be ready try: # pragma: no cover > wait_for_server(non_sdk_server_port, timeout=10.0) tests/client/test_notification_response.py:99: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ port = 54445, timeout = 10.0 def wait_for_server(port: int, timeout: float = 20.0) -> None: """Wait for server to be ready to accept connections. Polls the server port until it accepts connections or timeout is reached. This eliminates race conditions without arbitrary sleeps. Args: port: The port number to check timeout: Maximum time to wait in seconds (default 5.0) Raises: TimeoutError: If server doesn't start within the timeout period """ start_time = time.time() while time.time() - start_time < timeout: try: with socket.socket(socket.AF_INET, socket.SOCK_STREAM) as s: s.settimeout(0.1) s.connect(("127.0.0.1", port)) # Server is ready return except (ConnectionRefusedError, OSError): # Server not ready yet, retry quickly time.sleep(0.01) > raise TimeoutError(f"Server on port {port} did not start within {timeout} seconds") # pragma: no cover ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ E TimeoutError: Server on port 54445 did not start within 10.0 seconds tests/test_helpers.py:31: TimeoutError During handling of the above exception, another exception occurred: non_sdk_server_port = 54445 @pytest.fixture def non_sdk_server(non_sdk_server_port: int) -> Generator[None, None, None]: """Start a non-SDK server for testing.""" proc = multiprocessing.Process(target=run_non_sdk_server, kwargs={"port": non_sdk_server_port}, daemon=True) proc.start() # Wait for server to be ready try: # pragma: no cover wait_for_server(non_sdk_server_port, timeout=10.0) except TimeoutError: # pragma: no cover proc.kill() proc.join(timeout=2) > pytest.fail("Server failed to start within 10 seconds") E Failed: Server failed to start within 10 seconds tests/client/test_notification_response.py:103: Failed =========================== short test summary info ============================ ERROR tests/client/test_notification_response.py::test_non_compliant_notification_response - Failed: Server failed to start within 10 seconds ======= 1063 passed, 95 skipped, 1 xfailed, 1 error in 82.81s (0:01:22) ========