Coverage report: 100%

Files Functions Classes

coverage.py v7.15.3, created at 2026-08-03 00:00 +0000

      Statements   Branches   Total
File function   coverage statements missing excluded   coverage branches partial   coverage
archdocs/__init__.py (no function)   100% 0 0 0   100% 0 0   100%
archdocs/diagram_model.py render_node_id   100% 1 0 0   100% 0 0   100%
archdocs/diagram_model.py build_diagram_node   100% 1 0 0   100% 0 0   100%
archdocs/diagram_model.py build_service_node   100% 2 0 0   100% 0 0   100%
archdocs/diagram_model.py (no function)   100% 31 0 0   100% 0 0   100%
archdocs/features/__init__.py (no function)   100% 0 0 0   100% 0 0   100%
archdocs/features/app_servers/__init__.py (no function)   100% 0 0 0   100% 0 0   100%
archdocs/features/app_servers/const.py (no function)   100% 29 0 0   100% 0 0   100%
archdocs/features/app_servers/parser.py _read_first_number   100% 4 0 0   100% 2 0   100%
archdocs/features/app_servers/parser.py _find_servers_behind_worker_class   100% 7 0 0   100% 4 0   100%
archdocs/features/app_servers/parser.py find_application_server_features   100% 5 0 0   100% 2 0   100%
archdocs/features/app_servers/parser.py (no function)   100% 21 0 0   100% 0 0   100%
archdocs/features/app_servers/renderer.py _render_workers_label   100% 5 0 0   100% 4 0   100%
archdocs/features/app_servers/renderer.py render_application_server_features   100% 4 0 0   100% 2 0   100%
archdocs/features/app_servers/renderer.py (no function)   100% 6 0 0   100% 0 0   100%
archdocs/features/http_api/__init__.py (no function)   100% 0 0 0   100% 0 0   100%
archdocs/features/http_api/const.py (no function)   100% 5 0 0   100% 0 0   100%
archdocs/features/http_api/parser.py find_fastapi_and_litestar_features   100% 4 0 0   100% 2 0   100%
archdocs/features/http_api/parser.py (no function)   100% 6 0 0   100% 0 0   100%
archdocs/features/http_api/renderer.py render_http_api_features   100% 4 0 0   100% 2 0   100%
archdocs/features/http_api/renderer.py (no function)   100% 4 0 0   100% 0 0   100%
archdocs/features/http_clients/__init__.py (no function)   100% 0 0 0   100% 0 0   100%
archdocs/features/http_clients/const.py (no function)   100% 12 0 0   100% 0 0   100%
archdocs/features/http_clients/parser.py find_http_client_features   100% 5 0 0   100% 2 0   100%
archdocs/features/http_clients/parser.py (no function)   100% 9 0 0   100% 0 0   100%
archdocs/features/http_clients/renderer.py render_http_client_features   100% 4 0 0   100% 2 0   100%
archdocs/features/http_clients/renderer.py (no function)   100% 4 0 0   100% 0 0   100%
archdocs/features/kubernetes/__init__.py (no function)   100% 0 0 0   100% 0 0   100%
archdocs/features/kubernetes/const.py (no function)   100% 57 0 0   100% 0 0   100%
archdocs/features/kubernetes/manifest_files.py _is_manifest_file   100% 4 0 0   100% 2 0   100%
archdocs/features/kubernetes/manifest_files.py _find_manifest_files   100% 2 0 0   100% 0 0   100%
archdocs/features/kubernetes/manifest_files.py _iter_search_roots   100% 4 0 0   100% 4 0   100%
archdocs/features/kubernetes/manifest_files.py _find_manifest_dir   100% 7 0 0   100% 4 0   100%
archdocs/features/kubernetes/manifest_files.py _resolve_manifest_dir   100% 4 0 0   100% 2 0   100%
archdocs/features/kubernetes/manifest_files.py read_kubernetes_manifests   100% 4 0 0   100% 2 0   100%
archdocs/features/kubernetes/manifest_files.py (no function)   100% 13 0 0   100% 0 0   100%
archdocs/features/kubernetes/parser.py _read_toggle   100% 4 0 0   100% 2 0   100%
archdocs/features/kubernetes/parser.py _read_amounts   100% 1 0 0   100% 0 0   100%
archdocs/features/kubernetes/parser.py _read_traffic   100% 2 0 0   100% 0 0   100%
archdocs/features/kubernetes/parser.py _read_scaling   100% 4 0 0   100% 2 0   100%
archdocs/features/kubernetes/parser.py _read_resources   100% 1 0 0   100% 0 0   100%
archdocs/features/kubernetes/parser.py _read_configuration   100% 1 0 0   100% 0 0   100%
archdocs/features/kubernetes/parser.py find_kubernetes_features   100% 3 0 0   100% 0 0   100%
archdocs/features/kubernetes/parser.py (no function)   100% 15 0 0   100% 0 0   100%
archdocs/features/kubernetes/renderer.py _render_amounts   100% 5 0 0   100% 4 0   100%
archdocs/features/kubernetes/renderer.py render_kubernetes_node_annotations   100% 3 0 0   100% 0 0   100%
archdocs/features/kubernetes/renderer.py _render_entrypoint_label   100% 7 0 0   100% 6 0   100%
archdocs/features/kubernetes/renderer.py _render_traffic_edges   100% 7 0 0   100% 4 0   100%
archdocs/features/kubernetes/renderer.py _render_configuration_edges   100% 1 0 0   100% 0 0   100%
archdocs/features/kubernetes/renderer.py _render_storage_edges   100% 4 0 0   100% 2 0   100%
archdocs/features/kubernetes/renderer.py render_kubernetes_features   100% 1 0 0   100% 0 0   100%
archdocs/features/kubernetes/renderer.py (no function)   100% 14 0 0   100% 0 0   100%
archdocs/features/kubernetes/values.py _remove_list_prefix   100% 3 0 0   100% 2 0   100%
archdocs/features/kubernetes/values.py _make_one_value   100% 6 0 0   100% 4 0   100%
archdocs/features/kubernetes/values.py _read_one_pair   100% 7 0 0   100% 4 0   100%
archdocs/features/kubernetes/values.py _read_one_line   100% 4 0 0   100% 2 0   100%
archdocs/features/kubernetes/values.py read_manifest_values   100% 3 0 0   100% 0 0   100%
archdocs/features/kubernetes/values.py (no function)   100% 20 0 0   100% 0 0   100%
archdocs/features/kubernetes/values_lookup.py _is_path_suffix   100% 1 0 0   100% 0 0   100%
archdocs/features/kubernetes/values_lookup.py _contains_path   100% 1 0 0   100% 0 0   100%
archdocs/features/kubernetes/values_lookup.py read_values   100% 1 0 0   100% 0 0   100%
archdocs/features/kubernetes/values_lookup.py read_first_value   100% 2 0 0   100% 0 0   100%
archdocs/features/kubernetes/values_lookup.py read_int_value   100% 2 0 0   100% 0 0   100%
archdocs/features/kubernetes/values_lookup.py has_any_block   100% 1 0 0   100% 0 0   100%
archdocs/features/kubernetes/values_lookup.py (no function)   100% 8 0 0   100% 0 0   100%
archdocs/features/messaging_queue/__init__.py (no function)   100% 0 0 0   100% 0 0   100%
archdocs/features/messaging_queue/const.py (no function)   100% 25 0 0   100% 0 0   100%
archdocs/features/messaging_queue/parser.py _collect_broker_of_variable   100% 1 0 0   100% 0 0   100%
archdocs/features/messaging_queue/parser.py _collect_topics_of_broker   100% 1 0 0   100% 0 0   100%
archdocs/features/messaging_queue/parser.py _build_broker_flow   100% 1 0 0   100% 0 0   100%
archdocs/features/messaging_queue/parser.py find_faststream_features   100% 6 0 0   100% 4 0   100%
archdocs/features/messaging_queue/parser.py (no function)   100% 16 0 0   100% 0 0   100%
archdocs/features/messaging_queue/renderer.py _render_flow_edges   100% 7 0 0   100% 4 0   100%
archdocs/features/messaging_queue/renderer.py render_mq_features   100% 1 0 0   100% 0 0   100%
archdocs/features/messaging_queue/renderer.py (no function)   100% 5 0 0   100% 0 0   100%
archdocs/features/redis/__init__.py (no function)   100% 0 0 0   100% 0 0   100%
archdocs/features/redis/const.py (no function)   100% 5 0 0   100% 0 0   100%
archdocs/features/redis/parser.py find_redis_features   100% 6 0 0   100% 4 0   100%
archdocs/features/redis/parser.py (no function)   100% 11 0 0   100% 0 0   100%
archdocs/features/redis/renderer.py _build_redis_node   100% 2 0 0   100% 0 0   100%
archdocs/features/redis/renderer.py render_redis_features   100% 6 0 0   100% 4 0   100%
archdocs/features/redis/renderer.py (no function)   100% 6 0 0   100% 0 0   100%
archdocs/features/sqlalchemy/__init__.py (no function)   100% 0 0 0   100% 0 0   100%
archdocs/features/sqlalchemy/const.py (no function)   100% 7 0 0   100% 0 0   100%
archdocs/features/sqlalchemy/parser.py find_sqlalchemy_features   100% 5 0 0   100% 2 0   100%
archdocs/features/sqlalchemy/parser.py (no function)   100% 12 0 0   100% 0 0   100%
archdocs/features/sqlalchemy/renderer.py _build_database_node   100% 3 0 0   100% 0 0   100%
archdocs/features/sqlalchemy/renderer.py render_sqlalchemy_features   100% 5 0 0   100% 2 0   100%
archdocs/features/sqlalchemy/renderer.py (no function)   100% 8 0 0   100% 0 0   100%
archdocs/features/task_queues/__init__.py (no function)   100% 0 0 0   100% 0 0   100%
archdocs/features/task_queues/const.py (no function)   100% 14 0 0   100% 0 0   100%
archdocs/features/task_queues/parser.py _find_used_queues   100% 2 0 0   100% 0 0   100%
archdocs/features/task_queues/parser.py find_task_queue_features   100% 4 0 0   100% 2 0   100%
archdocs/features/task_queues/parser.py (no function)   100% 12 0 0   100% 0 0   100%
archdocs/features/task_queues/renderer.py render_task_queue_features   100% 4 0 0   100% 2 0   100%
archdocs/features/task_queues/renderer.py (no function)   100% 5 0 0   100% 0 0   100%
archdocs/integrations/__init__.py (no function)   100% 0 0 0   100% 0 0   100%
archdocs/integrations/common.py _generate_architecture_html   100% 8 0 0   100% 2 0   100%
archdocs/integrations/common.py _create_architecture_engine   100% 3 0 0   100% 2 0   100%
archdocs/integrations/common.py (no function)   100% 9 0 0   100% 0 0   100%
archdocs/integrations/fastapi.py _handle_fastapi_arch_doc_route   100% 1 0 0   100% 0 0   100%
archdocs/integrations/fastapi.py add_architecture_doc_routes   100% 1 0 0   100% 0 0   100%
archdocs/integrations/fastapi.py (no function)   100% 9 0 0   100% 0 0   100%
archdocs/integrations/litestar.py _LitestarArchDocRoute.__call__   100% 1 0 0   100% 0 0   100%
archdocs/integrations/litestar.py add_architecture_doc_routes   100% 1 0 0   100% 0 0   100%
archdocs/integrations/litestar.py (no function)   100% 12 0 0   100% 0 0   100%
archdocs/main.py _parse_every_manifest   100% 1 0 0   100% 0 0   100%
archdocs/main.py _render_manifest_annotations   100% 1 0 0   100% 0 0   100%
archdocs/main.py _render_manifest_edges   100% 1 0 0   100% 0 0   100%
archdocs/main.py ArchitectureParserAndRenderer.render_architecture_diagram   100% 5 0 0   100% 2 0   100%
archdocs/main.py ArchitectureParserAndRenderer._render_every_diagram_line   100% 5 0 0   100% 0 0   100%
archdocs/main.py ArchitectureParserAndRenderer._process_source_files   100% 4 0 0   100% 0 0   100%
archdocs/main.py ArchitectureParserAndRenderer._process_one_file   100% 2 0 0   100% 0 0   100%
archdocs/main.py (no function)   100% 24 0 0   100% 0 0   100%
archdocs/mapping.py (no function)   100% 43 0 0   100% 0 0   100%
archdocs/mermaid_syntax.py render_node_definition   100% 1 0 0   100% 0 0   100%
archdocs/mermaid_syntax.py render_edge   100% 6 0 0   100% 2 0   100%
archdocs/mermaid_syntax.py MermaidDiagram.render_every_line   100% 1 0 0   100% 0 0   100%
archdocs/mermaid_syntax.py MermaidDiagram._collect_drawn_nodes   100% 1 0 0   100% 0 0   100%
archdocs/mermaid_syntax.py MermaidDiagram._render_group_lines   100% 4 0 0   100% 2 0   100%
archdocs/mermaid_syntax.py MermaidDiagram._render_placement_lines   100% 1 0 0   100% 0 0   100%
archdocs/mermaid_syntax.py MermaidDiagram._render_service_row_lines   100% 2 0 0   100% 0 0   100%
archdocs/mermaid_syntax.py MermaidDiagram._render_definition_lines   100% 2 0 0   100% 0 0   100%
archdocs/mermaid_syntax.py (no function)   100% 32 0 0   100% 0 0   100%
archdocs/prefilter.py contains_any_literal   100% 1 0 0   100% 0 0   100%
archdocs/prefilter.py (no function)   100% 1 0 0   100% 0 0   100%
archdocs/settings.py (no function)   100% 20 0 0   100% 0 0   100%
tests/__init__.py (no function)   100% 0 0 0   100% 0 0   100%
tests/diagram_parts.py extract_edge_lines   100% 1 0 0   100% 0 0   100%
tests/diagram_parts.py collect_group_of_every_node   100% 1 0 0   100% 0 0   100%
tests/diagram_parts.py collect_defined_node_ids   100% 1 0 0   100% 0 0   100%
tests/diagram_parts.py collect_edge_ends   100% 1 0 0   100% 0 0   100%
tests/diagram_parts.py (no function)   100% 12 0 0   100% 0 0   100%
tests/playground.py render_example_path   100% 1 0 0   100% 0 0   100%
tests/playground.py _handle_index_route   100% 2 0 0   100% 0 0   100%
tests/playground.py create_playground_app   100% 5 0 0   100% 2 0   100%
tests/playground.py (no function)   100% 16 0 0   100% 0 0   100%
tests/rendered_diagram.py render_diagram   100% 1 0 0   100% 0 0   100%
tests/rendered_diagram.py render_example_diagram   100% 1 0 0   100% 0 0   100%
tests/rendered_diagram.py build_named_settings   100% 1 0 0   100% 0 0   100%
tests/rendered_diagram.py render_source_diagram   100% 2 0 0   100% 0 0   100%
tests/rendered_diagram.py (no function)   100% 19 0 0   100% 0 0   100%
tests/served_page.py render_fastapi_page   100% 8 0 0   100% 2 0   100%
tests/served_page.py render_litestar_page   100% 8 0 0   100% 2 0   100%
tests/served_page.py (no function)   100% 16 0 0   100% 0 0   100%
tests/test_detected_features.py _has_no_feature_literal   100% 1 0 0   100% 0 0   100%
tests/test_detected_features.py test_source_reaches_the_diagram   100% 5 0 0   100% 4 0   100%
tests/test_detected_features.py test_every_server_reaches_the_diagram   100% 2 0 0   100% 0 0   100%
tests/test_detected_features.py test_showcase_shows_every_supported_feature   100% 1 0 0   100% 0 0   100%
tests/test_detected_features.py test_unrelated_source_draws_the_service_alone   100% 1 0 0   100% 0 0   100%
tests/test_detected_features.py (no function)   100% 50 0 3   100% 0 0   100%
tests/test_diagram_layout.py test_arrows_agree_with_their_side   100% 8 0 0   100% 0 0   100%
tests/test_diagram_layout.py test_showcase_nodes_sit_in_their_groups   100% 3 0 0   100% 0 0   100%
tests/test_diagram_layout.py test_groups_sit_around_the_service   100% 3 0 0   100% 0 0   100%
tests/test_diagram_layout.py test_service_name_becomes_the_node_id   100% 3 0 0   100% 0 0   100%
tests/test_diagram_layout.py test_credentials_never_reach_the_diagram   100% 3 0 0   100% 0 0   100%
tests/test_diagram_layout.py (no function)   100% 22 0 0   100% 0 0   100%
tests/test_kubernetes.py test_manifests_reach_the_diagram   100% 5 0 0   100% 4 0   100%
tests/test_kubernetes.py (no function)   100% 9 0 0   100% 0 0   100%
tests/test_mermaid_syntax.py test_every_line_is_valid_mermaid   100% 13 0 0   100% 0 0   100%
tests/test_mermaid_syntax.py test_nodes_are_defined_once_and_grouped   100% 9 0 0   100% 0 0   100%
tests/test_mermaid_syntax.py (no function)   100% 16 0 0   100% 0 0   100%
tests/test_playground.py test_index_links_every_example   100% 5 0 0   100% 2 0   100%
tests/test_playground.py test_example_page_serves_its_own_service   100% 4 0 0   100% 0 0   100%
tests/test_playground.py (no function)   100% 8 0 0   100% 0 0   100%
tests/test_project_scan.py _build_charted_project   100% 8 0 0   100% 0 0   100%
tests/test_project_scan.py test_dependencies_stay_out_of_the_diagram   100% 10 0 0   100% 0 0   100%
tests/test_project_scan.py test_manifests_are_found_above_the_sources   100% 3 0 0   100% 0 0   100%
tests/test_project_scan.py test_chart_is_found_by_its_templates   100% 5 0 0   100% 0 0   100%
tests/test_project_scan.py test_configured_dir_wins_over_the_search   100% 6 0 0   100% 0 0   100%
tests/test_project_scan.py test_sources_are_scanned_once_per_engine   100% 8 0 0   100% 0 0   100%
tests/test_project_scan.py test_far_away_manifests_are_ignored   100% 7 0 0   100% 2 0   100%
tests/test_project_scan.py (no function)   100% 24 0 0   100% 0 0   100%
tests/test_served_page.py test_default_route_serves_a_whole_document   100% 4 0 0   100% 2 0   100%
tests/test_served_page.py test_omitted_settings_draw_the_default   100% 2 0 0   100% 0 0   100%
tests/test_served_page.py test_template_without_a_slot_is_served_whole   100% 3 0 0   100% 0 0   100%
tests/test_served_page.py test_markup_characters_are_escaped   100% 3 0 0   100% 0 0   100%
tests/test_served_page.py test_any_service_name_and_route_are_served   100% 2 0 0   100% 0 0   100%
tests/test_served_page.py (no function)   100% 27 0 0   100% 0 0   100%
Total     100% 1162 0 3   100% 122 0   100%

No items found using the specified filter.