Coverage report: 95%

Files Functions Classes

coverage.py v7.15.4, created at 2026-08-21 13:53 +0000

File function   statements missing excluded   coverage
haystack/__init__.py (no function)   11 0 0   100%
haystack/components/agents/__init__.py (no function)   5 0 3   100%
haystack/components/agents/agent.py _get_run_method_params   2 0 0   100%
haystack/components/agents/agent.py _public_outputs   1 0 0   100%
haystack/components/agents/agent.py _validate_hooks   11 0 0   100%
haystack/components/agents/agent.py _consume_continue_run   3 0 0   100%
haystack/components/agents/agent.py _is_text_exit   4 1 0   75%
haystack/components/agents/agent.py _pending_tool_call_messages_from_state   5 1 0   80%
haystack/components/agents/agent.py Agent.__init__   48 0 0   100%
haystack/components/agents/agent.py Agent._register_prompt_variables   22 0 0   100%
haystack/components/agents/agent.py Agent.warm_up   4 0 0   100%
haystack/components/agents/agent.py Agent.warm_up_async   6 0 0   100%
haystack/components/agents/agent.py Agent.close   3 0 0   100%
haystack/components/agents/agent.py Agent.close_async   5 0 0   100%
haystack/components/agents/agent.py Agent.clone   3 0 0   100%
haystack/components/agents/agent.py Agent.to_dict   1 0 0   100%
haystack/components/agents/agent.py Agent.from_dict   10 0 0   100%
haystack/components/agents/agent.py Agent._create_agent_span   2 0 0   100%
haystack/components/agents/agent.py Agent._initialize_fresh_execution   32 1 0   97%
haystack/components/agents/agent.py Agent._select_tools   9 0 0   100%
haystack/components/agents/agent.py Agent.run   19 0 0   100%
haystack/components/agents/agent.py Agent.run_async   19 0 0   100%
haystack/components/agents/agent.py Agent._run_step   38 0 0   100%
haystack/components/agents/agent.py Agent._run_step_async   38 0 0   100%
haystack/components/agents/agent.py Agent._check_exit_conditions   10 0 0   100%
haystack/components/agents/agent.py Agent._continue_after_exit_hooks   5 0 0   100%
haystack/components/agents/agent.py Agent._continue_after_exit_hooks_async   5 0 0   100%
haystack/components/agents/agent.py (no function)   55 0 0   100%
haystack/components/agents/state/__init__.py (no function)   5 0 4   100%
haystack/components/agents/state/state.py _schema_to_dict   6 0 0   100%
haystack/components/agents/state/state.py _schema_from_dict   6 0 0   100%
haystack/components/agents/state/state.py _validate_schema   13 2 0   85%
haystack/components/agents/state/state.py State.__init__   11 0 0   100%
haystack/components/agents/state/state.py State.get   1 0 0   100%
haystack/components/agents/state/state.py State.set   6 0 0   100%
haystack/components/agents/state/state.py State.data   1 0 0   100%
haystack/components/agents/state/state.py State.has   1 0 0   100%
haystack/components/agents/state/state.py State.to_dict   7 0 0   100%
haystack/components/agents/state/state.py State.from_dict   3 0 0   100%
haystack/components/agents/state/state.py (no function)   22 0 0   100%
haystack/components/agents/state/state_utils.py _is_valid_type   5 0 0   100%
haystack/components/agents/state/state_utils.py _is_list_type   1 0 0   100%
haystack/components/agents/state/state_utils.py merge_lists   3 0 0   100%
haystack/components/agents/state/state_utils.py replace_values   1 0 0   100%
haystack/components/agents/state/state_utils.py (no function)   8 0 0   100%
haystack/components/agents/tool_calling.py _AllStateKeys.__repr__   1 1 0   0%
haystack/components/agents/tool_calling.py ToolNotFoundException.__init__   2 0 0   100%
haystack/components/agents/tool_calling.py _validate_and_prepare_tools   6 0 0   100%
haystack/components/agents/tool_calling.py _merge_tool_outputs_into_state   11 0 0   100%
haystack/components/agents/tool_calling.py _result_to_string   8 0 0   100%
haystack/components/agents/tool_calling.py _process_tool_output   15 0 0   100%
haystack/components/agents/tool_calling.py _build_tool_result_message   6 0 0   100%
haystack/components/agents/tool_calling.py _create_tool_result_streaming_chunk   1 0 0   100%
haystack/components/agents/tool_calling.py _create_tool_span   1 0 0   100%
haystack/components/agents/tool_calling.py _make_context_bound_invoke   4 0 0   100%
haystack/components/agents/tool_calling.py _make_context_bound_invoke._invoke   9 0 0   100%
haystack/components/agents/tool_calling.py _make_context_bound_invoke._runner   1 0 0   100%
haystack/components/agents/tool_calling.py _make_bounded_invoke_async   2 0 0   100%
haystack/components/agents/tool_calling.py _make_bounded_invoke_async._runner   10 3 0   70%
haystack/components/agents/tool_calling.py _get_func_params   5 0 0   100%
haystack/components/agents/tool_calling.py _inject_state_args   9 0 0   100%
haystack/components/agents/tool_calling.py _prepare_tool_args   4 0 0   100%
haystack/components/agents/tool_calling.py _resolve_tool_calls   16 0 0   100%
haystack/components/agents/tool_calling.py _keys_intersect   5 0 0   100%
haystack/components/agents/tool_calling.py _state_io_for_call   7 0 0   100%
haystack/components/agents/tool_calling.py _schedule_tool_calls   23 0 0   100%
haystack/components/agents/tool_calling.py _finalize_tool_result   7 0 0   100%
haystack/components/agents/tool_calling.py _run_tool   27 0 0   100%
haystack/components/agents/tool_calling.py _run_tool_async   28 1 0   96%
haystack/components/agents/tool_calling.py (no function)   42 0 0   100%
haystack/components/agents/utils.py _accumulate_usage   8 0 0   100%
haystack/components/agents/utils.py _record_llm_usage   9 0 0   100%
haystack/components/agents/utils.py _record_tool_calls   10 1 0   90%
haystack/components/agents/utils.py _spawn_selection_copy   4 0 0   100%
haystack/components/agents/utils.py _select_tools_by_name   24 1 0   96%
haystack/components/agents/utils.py _spawn_tools   3 0 0   100%
haystack/components/agents/utils.py _first_numeric   7 0 0   100%
haystack/components/agents/utils.py _context_tokens_from_usage   1 0 0   100%
haystack/components/agents/utils.py _record_context_tokens   7 0 0   100%
haystack/components/agents/utils.py _validate_prompt_message_blocks   14 0 0   100%
haystack/components/agents/utils.py _template_for_role   3 0 0   100%
haystack/components/agents/utils.py _render_prompt_messages   7 1 0   86%
haystack/components/agents/utils.py (no function)   23 0 0   100%
haystack/components/builders/__init__.py (no function)   5 0 4   100%
haystack/components/builders/answer_builder.py AnswerBuilder.__init__   7 0 0   100%
haystack/components/builders/answer_builder.py AnswerBuilder.run   36 0 0   100%
haystack/components/builders/answer_builder.py AnswerBuilder._extract_answer_string   7 1 0   86%
haystack/components/builders/answer_builder.py AnswerBuilder._resolve_reference_pattern   5 0 0   100%
haystack/components/builders/answer_builder.py AnswerBuilder._extract_reference_idxs   19 2 0   89%
haystack/components/builders/answer_builder.py AnswerBuilder._check_num_groups_in_regex   3 0 0   100%
haystack/components/builders/answer_builder.py (no function)   21 0 0   100%
haystack/components/builders/chat_prompt_builder.py ChatPromptBuilder.__init__   29 1 0   97%
haystack/components/builders/chat_prompt_builder.py ChatPromptBuilder.run   27 1 0   96%
haystack/components/builders/chat_prompt_builder.py ChatPromptBuilder._render_chat_messages_from_str_template   8 0 0   100%
haystack/components/builders/chat_prompt_builder.py ChatPromptBuilder._validate_variables   7 0 0   100%
haystack/components/builders/chat_prompt_builder.py ChatPromptBuilder.to_dict   6 0 0   100%
haystack/components/builders/chat_prompt_builder.py ChatPromptBuilder.from_dict   8 0 0   100%
haystack/components/builders/chat_prompt_builder.py (no function)   25 0 0   100%
haystack/components/builders/prompt_builder.py PromptBuilder.__init__   20 0 0   100%
haystack/components/builders/prompt_builder.py PromptBuilder.to_dict   1 0 0   100%
haystack/components/builders/prompt_builder.py PromptBuilder.run   9 0 0   100%
haystack/components/builders/prompt_builder.py PromptBuilder._validate_variables   7 0 0   100%
haystack/components/builders/prompt_builder.py (no function)   13 0 0   100%
haystack/components/caching/__init__.py (no function)   5 0 2   100%
haystack/components/caching/cache_checker.py CacheChecker.__init__   2 0 0   100%
haystack/components/caching/cache_checker.py CacheChecker.to_dict   1 0 0   100%
haystack/components/caching/cache_checker.py CacheChecker.from_dict   1 0 0   100%
haystack/components/caching/cache_checker.py CacheChecker.run   9 0 0   100%
haystack/components/caching/cache_checker.py CacheChecker.run_async   11 0 0   100%
haystack/components/caching/cache_checker.py CacheChecker.close   2 0 0   100%
haystack/components/caching/cache_checker.py CacheChecker.close_async   2 0 0   100%
haystack/components/caching/cache_checker.py (no function)   15 0 0   100%
haystack/components/converters/__init__.py (no function)   5 0 15   100%
haystack/components/converters/csv.py CSVToDocument.__init__   9 0 0   100%
haystack/components/converters/csv.py CSVToDocument.run   45 4 0   91%
haystack/components/converters/csv.py CSVToDocument._safe_value   1 0 0   100%
haystack/components/converters/csv.py CSVToDocument._build_document_from_row   16 0 0   100%
haystack/components/converters/csv.py (no function)   17 0 0   100%
haystack/components/converters/docx.py DOCXTableFormat.__str__   1 0 0   100%
haystack/components/converters/docx.py DOCXTableFormat.from_str   6 0 0   100%
haystack/components/converters/docx.py DOCXToDocument.__init__   4 0 0   100%
haystack/components/converters/docx.py DOCXToDocument.to_dict   1 0 0   100%
haystack/components/converters/docx.py DOCXToDocument.from_dict   5 0 0   100%
haystack/components/converters/docx.py DOCXToDocument.run   24 0 0   100%
haystack/components/converters/docx.py DOCXToDocument._extract_elements   15 1 0   93%
haystack/components/converters/docx.py DOCXToDocument._process_paragraph_with_page_breaks   10 0 0   100%
haystack/components/converters/docx.py DOCXToDocument._process_links_in_paragraph   12 0 0   100%
haystack/components/converters/docx.py DOCXToDocument._table_to_markdown   15 0 0   100%
haystack/components/converters/docx.py DOCXToDocument._table_to_csv   8 0 0   100%
haystack/components/converters/docx.py DOCXToDocument._get_docx_metadata   1 0 0   100%
haystack/components/converters/docx.py (no function)   44 0 0   100%
haystack/components/converters/file_to_file_content.py FileToFileContent.run   20 0 0   100%
haystack/components/converters/file_to_file_content.py (no function)   12 0 0   100%
haystack/components/converters/html.py HTMLToDocument.__init__   4 0 0   100%
haystack/components/converters/html.py HTMLToDocument.to_dict   1 0 0   100%
haystack/components/converters/html.py HTMLToDocument.from_dict   1 0 0   100%
haystack/components/converters/html.py HTMLToDocument.run   26 0 0   100%
haystack/components/converters/html.py (no function)   18 0 0   100%
haystack/components/converters/image/__init__.py (no function)   5 0 5   100%
haystack/components/converters/image/document_to_image.py DocumentToImageContent.__init__   6 0 0   100%
haystack/components/converters/image/document_to_image.py DocumentToImageContent.run   26 0 0   100%
haystack/components/converters/image/document_to_image.py (no function)   11 0 0   100%
haystack/components/converters/image/file_to_document.py ImageFileToDocument.__init__   1 0 0   100%
haystack/components/converters/image/file_to_document.py ImageFileToDocument.run   14 1 0   93%
haystack/components/converters/image/file_to_document.py (no function)   12 0 0   100%
haystack/components/converters/image/file_to_image.py ImageFileToImageContent.__init__   4 0 0   100%
haystack/components/converters/image/file_to_image.py ImageFileToImageContent.run   30 0 0   100%
haystack/components/converters/image/file_to_image.py (no function)   19 0 0   100%
haystack/components/converters/image/image_utils.py _encode_image_to_base64   16 2 0   88%
haystack/components/converters/image/image_utils.py _encode_pil_image_to_base64   10 3 0   70%
haystack/components/converters/image/image_utils.py _convert_pdf_to_images   39 0 0   100%
haystack/components/converters/image/image_utils.py _extract_image_sources_info   24 0 0   100%
haystack/components/converters/image/image_utils.py _batch_convert_pdf_pages_to_images   14 0 0   100%
haystack/components/converters/image/image_utils.py (no function)   25 0 0   100%
haystack/components/converters/image/pdf_to_image.py PDFToImageContent.__init__   5 0 0   100%
haystack/components/converters/image/pdf_to_image.py PDFToImageContent.run   27 3 0   89%
haystack/components/converters/image/pdf_to_image.py (no function)   14 0 0   100%
haystack/components/converters/json.py JSONConverter.__init__   11 0 0   100%
haystack/components/converters/json.py JSONConverter.to_dict   1 0 0   100%
haystack/components/converters/json.py JSONConverter.from_dict   1 0 0   100%
haystack/components/converters/json.py JSONConverter._get_content_and_meta   42 8 0   81%
haystack/components/converters/json.py JSONConverter.run   16 3 0   81%
haystack/components/converters/json.py (no function)   20 0 0   100%
haystack/components/converters/markdown.py MarkdownToDocument.__init__   6 0 0   100%
haystack/components/converters/markdown.py MarkdownToDocument.run   25 7 0   72%
haystack/components/converters/markdown.py MarkdownToDocument._extract_frontmatter   18 3 0   83%
haystack/components/converters/markdown.py (no function)   22 0 0   100%
haystack/components/converters/msg.py MSGToDocument.__init__   2 0 0   100%
haystack/components/converters/msg.py MSGToDocument._is_encrypted   1 0 0   100%
haystack/components/converters/msg.py MSGToDocument._create_recipient_str   6 0 0   100%
haystack/components/converters/msg.py MSGToDocument._convert   21 1 0   95%
haystack/components/converters/msg.py MSGToDocument.run   26 4 0   85%
haystack/components/converters/msg.py (no function)   21 0 0   100%
haystack/components/converters/multi_file_converter.py MultiFileConverter.__init__   29 0 0   100%
haystack/components/converters/multi_file_converter.py (no function)   21 0 6   100%
haystack/components/converters/output_adapter.py OutputAdapter.__init__   20 0 0   100%
haystack/components/converters/output_adapter.py OutputAdapter.run   17 1 0   94%
haystack/components/converters/output_adapter.py OutputAdapter.to_dict   2 0 0   100%
haystack/components/converters/output_adapter.py OutputAdapter.from_dict   10 0 0   100%
haystack/components/converters/output_adapter.py (no function)   22 0 0   100%
haystack/components/converters/pdfminer.py PDFMinerToDocument.__init__   5 0 0   100%
haystack/components/converters/pdfminer.py PDFMinerToDocument.to_dict   1 0 0   100%
haystack/components/converters/pdfminer.py PDFMinerToDocument.from_dict   3 0 0   100%
haystack/components/converters/pdfminer.py PDFMinerToDocument._iter_pages   6 0 0   100%
haystack/components/converters/pdfminer.py PDFMinerToDocument._convert_page   31 0 0   100%
haystack/components/converters/pdfminer.py PDFMinerToDocument.detect_undecoded_cid_characters   5 0 0   100%
haystack/components/converters/pdfminer.py PDFMinerToDocument.run   25 0 0   100%
haystack/components/converters/pdfminer.py (no function)   29 0 0   100%
haystack/components/converters/pptx.py PPTXToDocument.__init__   6 0 0   100%
haystack/components/converters/pptx.py PPTXToDocument.to_dict   1 0 0   100%
haystack/components/converters/pptx.py PPTXToDocument._convert   14 2 0   86%
haystack/components/converters/pptx.py PPTXToDocument._process_paragraph   10 0 0   100%
haystack/components/converters/pptx.py PPTXToDocument.run   18 0 0   100%
haystack/components/converters/pptx.py (no function)   20 0 0   100%
haystack/components/converters/pypdf.py PyPDFExtractionMode.__str__   1 0 0   100%
haystack/components/converters/pypdf.py PyPDFExtractionMode.from_str   6 0 0   100%
haystack/components/converters/pypdf.py PyPDFToDocument.__init__   12 0 0   100%
haystack/components/converters/pypdf.py PyPDFToDocument.to_dict   1 0 0   100%
haystack/components/converters/pypdf.py PyPDFToDocument.from_dict   3 0 0   100%
haystack/components/converters/pypdf.py PyPDFToDocument._extract_links   21 3 0   86%
haystack/components/converters/pypdf.py PyPDFToDocument._default_convert   9 0 0   100%
haystack/components/converters/pypdf.py PyPDFToDocument.run   22 3 0   86%
haystack/components/converters/pypdf.py (no function)   28 0 0   100%
haystack/components/converters/txt.py TextFileToDocument.__init__   2 0 0   100%
haystack/components/converters/txt.py TextFileToDocument.run   20 3 0   85%
haystack/components/converters/txt.py (no function)   12 0 0   100%
haystack/components/converters/utils.py LinkFormat.__str__   1 0 0   100%
haystack/components/converters/utils.py LinkFormat.from_str   6 0 0   100%
haystack/components/converters/utils.py get_bytestream_from_source   7 0 0   100%
haystack/components/converters/utils.py normalize_metadata   9 0 0   100%
haystack/components/converters/utils.py (no function)   14 0 0   100%
haystack/components/converters/xlsx.py XLSXToDocument.__init__   14 1 0   93%
haystack/components/converters/xlsx.py XLSXToDocument.run   21 0 0   100%
haystack/components/converters/xlsx.py XLSXToDocument._generate_excel_column_names   9 0 0   100%
haystack/components/converters/xlsx.py XLSXToDocument._extract_tables   47 2 0   96%
haystack/components/converters/xlsx.py (no function)   22 0 0   100%
haystack/components/embedders/__init__.py (no function)   5 0 7   100%
haystack/components/embedders/azure_document_embedder.py AzureOpenAIDocumentEmbedder.__init__   27 2 0   93%
haystack/components/embedders/azure_document_embedder.py AzureOpenAIDocumentEmbedder._client_kwargs   3 0 0   100%
haystack/components/embedders/azure_document_embedder.py AzureOpenAIDocumentEmbedder.warm_up   3 0 0   100%
haystack/components/embedders/azure_document_embedder.py AzureOpenAIDocumentEmbedder.warm_up_async   3 0 0   100%
haystack/components/embedders/azure_document_embedder.py AzureOpenAIDocumentEmbedder.close   3 0 0   100%
haystack/components/embedders/azure_document_embedder.py AzureOpenAIDocumentEmbedder.close_async   3 0 0   100%
haystack/components/embedders/azure_document_embedder.py AzureOpenAIDocumentEmbedder.to_dict   4 0 0   100%
haystack/components/embedders/azure_document_embedder.py AzureOpenAIDocumentEmbedder.from_dict   4 0 0   100%
haystack/components/embedders/azure_document_embedder.py (no function)   19 0 0   100%
haystack/components/embedders/azure_text_embedder.py AzureOpenAITextEmbedder.__init__   22 2 0   91%
haystack/components/embedders/azure_text_embedder.py AzureOpenAITextEmbedder._client_kwargs   3 0 0   100%
haystack/components/embedders/azure_text_embedder.py AzureOpenAITextEmbedder.warm_up   3 0 0   100%
haystack/components/embedders/azure_text_embedder.py AzureOpenAITextEmbedder.warm_up_async   3 0 0   100%
haystack/components/embedders/azure_text_embedder.py AzureOpenAITextEmbedder.close   3 0 0   100%
haystack/components/embedders/azure_text_embedder.py AzureOpenAITextEmbedder.close_async   3 0 0   100%
haystack/components/embedders/azure_text_embedder.py AzureOpenAITextEmbedder.to_dict   4 0 0   100%
haystack/components/embedders/azure_text_embedder.py AzureOpenAITextEmbedder.from_dict   4 0 0   100%
haystack/components/embedders/azure_text_embedder.py (no function)   18 0 0   100%
haystack/components/embedders/mock_document_embedder.py MockDocumentEmbedder.__init__   15 0 0   100%
haystack/components/embedders/mock_document_embedder.py MockDocumentEmbedder.to_dict   2 0 0   100%
haystack/components/embedders/mock_document_embedder.py MockDocumentEmbedder.from_dict   5 0 0   100%
haystack/components/embedders/mock_document_embedder.py MockDocumentEmbedder.warm_up   1 0 0   100%
haystack/components/embedders/mock_document_embedder.py MockDocumentEmbedder._prepare_text_to_embed   2 0 0   100%
haystack/components/embedders/mock_document_embedder.py MockDocumentEmbedder._embed   5 0 0   100%
haystack/components/embedders/mock_document_embedder.py MockDocumentEmbedder.run   8 0 0   100%
haystack/components/embedders/mock_document_embedder.py MockDocumentEmbedder.run_async   1 0 0   100%
haystack/components/embedders/mock_document_embedder.py (no function)   19 0 0   100%
haystack/components/embedders/mock_text_embedder.py MockTextEmbedder.__init__   12 0 0   100%
haystack/components/embedders/mock_text_embedder.py MockTextEmbedder.to_dict   2 0 0   100%
haystack/components/embedders/mock_text_embedder.py MockTextEmbedder.from_dict   5 0 0   100%
haystack/components/embedders/mock_text_embedder.py MockTextEmbedder.warm_up   1 0 0   100%
haystack/components/embedders/mock_text_embedder.py MockTextEmbedder._embed   5 0 0   100%
haystack/components/embedders/mock_text_embedder.py MockTextEmbedder.run   7 0 0   100%
haystack/components/embedders/mock_text_embedder.py MockTextEmbedder.run_async   1 0 0   100%
haystack/components/embedders/mock_text_embedder.py (no function)   17 0 0   100%
haystack/components/embedders/mock_utils.py _l2_normalize   4 0 0   100%
haystack/components/embedders/mock_utils.py _deterministic_embedding   5 0 0   100%
haystack/components/embedders/mock_utils.py _coerce_embedding   5 0 0   100%
haystack/components/embedders/mock_utils.py _estimate_usage   2 0 0   100%
haystack/components/embedders/mock_utils.py (no function)   9 0 0   100%
haystack/components/embedders/openai_document_embedder.py OpenAIDocumentEmbedder.__init__   17 0 0   100%
haystack/components/embedders/openai_document_embedder.py OpenAIDocumentEmbedder._client_kwargs   3 0 0   100%
haystack/components/embedders/openai_document_embedder.py OpenAIDocumentEmbedder.warm_up   3 0 0   100%
haystack/components/embedders/openai_document_embedder.py OpenAIDocumentEmbedder.warm_up_async   3 0 0   100%
haystack/components/embedders/openai_document_embedder.py OpenAIDocumentEmbedder.close   3 0 0   100%
haystack/components/embedders/openai_document_embedder.py OpenAIDocumentEmbedder.close_async   3 0 0   100%
haystack/components/embedders/openai_document_embedder.py OpenAIDocumentEmbedder._get_telemetry_data   1 1 0   0%
haystack/components/embedders/openai_document_embedder.py OpenAIDocumentEmbedder.to_dict   1 0 0   100%
haystack/components/embedders/openai_document_embedder.py OpenAIDocumentEmbedder.from_dict   1 1 0   0%
haystack/components/embedders/openai_document_embedder.py OpenAIDocumentEmbedder._prepare_texts_to_embed   5 0 0   100%
haystack/components/embedders/openai_document_embedder.py OpenAIDocumentEmbedder._embed_batch   25 3 0   88%
haystack/components/embedders/openai_document_embedder.py OpenAIDocumentEmbedder._embed_batch_async   28 28 0   0%
haystack/components/embedders/openai_document_embedder.py OpenAIDocumentEmbedder.run   11 0 0   100%
haystack/components/embedders/openai_document_embedder.py OpenAIDocumentEmbedder.run_async   11 11 0   0%
haystack/components/embedders/openai_document_embedder.py (no function)   30 0 0   100%
haystack/components/embedders/openai_text_embedder.py OpenAITextEmbedder.__init__   12 0 0   100%
haystack/components/embedders/openai_text_embedder.py OpenAITextEmbedder._client_kwargs   3 0 0   100%
haystack/components/embedders/openai_text_embedder.py OpenAITextEmbedder.warm_up   3 0 0   100%
haystack/components/embedders/openai_text_embedder.py OpenAITextEmbedder.warm_up_async   3 0 0   100%
haystack/components/embedders/openai_text_embedder.py OpenAITextEmbedder.close   3 0 0   100%
haystack/components/embedders/openai_text_embedder.py OpenAITextEmbedder.close_async   3 0 0   100%
haystack/components/embedders/openai_text_embedder.py OpenAITextEmbedder._get_telemetry_data   1 1 0   0%
haystack/components/embedders/openai_text_embedder.py OpenAITextEmbedder.to_dict   1 0 0   100%
haystack/components/embedders/openai_text_embedder.py OpenAITextEmbedder.from_dict   1 0 0   100%
haystack/components/embedders/openai_text_embedder.py OpenAITextEmbedder._prepare_input   7 0 0   100%
haystack/components/embedders/openai_text_embedder.py OpenAITextEmbedder._prepare_output   1 0 0   100%
haystack/components/embedders/openai_text_embedder.py OpenAITextEmbedder.run   5 3 0   40%
haystack/components/embedders/openai_text_embedder.py OpenAITextEmbedder.run_async   5 5 0   0%
haystack/components/embedders/openai_text_embedder.py (no function)   25 0 0   100%
haystack/components/embedders/types/__init__.py (no function)   2 0 0   100%
haystack/components/embedders/types/protocol.py (no function)   6 0 2   100%
haystack/components/evaluators/__init__.py (no function)   5 0 10   100%
haystack/components/evaluators/answer_exact_match.py AnswerExactMatchEvaluator.run   9 0 0   100%
haystack/components/evaluators/answer_exact_match.py (no function)   6 0 0   100%
haystack/components/evaluators/context_relevance.py ContextRelevanceEvaluator.__init__   5 0 0   100%
haystack/components/evaluators/context_relevance.py ContextRelevanceEvaluator.run   2 0 0   100%
haystack/components/evaluators/context_relevance.py ContextRelevanceEvaluator.run_async   2 0 0   100%
haystack/components/evaluators/context_relevance.py ContextRelevanceEvaluator._postprocess_results   16 0 0   100%
haystack/components/evaluators/context_relevance.py ContextRelevanceEvaluator.to_dict   1 0 0   100%
haystack/components/evaluators/context_relevance.py ContextRelevanceEvaluator.from_dict   3 0 0   100%
haystack/components/evaluators/context_relevance.py (no function)   21 0 0   100%
haystack/components/evaluators/document_map.py DocumentMAPEvaluator.__init__   1 0 0   100%
haystack/components/evaluators/document_map.py DocumentMAPEvaluator._get_comparison_value   14 3 0   79%
haystack/components/evaluators/document_map.py DocumentMAPEvaluator.to_dict   1 0 0   100%
haystack/components/evaluators/document_map.py DocumentMAPEvaluator.run   27 1 0   96%
haystack/components/evaluators/document_map.py (no function)   9 0 0   100%
haystack/components/evaluators/document_mrr.py DocumentMRREvaluator.__init__   1 0 0   100%
haystack/components/evaluators/document_mrr.py DocumentMRREvaluator._get_comparison_value   14 3 0   79%
haystack/components/evaluators/document_mrr.py DocumentMRREvaluator.to_dict   1 0 0   100%
haystack/components/evaluators/document_mrr.py DocumentMRREvaluator.run   17 1 0   94%
haystack/components/evaluators/document_mrr.py (no function)   9 0 0   100%
haystack/components/evaluators/document_ndcg.py DocumentNDCGEvaluator.__init__   1 0 0   100%
haystack/components/evaluators/document_ndcg.py DocumentNDCGEvaluator._get_comparison_value   14 0 0   100%
haystack/components/evaluators/document_ndcg.py DocumentNDCGEvaluator._build_relevance_map   8 0 0   100%
haystack/components/evaluators/document_ndcg.py DocumentNDCGEvaluator.to_dict   1 0 0   100%
haystack/components/evaluators/document_ndcg.py DocumentNDCGEvaluator.run   9 0 0   100%
haystack/components/evaluators/document_ndcg.py DocumentNDCGEvaluator.validate_inputs   10 0 0   100%
haystack/components/evaluators/document_ndcg.py DocumentNDCGEvaluator.calculate_dcg   7 0 0   100%
haystack/components/evaluators/document_ndcg.py DocumentNDCGEvaluator.calculate_idcg   5 0 0   100%
haystack/components/evaluators/document_ndcg.py (no function)   15 0 0   100%
haystack/components/evaluators/document_recall.py RecallMode.__str__   1 0 0   100%
haystack/components/evaluators/document_recall.py RecallMode.from_str   6 0 0   100%
haystack/components/evaluators/document_recall.py DocumentRecallEvaluator.__init__   4 0 0   100%
haystack/components/evaluators/document_recall.py DocumentRecallEvaluator._get_comparison_value   14 2 0   86%
haystack/components/evaluators/document_recall.py DocumentRecallEvaluator._unique_comparison_values   1 0 0   100%
haystack/components/evaluators/document_recall.py DocumentRecallEvaluator._comparison_sets   7 0 0   100%
haystack/components/evaluators/document_recall.py DocumentRecallEvaluator._recall_single_hit   4 0 0   100%
haystack/components/evaluators/document_recall.py DocumentRecallEvaluator._recall_multi_hit   4 0 0   100%
haystack/components/evaluators/document_recall.py DocumentRecallEvaluator.run   9 0 0   100%
haystack/components/evaluators/document_recall.py DocumentRecallEvaluator.to_dict   1 0 0   100%
haystack/components/evaluators/document_recall.py (no function)   22 0 0   100%
haystack/components/evaluators/faithfulness.py FaithfulnessEvaluator.__init__   5 0 0   100%
haystack/components/evaluators/faithfulness.py FaithfulnessEvaluator.run   2 0 0   100%
haystack/components/evaluators/faithfulness.py FaithfulnessEvaluator.run_async   2 0 0   100%
haystack/components/evaluators/faithfulness.py FaithfulnessEvaluator._postprocess_results   16 0 0   100%
haystack/components/evaluators/faithfulness.py FaithfulnessEvaluator.to_dict   1 0 0   100%
haystack/components/evaluators/faithfulness.py FaithfulnessEvaluator.from_dict   3 0 0   100%
haystack/components/evaluators/faithfulness.py (no function)   21 0 0   100%
haystack/components/evaluators/llm_evaluator.py LLMEvaluator.__init__   14 0 0   100%
haystack/components/evaluators/llm_evaluator.py LLMEvaluator.warm_up   2 0 0   100%
haystack/components/evaluators/llm_evaluator.py LLMEvaluator.warm_up_async   4 0 0   100%
haystack/components/evaluators/llm_evaluator.py LLMEvaluator.close   2 0 0   100%
haystack/components/evaluators/llm_evaluator.py LLMEvaluator.close_async   4 0 0   100%
haystack/components/evaluators/llm_evaluator.py LLMEvaluator.validate_init_parameters   13 0 0   100%
haystack/components/evaluators/llm_evaluator.py LLMEvaluator.run   31 1 0   97%
haystack/components/evaluators/llm_evaluator.py LLMEvaluator.run_async   35 0 0   100%
haystack/components/evaluators/llm_evaluator.py LLMEvaluator.prepare_template   3 0 0   100%
haystack/components/evaluators/llm_evaluator.py LLMEvaluator.to_dict   2 0 0   100%
haystack/components/evaluators/llm_evaluator.py LLMEvaluator.from_dict   4 0 0   100%
haystack/components/evaluators/llm_evaluator.py LLMEvaluator.validate_input_parameters   12 0 0   100%
haystack/components/evaluators/llm_evaluator.py (no function)   34 0 0   100%
haystack/components/evaluators/sas_evaluator.py SASEvaluator.__init__   6 0 0   100%
haystack/components/evaluators/sas_evaluator.py SASEvaluator.to_dict   1 0 0   100%
haystack/components/evaluators/sas_evaluator.py SASEvaluator.from_dict   1 0 0   100%
haystack/components/evaluators/sas_evaluator.py SASEvaluator.warm_up   11 11 0   0%
haystack/components/evaluators/sas_evaluator.py SASEvaluator.run   20 14 0   30%
haystack/components/evaluators/sas_evaluator.py (no function)   18 0 0   100%
haystack/components/extractors/__init__.py (no function)   5 0 3   100%
haystack/components/extractors/image/__init__.py (no function)   5 0 2   100%
haystack/components/extractors/image/llm_document_content_extractor.py LLMDocumentContentExtractor.__init__   10 0 0   100%
haystack/components/extractors/image/llm_document_content_extractor.py LLMDocumentContentExtractor.warm_up   2 0 0   100%
haystack/components/extractors/image/llm_document_content_extractor.py LLMDocumentContentExtractor.warm_up_async   4 0 0   100%
haystack/components/extractors/image/llm_document_content_extractor.py LLMDocumentContentExtractor.close   2 0 0   100%
haystack/components/extractors/image/llm_document_content_extractor.py LLMDocumentContentExtractor.close_async   4 0 0   100%
haystack/components/extractors/image/llm_document_content_extractor.py LLMDocumentContentExtractor.to_dict   1 0 0   100%
haystack/components/extractors/image/llm_document_content_extractor.py LLMDocumentContentExtractor.from_dict   3 0 0   100%
haystack/components/extractors/image/llm_document_content_extractor.py LLMDocumentContentExtractor._validate_prompt_no_variables   5 0 0   100%
haystack/components/extractors/image/llm_document_content_extractor.py LLMDocumentContentExtractor._process_response   9 0 0   100%
haystack/components/extractors/image/llm_document_content_extractor.py LLMDocumentContentExtractor._run_on_thread   13 0 0   100%
haystack/components/extractors/image/llm_document_content_extractor.py LLMDocumentContentExtractor._run_async   13 1 0   92%
haystack/components/extractors/image/llm_document_content_extractor.py LLMDocumentContentExtractor._process_llm_results   13 0 0   100%
haystack/components/extractors/image/llm_document_content_extractor.py LLMDocumentContentExtractor.run   15 0 0   100%
haystack/components/extractors/image/llm_document_content_extractor.py LLMDocumentContentExtractor.run_async   17 0 0   100%
haystack/components/extractors/image/llm_document_content_extractor.py LLMDocumentContentExtractor.run_async._bounded_run   2 0 0   100%
haystack/components/extractors/image/llm_document_content_extractor.py (no function)   43 0 0   100%
haystack/components/extractors/llm_metadata_extractor.py LLMMetadataExtractor.__init__   13 0 0   100%
haystack/components/extractors/llm_metadata_extractor.py LLMMetadataExtractor.warm_up   3 0 0   100%
haystack/components/extractors/llm_metadata_extractor.py LLMMetadataExtractor.warm_up_async   5 0 0   100%
haystack/components/extractors/llm_metadata_extractor.py LLMMetadataExtractor.close   3 0 0   100%
haystack/components/extractors/llm_metadata_extractor.py LLMMetadataExtractor.close_async   5 0 0   100%
haystack/components/extractors/llm_metadata_extractor.py LLMMetadataExtractor.to_dict   1 0 0   100%
haystack/components/extractors/llm_metadata_extractor.py LLMMetadataExtractor.from_dict   2 0 0   100%
haystack/components/extractors/llm_metadata_extractor.py LLMMetadataExtractor._extract_metadata   8 0 0   100%
haystack/components/extractors/llm_metadata_extractor.py LLMMetadataExtractor._prepare_prompts   19 0 0   100%
haystack/components/extractors/llm_metadata_extractor.py LLMMetadataExtractor._run_on_thread   12 5 0   58%
haystack/components/extractors/llm_metadata_extractor.py LLMMetadataExtractor._run_async   12 5 0   58%
haystack/components/extractors/llm_metadata_extractor.py LLMMetadataExtractor._process_results   21 4 0   81%
haystack/components/extractors/llm_metadata_extractor.py LLMMetadataExtractor.run   13 1 0   92%
haystack/components/extractors/llm_metadata_extractor.py LLMMetadataExtractor.run_async   14 1 0   93%
haystack/components/extractors/llm_metadata_extractor.py LLMMetadataExtractor.run_async._bounded_run   2 0 0   100%
haystack/components/extractors/llm_metadata_extractor.py (no function)   40 0 0   100%
haystack/components/extractors/regex_text_extractor.py RegexTextExtractor.__init__   4 0 0   100%
haystack/components/extractors/regex_text_extractor.py RegexTextExtractor.to_dict   1 0 0   100%
haystack/components/extractors/regex_text_extractor.py RegexTextExtractor.from_dict   4 0 0   100%
haystack/components/extractors/regex_text_extractor.py RegexTextExtractor.run   6 0 0   100%
haystack/components/extractors/regex_text_extractor.py RegexTextExtractor._build_result   3 0 0   100%
haystack/components/extractors/regex_text_extractor.py RegexTextExtractor._process_last_message   8 0 0   100%
haystack/components/extractors/regex_text_extractor.py RegexTextExtractor._extract_from_text   6 0 0   100%
haystack/components/extractors/regex_text_extractor.py (no function)   17 0 0   100%
haystack/components/fetchers/__init__.py (no function)   5 0 2   100%
haystack/components/fetchers/link_content.py _merge_headers   8 0 0   100%
haystack/components/fetchers/link_content.py _text_content_handler   1 0 0   100%
haystack/components/fetchers/link_content.py _binary_content_handler   1 0 0   100%
haystack/components/fetchers/link_content.py LinkContentFetcher.__init__   19 0 0   100%
haystack/components/fetchers/link_content.py LinkContentFetcher._get_response   5 0 0   100%
haystack/components/fetchers/link_content.py LinkContentFetcher._get_response.rotate_user_agent   2 0 0   100%
haystack/components/fetchers/link_content.py LinkContentFetcher._get_response.get_response   4 0 0   100%
haystack/components/fetchers/link_content.py LinkContentFetcher._build_client_kwargs   9 6 0   33%
haystack/components/fetchers/link_content.py LinkContentFetcher.warm_up   2 0 0   100%
haystack/components/fetchers/link_content.py LinkContentFetcher.warm_up_async   2 0 0   100%
haystack/components/fetchers/link_content.py LinkContentFetcher.close   3 0 0   100%
haystack/components/fetchers/link_content.py LinkContentFetcher.close_async   3 0 0   100%
haystack/components/fetchers/link_content.py LinkContentFetcher._get_headers   2 0 0   100%
haystack/components/fetchers/link_content.py LinkContentFetcher.run   17 1 0   94%
haystack/components/fetchers/link_content.py LinkContentFetcher.run_async   22 4 0   82%
haystack/components/fetchers/link_content.py LinkContentFetcher._fetch   12 0 0   100%
haystack/components/fetchers/link_content.py LinkContentFetcher._fetch_async   16 0 0   100%
haystack/components/fetchers/link_content.py LinkContentFetcher._fetch_with_exception_suppression   7 5 0   29%
haystack/components/fetchers/link_content.py LinkContentFetcher._get_response_async   18 1 0   94%
haystack/components/fetchers/link_content.py LinkContentFetcher._get_content_type   2 0 0   100%
haystack/components/fetchers/link_content.py LinkContentFetcher._resolve_handler   6 1 0   83%
haystack/components/fetchers/link_content.py (no function)   41 0 0   100%
haystack/components/generators/__init__.py (no function)   5 0 2   100%
haystack/components/generators/chat/__init__.py (no function)   5 0 8   100%
haystack/components/generators/chat/azure.py AzureOpenAIChatGenerator.__init__   26 1 0   96%
haystack/components/generators/chat/azure.py AzureOpenAIChatGenerator._client_kwargs   5 0 0   100%
haystack/components/generators/chat/azure.py AzureOpenAIChatGenerator._warm_up_tools   3 0 0   100%
haystack/components/generators/chat/azure.py AzureOpenAIChatGenerator.warm_up   4 0 0   100%
haystack/components/generators/chat/azure.py AzureOpenAIChatGenerator.warm_up_async   4 0 0   100%
haystack/components/generators/chat/azure.py AzureOpenAIChatGenerator.close   3 0 0   100%
haystack/components/generators/chat/azure.py AzureOpenAIChatGenerator.close_async   3 0 0   100%
haystack/components/generators/chat/azure.py AzureOpenAIChatGenerator.to_dict   10 0 0   100%
haystack/components/generators/chat/azure.py AzureOpenAIChatGenerator.from_dict   9 2 0   78%
haystack/components/generators/chat/azure.py (no function)   25 0 0   100%
haystack/components/generators/chat/azure_responses.py AzureOpenAIResponsesChatGenerator.__init__   6 0 0   100%
haystack/components/generators/chat/azure_responses.py AzureOpenAIResponsesChatGenerator.to_dict   11 1 0   91%
haystack/components/generators/chat/azure_responses.py AzureOpenAIResponsesChatGenerator.from_dict   11 1 0   91%
haystack/components/generators/chat/azure_responses.py (no function)   18 0 0   100%
haystack/components/generators/chat/fallback.py FallbackChatGenerator.__init__   4 0 0   100%
haystack/components/generators/chat/fallback.py FallbackChatGenerator.to_dict   1 0 0   100%
haystack/components/generators/chat/fallback.py FallbackChatGenerator.from_dict   10 0 0   100%
haystack/components/generators/chat/fallback.py FallbackChatGenerator.warm_up   3 0 0   100%
haystack/components/generators/chat/fallback.py FallbackChatGenerator.warm_up_async   5 0 0   100%
haystack/components/generators/chat/fallback.py FallbackChatGenerator.close   3 0 0   100%
haystack/components/generators/chat/fallback.py FallbackChatGenerator.close_async   5 0 0   100%
haystack/components/generators/chat/fallback.py FallbackChatGenerator._run_single_sync   1 0 0   100%
haystack/components/generators/chat/fallback.py FallbackChatGenerator._run_single_async   1 0 0   100%
haystack/components/generators/chat/fallback.py FallbackChatGenerator.run   19 0 0   100%
haystack/components/generators/chat/fallback.py FallbackChatGenerator.run_async   19 3 0   84%
haystack/components/generators/chat/fallback.py (no function)   27 0 0   100%
haystack/components/generators/chat/llm.py LLM.__init__   7 0 0   100%
haystack/components/generators/chat/llm.py LLM.to_dict   1 0 0   100%
haystack/components/generators/chat/llm.py LLM.from_dict   5 1 0   80%
haystack/components/generators/chat/llm.py LLM.run   5 0 0   100%
haystack/components/generators/chat/llm.py LLM.run_async   5 0 0   100%
haystack/components/generators/chat/llm.py (no function)   17 0 0   100%
haystack/components/generators/chat/mock.py MockChatGenerator.__init__   10 0 0   100%
haystack/components/generators/chat/mock.py MockChatGenerator._normalize_responses   19 0 0   100%
haystack/components/generators/chat/mock.py MockChatGenerator.to_dict   4 0 0   100%
haystack/components/generators/chat/mock.py MockChatGenerator.from_dict   11 0 0   100%
haystack/components/generators/chat/mock.py MockChatGenerator.warm_up   1 0 0   100%
haystack/components/generators/chat/mock.py MockChatGenerator._echo_text   4 0 0   100%
haystack/components/generators/chat/mock.py MockChatGenerator._response_fn_accepts_tools   5 0 0   100%
haystack/components/generators/chat/mock.py MockChatGenerator._coerce_to_message   7 0 0   100%
haystack/components/generators/chat/mock.py MockChatGenerator._estimate_usage   3 0 0   100%
haystack/components/generators/chat/mock.py MockChatGenerator._build_meta   4 0 0   100%
haystack/components/generators/chat/mock.py MockChatGenerator._build_reply   11 0 0   100%
haystack/components/generators/chat/mock.py MockChatGenerator._make_chunks   15 0 0   100%
haystack/components/generators/chat/mock.py MockChatGenerator.run   10 0 0   100%
haystack/components/generators/chat/mock.py MockChatGenerator.run_async   11 0 0   100%
haystack/components/generators/chat/mock.py (no function)   39 0 0   100%
haystack/components/generators/chat/openai.py OpenAIChatGenerator.__init__   15 0 0   100%
haystack/components/generators/chat/openai.py OpenAIChatGenerator._client_kwargs   3 0 0   100%
haystack/components/generators/chat/openai.py OpenAIChatGenerator._warm_up_tools   3 0 0   100%
haystack/components/generators/chat/openai.py OpenAIChatGenerator.warm_up   4 0 0   100%
haystack/components/generators/chat/openai.py OpenAIChatGenerator.warm_up_async   4 0 0   100%
haystack/components/generators/chat/openai.py OpenAIChatGenerator.close   3 0 0   100%
haystack/components/generators/chat/openai.py OpenAIChatGenerator.close_async   3 0 0   100%
haystack/components/generators/chat/openai.py OpenAIChatGenerator._get_telemetry_data   1 0 0   100%
haystack/components/generators/chat/openai.py OpenAIChatGenerator.to_dict   7 0 0   100%
haystack/components/generators/chat/openai.py OpenAIChatGenerator.from_dict   6 0 0   100%
haystack/components/generators/chat/openai.py OpenAIChatGenerator.run   17 0 0   100%
haystack/components/generators/chat/openai.py OpenAIChatGenerator.run_async   17 1 0   94%
haystack/components/generators/chat/openai.py OpenAIChatGenerator._prepare_api_call   27 1 0   96%
haystack/components/generators/chat/openai.py OpenAIChatGenerator._handle_stream_response   8 0 0   100%
haystack/components/generators/chat/openai.py OpenAIChatGenerator._handle_async_stream_response   12 0 0   100%
haystack/components/generators/chat/openai.py _make_schema_strict   15 0 0   100%
haystack/components/generators/chat/openai.py _check_finish_reason   4 0 0   100%
haystack/components/generators/chat/openai.py _convert_chat_completion_to_chat_message   17 1 0   94%
haystack/components/generators/chat/openai.py _convert_chat_completion_chunk_to_streaming_chunk   21 1 0   95%
haystack/components/generators/chat/openai.py (no function)   45 0 0   100%
haystack/components/generators/chat/openai_responses.py OpenAIResponsesChatGenerator.__init__   14 0 0   100%
haystack/components/generators/chat/openai_responses.py OpenAIResponsesChatGenerator._client_kwargs   4 0 0   100%
haystack/components/generators/chat/openai_responses.py OpenAIResponsesChatGenerator._warm_up_tools   5 0 0   100%
haystack/components/generators/chat/openai_responses.py OpenAIResponsesChatGenerator.warm_up   4 0 0   100%
haystack/components/generators/chat/openai_responses.py OpenAIResponsesChatGenerator.warm_up_async   4 0 0   100%
haystack/components/generators/chat/openai_responses.py OpenAIResponsesChatGenerator.close   3 0 0   100%
haystack/components/generators/chat/openai_responses.py OpenAIResponsesChatGenerator.close_async   3 0 0   100%
haystack/components/generators/chat/openai_responses.py OpenAIResponsesChatGenerator._get_telemetry_data   1 1 0   0%
haystack/components/generators/chat/openai_responses.py OpenAIResponsesChatGenerator.to_dict   10 1 0   90%
haystack/components/generators/chat/openai_responses.py OpenAIResponsesChatGenerator.from_dict   8 0 0   100%
haystack/components/generators/chat/openai_responses.py OpenAIResponsesChatGenerator.run   15 1 0   93%
haystack/components/generators/chat/openai_responses.py OpenAIResponsesChatGenerator.run_async   15 2 0   87%
haystack/components/generators/chat/openai_responses.py OpenAIResponsesChatGenerator._prepare_api_call   25 2 0   92%
haystack/components/generators/chat/openai_responses.py OpenAIResponsesChatGenerator._resolve_flattened_kwargs   22 0 0   100%
haystack/components/generators/chat/openai_responses.py OpenAIResponsesChatGenerator._handle_stream_response   8 0 0   100%
haystack/components/generators/chat/openai_responses.py OpenAIResponsesChatGenerator._handle_async_stream_response   8 8 0   0%
haystack/components/generators/chat/openai_responses.py _convert_response_to_chat_message   31 11 0   65%
haystack/components/generators/chat/openai_responses.py _convert_response_chunk_to_streaming_chunk   30 1 0   97%
haystack/components/generators/chat/openai_responses.py _convert_streaming_chunks_to_chat_message   49 4 0   92%
haystack/components/generators/chat/openai_responses.py _convert_chat_message_to_responses_api_format   51 2 0   96%
haystack/components/generators/chat/openai_responses.py _convert_chat_message_to_responses_api_format.convert_part   7 1 0   86%
haystack/components/generators/chat/openai_responses.py (no function)   43 0 0   100%
haystack/components/generators/chat/types/__init__.py (no function)   2 0 0   100%
haystack/components/generators/chat/types/protocol.py (no function)   4 0 0   100%
haystack/components/generators/openai_image_generator.py OpenAIImageGenerator.__init__   16 0 0   100%
haystack/components/generators/openai_image_generator.py OpenAIImageGenerator._client_kwargs   3 0 0   100%
haystack/components/generators/openai_image_generator.py OpenAIImageGenerator.warm_up   3 0 0   100%
haystack/components/generators/openai_image_generator.py OpenAIImageGenerator.warm_up_async   3 0 0   100%
haystack/components/generators/openai_image_generator.py OpenAIImageGenerator.close   3 0 0   100%
haystack/components/generators/openai_image_generator.py OpenAIImageGenerator.close_async   3 0 0   100%
haystack/components/generators/openai_image_generator.py OpenAIImageGenerator.run   12 0 0   100%
haystack/components/generators/openai_image_generator.py OpenAIImageGenerator.run_async   12 0 0   100%
haystack/components/generators/openai_image_generator.py OpenAIImageGenerator.to_dict   1 0 0   100%
haystack/components/generators/openai_image_generator.py OpenAIImageGenerator.from_dict   1 0 0   100%
haystack/components/generators/openai_image_generator.py (no function)   23 0 0   100%
haystack/components/generators/utils.py _trace_chat_generator_run   4 0 0   100%
haystack/components/generators/utils.py print_streaming_chunk   22 2 0   91%
haystack/components/generators/utils.py _convert_streaming_chunks_to_chat_message   40 4 0   90%
haystack/components/generators/utils.py _serialize_object   9 3 0   67%
haystack/components/generators/utils.py _normalize_messages   5 0 0   100%
haystack/components/generators/utils.py (no function)   13 0 0   100%
haystack/components/joiners/__init__.py (no function)   5 0 6   100%
haystack/components/joiners/answer_joiner.py JoinMode.__str__   1 0 0   100%
haystack/components/joiners/answer_joiner.py JoinMode.from_str   6 0 0   100%
haystack/components/joiners/answer_joiner.py AnswerJoiner.__init__   9 0 0   100%
haystack/components/joiners/answer_joiner.py AnswerJoiner.run   12 1 0   92%
haystack/components/joiners/answer_joiner.py AnswerJoiner._concatenate   1 0 0   100%
haystack/components/joiners/answer_joiner.py AnswerJoiner.to_dict   1 0 0   100%
haystack/components/joiners/answer_joiner.py AnswerJoiner.from_dict   1 0 0   100%
haystack/components/joiners/answer_joiner.py (no function)   23 0 0   100%
haystack/components/joiners/branch.py BranchJoiner.__init__   3 0 0   100%
haystack/components/joiners/branch.py BranchJoiner.to_dict   1 1 0   0%
haystack/components/joiners/branch.py BranchJoiner.from_dict   2 2 0   0%
haystack/components/joiners/branch.py BranchJoiner.run   3 0 0   100%
haystack/components/joiners/branch.py (no function)   11 0 0   100%
haystack/components/joiners/document_joiner.py JoinMode.__str__   1 0 0   100%
haystack/components/joiners/document_joiner.py JoinMode.from_str   6 0 0   100%
haystack/components/joiners/document_joiner.py DocumentJoiner.__init__   15 0 0   100%
haystack/components/joiners/document_joiner.py DocumentJoiner.run   13 0 0   100%
haystack/components/joiners/document_joiner.py DocumentJoiner._concatenate   8 0 0   100%
haystack/components/joiners/document_joiner.py DocumentJoiner._merge   10 0 0   100%
haystack/components/joiners/document_joiner.py DocumentJoiner._rrf   1 0 0   100%
haystack/components/joiners/document_joiner.py DocumentJoiner._distribution_based_rank_fusion   13 0 0   100%
haystack/components/joiners/document_joiner.py DocumentJoiner.to_dict   1 0 0   100%
haystack/components/joiners/document_joiner.py DocumentJoiner.from_dict   1 0 0   100%
haystack/components/joiners/document_joiner.py (no function)   32 0 0   100%
haystack/components/joiners/list_joiner.py ListJoiner.__init__   4 0 0   100%
haystack/components/joiners/list_joiner.py ListJoiner.to_dict   1 0 0   100%
haystack/components/joiners/list_joiner.py ListJoiner.from_dict   4 0 0   100%
haystack/components/joiners/list_joiner.py ListJoiner.run   2 0 0   100%
haystack/components/joiners/list_joiner.py (no function)   12 0 0   100%
haystack/components/joiners/string_joiner.py StringJoiner.run   2 0 0   100%
haystack/components/joiners/string_joiner.py (no function)   6 0 0   100%
haystack/components/preprocessors/__init__.py (no function)   5 0 12   100%
haystack/components/preprocessors/csv_document_cleaner.py CSVDocumentCleaner.__init__   6 0 0   100%
haystack/components/preprocessors/csv_document_cleaner.py CSVDocumentCleaner.run   20 0 0   100%
haystack/components/preprocessors/csv_document_cleaner.py CSVDocumentCleaner._clean_df   14 0 0   100%
haystack/components/preprocessors/csv_document_cleaner.py CSVDocumentCleaner._get_ignored_rows   3 0 0   100%
haystack/components/preprocessors/csv_document_cleaner.py CSVDocumentCleaner._get_ignored_columns   3 0 0   100%
haystack/components/preprocessors/csv_document_cleaner.py (no function)   18 0 0   100%
haystack/components/preprocessors/csv_document_splitter.py CSVDocumentSplitter.__init__   13 0 0   100%
haystack/components/preprocessors/csv_document_splitter.py CSVDocumentSplitter.run   27 4 0   85%
haystack/components/preprocessors/csv_document_splitter.py CSVDocumentSplitter._find_split_indices   18 0 0   100%
haystack/components/preprocessors/csv_document_splitter.py CSVDocumentSplitter._split_dataframe   15 0 0   100%
haystack/components/preprocessors/csv_document_splitter.py CSVDocumentSplitter._recursive_split   10 0 0   100%
haystack/components/preprocessors/csv_document_splitter.py CSVDocumentSplitter._split_by_row   6 0 0   100%
haystack/components/preprocessors/csv_document_splitter.py (no function)   19 0 0   100%
haystack/components/preprocessors/document_cleaner.py DocumentCleaner.__init__   11 0 0   100%
haystack/components/preprocessors/document_cleaner.py DocumentCleaner._validate_params   2 1 0   50%
haystack/components/preprocessors/document_cleaner.py DocumentCleaner.run   30 0 0   100%
haystack/components/preprocessors/document_cleaner.py DocumentCleaner._normalize_unicode   1 0 0   100%
haystack/components/preprocessors/document_cleaner.py DocumentCleaner._ascii_only   1 0 0   100%
haystack/components/preprocessors/document_cleaner.py DocumentCleaner._remove_empty_lines   3 0 0   100%
haystack/components/preprocessors/document_cleaner.py DocumentCleaner._remove_extra_whitespaces   3 0 0   100%
haystack/components/preprocessors/document_cleaner.py DocumentCleaner._remove_regex   3 0 0   100%
haystack/components/preprocessors/document_cleaner.py DocumentCleaner._replace_regexes   7 0 0   100%
haystack/components/preprocessors/document_cleaner.py DocumentCleaner._remove_substrings   3 0 0   100%
haystack/components/preprocessors/document_cleaner.py DocumentCleaner._remove_repeated_substrings   1 0 0   100%
haystack/components/preprocessors/document_cleaner.py DocumentCleaner._find_and_remove_header_footer   11 0 0   100%
haystack/components/preprocessors/document_cleaner.py DocumentCleaner._ngram   4 0 0   100%
haystack/components/preprocessors/document_cleaner.py DocumentCleaner._allngram   3 0 0   100%
haystack/components/preprocessors/document_cleaner.py DocumentCleaner._find_longest_common_ngram   7 0 0   100%
haystack/components/preprocessors/document_cleaner.py (no function)   27 0 0   100%
haystack/components/preprocessors/document_preprocessor.py DocumentPreprocessor.__init__   26 0 0   100%
haystack/components/preprocessors/document_preprocessor.py DocumentPreprocessor.to_dict   4 1 0   75%
haystack/components/preprocessors/document_preprocessor.py DocumentPreprocessor.from_dict   4 1 0   75%
haystack/components/preprocessors/document_preprocessor.py (no function)   12 0 4   100%
haystack/components/preprocessors/document_splitter.py DocumentSplitter.__init__   15 0 0   100%
haystack/components/preprocessors/document_splitter.py DocumentSplitter._init_checks   14 0 0   100%
haystack/components/preprocessors/document_splitter.py DocumentSplitter.warm_up   2 0 0   100%
haystack/components/preprocessors/document_splitter.py DocumentSplitter.run   13 0 0   100%
haystack/components/preprocessors/document_splitter.py DocumentSplitter._split_document   5 0 0   100%
haystack/components/preprocessors/document_splitter.py DocumentSplitter._split_by_nltk_sentence   10 0 0   100%
haystack/components/preprocessors/document_splitter.py DocumentSplitter._split_by_character   8 0 0   100%
haystack/components/preprocessors/document_splitter.py DocumentSplitter._split_by_function   7 0 0   100%
haystack/components/preprocessors/document_splitter.py DocumentSplitter._concatenate_units   22 0 0   100%
haystack/components/preprocessors/document_splitter.py DocumentSplitter._create_docs_from_splits   18 0 0   100%
haystack/components/preprocessors/document_splitter.py DocumentSplitter._add_split_overlap_information   7 0 0   100%
haystack/components/preprocessors/document_splitter.py DocumentSplitter.to_dict   4 0 0   100%
haystack/components/preprocessors/document_splitter.py DocumentSplitter.from_dict   5 0 0   100%
haystack/components/preprocessors/document_splitter.py DocumentSplitter._concatenate_sentences_based_on_word_amount   32 0 0   100%
haystack/components/preprocessors/document_splitter.py DocumentSplitter._number_of_sentences_to_keep   12 0 0   100%
haystack/components/preprocessors/document_splitter.py (no function)   32 0 0   100%
haystack/components/preprocessors/embedding_based_document_splitter.py EmbeddingBasedDocumentSplitter.__init__   17 0 0   100%
haystack/components/preprocessors/embedding_based_document_splitter.py EmbeddingBasedDocumentSplitter.warm_up   4 0 0   100%
haystack/components/preprocessors/embedding_based_document_splitter.py EmbeddingBasedDocumentSplitter.warm_up_async   6 0 0   100%
haystack/components/preprocessors/embedding_based_document_splitter.py EmbeddingBasedDocumentSplitter.close   2 0 0   100%
haystack/components/preprocessors/embedding_based_document_splitter.py EmbeddingBasedDocumentSplitter.close_async   4 0 0   100%
haystack/components/preprocessors/embedding_based_document_splitter.py EmbeddingBasedDocumentSplitter.run   13 0 0   100%
haystack/components/preprocessors/embedding_based_document_splitter.py EmbeddingBasedDocumentSplitter.run_async   12 0 0   100%
haystack/components/preprocessors/embedding_based_document_splitter.py EmbeddingBasedDocumentSplitter._split_document   4 0 0   100%
haystack/components/preprocessors/embedding_based_document_splitter.py EmbeddingBasedDocumentSplitter._split_document_async   4 0 0   100%
haystack/components/preprocessors/embedding_based_document_splitter.py EmbeddingBasedDocumentSplitter._prepare_sentence_groups   8 2 0   75%
haystack/components/preprocessors/embedding_based_document_splitter.py EmbeddingBasedDocumentSplitter._split_text   4 0 0   100%
haystack/components/preprocessors/embedding_based_document_splitter.py EmbeddingBasedDocumentSplitter._split_text_async   4 0 0   100%
haystack/components/preprocessors/embedding_based_document_splitter.py EmbeddingBasedDocumentSplitter._group_sentences   7 0 0   100%
haystack/components/preprocessors/embedding_based_document_splitter.py EmbeddingBasedDocumentSplitter._calculate_embeddings   4 0 0   100%
haystack/components/preprocessors/embedding_based_document_splitter.py EmbeddingBasedDocumentSplitter._calculate_embeddings_async   4 0 0   100%
haystack/components/preprocessors/embedding_based_document_splitter.py EmbeddingBasedDocumentSplitter._find_split_points   12 0 0   100%
haystack/components/preprocessors/embedding_based_document_splitter.py EmbeddingBasedDocumentSplitter._cosine_distance   8 0 0   100%
haystack/components/preprocessors/embedding_based_document_splitter.py EmbeddingBasedDocumentSplitter._create_splits_from_points   14 0 0   100%
haystack/components/preprocessors/embedding_based_document_splitter.py EmbeddingBasedDocumentSplitter._merge_small_splits   11 1 0   91%
haystack/components/preprocessors/embedding_based_document_splitter.py EmbeddingBasedDocumentSplitter._split_large_splits   10 5 0   50%
haystack/components/preprocessors/embedding_based_document_splitter.py EmbeddingBasedDocumentSplitter._split_large_splits_async   10 2 0   80%
haystack/components/preprocessors/embedding_based_document_splitter.py EmbeddingBasedDocumentSplitter._create_documents_from_splits   16 0 0   100%
haystack/components/preprocessors/embedding_based_document_splitter.py EmbeddingBasedDocumentSplitter.to_dict   1 0 0   100%
haystack/components/preprocessors/embedding_based_document_splitter.py EmbeddingBasedDocumentSplitter.from_dict   2 2 0   0%
haystack/components/preprocessors/embedding_based_document_splitter.py (no function)   45 0 0   100%
haystack/components/preprocessors/hierarchical_document_splitter.py HierarchicalDocumentSplitter.__init__   12 0 0   100%
haystack/components/preprocessors/hierarchical_document_splitter.py HierarchicalDocumentSplitter.run   4 0 0   100%
haystack/components/preprocessors/hierarchical_document_splitter.py HierarchicalDocumentSplitter._build_block_sizes   2 0 0   100%
haystack/components/preprocessors/hierarchical_document_splitter.py HierarchicalDocumentSplitter._add_meta_data   2 0 0   100%
haystack/components/preprocessors/hierarchical_document_splitter.py HierarchicalDocumentSplitter.build_hierarchy_from_doc   21 0 0   100%
haystack/components/preprocessors/hierarchical_document_splitter.py HierarchicalDocumentSplitter.to_dict   1 0 0   100%
haystack/components/preprocessors/hierarchical_document_splitter.py HierarchicalDocumentSplitter.from_dict   1 0 0   100%
haystack/components/preprocessors/hierarchical_document_splitter.py (no function)   17 0 0   100%
haystack/components/preprocessors/markdown_header_splitter.py MarkdownHeaderSplitter.__init__   23 0 0   100%
haystack/components/preprocessors/markdown_header_splitter.py MarkdownHeaderSplitter.warm_up   3 0 0   100%
haystack/components/preprocessors/markdown_header_splitter.py MarkdownHeaderSplitter._code_block_spans   1 0 0   100%
haystack/components/preprocessors/markdown_header_splitter.py MarkdownHeaderSplitter._split_text_by_markdown_headers   44 0 0   100%
haystack/components/preprocessors/markdown_header_splitter.py MarkdownHeaderSplitter._apply_secondary_splitting   29 3 0   90%
haystack/components/preprocessors/markdown_header_splitter.py MarkdownHeaderSplitter._update_page_number_with_breaks   7 1 0   86%
haystack/components/preprocessors/markdown_header_splitter.py MarkdownHeaderSplitter._split_documents_by_markdown_headers   20 1 0   95%
haystack/components/preprocessors/markdown_header_splitter.py MarkdownHeaderSplitter.run   22 1 0   95%
haystack/components/preprocessors/markdown_header_splitter.py (no function)   17 0 0   100%
haystack/components/preprocessors/python_code_splitter.py PythonCodeSplitter.__init__   22 0 0   100%
haystack/components/preprocessors/python_code_splitter.py PythonCodeSplitter._effective_lines   3 1 0   67%
haystack/components/preprocessors/python_code_splitter.py PythonCodeSplitter._is_oversized   1 0 0   100%
haystack/components/preprocessors/python_code_splitter.py PythonCodeSplitter._slice_lines   4 1 0   75%
haystack/components/preprocessors/python_code_splitter.py PythonCodeSplitter._safe_unparse   2 0 2   100%
haystack/components/preprocessors/python_code_splitter.py PythonCodeSplitter._strip_docstring   14 2 0   86%
haystack/components/preprocessors/python_code_splitter.py PythonCodeSplitter._emit_class_units   47 5 0   89%
haystack/components/preprocessors/python_code_splitter.py PythonCodeSplitter._extract_units   53 4 0   92%
haystack/components/preprocessors/python_code_splitter.py PythonCodeSplitter._merge_units   24 0 0   100%
haystack/components/preprocessors/python_code_splitter.py PythonCodeSplitter._merge_units.flush   4 0 0   100%
haystack/components/preprocessors/python_code_splitter.py PythonCodeSplitter._ordered_unique   1 0 0   100%
haystack/components/preprocessors/python_code_splitter.py PythonCodeSplitter._build_chunk_meta   21 0 0   100%
haystack/components/preprocessors/python_code_splitter.py PythonCodeSplitter._render_chunk_content   13 0 0   100%
haystack/components/preprocessors/python_code_splitter.py PythonCodeSplitter._secondary_split   18 1 0   94%
haystack/components/preprocessors/python_code_splitter.py PythonCodeSplitter.run   29 1 0   97%
haystack/components/preprocessors/python_code_splitter.py (no function)   34 0 0   100%
haystack/components/preprocessors/recursive_splitter.py RecursiveDocumentSplitter.__init__   9 0 0   100%
haystack/components/preprocessors/recursive_splitter.py RecursiveDocumentSplitter.warm_up   8 0 0   100%
haystack/components/preprocessors/recursive_splitter.py RecursiveDocumentSplitter._check_params   8 0 0   100%
haystack/components/preprocessors/recursive_splitter.py RecursiveDocumentSplitter._get_custom_sentence_tokenizer   2 0 0   100%
haystack/components/preprocessors/recursive_splitter.py RecursiveDocumentSplitter._split_chunk   14 4 0   71%
haystack/components/preprocessors/recursive_splitter.py RecursiveDocumentSplitter._apply_overlap   38 3 0   92%
haystack/components/preprocessors/recursive_splitter.py RecursiveDocumentSplitter._create_chunk_starting_with_overlap   8 3 0   62%
haystack/components/preprocessors/recursive_splitter.py RecursiveDocumentSplitter._get_overlap   11 3 0   73%
haystack/components/preprocessors/recursive_splitter.py RecursiveDocumentSplitter._chunk_length   6 1 0   83%
haystack/components/preprocessors/recursive_splitter.py RecursiveDocumentSplitter._chunk_text   42 0 0   100%
haystack/components/preprocessors/recursive_splitter.py RecursiveDocumentSplitter._fall_back_to_fixed_chunking   28 5 0   82%
haystack/components/preprocessors/recursive_splitter.py RecursiveDocumentSplitter._add_overlap_info   6 0 0   100%
haystack/components/preprocessors/recursive_splitter.py RecursiveDocumentSplitter._run_one   27 0 0   100%
haystack/components/preprocessors/recursive_splitter.py RecursiveDocumentSplitter.run   9 0 0   100%
haystack/components/preprocessors/recursive_splitter.py (no function)   26 0 0   100%
haystack/components/preprocessors/sentence_tokenizer.py load_sentence_tokenizer   15 4 0   73%
haystack/components/preprocessors/sentence_tokenizer.py CustomPunktLanguageVars.period_context_re   5 0 0   100%
haystack/components/preprocessors/sentence_tokenizer.py SentenceSplitter.__init__   8 0 0   100%
haystack/components/preprocessors/sentence_tokenizer.py SentenceSplitter.split_sentences   4 0 0   100%
haystack/components/preprocessors/sentence_tokenizer.py SentenceSplitter._apply_split_rules   12 0 0   100%
haystack/components/preprocessors/sentence_tokenizer.py SentenceSplitter._needs_join   9 1 0   89%
haystack/components/preprocessors/sentence_tokenizer.py SentenceSplitter._read_abbreviations   5 0 0   100%
haystack/components/preprocessors/sentence_tokenizer.py (no function)   25 0 0   100%
haystack/components/preprocessors/text_cleaner.py TextCleaner.__init__   13 0 0   100%
haystack/components/preprocessors/text_cleaner.py TextCleaner.run   7 0 0   100%
haystack/components/preprocessors/text_cleaner.py (no function)   9 0 0   100%
haystack/components/query/__init__.py (no function)   5 0 2   100%
haystack/components/query/query_expander.py QueryExpander.__init__   13 0 0   100%
haystack/components/query/query_expander.py QueryExpander.to_dict   1 0 0   100%
haystack/components/query/query_expander.py QueryExpander.from_dict   3 0 0   100%
haystack/components/query/query_expander.py QueryExpander.run   31 0 0   100%
haystack/components/query/query_expander.py QueryExpander.run_async   31 10 0   68%
haystack/components/query/query_expander.py QueryExpander.warm_up   2 0 0   100%
haystack/components/query/query_expander.py QueryExpander.warm_up_async   4 0 0   100%
haystack/components/query/query_expander.py QueryExpander.close   2 0 0   100%
haystack/components/query/query_expander.py QueryExpander.close_async   4 0 0   100%
haystack/components/query/query_expander.py QueryExpander._parse_expanded_queries   16 0 0   100%
haystack/components/query/query_expander.py (no function)   30 0 0   100%
haystack/components/rankers/__init__.py (no function)   5 0 5   100%
haystack/components/rankers/llm_ranker.py _default_openai_chat_generator   1 0 0   100%
haystack/components/rankers/llm_ranker.py LLMRanker.__init__   11 0 0   100%
haystack/components/rankers/llm_ranker.py LLMRanker.warm_up   2 0 0   100%
haystack/components/rankers/llm_ranker.py LLMRanker.warm_up_async   4 0 0   100%
haystack/components/rankers/llm_ranker.py LLMRanker.close   2 0 0   100%
haystack/components/rankers/llm_ranker.py LLMRanker.close_async   4 0 0   100%
haystack/components/rankers/llm_ranker.py LLMRanker.to_dict   1 0 0   100%
haystack/components/rankers/llm_ranker.py LLMRanker.from_dict   4 0 0   100%
haystack/components/rankers/llm_ranker.py LLMRanker.run   31 0 0   100%
haystack/components/rankers/llm_ranker.py LLMRanker.run_async   31 4 0   87%
haystack/components/rankers/llm_ranker.py LLMRanker._get_reply_text   7 0 0   100%
haystack/components/rankers/llm_ranker.py LLMRanker._rank_documents_from_reply   24 3 0   88%
haystack/components/rankers/llm_ranker.py (no function)   32 0 0   100%
haystack/components/rankers/lost_in_the_middle.py LostInTheMiddleRanker.__init__   6 0 0   100%
haystack/components/rankers/lost_in_the_middle.py LostInTheMiddleRanker.run   30 2 0   93%
haystack/components/rankers/lost_in_the_middle.py (no function)   7 0 0   100%
haystack/components/rankers/meta_field.py MetaFieldRanker.__init__   8 0 0   100%
haystack/components/rankers/meta_field.py MetaFieldRanker._validate_params   12 0 0   100%
haystack/components/rankers/meta_field.py MetaFieldRanker.run   42 0 0   100%
haystack/components/rankers/meta_field.py MetaFieldRanker._parse_meta   17 0 0   100%
haystack/components/rankers/meta_field.py MetaFieldRanker._merge_rankings   17 0 0   100%
haystack/components/rankers/meta_field.py MetaFieldRanker._calculate_rrf   1 0 0   100%
haystack/components/rankers/meta_field.py MetaFieldRanker._calc_linear_score   1 0 0   100%
haystack/components/rankers/meta_field.py (no function)   20 0 0   100%
haystack/components/rankers/meta_field_grouping_ranker.py MetaFieldGroupingRanker.__init__   3 0 0   100%
haystack/components/rankers/meta_field_grouping_ranker.py MetaFieldGroupingRanker.run   26 0 0   100%
haystack/components/rankers/meta_field_grouping_ranker.py (no function)   9 0 0   100%
haystack/components/retrievers/__init__.py (no function)   5 0 10   100%
haystack/components/retrievers/auto_merging_retriever.py AutoMergingRetriever.__init__   4 0 0   100%
haystack/components/retrievers/auto_merging_retriever.py AutoMergingRetriever.to_dict   1 0 0   100%
haystack/components/retrievers/auto_merging_retriever.py AutoMergingRetriever.from_dict   1 0 0   100%
haystack/components/retrievers/auto_merging_retriever.py AutoMergingRetriever._check_valid_documents   6 0 0   100%
haystack/components/retrievers/auto_merging_retriever.py AutoMergingRetriever.run   4 0 0   100%
haystack/components/retrievers/auto_merging_retriever.py AutoMergingRetriever.run._get_parent_doc   7 0 0   100%
haystack/components/retrievers/auto_merging_retriever.py AutoMergingRetriever.run._try_merge_level   15 0 0   100%
haystack/components/retrievers/auto_merging_retriever.py AutoMergingRetriever.run_async   4 0 0   100%
haystack/components/retrievers/auto_merging_retriever.py AutoMergingRetriever.run_async._get_parent_doc   7 0 0   100%
haystack/components/retrievers/auto_merging_retriever.py AutoMergingRetriever.run_async._try_merge_level   15 0 0   100%
haystack/components/retrievers/auto_merging_retriever.py AutoMergingRetriever.close   2 0 0   100%
haystack/components/retrievers/auto_merging_retriever.py AutoMergingRetriever.close_async   2 0 0   100%
haystack/components/retrievers/auto_merging_retriever.py (no function)   18 0 0   100%
haystack/components/retrievers/filter_retriever.py FilterRetriever.__init__   2 0 0   100%
haystack/components/retrievers/filter_retriever.py FilterRetriever._get_telemetry_data   1 1 0   0%
haystack/components/retrievers/filter_retriever.py FilterRetriever.to_dict   1 0 0   100%
haystack/components/retrievers/filter_retriever.py FilterRetriever.from_dict   1 0 0   100%
haystack/components/retrievers/filter_retriever.py FilterRetriever.run   1 0 0   100%
haystack/components/retrievers/filter_retriever.py FilterRetriever.run_async   2 0 0   100%
haystack/components/retrievers/filter_retriever.py FilterRetriever.close   2 0 0   100%
haystack/components/retrievers/filter_retriever.py FilterRetriever.close_async   2 0 0   100%
haystack/components/retrievers/filter_retriever.py (no function)   16 0 0   100%
haystack/components/retrievers/in_memory/__init__.py (no function)   5 0 3   100%
haystack/components/retrievers/in_memory/bm25_retriever.py InMemoryBM25Retriever.__init__   9 0 0   100%
haystack/components/retrievers/in_memory/bm25_retriever.py InMemoryBM25Retriever._get_telemetry_data   1 0 0   100%
haystack/components/retrievers/in_memory/bm25_retriever.py InMemoryBM25Retriever.to_dict   1 0 0   100%
haystack/components/retrievers/in_memory/bm25_retriever.py InMemoryBM25Retriever.from_dict   4 0 0   100%
haystack/components/retrievers/in_memory/bm25_retriever.py InMemoryBM25Retriever.run   7 0 0   100%
haystack/components/retrievers/in_memory/bm25_retriever.py InMemoryBM25Retriever.run_async   7 0 0   100%
haystack/components/retrievers/in_memory/bm25_retriever.py (no function)   15 0 0   100%
haystack/components/retrievers/in_memory/embedding_retriever.py InMemoryEmbeddingRetriever.__init__   10 0 0   100%
haystack/components/retrievers/in_memory/embedding_retriever.py InMemoryEmbeddingRetriever._get_telemetry_data   1 1 0   0%
haystack/components/retrievers/in_memory/embedding_retriever.py InMemoryEmbeddingRetriever.to_dict   1 0 0   100%
haystack/components/retrievers/in_memory/embedding_retriever.py InMemoryEmbeddingRetriever.from_dict   4 0 0   100%
haystack/components/retrievers/in_memory/embedding_retriever.py InMemoryEmbeddingRetriever.run   9 0 0   100%
haystack/components/retrievers/in_memory/embedding_retriever.py InMemoryEmbeddingRetriever.run_async   9 0 0   100%
haystack/components/retrievers/in_memory/embedding_retriever.py (no function)   15 0 0   100%
haystack/components/retrievers/multi_query_embedding_retriever.py MultiQueryEmbeddingRetriever.__init__   3 0 0   100%
haystack/components/retrievers/multi_query_embedding_retriever.py MultiQueryEmbeddingRetriever.warm_up   3 0 0   100%
haystack/components/retrievers/multi_query_embedding_retriever.py MultiQueryEmbeddingRetriever.warm_up_async   5 0 0   100%
haystack/components/retrievers/multi_query_embedding_retriever.py MultiQueryEmbeddingRetriever.close   3 0 0   100%
haystack/components/retrievers/multi_query_embedding_retriever.py MultiQueryEmbeddingRetriever.close_async   5 0 0   100%
haystack/components/retrievers/multi_query_embedding_retriever.py MultiQueryEmbeddingRetriever.run   12 0 0   100%
haystack/components/retrievers/multi_query_embedding_retriever.py MultiQueryEmbeddingRetriever.run_async   8 0 0   100%
haystack/components/retrievers/multi_query_embedding_retriever.py MultiQueryEmbeddingRetriever._run_on_thread   6 1 0   83%
haystack/components/retrievers/multi_query_embedding_retriever.py MultiQueryEmbeddingRetriever._run_one_async   6 1 0   83%
haystack/components/retrievers/multi_query_embedding_retriever.py MultiQueryEmbeddingRetriever.to_dict   1 0 0   100%
haystack/components/retrievers/multi_query_embedding_retriever.py MultiQueryEmbeddingRetriever.from_dict   1 0 0   100%
haystack/components/retrievers/multi_query_embedding_retriever.py (no function)   25 0 0   100%
haystack/components/retrievers/multi_query_text_retriever.py MultiQueryTextRetriever.__init__   2 0 0   100%
haystack/components/retrievers/multi_query_text_retriever.py MultiQueryTextRetriever.warm_up   2 0 0   100%
haystack/components/retrievers/multi_query_text_retriever.py MultiQueryTextRetriever.warm_up_async   4 0 0   100%
haystack/components/retrievers/multi_query_text_retriever.py MultiQueryTextRetriever.close   2 0 0   100%
haystack/components/retrievers/multi_query_text_retriever.py MultiQueryTextRetriever.close_async   4 0 0   100%
haystack/components/retrievers/multi_query_text_retriever.py MultiQueryTextRetriever.run   12 1 0   92%
haystack/components/retrievers/multi_query_text_retriever.py MultiQueryTextRetriever.run_async   8 0 0   100%
haystack/components/retrievers/multi_query_text_retriever.py MultiQueryTextRetriever._run_on_thread   4 1 0   75%
haystack/components/retrievers/multi_query_text_retriever.py MultiQueryTextRetriever._run_one_async   4 1 0   75%
haystack/components/retrievers/multi_query_text_retriever.py MultiQueryTextRetriever.to_dict   1 0 0   100%
haystack/components/retrievers/multi_query_text_retriever.py MultiQueryTextRetriever.from_dict   1 0 0   100%
haystack/components/retrievers/multi_query_text_retriever.py (no function)   24 0 0   100%
haystack/components/retrievers/multi_retriever.py MultiRetriever.__init__   6 0 0   100%
haystack/components/retrievers/multi_retriever.py MultiRetriever._merge_results   5 1 0   80%
haystack/components/retrievers/multi_retriever.py MultiRetriever._resolve_retrievers   6 0 0   100%
haystack/components/retrievers/multi_retriever.py MultiRetriever.warm_up   3 0 0   100%
haystack/components/retrievers/multi_retriever.py MultiRetriever.warm_up_async   5 0 0   100%
haystack/components/retrievers/multi_retriever.py MultiRetriever.close   3 0 0   100%
haystack/components/retrievers/multi_retriever.py MultiRetriever.close_async   5 0 0   100%
haystack/components/retrievers/multi_retriever.py MultiRetriever.run   23 0 0   100%
haystack/components/retrievers/multi_retriever.py MultiRetriever.run_async   14 0 0   100%
haystack/components/retrievers/multi_retriever.py MultiRetriever.run_async._run_one   5 0 0   100%
haystack/components/retrievers/multi_retriever.py MultiRetriever.to_dict   1 0 0   100%
haystack/components/retrievers/multi_retriever.py MultiRetriever.from_dict   11 0 0   100%
haystack/components/retrievers/multi_retriever.py (no function)   28 0 0   100%
haystack/components/retrievers/sentence_window_retriever.py SentenceWindowRetriever.__init__   7 0 0   100%
haystack/components/retrievers/sentence_window_retriever.py SentenceWindowRetriever.merge_documents_text   13 1 0   92%
haystack/components/retrievers/sentence_window_retriever.py SentenceWindowRetriever.to_dict   1 0 0   100%
haystack/components/retrievers/sentence_window_retriever.py SentenceWindowRetriever.from_dict   1 0 0   100%
haystack/components/retrievers/sentence_window_retriever.py SentenceWindowRetriever.run   10 0 0   100%
haystack/components/retrievers/sentence_window_retriever.py SentenceWindowRetriever.run_async   10 0 0   100%
haystack/components/retrievers/sentence_window_retriever.py SentenceWindowRetriever._validate_window_size   2 0 0   100%
haystack/components/retrievers/sentence_window_retriever.py SentenceWindowRetriever._raise_if_documents_do_not_have_expected_metadata   4 0 0   100%
haystack/components/retrievers/sentence_window_retriever.py SentenceWindowRetriever._retrieve_context_for_document   11 2 0   82%
haystack/components/retrievers/sentence_window_retriever.py SentenceWindowRetriever._retrieve_context_for_document_async   11 2 0   82%
haystack/components/retrievers/sentence_window_retriever.py SentenceWindowRetriever._build_filter_conditions   5 0 0   100%
haystack/components/retrievers/sentence_window_retriever.py SentenceWindowRetriever.close   2 0 0   100%
haystack/components/retrievers/sentence_window_retriever.py SentenceWindowRetriever.close_async   2 0 0   100%
haystack/components/retrievers/sentence_window_retriever.py (no function)   24 0 0   100%
haystack/components/retrievers/text_embedding_retriever.py TextEmbeddingRetriever.__init__   2 0 0   100%
haystack/components/retrievers/text_embedding_retriever.py TextEmbeddingRetriever.warm_up   3 0 0   100%
haystack/components/retrievers/text_embedding_retriever.py TextEmbeddingRetriever.warm_up_async   5 0 0   100%
haystack/components/retrievers/text_embedding_retriever.py TextEmbeddingRetriever.close   3 0 0   100%
haystack/components/retrievers/text_embedding_retriever.py TextEmbeddingRetriever.close_async   5 0 0   100%
haystack/components/retrievers/text_embedding_retriever.py TextEmbeddingRetriever.run   6 0 0   100%
haystack/components/retrievers/text_embedding_retriever.py TextEmbeddingRetriever.run_async   6 0 0   100%
haystack/components/retrievers/text_embedding_retriever.py TextEmbeddingRetriever.to_dict   1 0 0   100%
haystack/components/retrievers/text_embedding_retriever.py TextEmbeddingRetriever.from_dict   1 0 0   100%
haystack/components/retrievers/text_embedding_retriever.py (no function)   20 0 0   100%
haystack/components/retrievers/types/__init__.py (no function)   2 0 0   100%
haystack/components/retrievers/types/protocol.py (no function)   5 0 2   100%
haystack/components/routers/__init__.py (no function)   5 0 7   100%
haystack/components/routers/conditional_router.py ConditionalRouter.__init__   32 0 0   100%
haystack/components/routers/conditional_router.py ConditionalRouter.to_dict   6 0 0   100%
haystack/components/routers/conditional_router.py ConditionalRouter.from_dict   15 0 0   100%
haystack/components/routers/conditional_router.py ConditionalRouter.run   33 2 0   94%
haystack/components/routers/conditional_router.py ConditionalRouter._validate_routes   26 2 0   92%
haystack/components/routers/conditional_router.py ConditionalRouter._extract_variables   5 0 0   100%
haystack/components/routers/conditional_router.py ConditionalRouter._validate_template   7 0 0   100%
haystack/components/routers/conditional_router.py ConditionalRouter._output_matches_type   24 4 0   83%
haystack/components/routers/conditional_router.py (no function)   30 0 0   100%
haystack/components/routers/document_length_router.py DocumentLengthRouter.__init__   1 0 0   100%
haystack/components/routers/document_length_router.py DocumentLengthRouter.run   7 0 0   100%
haystack/components/routers/document_length_router.py (no function)   7 0 0   100%
haystack/components/routers/document_type_router.py DocumentTypeRouter.__init__   19 0 0   100%
haystack/components/routers/document_type_router.py DocumentTypeRouter.run   16 0 0   100%
haystack/components/routers/document_type_router.py (no function)   11 0 0   100%
haystack/components/routers/file_type_router.py FileTypeRouter.__init__   16 0 0   100%
haystack/components/routers/file_type_router.py FileTypeRouter.to_dict   1 0 0   100%
haystack/components/routers/file_type_router.py FileTypeRouter.from_dict   1 0 0   100%
haystack/components/routers/file_type_router.py FileTypeRouter.run   36 6 0   83%
haystack/components/routers/file_type_router.py (no function)   18 0 0   100%
haystack/components/routers/llm_messages_router.py LLMMessagesRouter.__init__   8 0 0   100%
haystack/components/routers/llm_messages_router.py LLMMessagesRouter.warm_up   2 0 0   100%
haystack/components/routers/llm_messages_router.py LLMMessagesRouter.warm_up_async   4 0 0   100%
haystack/components/routers/llm_messages_router.py LLMMessagesRouter.close   2 0 0   100%
haystack/components/routers/llm_messages_router.py LLMMessagesRouter.close_async   4 0 0   100%
haystack/components/routers/llm_messages_router.py LLMMessagesRouter.run   21 0 0   100%
haystack/components/routers/llm_messages_router.py LLMMessagesRouter.run_async   21 1 0   95%
haystack/components/routers/llm_messages_router.py LLMMessagesRouter.to_dict   1 0 0   100%
haystack/components/routers/llm_messages_router.py LLMMessagesRouter.from_dict   3 0 0   100%
haystack/components/routers/llm_messages_router.py (no function)   21 0 0   100%
haystack/components/routers/metadata_router.py MetadataRouter.__init__   7 0 0   100%
haystack/components/routers/metadata_router.py MetadataRouter.run   12 0 0   100%
haystack/components/routers/metadata_router.py MetadataRouter.to_dict   1 0 0   100%
haystack/components/routers/metadata_router.py MetadataRouter.from_dict   4 0 0   100%
haystack/components/routers/metadata_router.py (no function)   12 0 0   100%
haystack/components/samplers/__init__.py (no function)   5 0 2   100%
haystack/components/samplers/top_p.py TopPSampler.__init__   6 0 0   100%
haystack/components/samplers/top_p.py TopPSampler.run   24 0 0   100%
haystack/components/samplers/top_p.py TopPSampler._get_doc_score   6 0 0   100%
haystack/components/samplers/top_p.py TopPSampler._get_documents_and_scores   15 0 0   100%
haystack/components/samplers/top_p.py (no function)   14 0 0   100%
haystack/components/validators/__init__.py (no function)   5 0 2   100%
haystack/components/validators/json_schema.py is_valid_json   5 2 0   60%
haystack/components/validators/json_schema.py JsonSchemaValidator.__init__   2 0 0   100%
haystack/components/validators/json_schema.py JsonSchemaValidator.run   28 3 0   89%
haystack/components/validators/json_schema.py JsonSchemaValidator._construct_error_recovery_message   2 0 0   100%
haystack/components/validators/json_schema.py JsonSchemaValidator._is_openai_function_calling_schema   1 0 0   100%
haystack/components/validators/json_schema.py JsonSchemaValidator._recursive_json_to_object   18 3 0   83%
haystack/components/validators/json_schema.py (no function)   15 0 0   100%
haystack/components/writers/__init__.py (no function)   5 0 2   100%
haystack/components/writers/document_writer.py DocumentWriter.__init__   2 0 0   100%
haystack/components/writers/document_writer.py DocumentWriter._get_telemetry_data   1 0 0   100%
haystack/components/writers/document_writer.py DocumentWriter.to_dict   1 0 0   100%
haystack/components/writers/document_writer.py DocumentWriter.from_dict   4 0 0   100%
haystack/components/writers/document_writer.py DocumentWriter.run   4 0 0   100%
haystack/components/writers/document_writer.py DocumentWriter.run_async   6 0 0   100%
haystack/components/writers/document_writer.py DocumentWriter.close   2 0 0   100%
haystack/components/writers/document_writer.py DocumentWriter.close_async   2 0 0   100%
haystack/components/writers/document_writer.py (no function)   16 0 0   100%
haystack/core/__init__.py (no function)   2 0 0   100%
haystack/core/component/__init__.py (no function)   3 0 0   100%
haystack/core/component/component.py _hook_component_init   4 0 0   100%
haystack/core/component/component.py ComponentMeta._positional_to_kwargs   9 0 0   100%
haystack/core/component/component.py ComponentMeta._parse_and_set_output_sockets   8 0 0   100%
haystack/core/component/component.py ComponentMeta._parse_and_set_input_sockets   13 0 0   100%
haystack/core/component/component.py ComponentMeta._parse_and_set_input_sockets.inner   15 0 0   100%
haystack/core/component/component.py ComponentMeta.__call__   19 0 0   100%
haystack/core/component/component.py _component_repr   4 0 0   100%
haystack/core/component/component.py _component_run_has_kwargs   4 1 0   75%
haystack/core/component/component.py _compare_run_methods_signatures   15 0 0   100%
haystack/core/component/component.py _Component.__init__   1 0 0   100%
haystack/core/component/component.py _Component.set_input_type   5 0 0   100%
haystack/core/component/component.py _Component.set_input_types   3 0 1   100%
haystack/core/component/component.py _Component.set_output_types   5 0 1   100%
haystack/core/component/component.py _Component.output_types   2 0 0   100%
haystack/core/component/component.py _Component.output_types.output_types_decorator   5 0 0   100%
haystack/core/component/component.py _Component._component   12 0 0   100%
haystack/core/component/component.py _Component._component.copy_class_namespace   4 0 0   100%
haystack/core/component/component.py _Component.__call__   4 0 0   100%
haystack/core/component/component.py _Component.__call__.wrap   1 0 0   100%
haystack/core/component/component.py (no function)   46 0 8   100%
haystack/core/component/sockets.py Sockets.__init__   4 0 0   100%
haystack/core/component/sockets.py Sockets.__eq__   3 1 0   67%
haystack/core/component/sockets.py Sockets.__setitem__   2 0 0   100%
haystack/core/component/sockets.py Sockets.__contains__   1 0 0   100%
haystack/core/component/sockets.py Sockets.get   1 0 0   100%
haystack/core/component/sockets.py Sockets._component_name   3 3 0   0%
haystack/core/component/sockets.py Sockets.__getattribute__   7 2 0   71%
haystack/core/component/sockets.py Sockets.__repr__   6 0 0   100%
haystack/core/component/sockets.py (no function)   14 0 0   100%
haystack/core/component/types.py InputSocket.is_variadic   1 0 0   100%
haystack/core/component/types.py InputSocket.is_mandatory   1 0 0   100%
haystack/core/component/types.py InputSocket.__post_init__   13 3 0   77%
haystack/core/component/types.py (no function)   27 0 0   100%
haystack/core/errors.py PipelineRuntimeError.__init__   5 0 0   100%
haystack/core/errors.py PipelineRuntimeError.from_exception   2 0 0   100%
haystack/core/errors.py PipelineRuntimeError.from_invalid_output   2 0 0   100%
haystack/core/errors.py PipelineComponentsBlockedError.__init__   2 2 0   0%
haystack/core/errors.py BreakpointException.__init__   7 1 0   86%
haystack/core/errors.py BreakpointException.from_triggered_breakpoint   2 0 0   100%
haystack/core/errors.py BreakpointException.inputs   3 3 0   0%
haystack/core/errors.py BreakpointException.results   3 3 0   0%
haystack/core/errors.py BreakpointException.break_point   3 1 0   67%
haystack/core/errors.py PipelineInvalidPipelineSnapshotError.__init__   1 0 0   100%
haystack/core/errors.py (no function)   42 0 0   100%
haystack/core/pipeline/__init__.py (no function)   2 0 0   100%
haystack/core/pipeline/base.py PipelineBase.__init__   6 0 0   100%
haystack/core/pipeline/base.py PipelineBase.__eq__   3 0 0   100%
haystack/core/pipeline/base.py PipelineBase.__repr__   14 0 0   100%
haystack/core/pipeline/base.py PipelineBase.to_dict   9 0 0   100%
haystack/core/pipeline/base.py PipelineBase.from_dict   2 0 0   100%
haystack/core/pipeline/base.py PipelineBase._from_dict_impl   44 3 0   93%
haystack/core/pipeline/base.py PipelineBase.dumps   1 0 0   100%
haystack/core/pipeline/base.py PipelineBase.dump   1 0 0   100%
haystack/core/pipeline/base.py PipelineBase.loads   5 0 0   100%
haystack/core/pipeline/base.py PipelineBase.load   1 0 0   100%
haystack/core/pipeline/base.py PipelineBase.add_component   4 0 0   100%
haystack/core/pipeline/base.py PipelineBase.add_components   14 0 0   100%
haystack/core/pipeline/base.py PipelineBase._validate_component   17 1 0   94%
haystack/core/pipeline/base.py PipelineBase._add_component_to_graph   4 0 0   100%
haystack/core/pipeline/base.py PipelineBase.remove_component   25 0 0   100%
haystack/core/pipeline/base.py PipelineBase.connect   72 9 0   88%
haystack/core/pipeline/base.py PipelineBase.connect_many   3 0 0   100%
haystack/core/pipeline/base.py PipelineBase.get_component   4 0 0   100%
haystack/core/pipeline/base.py PipelineBase.get_component_name   4 0 0   100%
haystack/core/pipeline/base.py PipelineBase.inputs   11 0 0   100%
haystack/core/pipeline/base.py PipelineBase.outputs   1 0 0   100%
haystack/core/pipeline/base.py PipelineBase.show   10 1 0   90%
haystack/core/pipeline/base.py PipelineBase.draw   6 1 0   83%
haystack/core/pipeline/base.py PipelineBase.walk   2 0 0   100%
haystack/core/pipeline/base.py PipelineBase.warm_up   4 0 0   100%
haystack/core/pipeline/base.py PipelineBase.warm_up_async   8 0 0   100%
haystack/core/pipeline/base.py PipelineBase.close   5 0 0   100%
haystack/core/pipeline/base.py PipelineBase.close_async   8 0 0   100%
haystack/core/pipeline/base.py PipelineBase._create_component_span   1 0 0   100%
haystack/core/pipeline/base.py PipelineBase.validate_input   15 0 0   100%
haystack/core/pipeline/base.py PipelineBase._make_socket_auto_variadic   14 0 0   100%
haystack/core/pipeline/base.py PipelineBase._prepare_component_input_data   19 0 0   100%
haystack/core/pipeline/base.py PipelineBase._find_receivers_from   6 0 0   100%
haystack/core/pipeline/base.py PipelineBase._convert_to_internal_format   6 0 0   100%
haystack/core/pipeline/base.py PipelineBase._consume_component_inputs   22 0 0   100%
haystack/core/pipeline/base.py PipelineBase._fill_queue   6 0 0   100%
haystack/core/pipeline/base.py PipelineBase._calculate_priority   7 0 0   100%
haystack/core/pipeline/base.py PipelineBase._get_component_with_graph_metadata_and_visits   2 0 0   100%
haystack/core/pipeline/base.py PipelineBase._get_next_runnable_component   9 0 0   100%
haystack/core/pipeline/base.py PipelineBase._add_missing_input_defaults   6 0 0   100%
haystack/core/pipeline/base.py PipelineBase._topological_sort   6 0 0   100%
haystack/core/pipeline/base.py PipelineBase._tiebreak_waiting_components   12 0 0   100%
haystack/core/pipeline/base.py PipelineBase._find_components_blocking_pipeline   19 1 0   95%
haystack/core/pipeline/base.py PipelineBase._log_warning_for_blocking_components   2 0 0   100%
haystack/core/pipeline/base.py PipelineBase._write_component_outputs   23 0 0   100%
haystack/core/pipeline/base.py PipelineBase._is_queue_stale   1 0 0   100%
haystack/core/pipeline/base.py PipelineBase.validate_pipeline   5 2 0   60%
haystack/core/pipeline/base.py PipelineBase._find_super_components   5 5 0   0%
haystack/core/pipeline/base.py PipelineBase._merge_super_component_pipelines   28 28 0   0%
haystack/core/pipeline/base.py PipelineBase._is_pipeline_possibly_blocked   2 0 0   100%
haystack/core/pipeline/base.py _connections_status   12 0 0   100%
haystack/core/pipeline/base.py _validate_component_output_keys   10 0 0   100%
haystack/core/pipeline/base.py _write_to_lazy_variadic_socket   3 0 0   100%
haystack/core/pipeline/base.py _write_to_standard_socket   3 0 0   100%
haystack/core/pipeline/base.py (no function)   104 0 0   100%
haystack/core/pipeline/breakpoint.py _is_snapshot_save_enabled   2 0 0   100%
haystack/core/pipeline/breakpoint.py _validate_break_point_against_pipeline   2 1 0   50%
haystack/core/pipeline/breakpoint.py _validate_pipeline_snapshot_against_pipeline   15 3 0   80%
haystack/core/pipeline/breakpoint.py load_pipeline_snapshot   16 6 0   62%
haystack/core/pipeline/breakpoint.py _save_pipeline_snapshot   34 1 0   97%
haystack/core/pipeline/breakpoint.py _create_pipeline_snapshot   6 0 0   100%
haystack/core/pipeline/breakpoint.py _transform_json_structure   10 0 0   100%
haystack/core/pipeline/breakpoint.py (no function)   21 0 0   100%
haystack/core/pipeline/component_checks.py _NoOutputProduced.__eq__   1 0 0   100%
haystack/core/pipeline/component_checks.py _NoOutputProduced.__hash__   1 0 0   100%
haystack/core/pipeline/component_checks.py _NoOutputProduced.to_dict   1 0 0   100%
haystack/core/pipeline/component_checks.py _NoOutputProduced.from_dict   1 0 0   100%
haystack/core/pipeline/component_checks.py can_component_run   3 0 0   100%
haystack/core/pipeline/component_checks.py has_any_trigger   4 0 0   100%
haystack/core/pipeline/component_checks.py are_all_sockets_ready   11 0 0   100%
haystack/core/pipeline/component_checks.py any_predecessors_provided_input   1 0 0   100%
haystack/core/pipeline/component_checks.py any_socket_value_from_predecessor_received   1 0 0   100%
haystack/core/pipeline/component_checks.py has_user_input   1 0 0   100%
haystack/core/pipeline/component_checks.py can_not_receive_inputs_from_pipeline   1 0 0   100%
haystack/core/pipeline/component_checks.py all_socket_predecessors_executed   3 0 0   100%
haystack/core/pipeline/component_checks.py any_socket_input_received   1 0 0   100%
haystack/core/pipeline/component_checks.py has_lazy_variadic_socket_received_all_inputs   3 0 0   100%
haystack/core/pipeline/component_checks.py has_socket_received_all_inputs   7 0 0   100%
haystack/core/pipeline/component_checks.py all_predecessors_executed   1 0 0   100%
haystack/core/pipeline/component_checks.py is_any_greedy_socket_ready   4 0 0   100%
haystack/core/pipeline/component_checks.py (no function)   21 0 0   100%
haystack/core/pipeline/descriptions.py find_pipeline_inputs   1 0 0   100%
haystack/core/pipeline/descriptions.py find_pipeline_outputs   1 0 0   100%
haystack/core/pipeline/descriptions.py (no function)   4 0 0   100%
haystack/core/pipeline/draw.py generate_color_variations   14 14 0   0%
haystack/core/pipeline/draw.py _prepare_for_drawing   13 0 0   100%
haystack/core/pipeline/draw.py _validate_mermaid_params   31 13 0   58%
haystack/core/pipeline/draw.py _validate_image_response   30 0 0   100%
haystack/core/pipeline/draw.py _to_mermaid_image   37 2 0   95%
haystack/core/pipeline/draw.py _to_mermaid_text   44 12 0   73%
haystack/core/pipeline/draw.py (no function)   30 0 0   100%
haystack/core/pipeline/pipeline.py PipelineStreamHandle.__init__   3 0 0   100%
haystack/core/pipeline/pipeline.py PipelineStreamHandle.__aiter__   9 0 0   100%
haystack/core/pipeline/pipeline.py PipelineStreamHandle.result   8 0 0   100%
haystack/core/pipeline/pipeline.py PipelineStreamHandle.aclose   4 0 0   100%
haystack/core/pipeline/pipeline.py Pipeline._run_component   22 2 0   91%
haystack/core/pipeline/pipeline.py Pipeline.run   71 1 0   99%
haystack/core/pipeline/pipeline.py Pipeline._run_component_async   18 2 0   89%
haystack/core/pipeline/pipeline.py Pipeline._wait_for_tasks   13 0 0   100%
haystack/core/pipeline/pipeline.py Pipeline._cancel_in_flight_tasks   6 0 0   100%
haystack/core/pipeline/pipeline.py Pipeline._run_component_in_isolation   15 0 0   100%
haystack/core/pipeline/pipeline.py Pipeline._schedule_component   9 1 0   89%
haystack/core/pipeline/pipeline.py Pipeline._schedule_component._runner   7 0 0   100%
haystack/core/pipeline/pipeline.py Pipeline.run_async_generator   61 13 0   79%
haystack/core/pipeline/pipeline.py Pipeline.run_async   4 0 0   100%
haystack/core/pipeline/pipeline.py Pipeline.stream   22 0 0   100%
haystack/core/pipeline/pipeline.py Pipeline.stream.make_forwarder   2 0 0   100%
haystack/core/pipeline/pipeline.py Pipeline.stream.make_forwarder.forwarder   3 0 0   100%
haystack/core/pipeline/pipeline.py Pipeline.stream.runner   3 0 0   100%
haystack/core/pipeline/pipeline.py (no function)   47 0 0   100%
haystack/core/pipeline/utils.py _deepcopy_with_exceptions   15 0 0   100%
haystack/core/pipeline/utils.py parse_connect_string   4 0 0   100%
haystack/core/pipeline/utils.py FIFOPriorityQueue.__init__   2 0 0   100%
haystack/core/pipeline/utils.py FIFOPriorityQueue.push   3 0 0   100%
haystack/core/pipeline/utils.py FIFOPriorityQueue.pop   4 0 0   100%
haystack/core/pipeline/utils.py FIFOPriorityQueue.peek   4 0 0   100%
haystack/core/pipeline/utils.py FIFOPriorityQueue.get   4 0 0   100%
haystack/core/pipeline/utils.py FIFOPriorityQueue.__len__   1 0 0   100%
haystack/core/pipeline/utils.py FIFOPriorityQueue.__bool__   1 0 0   100%
haystack/core/pipeline/utils.py args_deprecated   4 0 0   100%
haystack/core/pipeline/utils.py args_deprecated._positional_arg_warning   3 0 0   100%
haystack/core/pipeline/utils.py args_deprecated.wrapper   6 1 0   83%
haystack/core/pipeline/utils.py (no function)   20 0 0   100%
haystack/core/serialization.py component_to_dict   16 1 0   94%
haystack/core/serialization.py _validate_component_to_dict_output   4 0 0   100%
haystack/core/serialization.py _validate_component_to_dict_output.is_allowed_type   1 0 0   100%
haystack/core/serialization.py _validate_component_to_dict_output.check_iterable   7 1 0   86%
haystack/core/serialization.py _validate_component_to_dict_output.check_dict   9 0 0   100%
haystack/core/serialization.py generate_qualified_class_name   1 0 0   100%
haystack/core/serialization.py component_from_dict   6 0 0   100%
haystack/core/serialization.py component_from_dict.component_pre_init_callback   3 0 0   100%
haystack/core/serialization.py component_from_dict.do_from_dict   3 0 0   100%
haystack/core/serialization.py default_to_dict   6 0 0   100%
haystack/core/serialization.py _is_serialized_component_device   8 1 0   88%
haystack/core/serialization.py default_from_dict   25 1 0   96%
haystack/core/serialization.py _init_parameter_names   14 2 0   86%
haystack/core/serialization.py import_class_by_name   1 0 0   100%
haystack/core/serialization.py (no function)   25 0 0   100%
haystack/core/serialization_security.py _get_context   2 0 0   100%
haystack/core/serialization_security.py _unsafe_env_enabled   7 0 0   100%
haystack/core/serialization_security.py _is_unsafe_deserialization   1 0 0   100%
haystack/core/serialization_security.py mark_deserialization_internal   2 0 0   100%
haystack/core/serialization_security.py _is_deserialization_internal   7 0 0   100%
haystack/core/serialization_security.py _check_not_deserialization_internal   5 0 0   100%
haystack/core/serialization_security.py _check_traversable_attribute   4 0 0   100%
haystack/core/serialization_security.py allow_deserialization_module   2 0 0   100%
haystack/core/serialization_security.py _module_matches   6 0 0   100%
haystack/core/serialization_security.py _patterns_from_env   2 0 0   100%
haystack/core/serialization_security.py _is_module_allowed   9 0 0   100%
haystack/core/serialization_security.py _check_module_allowed   3 0 0   100%
haystack/core/serialization_security.py _check_resolved_module_allowed   13 0 0   100%
haystack/core/serialization_security.py _is_denied_builtin   1 0 0   100%
haystack/core/serialization_security.py _check_not_denied_builtin   5 0 0   100%
haystack/core/serialization_security.py _check_not_denied_callable   5 0 0   100%
haystack/core/serialization_security.py _check_builtin_is_type   4 0 0   100%
haystack/core/serialization_security.py _deserialization_context   7 0 0   100%
haystack/core/serialization_security.py (no function)   50 0 0   100%
haystack/core/super_component/__init__.py (no function)   2 0 0   100%
haystack/core/super_component/super_component.py _SuperComponent.__init__   19 1 0   95%
haystack/core/super_component/super_component.py _SuperComponent.warm_up   1 0 0   100%
haystack/core/super_component/super_component.py _SuperComponent.warm_up_async   1 0 0   100%
haystack/core/super_component/super_component.py _SuperComponent.close   1 0 0   100%
haystack/core/super_component/super_component.py _SuperComponent.close_async   1 0 0   100%
haystack/core/super_component/super_component.py _SuperComponent.run   5 0 0   100%
haystack/core/super_component/super_component.py _SuperComponent._get_include_outputs_from   1 0 0   100%
haystack/core/super_component/super_component.py _SuperComponent.run_async   4 0 0   100%
haystack/core/super_component/super_component.py _SuperComponent._split_component_path   4 0 0   100%
haystack/core/super_component/super_component.py _SuperComponent._validate_input_mapping   11 2 0   82%
haystack/core/super_component/super_component.py _SuperComponent._resolve_input_types_from_mapping   18 1 0   94%
haystack/core/super_component/super_component.py _SuperComponent._create_input_mapping   9 0 0   100%
haystack/core/super_component/super_component.py _SuperComponent._validate_output_mapping   8 1 0   88%
haystack/core/super_component/super_component.py _SuperComponent._resolve_output_types_from_mapping   7 0 0   100%
haystack/core/super_component/super_component.py _SuperComponent._create_output_mapping   9 1 0   89%
haystack/core/super_component/super_component.py _SuperComponent._map_explicit_inputs   10 0 0   100%
haystack/core/super_component/super_component.py _SuperComponent._map_explicit_outputs   6 0 0   100%
haystack/core/super_component/super_component.py _SuperComponent._to_super_component_dict   4 0 0   100%
haystack/core/super_component/super_component.py SuperComponent.to_dict   1 0 0   100%
haystack/core/super_component/super_component.py SuperComponent.from_dict   4 0 0   100%
haystack/core/super_component/super_component.py SuperComponent.show   1 0 0   100%
haystack/core/super_component/super_component.py SuperComponent.draw   1 0 0   100%
haystack/core/super_component/super_component.py super_component   10 0 0   100%
haystack/core/super_component/super_component.py super_component.init_wrapper   4 1 0   75%
haystack/core/super_component/super_component.py super_component.copy_class_namespace   7 0 0   100%
haystack/core/super_component/super_component.py (no function)   47 0 0   100%
haystack/core/super_component/utils.py _is_compatible   3 0 0   100%
haystack/core/super_component/utils.py _types_are_compatible   11 0 0   100%
haystack/core/super_component/utils.py _check_union_compatibility   30 1 0   97%
haystack/core/super_component/utils.py _check_non_union_compatibility   17 2 0   88%
haystack/core/super_component/utils.py _unwrap_all   9 0 0   100%
haystack/core/super_component/utils.py _is_variadic_type   5 0 0   100%
haystack/core/super_component/utils.py _unwrap_variadics   8 1 0   88%
haystack/core/super_component/utils.py (no function)   12 0 0   100%
haystack/core/type_utils.py _resolve_parameter_types   8 0 0   100%
haystack/core/type_utils.py _type_name   18 3 0   83%
haystack/core/type_utils.py _safe_get_origin   4 0 0   100%
haystack/core/type_utils.py _contains_type   3 0 0   100%
haystack/core/type_utils.py _strict_types_are_compatible   26 1 0   96%
haystack/core/type_utils.py _check_callable_compatibility   11 1 0   91%
haystack/core/type_utils.py _get_conversion_strategy   33 0 0   100%
haystack/core/type_utils.py _types_are_compatible   8 1 0   88%
haystack/core/type_utils.py _chat_message_to_str   3 0 0   100%
haystack/core/type_utils.py _get_first_item   5 0 0   100%
haystack/core/type_utils.py _convert_value   17 0 0   100%
haystack/core/type_utils.py (no function)   29 0 0   100%
haystack/dataclasses/__init__.py (no function)   5 0 27   100%
haystack/dataclasses/answer.py ExtractedAnswer.to_dict   1 0 0   100%
haystack/dataclasses/answer.py ExtractedAnswer.from_dict   12 0 0   100%
haystack/dataclasses/answer.py GeneratedAnswer.to_dict   5 0 0   100%
haystack/dataclasses/answer.py GeneratedAnswer.from_dict   7 0 0   100%
haystack/dataclasses/answer.py (no function)   32 0 3   100%
haystack/dataclasses/breakpoints.py Breakpoint.to_dict   1 0 0   100%
haystack/dataclasses/breakpoints.py Breakpoint.from_dict   1 0 0   100%
haystack/dataclasses/breakpoints.py PipelineState.to_dict   1 0 0   100%
haystack/dataclasses/breakpoints.py PipelineState.from_dict   1 0 0   100%
haystack/dataclasses/breakpoints.py PipelineSnapshot.__post_init__   4 0 0   100%
haystack/dataclasses/breakpoints.py PipelineSnapshot.to_dict   1 0 0   100%
haystack/dataclasses/breakpoints.py PipelineSnapshot.from_dict   2 0 0   100%
haystack/dataclasses/breakpoints.py (no function)   28 0 0   100%
haystack/dataclasses/byte_stream.py ByteStream.to_file   2 0 0   100%
haystack/dataclasses/byte_stream.py ByteStream.from_file_path   4 0 0   100%
haystack/dataclasses/byte_stream.py ByteStream.from_string   1 0 0   100%
haystack/dataclasses/byte_stream.py ByteStream.to_string   1 0 0   100%
haystack/dataclasses/byte_stream.py ByteStream.__repr__   7 0 0   100%
haystack/dataclasses/byte_stream.py ByteStream.to_dict   1 0 0   100%
haystack/dataclasses/byte_stream.py ByteStream._to_trace_dict   1 0 0   100%
haystack/dataclasses/byte_stream.py ByteStream.from_dict   1 0 0   100%
haystack/dataclasses/byte_stream.py (no function)   21 0 0   100%
haystack/dataclasses/chat_message.py ChatRole.from_str   6 0 0   100%
haystack/dataclasses/chat_message.py TextContent.to_dict   1 0 0   100%
haystack/dataclasses/chat_message.py TextContent.from_dict   1 0 0   100%
haystack/dataclasses/chat_message.py ToolCall.to_dict   1 0 0   100%
haystack/dataclasses/chat_message.py ToolCall.from_dict   1 0 0   100%
haystack/dataclasses/chat_message.py ToolCallResult.to_dict   6 1 0   83%
haystack/dataclasses/chat_message.py ToolCallResult.from_dict   6 0 0   100%
haystack/dataclasses/chat_message.py ReasoningContent.to_dict   1 0 0   100%
haystack/dataclasses/chat_message.py ReasoningContent.from_dict   1 0 0   100%
haystack/dataclasses/chat_message.py _deserialize_content_part   17 0 0   100%
haystack/dataclasses/chat_message.py _serialize_content_part   6 0 0   100%
haystack/dataclasses/chat_message.py ChatMessage.__len__   1 0 0   100%
haystack/dataclasses/chat_message.py ChatMessage.role   1 0 0   100%
haystack/dataclasses/chat_message.py ChatMessage.meta   1 0 0   100%
haystack/dataclasses/chat_message.py ChatMessage.name   1 0 0   100%
haystack/dataclasses/chat_message.py ChatMessage.texts   1 0 0   100%
haystack/dataclasses/chat_message.py ChatMessage.text   3 0 0   100%
haystack/dataclasses/chat_message.py ChatMessage.tool_calls   1 0 0   100%
haystack/dataclasses/chat_message.py ChatMessage.tool_call   3 0 0   100%
haystack/dataclasses/chat_message.py ChatMessage.tool_call_results   1 0 0   100%
haystack/dataclasses/chat_message.py ChatMessage.tool_call_result   3 0 0   100%
haystack/dataclasses/chat_message.py ChatMessage.images   1 0 0   100%
haystack/dataclasses/chat_message.py ChatMessage.image   3 1 0   67%
haystack/dataclasses/chat_message.py ChatMessage.files   1 0 0   100%
haystack/dataclasses/chat_message.py ChatMessage.file   3 1 0   67%
haystack/dataclasses/chat_message.py ChatMessage.reasonings   1 0 0   100%
haystack/dataclasses/chat_message.py ChatMessage.reasoning   3 0 0   100%
haystack/dataclasses/chat_message.py ChatMessage.is_from   3 0 0   100%
haystack/dataclasses/chat_message.py ChatMessage.from_user   17 0 0   100%
haystack/dataclasses/chat_message.py ChatMessage.from_system   1 0 0   100%
haystack/dataclasses/chat_message.py ChatMessage.from_assistant   12 0 0   100%
haystack/dataclasses/chat_message.py ChatMessage.from_tool   1 0 0   100%
haystack/dataclasses/chat_message.py ChatMessage.to_dict   6 0 0   100%
haystack/dataclasses/chat_message.py ChatMessage._to_trace_dict   13 0 0   100%
haystack/dataclasses/chat_message.py ChatMessage.from_dict   13 1 0   92%
haystack/dataclasses/chat_message.py ChatMessage.to_openai_dict_format   12 0 0   100%
haystack/dataclasses/chat_message.py ChatMessage._user_message_to_openai   17 0 0   100%
haystack/dataclasses/chat_message.py ChatMessage._tool_result_message_to_openai   11 0 0   100%
haystack/dataclasses/chat_message.py ChatMessage._system_assistant_message_to_openai   13 0 0   100%
haystack/dataclasses/chat_message.py ChatMessage._validate_openai_message   16 0 0   100%
haystack/dataclasses/chat_message.py ChatMessage.from_openai_dict_format   25 0 0   100%
haystack/dataclasses/chat_message.py (no function)   106 0 0   100%
haystack/dataclasses/document.py _RemoveLegacyFields.__call__   3 0 0   100%
haystack/dataclasses/document.py Document.__post_init__   5 0 0   100%
haystack/dataclasses/document.py Document.__repr__   15 4 0   73%
haystack/dataclasses/document.py Document.__eq__   3 0 0   100%
haystack/dataclasses/document.py Document._field_names   1 0 0   100%
haystack/dataclasses/document.py Document._create_id   9 0 0   100%
haystack/dataclasses/document.py Document.to_dict   18 0 0   100%
haystack/dataclasses/document.py Document.from_dict   15 0 0   100%
haystack/dataclasses/document.py Document.content_type   3 0 0   100%
haystack/dataclasses/document.py (no function)   32 0 0   100%
haystack/dataclasses/file_content.py FileContent.__post_init__   12 0 0   100%
haystack/dataclasses/file_content.py FileContent.__repr__   8 0 0   100%
haystack/dataclasses/file_content.py FileContent.to_dict   1 0 0   100%
haystack/dataclasses/file_content.py FileContent._to_trace_dict   3 0 0   100%
haystack/dataclasses/file_content.py FileContent.from_dict   1 0 0   100%
haystack/dataclasses/file_content.py FileContent.from_file_path   7 0 0   100%
haystack/dataclasses/file_content.py FileContent.from_url   8 0 0   100%
haystack/dataclasses/file_content.py (no function)   28 0 0   100%
haystack/dataclasses/image_content.py ImageContent.__post_init__   14 2 0   86%
haystack/dataclasses/image_content.py ImageContent.__repr__   8 0 0   100%
haystack/dataclasses/image_content.py ImageContent.show   7 0 0   100%
haystack/dataclasses/image_content.py ImageContent.to_dict   1 0 0   100%
haystack/dataclasses/image_content.py ImageContent._to_trace_dict   3 0 0   100%
haystack/dataclasses/image_content.py ImageContent.from_dict   1 0 0   100%
haystack/dataclasses/image_content.py ImageContent.from_file_path   4 0 0   100%
haystack/dataclasses/image_content.py ImageContent.from_url   12 0 0   100%
haystack/dataclasses/image_content.py (no function)   35 0 0   100%
haystack/dataclasses/skill_info.py (no function)   3 0 0   100%
haystack/dataclasses/sparse_embedding.py SparseEmbedding.__post_init__   2 0 0   100%
haystack/dataclasses/sparse_embedding.py SparseEmbedding.to_dict   1 0 0   100%
haystack/dataclasses/sparse_embedding.py SparseEmbedding.from_dict   1 0 0   100%
haystack/dataclasses/sparse_embedding.py (no function)   10 0 0   100%
haystack/dataclasses/streaming_chunk.py ToolCallDelta.to_dict   1 0 0   100%
haystack/dataclasses/streaming_chunk.py ToolCallDelta.from_dict   1 0 0   100%
haystack/dataclasses/streaming_chunk.py ComponentInfo.from_component   3 0 0   100%
haystack/dataclasses/streaming_chunk.py ComponentInfo.to_dict   1 0 0   100%
haystack/dataclasses/streaming_chunk.py ComponentInfo.from_dict   1 0 0   100%
haystack/dataclasses/streaming_chunk.py StreamingChunk.__post_init__   5 0 0   100%
haystack/dataclasses/streaming_chunk.py StreamingChunk.to_dict   1 0 0   100%
haystack/dataclasses/streaming_chunk.py StreamingChunk.from_dict   3 1 0   67%
haystack/dataclasses/streaming_chunk.py _is_callable_async_compatible   1 0 0   100%
haystack/dataclasses/streaming_chunk.py select_streaming_callback   11 0 0   100%
haystack/dataclasses/streaming_chunk.py _invoke_streaming_callback   3 0 0   100%
haystack/dataclasses/streaming_chunk.py (no function)   50 0 10   100%
haystack/document_stores/errors/__init__.py (no function)   2 0 0   100%
haystack/document_stores/errors/errors.py (no function)   6 0 0   100%
haystack/document_stores/in_memory/__init__.py (no function)   5 0 2   100%
haystack/document_stores/in_memory/document_store.py InMemoryDocumentStore.__init__   22 0 0   100%
haystack/document_stores/in_memory/document_store.py InMemoryDocumentStore.__del__   2 0 0   100%
haystack/document_stores/in_memory/document_store.py InMemoryDocumentStore.shutdown   2 0 0   100%
haystack/document_stores/in_memory/document_store.py InMemoryDocumentStore.storage   1 0 0   100%
haystack/document_stores/in_memory/document_store.py InMemoryDocumentStore._bm25_attr   1 0 0   100%
haystack/document_stores/in_memory/document_store.py InMemoryDocumentStore._avg_doc_len   1 0 0   100%
haystack/document_stores/in_memory/document_store.py InMemoryDocumentStore._avg_doc_len   3 0 0   100%
haystack/document_stores/in_memory/document_store.py InMemoryDocumentStore._freq_vocab_for_idf   1 0 0   100%
haystack/document_stores/in_memory/document_store.py InMemoryDocumentStore._dispatch_bm25   4 0 0   100%
haystack/document_stores/in_memory/document_store.py InMemoryDocumentStore._tokenize_bm25   2 0 0   100%
haystack/document_stores/in_memory/document_store.py InMemoryDocumentStore._score_bm25l   17 0 0   100%
haystack/document_stores/in_memory/document_store.py InMemoryDocumentStore._score_bm25l._compute_idf   6 0 0   100%
haystack/document_stores/in_memory/document_store.py InMemoryDocumentStore._score_bm25l._compute_tf   3 0 0   100%
haystack/document_stores/in_memory/document_store.py InMemoryDocumentStore._score_bm25okapi   17 0 0   100%
haystack/document_stores/in_memory/document_store.py InMemoryDocumentStore._score_bm25okapi._compute_idf   12 0 0   100%
haystack/document_stores/in_memory/document_store.py InMemoryDocumentStore._score_bm25okapi._compute_tf   3 0 0   100%
haystack/document_stores/in_memory/document_store.py InMemoryDocumentStore._score_bm25plus   17 0 0   100%
haystack/document_stores/in_memory/document_store.py InMemoryDocumentStore._score_bm25plus._compute_idf   6 0 0   100%
haystack/document_stores/in_memory/document_store.py InMemoryDocumentStore._score_bm25plus._compute_tf   3 0 0   100%
haystack/document_stores/in_memory/document_store.py InMemoryDocumentStore.to_dict   1 0 0   100%
haystack/document_stores/in_memory/document_store.py InMemoryDocumentStore.from_dict   1 0 0   100%
haystack/document_stores/in_memory/document_store.py InMemoryDocumentStore.save_to_disk   4 0 0   100%
haystack/document_stores/in_memory/document_store.py InMemoryDocumentStore.load_from_disk   11 3 0   73%
haystack/document_stores/in_memory/document_store.py InMemoryDocumentStore.count_documents   1 0 0   100%
haystack/document_stores/in_memory/document_store.py InMemoryDocumentStore.filter_documents   7 0 0   100%
haystack/document_stores/in_memory/document_store.py InMemoryDocumentStore.write_documents   24 0 0   100%
haystack/document_stores/in_memory/document_store.py InMemoryDocumentStore.delete_documents   15 0 0   100%
haystack/document_stores/in_memory/document_store.py InMemoryDocumentStore._validate_filters   2 1 0   50%
haystack/document_stores/in_memory/document_store.py InMemoryDocumentStore.delete_all_documents   9 0 0   100%
haystack/document_stores/in_memory/document_store.py InMemoryDocumentStore.update_by_filter   6 0 0   100%
haystack/document_stores/in_memory/document_store.py InMemoryDocumentStore.delete_by_filter   5 0 0   100%
haystack/document_stores/in_memory/document_store.py InMemoryDocumentStore.count_documents_by_filter   4 1 0   75%
haystack/document_stores/in_memory/document_store.py InMemoryDocumentStore.count_unique_metadata_by_filter   10 0 0   100%
haystack/document_stores/in_memory/document_store.py InMemoryDocumentStore.get_metadata_fields_info   13 2 0   85%
haystack/document_stores/in_memory/document_store.py InMemoryDocumentStore.get_metadata_field_min_max   8 2 0   75%
haystack/document_stores/in_memory/document_store.py InMemoryDocumentStore.get_metadata_field_unique_values   12 0 0   100%
haystack/document_stores/in_memory/document_store.py InMemoryDocumentStore.bm25_retrieval   30 1 0   97%
haystack/document_stores/in_memory/document_store.py InMemoryDocumentStore.embedding_retrieval   22 0 0   100%
haystack/document_stores/in_memory/document_store.py InMemoryDocumentStore._compute_query_embedding_similarity_scores   28 5 0   82%
haystack/document_stores/in_memory/document_store.py InMemoryDocumentStore.count_documents_async   1 0 0   100%
haystack/document_stores/in_memory/document_store.py InMemoryDocumentStore.filter_documents_async   1 0 0   100%
haystack/document_stores/in_memory/document_store.py InMemoryDocumentStore.write_documents_async   1 0 0   100%
haystack/document_stores/in_memory/document_store.py InMemoryDocumentStore.delete_documents_async   1 0 0   100%
haystack/document_stores/in_memory/document_store.py InMemoryDocumentStore.update_by_filter_async   1 0 0   100%
haystack/document_stores/in_memory/document_store.py InMemoryDocumentStore.count_documents_by_filter_async   1 0 0   100%
haystack/document_stores/in_memory/document_store.py InMemoryDocumentStore.count_unique_metadata_by_filter_async   1 0 0   100%
haystack/document_stores/in_memory/document_store.py InMemoryDocumentStore.get_metadata_fields_info_async   1 0 0   100%
haystack/document_stores/in_memory/document_store.py InMemoryDocumentStore.get_metadata_field_min_max_async   1 0 0   100%
haystack/document_stores/in_memory/document_store.py InMemoryDocumentStore.get_metadata_field_unique_values_async   1 0 0   100%
haystack/document_stores/in_memory/document_store.py InMemoryDocumentStore.delete_all_documents_async   1 0 0   100%
haystack/document_stores/in_memory/document_store.py InMemoryDocumentStore.bm25_retrieval_async   1 0 0   100%
haystack/document_stores/in_memory/document_store.py InMemoryDocumentStore.embedding_retrieval_async   1 0 0   100%
haystack/document_stores/in_memory/document_store.py (no function)   82 0 0   100%
haystack/document_stores/types/__init__.py (no function)   4 0 0   100%
haystack/document_stores/types/filter_policy.py FilterPolicy.__str__   1 1 0   0%
haystack/document_stores/types/filter_policy.py FilterPolicy.from_str   6 2 0   67%
haystack/document_stores/types/filter_policy.py is_comparison_filter   1 0 0   100%
haystack/document_stores/types/filter_policy.py is_logical_filter   1 0 0   100%
haystack/document_stores/types/filter_policy.py combine_two_logical_filters   5 0 0   100%
haystack/document_stores/types/filter_policy.py combine_init_comparison_and_runtime_logical_filters   10 4 0   60%
haystack/document_stores/types/filter_policy.py combine_runtime_comparison_and_init_logical_filters   10 4 0   60%
haystack/document_stores/types/filter_policy.py combine_two_comparison_filters   4 0 0   100%
haystack/document_stores/types/filter_policy.py apply_filter_policy   10 0 0   100%
haystack/document_stores/types/filter_policy.py (no function)   17 0 0   100%
haystack/document_stores/types/policy.py (no function)   6 0 0   100%
haystack/document_stores/types/protocol.py (no function)   11 0 5   100%
haystack/errors.py (no function)   2 0 0   100%
haystack/evaluation/__init__.py (no function)   5 0 2   100%
haystack/evaluation/eval_run_result.py EvaluationRunResult.__init__   15 0 0   100%
haystack/evaluation/eval_run_result.py EvaluationRunResult._write_to_csv   21 21 0   0%
haystack/evaluation/eval_run_result.py EvaluationRunResult._handle_output   10 8 0   20%
haystack/evaluation/eval_run_result.py EvaluationRunResult.aggregated_report   3 0 0   100%
haystack/evaluation/eval_run_result.py EvaluationRunResult.detailed_report   8 0 0   100%
haystack/evaluation/eval_run_result.py EvaluationRunResult.comparative_detailed_report   19 6 0   68%
haystack/evaluation/eval_run_result.py (no function)   17 0 0   100%
haystack/hooks/__init__.py (no function)   5 0 12   100%
haystack/hooks/budget/__init__.py (no function)   5 0 2   100%
haystack/hooks/budget/hooks.py TokenBudgetHook.__init__   4 0 0   100%
haystack/hooks/budget/hooks.py TokenBudgetHook.run   9 0 0   100%
haystack/hooks/budget/hooks.py TokenBudgetHook.to_dict   1 0 0   100%
haystack/hooks/budget/hooks.py TokenBudgetHook.from_dict   1 0 0   100%
haystack/hooks/budget/hooks.py (no function)   17 0 0   100%
haystack/hooks/compaction/__init__.py (no function)   5 0 6   100%
haystack/hooks/compaction/hooks.py CompactionHook.__init__   9 0 0   100%
haystack/hooks/compaction/hooks.py CompactionHook.run   8 0 0   100%
haystack/hooks/compaction/hooks.py CompactionHook.run_async   8 0 0   100%
haystack/hooks/compaction/hooks.py CompactionHook._target_tokens   15 0 0   100%
haystack/hooks/compaction/hooks.py CompactionHook._apply   9 0 0   100%
haystack/hooks/compaction/hooks.py CompactionHook.warm_up   4 1 0   75%
haystack/hooks/compaction/hooks.py CompactionHook.warm_up_async   7 2 0   71%
haystack/hooks/compaction/hooks.py CompactionHook.close   2 0 0   100%
haystack/hooks/compaction/hooks.py CompactionHook.close_async   5 2 0   60%
haystack/hooks/compaction/hooks.py CompactionHook.to_dict   1 0 0   100%
haystack/hooks/compaction/hooks.py CompactionHook.from_dict   5 0 0   100%
haystack/hooks/compaction/hooks.py (no function)   28 0 0   100%
haystack/hooks/compaction/sliding_window.py _is_compaction_note   1 0 0   100%
haystack/hooks/compaction/sliding_window.py _flatten   1 0 0   100%
haystack/hooks/compaction/sliding_window.py _removable_groups   3 0 0   100%
haystack/hooks/compaction/sliding_window.py _first_group_to_keep   8 0 0   100%
haystack/hooks/compaction/sliding_window.py _first_turn_and_step_to_keep   6 0 0   100%
haystack/hooks/compaction/sliding_window.py _task_and_step_split   11 0 0   100%
haystack/hooks/compaction/sliding_window.py SlidingWindowCompactor.__init__   4 0 0   100%
haystack/hooks/compaction/sliding_window.py SlidingWindowCompactor.compact   11 0 0   100%
haystack/hooks/compaction/sliding_window.py SlidingWindowCompactor.to_dict   1 0 0   100%
haystack/hooks/compaction/sliding_window.py (no function)   21 0 0   100%
haystack/hooks/compaction/summarization.py _identifying_details   1 0 0   100%
haystack/hooks/compaction/summarization.py _attachment_placeholder   6 1 0   83%
haystack/hooks/compaction/summarization.py _summary_transcript   12 0 0   100%
haystack/hooks/compaction/summarization.py _previous_summary_indices   1 0 0   100%
haystack/hooks/compaction/summarization.py _groups_to_summarize   7 0 0   100%
haystack/hooks/compaction/summarization.py _replace_indices   9 0 0   100%
haystack/hooks/compaction/summarization.py SummarizationCompactor.__init__   9 0 0   100%
haystack/hooks/compaction/summarization.py SummarizationCompactor.compact   17 0 0   100%
haystack/hooks/compaction/summarization.py SummarizationCompactor.compact_async   17 3 0   82%
haystack/hooks/compaction/summarization.py SummarizationCompactor._next_summary   20 0 0   100%
haystack/hooks/compaction/summarization.py SummarizationCompactor._prompt   2 0 0   100%
haystack/hooks/compaction/summarization.py SummarizationCompactor._apply_summary   10 0 0   100%
haystack/hooks/compaction/summarization.py SummarizationCompactor._report_failure   3 0 0   100%
haystack/hooks/compaction/summarization.py SummarizationCompactor.warm_up   2 0 0   100%
haystack/hooks/compaction/summarization.py SummarizationCompactor.warm_up_async   5 5 0   0%
haystack/hooks/compaction/summarization.py SummarizationCompactor.close   2 2 0   0%
haystack/hooks/compaction/summarization.py SummarizationCompactor.close_async   5 5 0   0%
haystack/hooks/compaction/summarization.py SummarizationCompactor.to_dict   1 0 0   100%
haystack/hooks/compaction/summarization.py SummarizationCompactor.from_dict   4 0 0   100%
haystack/hooks/compaction/summarization.py (no function)   38 0 0   100%
haystack/hooks/compaction/tool_result_pruning.py ToolResultPruningCompactor.__init__   8 0 0   100%
haystack/hooks/compaction/tool_result_pruning.py ToolResultPruningCompactor.compact   20 0 0   100%
haystack/hooks/compaction/tool_result_pruning.py ToolResultPruningCompactor._prune   12 0 0   100%
haystack/hooks/compaction/tool_result_pruning.py ToolResultPruningCompactor.to_dict   1 0 0   100%
haystack/hooks/compaction/tool_result_pruning.py (no function)   14 0 0   100%
haystack/hooks/compaction/types/__init__.py (no function)   2 0 0   100%
haystack/hooks/compaction/types/protocol.py Compactor.compact_async   1 0 0   100%
haystack/hooks/compaction/types/protocol.py Compactor.from_dict   1 0 0   100%
haystack/hooks/compaction/types/protocol.py (no function)   10 0 2   100%
haystack/hooks/compaction/utils.py _leading_system_end   4 0 0   100%
haystack/hooks/compaction/utils.py _latest_user_index   5 0 0   100%
haystack/hooks/compaction/utils.py _messages_at   1 0 0   100%
haystack/hooks/compaction/utils.py _messages_except   2 0 0   100%
haystack/hooks/compaction/utils.py _is_compaction_message   3 0 0   100%
haystack/hooks/compaction/utils.py _last_assistant_index   4 0 0   100%
haystack/hooks/compaction/utils.py _agent_step_spans   12 0 0   100%
haystack/hooks/compaction/utils.py _current_agent_step_groups   2 0 0   100%
haystack/hooks/compaction/utils.py _historical_turn_spans   2 0 0   100%
haystack/hooks/compaction/utils.py _historical_turn_groups   2 0 0   100%
haystack/hooks/compaction/utils.py _estimated_context_tokens   4 0 0   100%
haystack/hooks/compaction/utils.py (no function)   15 0 0   100%
haystack/hooks/from_function.py _takes_single_state_argument   2 0 0   100%
haystack/hooks/from_function.py FunctionHook.__init__   11 0 0   100%
haystack/hooks/from_function.py FunctionHook.run   3 0 0   100%
haystack/hooks/from_function.py FunctionHook.run_async   3 0 0   100%
haystack/hooks/from_function.py FunctionHook.to_dict   1 0 0   100%
haystack/hooks/from_function.py FunctionHook.from_dict   6 0 0   100%
haystack/hooks/from_function.py hook   3 0 0   100%
haystack/hooks/from_function.py (no function)   16 0 0   100%
haystack/hooks/human_in_the_loop/__init__.py (no function)   5 0 10   100%
haystack/hooks/human_in_the_loop/dataclasses.py ToolExecutionDecision.to_dict   1 0 0   100%
haystack/hooks/human_in_the_loop/dataclasses.py ToolExecutionDecision.from_dict   1 0 0   100%
haystack/hooks/human_in_the_loop/dataclasses.py (no function)   14 0 0   100%
haystack/hooks/human_in_the_loop/hooks.py ConfirmationHook.__init__   1 0 0   100%
haystack/hooks/human_in_the_loop/hooks.py ConfirmationHook.run   5 0 0   100%
haystack/hooks/human_in_the_loop/hooks.py ConfirmationHook.run_async   5 1 0   80%
haystack/hooks/human_in_the_loop/hooks.py ConfirmationHook.to_dict   1 0 0   100%
haystack/hooks/human_in_the_loop/hooks.py ConfirmationHook.from_dict   4 0 0   100%
haystack/hooks/human_in_the_loop/hooks.py (no function)   14 0 0   100%
haystack/hooks/human_in_the_loop/policies.py AlwaysAskPolicy.should_ask   1 0 0   100%
haystack/hooks/human_in_the_loop/policies.py NeverAskPolicy.should_ask   1 0 0   100%
haystack/hooks/human_in_the_loop/policies.py AskOncePolicy.__init__   1 0 0   100%
haystack/hooks/human_in_the_loop/policies.py AskOncePolicy.should_ask   1 0 0   100%
haystack/hooks/human_in_the_loop/policies.py AskOncePolicy.update_after_confirmation   2 0 0   100%
haystack/hooks/human_in_the_loop/policies.py (no function)   11 0 0   100%
haystack/hooks/human_in_the_loop/strategies.py BlockingConfirmationStrategy.__init__   5 0 0   100%
haystack/hooks/human_in_the_loop/strategies.py BlockingConfirmationStrategy.run   19 0 0   100%
haystack/hooks/human_in_the_loop/strategies.py BlockingConfirmationStrategy.run_async   1 0 0   100%
haystack/hooks/human_in_the_loop/strategies.py BlockingConfirmationStrategy.to_dict   1 0 0   100%
haystack/hooks/human_in_the_loop/strategies.py BlockingConfirmationStrategy.from_dict   3 0 0   100%
haystack/hooks/human_in_the_loop/strategies.py _get_confirmation_strategy   6 0 0   100%
haystack/hooks/human_in_the_loop/strategies.py _passthrough_tool_call   1 0 0   100%
haystack/hooks/human_in_the_loop/strategies.py _classify_decision   5 0 0   100%
haystack/hooks/human_in_the_loop/strategies.py _create_confirmation_strategy_span   2 0 0   100%
haystack/hooks/human_in_the_loop/strategies.py _set_strategy_input_tracing_tags   1 0 0   100%
haystack/hooks/human_in_the_loop/strategies.py _set_strategy_output_tracing_tags   2 0 0   100%
haystack/hooks/human_in_the_loop/strategies.py _bind_decision_to_tool_call   3 0 0   100%
haystack/hooks/human_in_the_loop/strategies.py _process_confirmation_strategies   5 1 0   80%
haystack/hooks/human_in_the_loop/strategies.py _process_confirmation_strategies_async   5 1 0   80%
haystack/hooks/human_in_the_loop/strategies.py _run_confirmation_strategies   25 1 0   96%
haystack/hooks/human_in_the_loop/strategies.py _run_confirmation_strategies_async   25 1 0   96%
haystack/hooks/human_in_the_loop/strategies.py _apply_tool_execution_decisions   30 0 0   100%
haystack/hooks/human_in_the_loop/strategies.py _apply_tool_execution_decisions.make_assistant_message   1 0 0   100%
haystack/hooks/human_in_the_loop/strategies.py _update_chat_history   6 0 0   100%
haystack/hooks/human_in_the_loop/strategies.py _serialize_confirmation_strategies   1 0 0   100%
haystack/hooks/human_in_the_loop/strategies.py _deserialize_confirmation_strategies   3 0 0   100%
haystack/hooks/human_in_the_loop/strategies.py _decode_strategy_key   5 1 0   80%
haystack/hooks/human_in_the_loop/strategies.py (no function)   38 0 0   100%
haystack/hooks/human_in_the_loop/types/__init__.py (no function)   2 0 0   100%
haystack/hooks/human_in_the_loop/types/protocol.py ConfirmationUI.to_dict   1 0 0   100%
haystack/hooks/human_in_the_loop/types/protocol.py ConfirmationUI.from_dict   1 0 0   100%
haystack/hooks/human_in_the_loop/types/protocol.py ConfirmationPolicy.update_after_confirmation   1 0 0   100%
haystack/hooks/human_in_the_loop/types/protocol.py ConfirmationPolicy.to_dict   1 0 0   100%
haystack/hooks/human_in_the_loop/types/protocol.py ConfirmationPolicy.from_dict   1 0 0   100%
haystack/hooks/human_in_the_loop/types/protocol.py (no function)   20 0 5   100%
haystack/hooks/human_in_the_loop/user_interfaces.py RichConsoleUI.__init__   2 0 0   100%
haystack/hooks/human_in_the_loop/user_interfaces.py RichConsoleUI.get_user_confirmation   4 0 0   100%
haystack/hooks/human_in_the_loop/user_interfaces.py RichConsoleUI._display_tool_info   6 1 0   83%
haystack/hooks/human_in_the_loop/user_interfaces.py RichConsoleUI._process_choice   6 0 0   100%
haystack/hooks/human_in_the_loop/user_interfaces.py RichConsoleUI._modify_params   13 1 0   92%
haystack/hooks/human_in_the_loop/user_interfaces.py RichConsoleUI.to_dict   1 0 0   100%
haystack/hooks/human_in_the_loop/user_interfaces.py SimpleConsoleUI.get_user_confirmation   9 0 0   100%
haystack/hooks/human_in_the_loop/user_interfaces.py SimpleConsoleUI._display_tool_info   9 0 0   100%
haystack/hooks/human_in_the_loop/user_interfaces.py SimpleConsoleUI._process_choice   6 0 0   100%
haystack/hooks/human_in_the_loop/user_interfaces.py SimpleConsoleUI._modify_params   16 0 0   100%
haystack/hooks/human_in_the_loop/user_interfaces.py (no function)   24 0 0   100%
haystack/hooks/invocation.py _hook_name   11 0 0   100%
haystack/hooks/invocation.py _create_hook_span   1 0 0   100%
haystack/hooks/invocation.py _run_hooks   7 0 0   100%
haystack/hooks/invocation.py _run_hooks_async   7 0 0   100%
haystack/hooks/invocation.py (no function)   14 0 0   100%
haystack/hooks/protocol.py (no function)   15 0 2   100%
haystack/hooks/tool_result_offloading/__init__.py (no function)   5 0 9   100%
haystack/hooks/tool_result_offloading/hooks.py _result_store_key   1 0 0   100%
haystack/hooks/tool_result_offloading/hooks.py _fresh_tool_results_start   4 0 0   100%
haystack/hooks/tool_result_offloading/hooks.py _offloadable_text   6 0 0   100%
haystack/hooks/tool_result_offloading/hooks.py _serialize_offload_strategies   1 0 0   100%
haystack/hooks/tool_result_offloading/hooks.py _deserialize_offload_strategies   3 0 0   100%
haystack/hooks/tool_result_offloading/hooks.py ToolResultOffloadHook.__init__   3 0 0   100%
haystack/hooks/tool_result_offloading/hooks.py ToolResultOffloadHook.run   13 1 0   92%
haystack/hooks/tool_result_offloading/hooks.py ToolResultOffloadHook._resolve_store   2 0 0   100%
haystack/hooks/tool_result_offloading/hooks.py ToolResultOffloadHook._policy_for   7 0 0   100%
haystack/hooks/tool_result_offloading/hooks.py ToolResultOffloadHook._maybe_offload   16 0 0   100%
haystack/hooks/tool_result_offloading/hooks.py ToolResultOffloadHook._pointer   3 0 0   100%
haystack/hooks/tool_result_offloading/hooks.py ToolResultOffloadHook.to_dict   1 0 0   100%
haystack/hooks/tool_result_offloading/hooks.py ToolResultOffloadHook.from_dict   6 0 0   100%
haystack/hooks/tool_result_offloading/hooks.py (no function)   29 0 0   100%
haystack/hooks/tool_result_offloading/policies.py AlwaysOffload.should_offload   1 0 0   100%
haystack/hooks/tool_result_offloading/policies.py NeverOffload.should_offload   1 0 0   100%
haystack/hooks/tool_result_offloading/policies.py OffloadOverChars.__init__   1 0 0   100%
haystack/hooks/tool_result_offloading/policies.py OffloadOverChars.should_offload   1 0 0   100%
haystack/hooks/tool_result_offloading/policies.py OffloadOverChars.to_dict   1 0 0   100%
haystack/hooks/tool_result_offloading/policies.py (no function)   12 0 0   100%
haystack/hooks/tool_result_offloading/stores.py FileSystemToolResultStore.__init__   1 0 0   100%
haystack/hooks/tool_result_offloading/stores.py FileSystemToolResultStore._resolve_in_root   7 0 0   100%
haystack/hooks/tool_result_offloading/stores.py FileSystemToolResultStore.write   4 0 0   100%
haystack/hooks/tool_result_offloading/stores.py FileSystemToolResultStore.read   1 0 0   100%
haystack/hooks/tool_result_offloading/stores.py FileSystemToolResultStore.to_dict   1 0 0   100%
haystack/hooks/tool_result_offloading/stores.py FileSystemToolResultStore.from_dict   1 0 0   100%
haystack/hooks/tool_result_offloading/stores.py (no function)   12 0 0   100%
haystack/hooks/tool_result_offloading/types/__init__.py (no function)   2 0 0   100%
haystack/hooks/tool_result_offloading/types/protocol.py ToolResultStore.to_dict   1 1 0   0%
haystack/hooks/tool_result_offloading/types/protocol.py ToolResultStore.from_dict   1 1 0   0%
haystack/hooks/tool_result_offloading/types/protocol.py OffloadPolicy.to_dict   1 0 0   100%
haystack/hooks/tool_result_offloading/types/protocol.py OffloadPolicy.from_dict   1 0 0   100%
haystack/hooks/tool_result_offloading/types/protocol.py (no function)   14 0 3   100%
haystack/hooks/utils.py _serialize_hooks_dictionary   1 0 0   100%
haystack/hooks/utils.py _deserialize_hooks_dictionary   9 0 0   100%
haystack/hooks/utils.py _unique_hooks   8 0 0   100%
haystack/hooks/utils.py warm_up_hooks   3 0 0   100%
haystack/hooks/utils.py warm_up_hooks_async   6 0 0   100%
haystack/hooks/utils.py close_hooks   3 0 0   100%
haystack/hooks/utils.py close_hooks_async   6 0 0   100%
haystack/hooks/utils.py (no function)   11 0 0   100%
haystack/lazy_imports.py LazyImport.__init__   2 0 0   100%
haystack/lazy_imports.py LazyImport.__exit__   5 0 0   100%
haystack/lazy_imports.py (no function)   6 0 0   100%
haystack/logging.py _is_haystack_logging_handler   1 0 0   100%
haystack/logging.py patch_log_method_to_kwargs_only   3 0 0   100%
haystack/logging.py patch_log_method_to_kwargs_only._log_only_with_kwargs   2 0 0   100%
haystack/logging.py patch_log_with_level_method_to_kwargs_only   3 0 0   100%
haystack/logging.py patch_log_with_level_method_to_kwargs_only._log_only_with_kwargs   2 0 0   100%
haystack/logging.py patch_make_records_to_use_kwarg_string_interpolation   3 0 0   100%
haystack/logging.py patch_make_records_to_use_kwarg_string_interpolation._wrapper   6 0 0   100%
haystack/logging.py _patch_structlog_call_information   9 2 0   78%
haystack/logging.py _patch_structlog_call_information.findCaller   3 0 0   100%
haystack/logging.py getLogger   16 0 0   100%
haystack/logging.py add_line_and_file   6 0 0   100%
haystack/logging.py correlate_logs_with_traces   7 0 0   100%
haystack/logging.py configure_logging   35 2 0   94%
haystack/logging.py (no function)   33 0 2   100%
haystack/marshal/__init__.py (no function)   5 0 3   100%
haystack/marshal/protocol.py (no function)   4 0 1   100%
haystack/marshal/yaml.py YamlLoader.construct_python_tuple   1 0 0   100%
haystack/marshal/yaml.py YamlDumper.represent_tuple   1 0 0   100%
haystack/marshal/yaml.py YamlMarshaller.marshal   4 0 0   100%
haystack/marshal/yaml.py YamlMarshaller.unmarshal   4 1 0   75%
haystack/marshal/yaml.py (no function)   11 0 0   100%
haystack/skill_stores/file_system/__init__.py (no function)   5 0 2   100%
haystack/skill_stores/file_system/skill_store.py _parse_frontmatter   15 0 0   100%
haystack/skill_stores/file_system/skill_store.py FileSystemSkillStore.__init__   4 0 0   100%
haystack/skill_stores/file_system/skill_store.py FileSystemSkillStore.warm_up   20 1 0   95%
haystack/skill_stores/file_system/skill_store.py FileSystemSkillStore._skill_dir   6 0 0   100%
haystack/skill_stores/file_system/skill_store.py FileSystemSkillStore._readable_files_hint   1 0 0   100%
haystack/skill_stores/file_system/skill_store.py FileSystemSkillStore.list_skills   2 0 0   100%
haystack/skill_stores/file_system/skill_store.py FileSystemSkillStore.load_skill   2 0 0   100%
haystack/skill_stores/file_system/skill_store.py FileSystemSkillStore._list_skill_files   2 0 0   100%
haystack/skill_stores/file_system/skill_store.py FileSystemSkillStore.read_skill_file   17 0 0   100%
haystack/skill_stores/file_system/skill_store.py FileSystemSkillStore.to_dict   1 0 0   100%
haystack/skill_stores/file_system/skill_store.py FileSystemSkillStore.from_dict   1 0 0   100%
haystack/skill_stores/file_system/skill_store.py (no function)   24 0 0   100%
haystack/skill_stores/types/__init__.py (no function)   2 0 0   100%
haystack/skill_stores/types/protocol.py (no function)   11 0 4   100%
haystack/telemetry/__init__.py (no function)   1 0 0   100%
haystack/telemetry/_environment.py _str_in_any_line_of_file   2 0 0   100%
haystack/telemetry/_environment.py _in_podman   1 0 0   100%
haystack/telemetry/_environment.py _has_dockerenv   1 0 0   100%
haystack/telemetry/_environment.py _has_docker_cgroup_v1   2 0 0   100%
haystack/telemetry/_environment.py _has_docker_cgroup_v2   2 0 0   100%
haystack/telemetry/_environment.py _is_containerized   3 0 0   100%
haystack/telemetry/_environment.py collect_system_specs   1 0 0   100%
haystack/telemetry/_environment.py (no function)   13 0 0   100%
haystack/telemetry/_telemetry.py Telemetry.__init__   24 9 0   62%
haystack/telemetry/_telemetry.py Telemetry.send_event   5 2 0   60%
haystack/telemetry/_telemetry.py send_telemetry   3 0 0   100%
haystack/telemetry/_telemetry.py send_telemetry.send_telemetry_wrapper   7 0 0   100%
haystack/telemetry/_telemetry.py pipeline_running   14 0 0   100%
haystack/telemetry/_telemetry.py tutorial_running   1 1 0   0%
haystack/telemetry/_telemetry.py (no function)   29 0 2   100%
haystack/token_counters/__init__.py (no function)   5 0 5   100%
haystack/token_counters/approximate_counter.py ApproximateTokenCounter.__init__   5 0 0   100%
haystack/token_counters/approximate_counter.py ApproximateTokenCounter.count   5 0 0   100%
haystack/token_counters/approximate_counter.py ApproximateTokenCounter.to_dict   1 0 0   100%
haystack/token_counters/approximate_counter.py (no function)   10 0 0   100%
haystack/token_counters/openai_counter.py OpenAITokenCounter.__init__   8 0 0   100%
haystack/token_counters/openai_counter.py OpenAITokenCounter.warm_up   6 0 0   100%
haystack/token_counters/openai_counter.py OpenAITokenCounter.count   14 1 0   93%
haystack/token_counters/openai_counter.py OpenAITokenCounter.close   3 0 0   100%
haystack/token_counters/openai_counter.py OpenAITokenCounter.to_dict   1 0 0   100%
haystack/token_counters/openai_counter.py (no function)   16 0 0   100%
haystack/token_counters/tiktoken_counter.py TiktokenCounter.__init__   5 0 0   100%
haystack/token_counters/tiktoken_counter.py TiktokenCounter.warm_up   3 0 0   100%
haystack/token_counters/tiktoken_counter.py TiktokenCounter.count   5 0 0   100%
haystack/token_counters/tiktoken_counter.py TiktokenCounter.to_dict   1 0 0   100%
haystack/token_counters/tiktoken_counter.py (no function)   14 0 0   100%
haystack/token_counters/types/__init__.py (no function)   2 0 0   100%
haystack/token_counters/types/protocol.py TokenCounter.from_dict   1 0 0   100%
haystack/token_counters/types/protocol.py (no function)   9 0 2   100%
haystack/token_counters/utils.py _non_text_placeholder   5 0 0   100%
haystack/token_counters/utils.py _tool_result_text   3 0 0   100%
haystack/token_counters/utils.py _render_message   14 0 0   100%
haystack/token_counters/utils.py _rendered_conversation   1 0 0   100%
haystack/token_counters/utils.py _rendered_tools   3 0 0   100%
haystack/token_counters/utils.py _non_text_tokens   11 0 0   100%
haystack/token_counters/utils.py (no function)   12 0 0   100%
haystack/tools/__init__.py (no function)   7 0 12   100%
haystack/tools/agent_tool.py _required_tool_parameters   2 0 0   100%
haystack/tools/agent_tool.py agent_result_to_string   5 0 0   100%
haystack/tools/agent_tool.py AgentTool.__init__   8 0 0   100%
haystack/tools/agent_tool.py AgentTool._create_tool_parameters_schema   3 0 0   100%
haystack/tools/agent_tool.py AgentTool.to_dict   3 0 0   100%
haystack/tools/agent_tool.py AgentTool.from_dict   9 0 0   100%
haystack/tools/agent_tool.py (no function)   16 0 0   100%
haystack/tools/component_tool.py ComponentTool.__init__   18 0 0   100%
haystack/tools/component_tool.py ComponentTool.__init__.component_invoker   4 0 0   100%
haystack/tools/component_tool.py ComponentTool.__init__.async_component_invoker   4 0 0   100%
haystack/tools/component_tool.py ComponentTool._get_valid_inputs   1 0 0   100%
haystack/tools/component_tool.py ComponentTool._get_valid_outputs   1 0 0   100%
haystack/tools/component_tool.py ComponentTool.warm_up   4 0 0   100%
haystack/tools/component_tool.py ComponentTool.to_dict   2 0 0   100%
haystack/tools/component_tool.py ComponentTool.from_dict   7 0 0   100%
haystack/tools/component_tool.py ComponentTool._create_tool_parameters_schema   22 2 0   91%
haystack/tools/component_tool.py ComponentTool._convert_param   12 3 0   75%
haystack/tools/component_tool.py (no function)   25 0 0   100%
haystack/tools/errors.py ToolInvocationError.__init__   2 0 0   100%
haystack/tools/errors.py (no function)   4 0 0   100%
haystack/tools/from_function.py create_tool_from_function   28 0 0   100%
haystack/tools/from_function.py tool   4 0 1   100%
haystack/tools/from_function.py tool.decorator   1 0 0   100%
haystack/tools/from_function.py _remove_title_from_schema   15 0 0   100%
haystack/tools/from_function.py (no function)   13 0 22   100%
haystack/tools/parameters_schema_utils.py _unwrap_optional   6 0 0   100%
haystack/tools/parameters_schema_utils.py _contains_callable_type   6 0 0   100%
haystack/tools/parameters_schema_utils.py _get_param_descriptions   10 1 0   90%
haystack/tools/parameters_schema_utils.py _get_component_param_descriptions   17 2 0   88%
haystack/tools/parameters_schema_utils.py _dataclass_to_pydantic_model   13 0 0   100%
haystack/tools/parameters_schema_utils.py _resolve_type   19 0 0   100%
haystack/tools/parameters_schema_utils.py (no function)   26 0 0   100%
haystack/tools/pipeline_tool.py PipelineTool.__init__   7 0 0   100%
haystack/tools/pipeline_tool.py PipelineTool.to_dict   2 0 0   100%
haystack/tools/pipeline_tool.py PipelineTool.from_dict   9 2 0   78%
haystack/tools/pipeline_tool.py (no function)   12 0 0   100%
haystack/tools/searchable_toolset.py SearchableToolset.__init__   20 0 0   100%
haystack/tools/searchable_toolset.py SearchableToolset.__add__   1 0 0   100%
haystack/tools/searchable_toolset.py SearchableToolset.add   1 0 0   100%
haystack/tools/searchable_toolset.py SearchableToolset.warm_up   11 0 0   100%
haystack/tools/searchable_toolset.py SearchableToolset.get_selectable_tools   2 0 0   100%
haystack/tools/searchable_toolset.py SearchableToolset.clear   1 0 0   100%
haystack/tools/searchable_toolset.py SearchableToolset.spawn   7 0 0   100%
haystack/tools/searchable_toolset.py SearchableToolset._create_search_tool   8 0 0   100%
haystack/tools/searchable_toolset.py SearchableToolset._create_search_tool.search_tools   15 0 0   100%
haystack/tools/searchable_toolset.py SearchableToolset._is_selected   1 0 0   100%
haystack/tools/searchable_toolset.py SearchableToolset.__iter__   6 0 0   100%
haystack/tools/searchable_toolset.py SearchableToolset.__contains__   5 0 0   100%
haystack/tools/searchable_toolset.py SearchableToolset.to_dict   2 0 0   100%
haystack/tools/searchable_toolset.py SearchableToolset.from_dict   4 0 0   100%
haystack/tools/searchable_toolset.py (no function)   28 0 2   100%
haystack/tools/serde_utils.py serialize_tools_or_toolset   12 2 0   83%
haystack/tools/serde_utils.py deserialize_tools_or_toolset_inplace   24 1 0   96%
haystack/tools/serde_utils.py (no function)   7 0 2   100%
haystack/tools/skills/__init__.py (no function)   2 0 0   100%
haystack/tools/skills/skill_toolset.py SkillToolset.__init__   5 0 0   100%
haystack/tools/skills/skill_toolset.py SkillToolset.skills   3 0 0   100%
haystack/tools/skills/skill_toolset.py SkillToolset.warm_up   7 0 0   100%
haystack/tools/skills/skill_toolset.py SkillToolset.add   1 0 0   100%
haystack/tools/skills/skill_toolset.py SkillToolset.__add__   1 0 0   100%
haystack/tools/skills/skill_toolset.py SkillToolset._load_skill_description   6 0 0   100%
haystack/tools/skills/skill_toolset.py SkillToolset._create_load_skill_tool   2 0 0   100%
haystack/tools/skills/skill_toolset.py SkillToolset._create_load_skill_tool.load_skill   5 0 0   100%
haystack/tools/skills/skill_toolset.py SkillToolset._create_read_skill_file_tool   2 0 0   100%
haystack/tools/skills/skill_toolset.py SkillToolset._create_read_skill_file_tool.read_skill_file   2 0 0   100%
haystack/tools/skills/skill_toolset.py SkillToolset.to_dict   1 0 0   100%
haystack/tools/skills/skill_toolset.py SkillToolset.from_dict   3 0 0   100%
haystack/tools/skills/skill_toolset.py (no function)   23 0 0   100%
haystack/tools/tool.py Tool.__post_init__   53 2 0   96%
haystack/tools/tool.py Tool._get_valid_inputs   10 2 0   80%
haystack/tools/tool.py Tool._get_valid_outputs   1 0 0   100%
haystack/tools/tool.py Tool.tool_spec   1 0 0   100%
haystack/tools/tool.py Tool.warm_up   1 0 0   100%
haystack/tools/tool.py Tool.invoke   7 0 0   100%
haystack/tools/tool.py Tool.invoke_async   6 0 0   100%
haystack/tools/tool.py Tool.to_dict   8 0 0   100%
haystack/tools/tool.py Tool.from_dict   9 0 0   100%
haystack/tools/tool.py _check_duplicate_tool_names   6 1 0   83%
haystack/tools/tool.py _convert_handler   4 0 0   100%
haystack/tools/tool.py _convert_handler_in_configs   1 0 0   100%
haystack/tools/tool.py _serialize_outputs_to_state   1 0 0   100%
haystack/tools/tool.py _deserialize_outputs_to_state   1 0 0   100%
haystack/tools/tool.py _serialize_outputs_to_string   3 0 0   100%
haystack/tools/tool.py _deserialize_outputs_to_string   3 0 0   100%
haystack/tools/tool.py (no function)   35 0 0   100%
haystack/tools/tool_types.py (no function)   5 0 0   100%
haystack/tools/toolset.py Toolset.__post_init__   3 1 0   67%
haystack/tools/toolset.py Toolset.__iter__   1 0 0   100%
haystack/tools/toolset.py Toolset.get_selectable_tools   2 0 0   100%
haystack/tools/toolset.py Toolset.spawn   1 0 0   100%
haystack/tools/toolset.py Toolset.__contains__   5 1 0   80%
haystack/tools/toolset.py Toolset.warm_up   3 0 0   100%
haystack/tools/toolset.py Toolset.add   7 0 0   100%
haystack/tools/toolset.py Toolset.to_dict   1 0 0   100%
haystack/tools/toolset.py Toolset.from_dict   9 1 0   89%
haystack/tools/toolset.py Toolset.__add__   8 0 0   100%
haystack/tools/toolset.py Toolset.__len__   1 0 0   100%
haystack/tools/toolset.py Toolset.__getitem__   1 0 0   100%
haystack/tools/toolset.py _ToolsetWrapper.__init__   3 0 0   100%
haystack/tools/toolset.py _ToolsetWrapper.__iter__   4 0 0   100%
haystack/tools/toolset.py _ToolsetWrapper.get_selectable_tools   1 0 0   100%
haystack/tools/toolset.py _ToolsetWrapper.spawn   3 0 0   100%
haystack/tools/toolset.py _ToolsetWrapper.__contains__   1 0 0   100%
haystack/tools/toolset.py _ToolsetWrapper.warm_up   2 0 0   100%
haystack/tools/toolset.py _ToolsetWrapper.to_dict   1 0 0   100%
haystack/tools/toolset.py _ToolsetWrapper.from_dict   9 0 0   100%
haystack/tools/toolset.py _ToolsetWrapper.__add__   8 5 0   38%
haystack/tools/toolset.py (no function)   33 0 0   100%
haystack/tools/utils.py warm_up_tools   10 0 0   100%
haystack/tools/utils.py flatten_tools_or_toolsets   14 0 0   100%
haystack/tools/utils.py (no function)   5 0 2   100%
haystack/tracing/__init__.py (no function)   1 0 0   100%
haystack/tracing/logging_tracer.py LoggingSpan.set_tag   1 0 0   100%
haystack/tracing/logging_tracer.py LoggingTracer.__init__   2 0 0   100%
haystack/tracing/logging_tracer.py LoggingTracer.trace   13 0 0   100%
haystack/tracing/logging_tracer.py LoggingTracer.current_span   1 0 0   100%
haystack/tracing/logging_tracer.py (no function)   19 0 0   100%
haystack/tracing/tracer.py Span.set_tag   1 1 0   0%
haystack/tracing/tracer.py Span.set_tags   2 0 0   100%
haystack/tracing/tracer.py Span.raw_span   1 0 0   100%
haystack/tracing/tracer.py Span.set_content_tag   2 0 0   100%
haystack/tracing/tracer.py Span.get_correlation_data_for_logs   1 1 0   0%
haystack/tracing/tracer.py Tracer.trace   1 1 0   0%
haystack/tracing/tracer.py Tracer.current_span   1 1 0   0%
haystack/tracing/tracer.py ProxyTracer.__init__   2 0 0   100%
haystack/tracing/tracer.py ProxyTracer.trace   2 0 0   100%
haystack/tracing/tracer.py ProxyTracer.current_span   1 0 0   100%
haystack/tracing/tracer.py NullSpan.set_tag   1 0 0   100%
haystack/tracing/tracer.py NullTracer.trace   1 0 0   100%
haystack/tracing/tracer.py NullTracer.current_span   1 0 0   100%
haystack/tracing/tracer.py enable_tracing   1 0 0   100%
haystack/tracing/tracer.py disable_tracing   1 0 0   100%
haystack/tracing/tracer.py is_tracing_enabled   1 0 0   100%
haystack/tracing/tracer.py (no function)   34 0 0   100%
haystack/tracing/utils.py coerce_tag_value   10 0 0   100%
haystack/tracing/utils.py _serializable_value   9 0 0   100%
haystack/tracing/utils.py (no function)   7 0 0   100%
haystack/utils/__init__.py (no function)   5 0 23   100%
haystack/utils/async_utils.py _gather_tasks_with_cancel   7 0 0   100%
haystack/utils/async_utils.py _execute_component_async   5 0 0   100%
haystack/utils/async_utils.py (no function)   7 0 0   100%
haystack/utils/auth.py SecretType.__str__   1 1 0   0%
haystack/utils/auth.py SecretType.from_str   5 0 0   100%
haystack/utils/auth.py Secret.from_token   1 0 0   100%
haystack/utils/auth.py Secret.from_env_var   3 0 0   100%
haystack/utils/auth.py Secret.to_dict   5 0 0   100%
haystack/utils/auth.py Secret.from_dict   3 0 0   100%
haystack/utils/auth.py Secret.resolve_value   1 1 0   0%
haystack/utils/auth.py Secret.type   1 1 0   0%
haystack/utils/auth.py Secret._to_dict   1 1 0   0%
haystack/utils/auth.py Secret._from_dict   1 1 0   0%
haystack/utils/auth.py TokenSecret.__post_init__   4 0 0   100%
haystack/utils/auth.py TokenSecret._to_dict   1 0 0   100%
haystack/utils/auth.py TokenSecret._from_dict   1 1 0   0%
haystack/utils/auth.py TokenSecret.__repr__   1 0 0   100%
haystack/utils/auth.py TokenSecret.resolve_value   1 0 0   100%
haystack/utils/auth.py TokenSecret.type   1 0 0   100%
haystack/utils/auth.py EnvVarSecret.__post_init__   4 0 0   100%
haystack/utils/auth.py EnvVarSecret._to_dict   1 0 0   100%
haystack/utils/auth.py EnvVarSecret._from_dict   1 0 0   100%
haystack/utils/auth.py EnvVarSecret.resolve_value   9 0 0   100%
haystack/utils/auth.py EnvVarSecret.type   1 0 0   100%
haystack/utils/auth.py deserialize_secrets_inplace   5 5 0   0%
haystack/utils/auth.py (no function)   53 0 0   100%
haystack/utils/azure.py default_azure_ad_token_provider   2 2 0   0%
haystack/utils/azure.py (no function)   4 0 0   100%
haystack/utils/base_serialization.py _serialize_value_with_schema   44 0 0   100%
haystack/utils/base_serialization.py _serialize_with_field_fallback   17 0 0   100%
haystack/utils/base_serialization.py _primitive_schema_type   5 2 0   60%
haystack/utils/base_serialization.py _deserialize_value_with_schema   33 2 0   94%
haystack/utils/base_serialization.py _deserialize_value   23 5 0   78%
haystack/utils/base_serialization.py (no function)   14 0 0   100%
haystack/utils/callable_serialization.py serialize_callable   20 2 0   90%
haystack/utils/callable_serialization.py deserialize_callable   35 6 0   83%
haystack/utils/callable_serialization.py (no function)   11 0 0   100%
haystack/utils/dataclasses.py _warn_on_inplace_mutation   10 0 0   100%
haystack/utils/dataclasses.py _warn_on_inplace_mutation.__init_track__   4 0 0   100%
haystack/utils/dataclasses.py _warn_on_inplace_mutation.__setattr_warn__   3 0 0   100%
haystack/utils/dataclasses.py (no function)   5 0 0   100%
haystack/utils/deserialization.py deserialize_chatgenerator_inplace   1 0 0   100%
haystack/utils/deserialization.py deserialize_component_inplace   12 1 0   92%
haystack/utils/deserialization.py (no function)   5 0 0   100%
haystack/utils/device.py DeviceType.__str__   1 0 0   100%
haystack/utils/device.py DeviceType.from_str   5 0 0   100%
haystack/utils/device.py Device.__init__   4 0 0   100%
haystack/utils/device.py Device.__str__   3 0 0   100%
haystack/utils/device.py Device.cpu   1 0 0   100%
haystack/utils/device.py Device.gpu   1 0 0   100%
haystack/utils/device.py Device.disk   1 0 0   100%
haystack/utils/device.py Device.mps   1 0 0   100%
haystack/utils/device.py Device.xpu   1 0 0   100%
haystack/utils/device.py Device.from_str   2 0 0   100%
haystack/utils/device.py DeviceMap.__getitem__   1 0 0   100%
haystack/utils/device.py DeviceMap.__setitem__   1 0 0   100%
haystack/utils/device.py DeviceMap.__contains__   1 0 0   100%
haystack/utils/device.py DeviceMap.__len__   1 0 0   100%
haystack/utils/device.py DeviceMap.__iter__   1 0 0   100%
haystack/utils/device.py DeviceMap.to_dict   1 0 0   100%
haystack/utils/device.py DeviceMap.first_device   3 0 0   100%
haystack/utils/device.py DeviceMap.from_dict   4 0 0   100%
haystack/utils/device.py DeviceMap.from_hf   13 3 0   77%
haystack/utils/device.py ComponentDevice.from_str   2 0 0   100%
haystack/utils/device.py ComponentDevice.from_single   3 0 0   100%
haystack/utils/device.py ComponentDevice.from_multiple   1 0 0   100%
haystack/utils/device.py ComponentDevice._validate   2 0 0   100%
haystack/utils/device.py ComponentDevice.to_torch   6 3 0   50%
haystack/utils/device.py ComponentDevice.to_torch_str   5 0 0   100%
haystack/utils/device.py ComponentDevice.to_spacy   8 1 0   88%
haystack/utils/device.py ComponentDevice.to_hf   6 0 0   100%
haystack/utils/device.py ComponentDevice.to_hf.convert_device   4 0 0   100%
haystack/utils/device.py ComponentDevice.update_hf_kwargs   7 1 0   86%
haystack/utils/device.py ComponentDevice.has_multiple_devices   2 0 0   100%
haystack/utils/device.py ComponentDevice.first_device   6 0 0   100%
haystack/utils/device.py ComponentDevice.resolve_device   5 1 0   80%
haystack/utils/device.py ComponentDevice.to_dict   5 1 0   80%
haystack/utils/device.py ComponentDevice.from_dict   5 1 0   80%
haystack/utils/device.py _get_default_device   16 4 0   75%
haystack/utils/device.py _split_device_string   9 2 0   78%
haystack/utils/device.py (no function)   76 0 0   100%
haystack/utils/experimental.py _experimental   6 0 1   100%
haystack/utils/experimental.py _experimental.new_init   2 0 0   100%
haystack/utils/experimental.py (no function)   6 0 0   100%
haystack/utils/filters.py document_matches_filter   3 0 0   100%
haystack/utils/filters.py _and   1 0 0   100%
haystack/utils/filters.py _or   1 0 0   100%
haystack/utils/filters.py _not   1 0 0   100%
haystack/utils/filters.py _equal   3 0 0   100%
haystack/utils/filters.py _not_equal   1 0 0   100%
haystack/utils/filters.py _looks_like_iso_date   1 0 0   100%
haystack/utils/filters.py _parse_iso_date   7 0 0   100%
haystack/utils/filters.py _dates_are_equal   16 0 0   100%
haystack/utils/filters.py _prepare_ordering_comparison   13 0 0   100%
haystack/utils/filters.py _greater_than   6 0 0   100%
haystack/utils/filters.py _parse_date   8 0 0   100%
haystack/utils/filters.py _ensure_both_dates_naive_or_aware   8 0 0   100%
haystack/utils/filters.py _greater_than_equal   6 0 0   100%
haystack/utils/filters.py _less_than   6 0 0   100%
haystack/utils/filters.py _less_than_equal   6 0 0   100%
haystack/utils/filters.py _in   4 0 0   100%
haystack/utils/filters.py _not_in   1 0 0   100%
haystack/utils/filters.py _logic_condition   12 0 0   100%
haystack/utils/filters.py _comparison_condition   26 0 0   100%
haystack/utils/filters.py (no function)   28 0 0   100%
haystack/utils/hf.py serialize_hf_model_kwargs   6 6 0   0%
haystack/utils/hf.py deserialize_hf_model_kwargs   9 9 0   0%
haystack/utils/hf.py convert_message_to_hf_format   36 0 0   100%
haystack/utils/hf.py (no function)   10 0 0   100%
haystack/utils/http_client.py init_http_client   11 0 0   100%
haystack/utils/http_client.py (no function)   3 0 6   100%
haystack/utils/jinja2_chat_extension.py _sentinel_tags   1 0 0   100%
haystack/utils/jinja2_chat_extension.py _finalize   3 0 0   100%
haystack/utils/jinja2_chat_extension.py _redact_nonce   1 0 0   100%
haystack/utils/jinja2_chat_extension.py ChatMessageExtension.__init__   4 0 0   100%
haystack/utils/jinja2_chat_extension.py ChatMessageExtension.parse   4 0 0   100%
haystack/utils/jinja2_chat_extension.py ChatMessageExtension._parse_insert_tag   4 0 0   100%
haystack/utils/jinja2_chat_extension.py ChatMessageExtension._parse_message_tag   23 0 0   100%
haystack/utils/jinja2_chat_extension.py ChatMessageExtension._build_chat_message_json   7 0 0   100%
haystack/utils/jinja2_chat_extension.py ChatMessageExtension._build_inserted_messages_json   7 0 0   100%
haystack/utils/jinja2_chat_extension.py ChatMessageExtension._parse_content_parts   26 0 0   100%
haystack/utils/jinja2_chat_extension.py ChatMessageExtension._validate_build_chat_message   32 1 0   97%
haystack/utils/jinja2_chat_extension.py templatize_part   2 0 0   100%
haystack/utils/jinja2_chat_extension.py (no function)   32 0 0   100%
haystack/utils/jinja2_extensions.py Jinja2TimeExtension.__init__   2 0 0   100%
haystack/utils/jinja2_extensions.py Jinja2TimeExtension._get_datetime   12 0 0   100%
haystack/utils/jinja2_extensions.py Jinja2TimeExtension.parse   6 0 0   100%
haystack/utils/jinja2_extensions.py _collect_assigned_variables   9 0 0   100%
haystack/utils/jinja2_extensions.py _extract_template_variables_and_assignments   4 0 0   100%
haystack/utils/jinja2_extensions.py (no function)   14 0 0   100%
haystack/utils/jinja2_sandbox.py HaystackSandboxedEnvironment.is_safe_attribute   3 0 0   100%
haystack/utils/jinja2_sandbox.py HaystackSandboxedEnvironment.is_safe_callable   6 0 0   100%
haystack/utils/jinja2_sandbox.py (no function)   7 0 0   100%
haystack/utils/jupyter.py is_in_jupyter   8 3 0   62%
haystack/utils/jupyter.py (no function)   1 0 0   100%
haystack/utils/misc.py expand_page_range   21 2 0   90%
haystack/utils/misc.py expit   1 0 0   100%
haystack/utils/misc.py _guess_mime_type   3 0 0   100%
haystack/utils/misc.py _get_output_dir   8 3 0   62%
haystack/utils/misc.py _deduplicate_documents   7 0 0   100%
haystack/utils/misc.py _reciprocal_rank_fusion   13 0 0   100%
haystack/utils/misc.py _parse_dict_from_json   22 0 0   100%
haystack/utils/misc.py _normalize_metadata_field_name   1 0 0   100%
haystack/utils/misc.py (no function)   20 0 13   100%
haystack/utils/requests_utils.py request_with_retry   8 0 0   100%
haystack/utils/requests_utils.py request_with_retry.run   5 0 0   100%
haystack/utils/requests_utils.py async_request_with_retry   8 0 0   100%
haystack/utils/requests_utils.py async_request_with_retry.run   5 0 0   100%
haystack/utils/requests_utils.py (no function)   7 0 0   100%
haystack/utils/type_serialization.py _is_union_type   4 0 0   100%
haystack/utils/type_serialization.py _build_pep604_union_type   4 0 0   100%
haystack/utils/type_serialization.py _serialize_type_arg   3 0 0   100%
haystack/utils/type_serialization.py serialize_type   24 2 0   92%
haystack/utils/type_serialization.py _parse_generic_args   15 0 0   100%
haystack/utils/type_serialization.py _parse_pep604_union_args   15 0 0   100%
haystack/utils/type_serialization.py _deserialize_type_arg   7 0 0   100%
haystack/utils/type_serialization.py deserialize_type   29 4 0   86%
haystack/utils/type_serialization.py thread_safe_import   2 0 0   100%
haystack/utils/type_serialization.py _import_class_by_name   15 0 0   100%
haystack/utils/type_serialization.py (no function)   26 0 0   100%
haystack/utils/url_validation.py is_valid_http_url   2 0 0   100%
haystack/utils/url_validation.py (no function)   2 0 0   100%
haystack/version.py (no function)   5 2 0   60%
Total     17110 779 403   95%

No items found using the specified filter.

64 empty functions skipped.