B
    ÐH/\µ  ã               @   sF   d dl Z d dlmZ d dlmZ G dd„ dejƒZedkrBe 	¡  dS )é    N)Ú	Semaphorec               @   s$   e Zd Zdd„ Zdd„ Zdd„ ZdS )Ú	Testiwaitc             C   s:   t ƒ }t ƒ }t |j¡ tt ||f¡ƒ}|  ||¡ d S )N)r   ÚgeventÚspawnÚreleaseÚnextÚiwaitÚassertEqual)ÚselfÚsem1Úsem2Zready© r   ú7lib/python3.7/site-packages/gevent/tests/test__iwait.pyÚtest_noiter   s
    zTestiwait.test_noiterc          	   C   sJ   t ƒ }t |j¡}tj|fdd}|  |t|ƒ¡ W d Q R X | ¡  d S )Ng{®Gáz„?)Ztimeout)r   r   r   r   r   r	   r   Úget)r
   ZsemÚletÚiteratorr   r   r   Útest_iwait_partial   s
    zTestiwait.test_iwait_partialc          	   C   sn   t ƒ }t ƒ }t |j¡}t ||f¡&}|  |t|ƒ¡ |  | ¡ d¡ W d Q R X |  | ¡ d¡ | ¡  d S )Né   r   )	r   r   r   r   r   r	   r   Z	linkcountr   )r
   r   r   r   r   r   r   r   Útest_iwait_nogarbage   s    zTestiwait.test_iwait_nogarbageN)Ú__name__Ú
__module__Ú__qualname__r   r   r   r   r   r   r   r      s   
r   Ú__main__)
r   Zgevent.testingZtestingZ	greentestZgevent.lockr   ZTestCaser   r   Úmainr   r   r   r   Ú<module>   s
   #