a
    [ŠÝgØ  ã                   @   sL   d dl m Z  ddlmZ G dd„ de ƒZdd„ Zdd	„ ZG d
d„ deƒZdS )é    )Úgreenleté   )ÚTestCasec                   @   s4   e Zd ZdZdd„ Zdd„ Zdd„ Zdd	„ ZeZdS )
ÚgenletNc                 O   s   || _ || _d S ©N)ÚargsÚkwds)Úselfr   r   © r
   úk/var/www/html/cobodadashboardai.evdpl.com/venv/lib/python3.9/site-packages/greenlet/tests/test_generator.pyÚ__init__   s    zgenlet.__init__c                 C   s   | j \}|| ji | j¤Ž d S r   )Úfnr   r   )r	   r   r
   r
   r   Úrun   s    z
genlet.runc                 C   s   | S r   r
   )r	   r
   r
   r   Ú__iter__   s    zgenlet.__iter__c                 C   s"   t  ¡ | _|  ¡ }| r|S t‚d S r   )r   Ú
getcurrentÚparentÚswitchÚStopIteration)r	   Úresultr
   r
   r   Ú__next__   s
    
zgenlet.__next__)	Ú__name__Ú
__module__Ú__qualname__r   r   r   r   r   Únextr
   r
   r
   r   r      s   r   c                 C   s:   t  ¡ }t|tƒs*|d u r"tdƒ‚|j}q|j | ¡ d S )Nzyield outside a genlet)r   r   Ú
isinstancer   ÚRuntimeErrorr   r   )ÚvalueÚgr
   r
   r   ÚYield   s    
r   c                    s   G ‡ fdd„dt ƒ}|S )Nc                       s   e Zd Z” fZdS )zgenerator.<locals>.GeneratorN)r   r   r   r   r
   ©Úfuncr
   r   Ú	Generator(   s   r!   )r   )r    r!   r
   r   r   Ú	generator'   s    r"   c                   @   s   e Zd Zdd„ ZdS )ÚGeneratorTestsc                    sV   g ‰ ‡ fdd„}t |ƒ}tdƒD ]}|dƒD ]}ˆ  |¡ q,q |  ˆ dg d¢ ¡ d S )Nc                    s$   t | ƒD ]}ˆ  |¡ t|ƒ qd S r   )ÚrangeÚappendr   )ÚnÚi©Úseenr
   r   r   3   s    
z(GeneratorTests.test_generator.<locals>.gé   é   )
r   r   r   r   é   r,   r*   r*   é   r-   )r"   r$   r%   ÚassertEqual)r	   r   Ú_Újr
   r(   r   Útest_generator0   s    zGeneratorTests.test_generatorN)r   r   r   r1   r
   r
   r
   r   r#   /   s   r#   N)r   Ú r   r   r   r"   r#   r
   r
   r
   r   Ú<module>   s
   	