Fix the critical 5x3 bordered table test to match acceptance criteria (5 rows × 3 columns = row_ys.len() == 6, col_xs.len() == 4). Add missing unit tests: - test_detect_nested_rectangles: tests handling of nested rectangles - test_detect_disjoint_tables: tests detection of multiple disjoint tables Add Criterion benchmark for table detection performance. Results: ~772 µs for 1000 segments (well under 5 ms requirement). All 35 table module tests pass. Acceptance criteria: - ✅ Detector emits GridCandidate for every closed grid of >= 4 cells - ✅ Critical test: 5x3 bordered table with row_ys.len()==6, col_xs.len()==4 - ✅ Unit tests: single rectangle, nested rectangles, mixed text+rules, glyph-path noise - ✅ Public TableDetector::detect_line_based(&PageContext) -> Vec<GridCandidate> - ✅ Benchmark: < 5 ms on 1000-segment page Refs: pdftract-88sk, plan section 7.2 line 2571 Co-Authored-By: Claude Code <noreply@anthropic.com>
1 line
41 B
Text
1 line
41 B
Text
c251db8228b93881476bb9dcdeb2748fa9be1f23
|