Your IP : 216.73.216.60


Current Path : /opt/alt/python38/lib64/python3.8/test/__pycache__/
Upload File :
Current File : //opt/alt/python38/lib64/python3.8/test/__pycache__/test_contains.cpython-38.pyc

U

i�f�
�@shddlmZddlZGdd�d�ZGdd�de�ZGdd�de�ZGd	d
�d
ej�Zedkrde�	�dS)�)�dequeNc@seZdZdd�ZdS)�base_setcCs
||_dS�N��el��selfr�r	�7/opt/alt/python38/lib64/python3.8/test/test_contains.py�__init__szbase_set.__init__N)�__name__�
__module__�__qualname__rr	r	r	r
rsrc@seZdZdd�ZdS)�mysetcCs
|j|kSrrrr	r	r
�__contains__
szmyset.__contains__N�rr
rrr	r	r	r
r	src@seZdZdd�ZdS)�seqcCs|jg|Srr)r�nr	r	r
�__getitem__szseq.__getitem__N)rr
rrr	r	r	r
r
src@s,eZdZdd�Zdd�Zdd�Zdd�Zd	S)
�TestContainscs�td��td�}td�}|�d|�|�d|�|�d|�|�d|�|�t�fdd��|�t�fdd��|�dd�|�dd�|�d	d	�|�d	d�|�td
d��dS)N�rcsd�kS�Nrr	r	��ar	r
�<lambda>�z0TestContains.test_common_tests.<locals>.<lambda>csd�kSrr	r	rr	r
rr�c�abc�d�cSsddkS)Nrr	r	r	r	r
r$r)rrr�assertIn�assertNotIn�assertRaises�	TypeError)r�brr	rr
�test_common_testsszTestContains.test_common_testscCs�td�}|D]}|�||�q|�d|�|�||�t|�}|D]}|�||�qB|�d|�|�||�Gdd�d�}|�|�|j�dS)N�
�c@s$eZdZdZeed��Zdd�ZdS)z:TestContains.test_builtin_sequence_types.<locals>.Deviant1z�Behaves strangely when compared

            This class is designed to make sure that the contains code
            works when the list is modified during the check.
            �cSs0|dkr,|j�d�|j�d�|j�d�dS)N��
�r)�aList�remove�r�otherr	r	r
�__eq__;s
zATestContains.test_builtin_sequence_types.<locals>.Deviant1.__eq__N)rr
r�__doc__�list�ranger,r0r	r	r	r
�Deviant14sr4)r3r r!�tupler,)rr�ir4r	r	r
�test_builtin_sequence_types&sz(TestContains.test_builtin_sequence_typescCs�Gdd�dt�}td�ddd|�f}tttjtttf}|D]B}||�}|D]}|�	||�qJ|�
|||�k�|�
||k�q:dS)Nc@seZdZdd�Zdd�ZdS)z6TestContains.test_nonreflexive.<locals>.MyNonReflexivecSsdS�NFr	r.r	r	r
r0Isz=TestContains.test_nonreflexive.<locals>.MyNonReflexive.__eq__cSsdS)N�r	�rr	r	r
�__hash__Ksz?TestContains.test_nonreflexive.<locals>.MyNonReflexive.__hash__N)rr
rr0r;r	r	r	r
�MyNonReflexiveHsr<�nanrr)�object�floatr2r5�dict�fromkeys�set�	frozensetrr Z
assertTrue)rr<�valuesZconstructors�constructorZ	container�elemr	r	r
�test_nonreflexiveDszTestContains.test_nonreflexivecsdGdd�dt�}|�}Gdd�d|�}|��|�d|k�|�dt��k�|�t�fdd��dS)Nc@seZdZdd�ZdS)z4TestContains.test_block_fallback.<locals>.ByContainscSsdSr8r	r.r	r	r
rZszATestContains.test_block_fallback.<locals>.ByContains.__contains__Nrr	r	r	r
�
ByContainsYsrHc@seZdZdZdd�ZdZdS)z7TestContains.test_block_fallback.<locals>.BlockContainsa�Is not a container

            This class is a perfectly good iterable (as tested by
            list(bc)), as well as inheriting from a perfectly good
            container, but __contains__ = None prevents the usual
            fallback to iteration in the container protocol. That
            is, normally, 0 in bc would fall back to the equivalent
            of any(x==0 for x in bc), but here it's blocked from
            doing so.
            cssdSrr	r:r	r	r
�__iter__hsz@TestContains.test_block_fallback.<locals>.BlockContains.__iter__N)rr
rr1rIrr	r	r	r
�
BlockContains]s
rJrcsd�kS)Nrr	r	�Zbcr	r
rorz2TestContains.test_block_fallback.<locals>.<lambda>)r>ZassertFalser2r"r#)rrHrrJr	rKr
�test_block_fallbackWsz TestContains.test_block_fallbackN)rr
rr%r7rGrLr	r	r	r
rsr�__main__)
�collectionsrZunittestrrrZTestCaserr�mainr	r	r	r
�<module>s`