3 Õì2ad ã @ sª d dl mZ d dlZd dlmZ d dlmZ d dlZG dd„ dƒZeƒ Z G dd„ dƒZ e ƒ ZG d d „ d ejƒZ G dd„ dejƒZG d d„ dejƒZedkr¦ejdd� dS )é )Ú GrepDialogN)Úcaptured_stdout)ÚVarc @ s e Zd Zdd„ ZdS )ÚDummy_searchenginec C s | j S )N)Ú_pat)Úself© r ú./opt/alt/python36/lib64/python3.6/test_grep.pyÚgetpat s zDummy_searchengine.getpatN)Ú__name__Ú __module__Ú__qualname__r r r r r r s r c @ s, e Zd ZejZejZedƒZeZ dd„ Z dS )Ú Dummy_grepFc C s d S )Nr )r r r r Úclose" s zDummy_grep.closeN)r r r r Úgrep_itZ findfilesr ZrecvarÚsearchengineÚenginer r r r r r s r c @ s e Zd ZdS )Ú FindfilesTestN)r r r r r r r r ( s r c @ s$ e Zd Zdd„ Zdd„ Zdd„ ZdS )ÚGrep_itTestc C sF |t j_tƒ �}t jtj|ƒtƒ W d Q R X |jƒ j dƒ}|j ƒ |S )NÚ )Úgrepr r r r ÚreÚcompileÚ__file__ÚgetvalueÚsplitÚpop)r ÚpatÚsÚlinesr r r Úreport5 s zGrep_itTest.reportc C sF dd }| j |ƒ}| jt|ƒdƒ | j||d ƒ | j|d dƒ d S )Nzxyz*é é r é zNo hits.)r ÚassertEqualÚlenÚassertIn)r r r r r r Útest_unfound= s zGrep_itTest.test_unfoundc C sf d}| j |ƒ}| jt|ƒdƒ | j||d ƒ | jd|d ƒ | jd|d ƒ | j|d jd ƒƒ d S ) Nz<""" !Changing this line will break Test_findfile.test_found!é r zpy: 1:r# Ú2é é z(Hint:)r r$ r% r&