£Á°èZ¨Ä…–K§‚«“ô4“ÒÙ´dîfUÙÃÅ WKbyÊ¦•êŽ…È®FÒ¿ÊÎóCozá¬S@6{Í:›œêZÌ:Š•_%:¢¾¾~;‘Ã~èŠ©ÊÇí`ÔÑ©úë™µ'5I¿fš×WO%ø9¾«¾DK|€ùÍD”Ýs]nHÕ¶ê×Ó¼ãžªéUWŸÈË%DÒÕ¬ï‘]/Åcx  ‰ï2ß]ä6G[]S£ÔÏ¯rs{úëóµmÒï#UQxo·õÞCe]"±/aÙ&Eã4ú9Jé_ÞåëdãöKë)AÞ                  ¯¹ægƒÛowÐø^d™ý½ßB7áyMä9ÜÖUã
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
<html>
B
    YI~d                 @   s   d dl mZ d dlZd dlmZ d dlmZ d dlZd dlZG dd dZ	e	 Z
G dd dZe ZG d	d
 d
ejZG dd dejZG dd dejZedkrejdd dS )    )grepN)captured_stdout)Varc               @   s   e Zd Zdd ZdS )Dummy_searchenginec             C   s   | j S )N)_pat)self r   @/opt/alt/python37/lib64/python3.7/idlelib/idle_test/test_grep.pygetpat   s    zDummy_searchengine.getpatN)__name__
__module____qualname__r
   r   r   r   r	   r      s   r   c               @   s(   e Zd ZejjZedZeZ	dd Z
dS )
Dummy_grepFc             C   s   d S )Nr   )r   r   r   r	   close"   s    zDummy_grep.closeN)r   r   r   r   Z
GrepDialoggrep_itr   Zrecvarsearchengineenginer   r   r   r   r	   r      s   r   c               @   sD   e Zd Zedd Zedd Zdd Zdd Zd	d
 Zdd Z	dS )FindfilesTestc             C   s"   t jt| _t j| j| _d S )N)ospathrealpath__file__dirname)clsr   r   r	   
setUpClass*   s    zFindfilesTest.setUpClassc             C   s   | ` | `d S )N)r   r   )r   r   r   r	   tearDownClass/   s    zFindfilesTest.tearDownClassc          	   C   sD   t  }ttddd}W d Q R X | |g  | d|  d S )NZ
invaliddirz*.*FZinvalid)r   listr   	findfilesassertEqualassertIngetvalue)r   sfilelistr   r   r	   test_invaliddir3   s    zFindfilesTest.test_invaliddirc             C   sV   t j}t }t| j d}t|tj|d}| tj	tj|| t| d S )Nztest_grep.pyF)
r   r   r   getcwdchdirr   r   curdirr   join)r   ffZsave_cwdfilenamer"   r   r   r	   test_curdir9   s    zFindfilesTest.test_curdirc             C   s   t j}tj| jd}t|| jdd}| t|d | | j	| | 
|| t|| jdd}| t|d | 
| j	| | || t|| jdd}| t|d | 
| j	| d S )Nz
README.txtz*.pyF
   z*.txtr   zgrep.*)r   r   r   r   r'   r   assertGreaterlenr   r   assertNotInZassertNotEqualr   )r   r(   Zreadmer"   r   r   r	   	test_baseC   s    zFindfilesTest.test_basec             C   s   t j}tj| j}tj|d}d}t|||d}t|}| |d | 	|| | 
| j| t|||d}| t|| | 	|| | 	| j| tj|}t||dd}| 	| j| d S )Nzgrep.pyz*.pyF   T)r   r   r   r   r   r'   r   r-   r,   r   r.   r   )r   r(   parentZgrepfilepatr"   Zparent_sizer   r   r	   test_recurseY   s     zFindfilesTest.test_recurseN)
r   r   r   classmethodr   r   r#   r*   r/   r3   r   r   r   r	   r   (   s   
r   c               @   s$   e Zd Zdd Zdd Zdd ZdS )Grep_itTestc          	   C   sF   |t j_t }t t|t W d Q R X | 	d}|
  |S )N
)_grepr   r   r   r   recompiler   r    splitpop)r   r2   r!   linesr   r   r	   report{   s    zGrep_itTest.reportc             C   sB   d}|  |}| t|d | ||d  | |d d d S )Nzxyz*xyz*xyz*xyz*xyz*xyz*xyz*   r      zNo hits.)r=   r   r-   r   )r   r2   r<   r   r   r	   test_unfound   s
    
zGrep_itTest.test_unfoundc             C   sf   d}|  |}| t|d | ||d  | d|d  | d|d  | |d d	 d S )
Nz<""" !Changing this line will break Test_findfile.test_found!   r   zpy: 1:r?   2      z(Hint:)r=   r   r-   r   Z
assertTrue
startswith)r   r2   r<   r   r   r	   
test_found   s    
zGrep_itTest.test_foundN)r   r   r   r=   r@   rF   r   r   r   r	   r5   v   s   r5   c               @   s   e Zd ZdS )Default_commandTestN)r   r   r   r   r   r   r	   rG      s   rG   __main__r>   )	verbosity)Zidlelibr   ZunittestZtest.supportr   Zidlelib.idle_test.mock_tkr   r   r8   r   r   r   r7   ZTestCaser   r5   rG   r   mainr   r   r   r	   <module>   s   
N