Skip to content

test: 테스트 추가 및 섹션 헤더 선택 버그 수정 - #35

Merged
dnjsgkfka merged 2 commits into
mainfrom
fix/prev-page-section-header
Oct 22, 2026
Merged

dnjsgkfka merged 2 commits into
mainfrom
fix/prev-page-section-header

Conversation

@dnjsgkfka

Copy link
Copy Markdown
Member

배경

테스트를 추가하고, 그 과정에서 드러난 섹션 헤더 선택 버그를 수정

변경 내용

1. 제출 명세 대응 테스트 추가 (0e4967b)

  • tests/specification/ — pytest 51개 함수(매개변수 포함 78 케이스)
  • 기존 tests/는 그대로 유지

2. 이전 페이지 섹션 제목 선택 수정 (83aa945)

현상 — 표의 섹션 제목을 이전 페이지에서 찾을 때 그 페이지의 맨 위 제목을 반환했다.

원인 — context.py::find_section_header가 (page_no, -cy)로 정렬한 뒤 마지막 원소를 선택한다. TOPLEFT 좌표에서는 cy가 클수록 페이지 아래쪽이므로, -cy 오름차순의 마지막 원소는 해당 페이지의 최상단 제목이 된다. 코드 주석도 반대로 서술돼 있었다.

수정 — 정렬 키를 (page_no, cy) 오름차순으로 바꿔 마지막 원소가 (최대 page_no, 최대 cy) = 표 바로 앞에 나온 마지막 제목이 되게 했다. 주석도 정정.

회귀 테스트 — tests/test_context_section_header.py 7건 추가
(이전 페이지 하단 제목 선택, 이전 페이지 다중 시 최근접 우선, 같은 페이지 우선순위, 같은 페이지에서 표 아래 제목 무시, 제목 없음, page_no=-1 무시)

검증

구분 수집 통과 실패 건너뜀
베이스라인 (0e4967b) 116 101 4 11
이 PR 123 109 3 11

환경: Windows 11 / Python 3.14.5, docling 미설치 경량 구성
(pytest beautifulsoup4 tiktoken langchain-core llama-index-core + --no-deps -e .)

test_qa23_previous_page_last_header_is_selected PASS로 전환. 다른 테스트 회귀 없음.

남은 실패 (별도 이슈)

Fixes #32

@dagshub

dagshub Bot commented Oct 22, 2026

Copy link
Copy Markdown

@dnjsgkfka
dnjsgkfka merged commit d8837f2 into main Oct 22, 2026
3 of 7 checks passed
@dnjsgkfka
dnjsgkfka deleted the fix/prev-page-section-header branch October 22, 2026 09:01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

이전 페이지 섹션 제목을 최상단이 아닌 최하단 기준으로 선택

1 participant