
    iP                         d Z ddlZddlmc mZ ddlZej                  j                  dd       ddl
mZ dedefdZdededefd	Zd
 Zd Zd Zy)u   
test_symbol_existence_check.py - symbol_existence_check verifier 테스트

이리스(Iris) dev1팀 프론트엔드 개발자 작성
task-1882
    Nz /home/jay/workspace/teams/shared)verifycontentreturnc                     | dz  dz  }|j                  dd       || dz  }|j                  |d       t        |      S )u   보고서 파일 생성 헬퍼.memoryreportsTparentsexist_okz.mdutf-8encoding)mkdir
write_textstr)base_dirtask_idr   reports_dirreport_paths        8/home/jay/workspace/tests/test_symbol_existence_check.py_create_reportr      sR    X%	1KdT27)3/K7W5{    rel_pathc                     | |j                  d      z  }|j                  j                  dd       |j                  |d       t	        |      S )u   Python 파일 생성 헬퍼./Tr	   r   r   )lstripparentr   r   r   )r   r   r   	full_paths       r   _create_python_filer      sK    8??3//I4$773y>r   c                    d}t        | dz  dz  dz  dz  dz  dz  dz        }d	}t        | |d
       t        | |z        }d| d| d}t        | ||       t        |t        |             }|d   }d}||k(  }	|	st	        j
                  d|	fd||f      t	        j                  |      t	        j                  |      dz  }
t	        j                  d|d    d|d          dz   d|
iz  }t        t	        j                  |            dx}x}	}y)uA   보고서에 def verify 언급 + 실제 파일에 존재 → PASSztask-test-symbol-9901homejay	workspaceteamsshared	verifierszmy_check.pyz5home/jay/workspace/teams/shared/verifiers/my_check.pyz3def verify(task_id):
    return {'status': 'PASS'}
# c    작업 보고서

## 수정 파일

| 파일 경로 | 변경 내용 |
|-----------|-----------|
| u    | verify 함수 추가 |

## 구현 내용

다음과 같이 verify 함수를 구현하였습니다:

```python
def verify(task_id):
    return {'status': 'PASS'}
```
r   workspace_rootstatusPASS==z%(py1)s == %(py4)spy1py4zExpected PASS, got : details
>assert %(py6)spy6N)
r   r   r   r   
@pytest_ar_call_reprcompare	_saferepr_format_assertmsgAssertionError_format_explanation)tmp_pathr   py_file_pathpy_relabs_pathreport_contentresult@py_assert0@py_assert3@py_assert2@py_format5@py_format7s               r   test_pass_symbol_existsrH   *   s   %G x&(50;>H8SVaadqqrLDF&*ab 8f$%HG9 % * 
N" 8Wn5GCMBF(dvdv%dddvddddddvddd)<VH=M<NbQWXaQbPc'ddddddddr   c                    d}d}t        | |d       t        | |z        }d| d| d}t        | ||       t        |t        |             }|d   }d	}||k(  }|st	        j
                  d
|fd||f      t	        j                  |      t	        j                  |      dz  }	t	        j                  d|d    d|d          dz   d|	iz  }
t        t	        j                  |
            dx}x}}dj                  |d         }g }d}||v }|}|sd}||v }|}|sXt	        j
                  d|fd||f      t	        j                  |      dt        j                         v st	        j                  |      rt	        j                  |      nddz  }dd|iz  }|j                  |       |st	        j
                  dfd|f      t	        j                  |      dt        j                         v st	        j                  |      rt	        j                  |      nddz  }dd|iz  }|j                  |       t	        j                  |d       i z  }d!d"|iz  }t        t	        j                  |            dx}x}x}x}x}}y)#u7   보고서에 있지만 파일에 없는 심볼 → FAILztask-test-symbol-9902z8home/jay/workspace/teams/shared/verifiers/empty_check.pyu   # 빈 파일
x = 1
r'   r(   u    | nonexistent_function 추가 |

## 구현 내용

다음과 같이 nonexistent_function 함수를 구현하였습니다:

```python
def nonexistent_function(task_id):
    return {'status': 'PASS'}
```
r)   r+   FAILr-   r/   r0   zExpected FAIL, got r3   r4   r5   r6   N MISSINGnonexistent_functioninz%(py3)s in %(py5)sdetails_strpy3py5%(py7)spy7z%(py10)s in %(py12)spy10py12%(py14)spy14   zassert %(py17)spy17)r   r   r   r   r7   r8   r9   r:   r;   r<   join@py_builtinslocals_should_repr_global_nameappend_format_boolop)r=   r   r?   r@   rA   rB   rC   rD   rE   rF   rG   rQ   @py_assert1@py_assert4@py_assert9@py_assert11@py_format6@py_format8@py_format13@py_format15@py_format16@py_format18s                         r   test_fail_symbol_missingro   M   s   %G HF&*AB8f$%HG9 % * 
N" 8Wn5GCMBF(dvdv%dddvddddddvddd)<VH=M<NbQWXaQbPc'dddddddd((6),-KL9L9#L'=L'='LLLLL9LLL9LLLLLLLLLLLLLLLL'=LLL'=LLLLLLLLLLLLLLLLLLLLLLLr   c                 t   d}d| d}t        | ||       t        |t        |             }|d   }d}||k(  }|st        j                  d|fd||f      t        j
                  |      t        j
                  |      d	z  }t        j                  d
|d    d|d          dz   d|iz  }t        t        j                  |            dx}x}}dj                  |d         }	g }
d}||	v }|}|s%d}||	v }|}|sd}|	j                  } |       }||v }|}|st        j                  d|fd||	f      t        j
                  |      dt        j                         v st        j                  |	      rt        j
                  |	      nddz  }dd|iz  }|
j                  |       |sBt        j                  dfd|	f      t        j
                  |      dt        j                         v st        j                  |	      rt        j
                  |	      nddz  }dd|iz  }|
j                  |       |st        j                  dfdf      t        j
                  |      dt        j                         v st        j                  |	      rt        j
                  |	      ndt        j
                        t        j
                  |      dz  }d d!|iz  }|
j                  |       t        j                  |
d"      i z  }d#d$|iz  }t        t        j                  |            dx}x}
x}x}x}x}x}x}x}}y)%u1   보고서에 수정 파일 섹션 없음 → SKIPztask-test-symbol-9903r'   u    작업 보고서

## 개요

이 작업에서는 특별한 파일 수정이 없었습니다.

## 구현 내용

개요만 작성하였습니다.
r)   r+   SKIPr-   r/   r0   zExpected SKIP, got r3   r4   r5   r6   NrK   u   수정 파일u   섹션sectionrN   rP   rQ   rR   rU   rV   rW   rX   r[   r\   )zJ%(py17)s in %(py23)s
{%(py23)s = %(py21)s
{%(py21)s = %(py19)s.lower
}()
})r^   py19py21py23z%(py25)spy25r]   zassert %(py28)spy28)r   r   r   r7   r8   r9   r:   r;   r<   r_   lowerr`   ra   rb   rc   rd   )r=   r   rA   rB   rC   rD   rE   rF   rG   rQ   re   rf   rg   rh   @py_assert16@py_assert20@py_assert22@py_assert18ri   rj   rk   rl   @py_format24@py_format26@py_format27@py_format29s                             r   #test_skip_no_modified_files_sectionr   q   s   %GG9 	% 	N 8Wn5GCMBF(dvdv%dddvddddddvddd)<VH=M<NbQWXaQbPc'dddddddd((6),-Kh?h?k)hXhX-Dh	hU`UfUfhUfUhh	UhHhhhhh?khhh?hhhhhhkhhhkhhhhhhhhXhhhXhhhhhhhhhhhhhhhh	Uhhhh	hhhhhhU`hhhU`hhhUfhhhUhhhhhhhhhhhhhhhhr   )__doc__builtinsr`   _pytest.assertion.rewrite	assertionrewriter7   syspathinsert verifiers.symbol_existence_checkr   r   r   r   rH   ro   r    r   r   <module>r      sj     
 5 6 3s s C # #  eF!MHir   