✨ 기능 설명
첨삭 모듈의 스키마, Generator, Repository, Service, RAG 파이프라인에 대한 유닛 테스트를 작성합니다.
🎯 개발 목적
- 각 컴포넌트의 정상 동작 및 에지 케이스 검증
- 리팩토링 시 안전망 확보
- CI 파이프라인에서 자동 검증
✅ 작업 내용
1. 스키마 테스트 (tests/test_features/test_correction/test_schemas.py)
2. Generator 테스트 (tests/test_features/test_correction/test_generator.py)
3. Repository 테스트 (tests/test_features/test_correction/test_repository.py)
4. Service 테스트 (tests/test_features/test_correction/test_service.py)
5. RAG 테스트 (tests/test_features/test_correction/test_rag.py)
🔗 관련 이슈
📌 비고
tests/test_features/test_portfolio/ 테스트 패턴 참조
- LLM 호출은 모킹 처리 (
unittest.mock.patch 또는 pytest-mock)
- DB 테스트는 asyncpg 테스트 풀 또는 모킹 사용
✨ 기능 설명
첨삭 모듈의 스키마, Generator, Repository, Service, RAG 파이프라인에 대한 유닛 테스트를 작성합니다.
🎯 개발 목적
✅ 작업 내용
1. 스키마 테스트 (
tests/test_features/test_correction/test_schemas.py)CorrectionLine생성 및 검증"reduce","keep","emphasize"중 하나인지CorrectionField필드명 Literal 검증 ("description","contributions","achievements","insights")CorrectionOutput전체 구조 검증CorrectionStatusEnum 값 검증2. Generator 테스트 (
tests/test_features/test_correction/test_generator.py)_validate)3. Repository 테스트 (
tests/test_features/test_correction/test_repository.py)create()→ 세션 생성 확인get_by_id()→ 조회 및 None 반환 케이스update_status()→ 상태 변경 확인update_result()→ JSONB 저장/조회update_company_insight()→ 기업 분석 저장update_emphasis_points()→ 강조 포인트 저장delete()→ 삭제 확인save_rag_data()/get_rag_data()→ RAG 데이터 CRUD4. Service 테스트 (
tests/test_features/test_correction/test_service.py)create_correction()— 세션 생성 흐름start_rag()— 상태 전이 (NOT_STARTED → DOING_RAG)_run_rag()— RAG 성공/실패 시나리오start_generation()— 상태 전이 (COMPANY_INSIGHT → GENERATING)_run_generation()— 첨삭 생성 성공/실패 시나리오5. RAG 테스트 (
tests/test_features/test_correction/test_rag.py)RAGPipeline오케스트레이션 흐름 (LLM 모킹)🔗 관련 이슈
📌 비고
tests/test_features/test_portfolio/테스트 패턴 참조unittest.mock.patch또는pytest-mock)