File size: 6,974 Bytes
546c207
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
[
  "tests/test_app.py::test_app_starts_without_a_search",
  "tests/test_app.py::test_empty_and_non_numeric_input_is_handled[   ]",
  "tests/test_app.py::test_empty_and_non_numeric_input_is_handled[!!!]",
  "tests/test_app.py::test_empty_and_non_numeric_input_is_handled[]",
  "tests/test_app.py::test_empty_and_non_numeric_input_is_handled[abc]",
  "tests/test_app.py::test_listed_but_not_drawn_part_shows_the_page_and_says_so",
  "tests/test_app.py::test_low_confidence_result_is_shown_as_approximate",
  "tests/test_app.py::test_messy_input_is_normalized_then_found",
  "tests/test_app.py::test_multiple_occurrences_offer_a_selector",
  "tests/test_app.py::test_no_ocr_engine_is_loaded_during_a_search",
  "tests/test_app.py::test_selecting_another_occurrence_switches_page",
  "tests/test_app.py::test_unknown_part_is_reported_not_crashed",
  "tests/test_app.py::test_valid_part_shows_metadata_and_an_image",
  "tests/test_index_db.py::test_canonical_name_breaks_ties_by_first_appearance",
  "tests/test_index_db.py::test_canonical_name_takes_the_majority_spelling",
  "tests/test_index_db.py::test_counts_match_the_document",
  "tests/test_index_db.py::test_lookup_returns_part_with_its_pages",
  "tests/test_index_db.py::test_page_metadata_points_at_the_right_diagram",
  "tests/test_index_db.py::test_rebuild_is_idempotent",
  "tests/test_localizer.py::test_boxed_callout_is_detected_as_an_assembly",
  "tests/test_localizer.py::test_boxed_callout_is_recognised_as_an_assembly",
  "tests/test_localizer.py::test_callout_with_no_leader_line_falls_back_conservatively",
  "tests/test_localizer.py::test_dashed_and_solid_leaders_both_trace[False]",
  "tests/test_localizer.py::test_dashed_and_solid_leaders_both_trace[True]",
  "tests/test_localizer.py::test_every_result_reports_the_tier_that_produced_it",
  "tests/test_localizer.py::test_leader_crossing_a_large_structure_finds_the_small_target_beyond_it",
  "tests/test_localizer.py::test_leader_crossing_a_large_structure_still_finds_the_small_target",
  "tests/test_localizer.py::test_leader_reaches_its_target_and_ignores_a_nearer_decoy",
  "tests/test_localizer.py::test_leader_reaches_target_and_ignores_a_nearer_decoy",
  "tests/test_localizer.py::test_override_wins_and_is_labelled_as_such",
  "tests/test_localizer.py::test_oversized_target_is_capped_rather_than_asserted",
  "tests/test_localizer.py::test_solid_and_dashed_leaders_both_trace[False]",
  "tests/test_localizer.py::test_solid_and_dashed_leaders_both_trace[True]",
  "tests/test_lookup.py::test_index_is_ready",
  "tests/test_lookup.py::test_index_is_ready_reports_a_missing_database",
  "tests/test_lookup.py::test_low_confidence_methods_are_labelled_as_approximate",
  "tests/test_lookup.py::test_multiple_occurrences_are_all_returned_and_ordered",
  "tests/test_lookup.py::test_normalize_query_keeps_only_digits[  30642  -30642]",
  "tests/test_lookup.py::test_normalize_query_keeps_only_digits[-]",
  "tests/test_lookup.py::test_normalize_query_keeps_only_digits[30642-30642]",
  "tests/test_lookup.py::test_normalize_query_keeps_only_digits[30642\\n-30642]",
  "tests/test_lookup.py::test_normalize_query_keeps_only_digits[PART-30642-30642]",
  "tests/test_lookup.py::test_normalize_query_keeps_only_digits[abc-]",
  "tests/test_lookup.py::test_normalize_query_keeps_only_digits[no. 30642-30642]",
  "tests/test_lookup.py::test_part_listed_but_never_drawn_is_still_findable",
  "tests/test_lookup.py::test_repeated_instances_on_one_page_are_all_kept",
  "tests/test_lookup.py::test_suggestions_only_offered_by_prefix",
  "tests/test_lookup.py::test_unknown_part_returns_none",
  "tests/test_lookup.py::test_valid_part_returns_metadata_and_a_located_box",
  "tests/test_matcher.py::test_assign_instances_numbers_repeated_callouts",
  "tests/test_matcher.py::test_fuzzy_match_needs_higher_confidence",
  "tests/test_matcher.py::test_header_and_footer_strips_are_furniture",
  "tests/test_matcher.py::test_labels_for_page_accepts_callouts_and_reports_rejects",
  "tests/test_matcher.py::test_normalize_strips_everything_but_digits[*30638-30638]",
  "tests/test_matcher.py::test_normalize_strips_everything_but_digits[*7.4012-74012]",
  "tests/test_matcher.py::test_normalize_strips_everything_but_digits[-74506-74506]",
  "tests/test_matcher.py::test_normalize_strips_everything_but_digits[30642-30642]",
  "tests/test_matcher.py::test_normalize_strips_everything_but_digits[D / PU-S-12-12]",
  "tests/test_matcher.py::test_normalize_strips_everything_but_digits[Seite 18-18]",
  "tests/test_matcher.py::test_snap_drops_ambiguous_matches",
  "tests/test_matcher.py::test_snap_exact_and_fuzzy",
  "tests/test_matcher.py::test_snap_refuses_to_invent_part_numbers",
  "tests/test_overlay.py::test_annotation_does_not_modify_the_array_passed_in",
  "tests/test_overlay.py::test_annotation_does_not_modify_the_cached_image_on_disk",
  "tests/test_overlay.py::test_box_outside_the_image_is_clipped",
  "tests/test_overlay.py::test_caption_shows_the_part_number",
  "tests/test_overlay.py::test_encode_png_round_trips",
  "tests/test_overlay.py::test_every_instance_is_boxed_and_numbered",
  "tests/test_overlay.py::test_load_diagram_raises_on_a_missing_file",
  "tests/test_overlay.py::test_load_diagram_reads_the_cached_png",
  "tests/test_overlay.py::test_missing_component_box_is_skipped_not_crashed",
  "tests/test_overlay.py::test_red_rectangle_lands_on_the_stored_box",
  "tests/test_pdf_loader.py::test_cached_png_matches_the_native_image",
  "tests/test_pdf_loader.py::test_decoy_guard_rejects_off_page_images",
  "tests/test_pdf_loader.py::test_detects_exactly_the_thirty_catalogue_pages",
  "tests/test_pdf_loader.py::test_every_catalogue_page_yields_a_native_resolution_diagram",
  "tests/test_pdf_loader.py::test_front_matter_is_not_a_catalogue_page",
  "tests/test_pdf_loader.py::test_reused_xref_resolves_per_page",
  "tests/test_phase3_db.py::test_boxes_lie_inside_their_diagram",
  "tests/test_phase3_db.py::test_every_label_references_a_known_part_and_page",
  "tests/test_phase3_db.py::test_every_method_is_a_known_tier",
  "tests/test_phase3_db.py::test_labels_and_components_are_paired",
  "tests/test_phase3_db.py::test_lookup_answers_part_to_page_box_method_confidence",
  "tests/test_phase3_db.py::test_multi_page_part_returns_every_page",
  "tests/test_phase3_db.py::test_normalized_view_is_resolution_independent",
  "tests/test_phase3_db.py::test_reannotation_does_not_duplicate",
  "tests/test_table_parser.py::test_document_wide_totals",
  "tests/test_table_parser.py::test_footnote_marker_is_split_off_the_german_name",
  "tests/test_table_parser.py::test_malformed_part_number_is_flagged_not_corrupted",
  "tests/test_table_parser.py::test_page_26_matches_the_printed_table",
  "tests/test_table_parser.py::test_page_52_footnotes_filtered_but_later_parts_kept",
  "tests/test_table_parser.py::test_part_numbers_are_strings"
]