B
    u9aŸ  ã               @   sˆ   d Z ddlZddlZddlZddlmZ ddlmZ eedƒsHe 	d¡‚eedƒs\e 	d¡‚G d	d
„ d
eƒZ
dd„ Zedkr„e ¡  dS )z/This test checks for correct wait3() behavior.
é    N)ÚForkWait)Úreap_childrenÚforkzos.fork not definedÚwait3zos.wait3 not definedc               @   s   e Zd Zdd„ ZdS )Ú	Wait3Testc             C   s|   t  ¡ d }x6t  ¡ |krBt tj¡\}}}||kr6P t  d¡ qW |  ||¡ |  |dd|d@ |d? f ¡ |  |¡ d S )Ng      $@gš™™™™™¹?r   zcause = %d, exit = %déÿ   é   )ÚtimeZ	monotonicÚosr   ÚWNOHANGZsleepZassertEqualZ
assertTrue)ÚselfZcpidZdeadlineZspidÚstatusZrusage© r   ú /usr/lib/python3.7/test_wait3.pyÚ	wait_impl   s    zWait3Test.wait_implN)Ú__name__Ú
__module__Ú__qualname__r   r   r   r   r   r      s   r   c               C   s
   t ƒ  d S )N)r   r   r   r   r   ÚtearDownModule"   s    r   Ú__main__)Ú__doc__r
   r	   ZunittestZtest.fork_waitr   Ztest.supportr   ÚhasattrZSkipTestr   r   r   Úmainr   r   r   r   Ú<module>   s   



