@@ -293,19 +293,19 @@ async def direct_call_tool(
293293 # The following branching cannot be tested until FastMCP is updated to version 2.13.1
294294 # such that the MCP server can generate ToolResult and result.meta can be specified.
295295 # TODO: Add tests for the following branching once FastMCP is updated.
296- if len (parts_metadata ) > 0 : # pragma: no cover
297- if result .meta is not None and len (result .meta ) > 0 :
296+ if len (parts_metadata ) > 0 :
297+ if result .meta is not None and len (result .meta ) > 0 : # pragma: no cover
298298 # Merge the tool result metadata and parts metadata into the return metadata
299299 return_metadata = {'result' : result .meta , 'content' : parts_metadata }
300300 else :
301301 # Only parts metadata exists
302- if len (parts_metadata ) == 1 :
302+ if len (parts_metadata ) == 1 : # pragma: no cover
303303 # If there is only one content metadata, unwrap it
304304 return_metadata = parts_metadata [0 ]
305305 else :
306306 return_metadata = {'content' : parts_metadata }
307- else : # pragma: no cover
308- if result .meta is not None and len (result .meta ) > 0 :
307+ else :
308+ if result .meta is not None and len (result .meta ) > 0 : # pragma: no cover
309309 return_metadata = result .meta
310310 # TODO: What else should we cover here?
311311
@@ -456,33 +456,33 @@ async def _map_tool_result_part(
456456 # The following branching cannot be tested until FastMCP is updated to version 2.13.1
457457 # such that the MCP server can generate ToolResult and result.meta can be specified.
458458 # TODO: Add tests for the following branching once FastMCP is updated.
459- elif isinstance (part , mcp_types .ResourceLink ): # pragma: no cover
459+ elif isinstance (part , mcp_types .ResourceLink ):
460460 resource_result : mcp_types .ReadResourceResult = await self ._client .read_resource (part .uri )
461461 # Check if metadata already exists. If so, merge it with nested the resource metadata.
462462 parts_metadata : dict [int , dict [str , Any ]] = {}
463463 nested_metadata : dict [str , Any ] = {}
464464 for idx , content in enumerate (resource_result .contents ):
465- if content .meta is not None :
465+ if content .meta is not None : # pragma: no cover
466466 parts_metadata [idx ] = content .meta
467467 if len (parts_metadata ) > 0 :
468- if resource_result .meta is not None and len (resource_result .meta ) > 0 :
468+ if resource_result .meta is not None and len (resource_result .meta ) > 0 : # pragma: no cover
469469 # Merge the tool result metadata and parts metadata into the return metadata
470470 nested_metadata = {'result' : resource_result .meta , 'content' : parts_metadata }
471471 else :
472472 # Only parts metadata exists
473- if len (parts_metadata ) == 1 :
473+ if len (parts_metadata ) == 1 : # pragma: no cover
474474 # If there is only one content metadata, unwrap it
475475 nested_metadata = parts_metadata [0 ]
476476 else :
477- nested_metadata = {'content' : parts_metadata }
477+ nested_metadata = {'content' : parts_metadata } # pragma: no cover
478478 else :
479- if resource_result .meta is not None and len (resource_result .meta ) > 0 :
479+ if resource_result .meta is not None and len (resource_result .meta ) > 0 : # pragma: no cover
480480 nested_metadata = resource_result .meta
481481 # FIXME: Is this a correct assumption? If metadata was read from the part then that is the same as resource_result.meta
482482 metadata = nested_metadata
483- if len (resource_result .contents ) == 1 :
483+ if len (resource_result .contents ) == 1 : # pragma: no cover
484484 return self ._get_content (resource_result .contents [0 ]), metadata
485- else :
485+ else : # pragma: no cover
486486 return [self ._get_content (resource ) for resource in resource_result .contents ], metadata
487487 else :
488488 assert_never (part )
0 commit comments