U
    
W[k  ã                   @   s    d Z ddlmZmZ ddlZddlmZ ddlmZ G dd„ dej	ƒZ
dd	„ Zd
d„ ZG dd„ dej	ƒZG dd„ dejƒZG dd„ deƒZG dd„ dej	ƒZdS )z¶This module is used by test_loader to test the Trial test loading
functionality. Do NOT change the number of tests in this module.  Do NOT change
the names the tests in this module.
é    )Úabsolute_importÚdivisionN)Úunittest©ÚmergeFunctionMetadatac                   @   s   e Zd Zdd„ Zdd„ ZdS )ÚFooTestc                 C   s   d S ©N© ©Úselfr	   r	   ú;/usr/lib/python3/dist-packages/twisted/trial/test/sample.pyÚtest_foo   s    zFooTest.test_fooc                 C   s   d S r   r	   r
   r	   r	   r   Útest_bar   s    zFooTest.test_barN©Ú__name__Ú
__module__Ú__qualname__r   r   r	   r	   r	   r   r      s   r   c                    s   ‡ fdd„}|S )z„
    Decorate a function without preserving the name of the original function.
    Always return a function with the same name.
    c                     s
   ˆ | |ŽS r   r	   ©ÚargsÚkwargs©Úfnr	   r   ÚnameCollision   s    z#badDecorator.<locals>.nameCollisionr	   ©r   r   r	   r   r   ÚbadDecorator   s    r   c                    s   ‡ fdd„}t ˆ |ƒS )z=
    Decorate a function and preserve the original name.
    c                     s
   ˆ | |ŽS r   r	   r   r   r	   r   r   )   s    z$goodDecorator.<locals>.nameCollisionr   r   r	   r   r   ÚgoodDecorator%   s    r   c                   @   sD   e Zd Zdd„ ZeeƒZdd„ ZeeƒZdd„ ZeeƒZdd„ Z	d	S )
ÚDecorationTestc                 C   s   dS )z‚
        This test method is decorated in a way that gives it a confusing name
        that collides with another method.
        Nr	   r
   r	   r	   r   Útest_badDecorator0   s    z DecorationTest.test_badDecoratorc                 C   s   dS )zQ
        This test method is decorated in a way that preserves its name.
        Nr	   r
   r	   r	   r   Útest_goodDecorator8   s    z!DecorationTest.test_goodDecoratorc                 C   s   dS )z~
        This is secretly a test method and will be decorated and then renamed so
        test discovery can find it.
        Nr	   r
   r	   r	   r   ÚrenamedDecorator?   s    zDecorationTest.renamedDecoratorc                 C   s   dS )zJ
        This isn't a test, it's just here to collide with tests.
        Nr	   r
   r	   r	   r   r   G   s    zDecorationTest.nameCollisionN)
r   r   r   r   r   r   r   r   Ztest_renamedDecoratorr   r	   r	   r	   r   r   /   s   r   c                   @   s   e Zd Zdd„ Zdd„ ZdS )Ú
PyunitTestc                 C   s   d S r   r	   r
   r	   r	   r   r   Q   s    zPyunitTest.test_fooc                 C   s   d S r   r	   r
   r	   r	   r   r   U   s    zPyunitTest.test_barNr   r	   r	   r	   r   r    N   s   r    c                   @   s   e Zd Zdd„ ZdS )ÚNotATestc                 C   s   d S r   r	   r
   r	   r	   r   r   ]   s    zNotATest.test_fooN)r   r   r   r   r	   r	   r	   r   r!   Z   s   r!   c                   @   s$   e Zd Zdd„ Zdd„ Zdd„ ZdS )ÚAlphabetTestc                 C   s   d S r   r	   r
   r	   r	   r   Útest_ae   s    zAlphabetTest.test_ac                 C   s   d S r   r	   r
   r	   r	   r   Útest_bi   s    zAlphabetTest.test_bc                 C   s   d S r   r	   r
   r	   r	   r   Útest_cm   s    zAlphabetTest.test_cN)r   r   r   r#   r$   r%   r	   r	   r	   r   r"   b   s   r"   )Ú__doc__Z
__future__r   r   r   ZpyunitZtwisted.trialZtwisted.python.utilr   ZSynchronousTestCaser   r   r   r   ZTestCaser    Úobjectr!   r"   r	   r	   r	   r   Ú<module>   s   
