
    i                     h    d Z ddlZej                  j                  dd       ddlmZ  G d d      Zy)u}   
test_planned_check.py — planned_check verifier 테스트
작성자: 모리건 (개발3팀 테스터)
태스크: task-1917
    Nz /home/jay/workspace/teams/shared)planned_checkc                   :    e Zd ZdedefdZd Zd Zd Zd Zd Z	y	)
TestPlannedCheckVerifiertask_idcontentc                 z    |dz  }|j                  dd       || dz  j                  |d       t        |      S )NreportsT)parentsexist_okz.mdzutf-8)encoding)mkdir
write_textstr)selftmp_pathr   r   reports_dirs        I/home/jay/workspace/.worktrees/task-2116-dev1/tests/test_planned_check.py_make_reportz%TestPlannedCheckVerifier._make_report   sH    *$6	'#	&227W2M;    c                     d}| j                  |d|      }t        j                  d|      }|d   dk(  sJ |d   dk(  sJ t        |d         dk(  sJ d	|d   d
   v sJ y)u(   planned 항목 포함 보고서 → FAILu   # 보고서

## 수정 파일별 검증 상태

| 파일 | 변경 내용 | grep 검증 | 상태 |
|------|-----------|-----------|------|
| a.py | 변경A | grep "X" OK | verified |
| b.py | 변경B | 없음 | planned |
z
task-test1r   statusFAILplanned_count   planned_itemszb.pyr   Nr   r   verifylenr   r   r   rdresults        r   test_fail_with_planned_itemsz5TestPlannedCheckVerifier.test_fail_with_planned_items   s    	 xw?%%lCh6)))o&!+++6/*+q00003333r   c                     d}| j                  |d|      }t        j                  d|      }|d   dk(  sJ |d   dk(  sJ y)	u   모든 항목 verified → PASSu   # 보고서

## 수정 파일별 검증 상태

| 파일 | 변경 내용 | grep 검증 | 상태 |
|------|-----------|-----------|------|
| a.py | 변경A | grep "X" OK | verified |
| b.py | 변경B | grep "Y" OK | verified |
z
task-test2r   r   PASSr   r   Nr   r   r   r    s        r   test_pass_with_all_verifiedz4TestPlannedCheckVerifier.test_pass_with_all_verified'   sW    	 xw?%%lCh6)))o&!+++r   c                 p    d}| j                  |d|      }t        j                  d|      }|d   dk(  sJ y)u#   테이블 없는 보고서 → SKIPu   # 보고서

간단한 내용.
z
task-test3r   r   SKIPNr&   r    s        r   test_skip_no_tablez+TestPlannedCheckVerifier.test_skip_no_table8   s@    6xw?%%lCh6)))r   c                 X    t        j                  dt        |            }|d   dk(  sJ y)u   보고서 없음 → SKIPztask-nonexistentr   r   r)   N)r   r   r   )r   r   r"   s      r   test_skip_no_reportz,TestPlannedCheckVerifier.test_skip_no_report?   s,    %%&8c(mTh6)))r   c                     d}| j                  |d|      }t        j                  d|      }|d   dk(  sJ |d   dk(  sJ t        |d         dk(  sJ y	)
u8   planned 항목 여러 건 → FAIL + 정확한 카운트u  # 보고서

## 수정 파일별 검증 상태

| 파일 | 변경 내용 | grep 검증 | 상태 |
|------|-----------|-----------|------|
| a.py | 변경A | 없음 | planned |
| b.py | 변경B | 없음 | planned |
| c.py | 변경C | grep "Z" OK | verified |
z
task-test4r   r   r   r      r   Nr   r    s        r   test_fail_multiple_plannedz3TestPlannedCheckVerifier.test_fail_multiple_plannedD   so    
 xw?%%lCh6)))o&!+++6/*+q000r   N)
__name__
__module____qualname__r   r   r#   r'   r*   r,   r/    r   r   r   r      s.     c  C  4&,"**
1r   r   )__doc__syspathinsert	verifiersr   r   r3   r   r   <module>r9      s1     5 6 #H1 H1r   