a
    Pf5                     @   sX   d dl Z d dlZd dlmZ ejdd Zejdd Zejdd ZG d	d
 d
ZdS )    N
FrozenListc                   C   s   g dS )N)                r	   r	   r	   Y/var/www/ai-form-bot/venv/lib/python3.9/site-packages/pandas/tests/indexes/test_frozen.pylst   s    r   c                 C   s   t | S Nr   )r   r	   r	   r
   	container   s    r   c                   C   s   t g dS )N)u   אu   בcr   r	   r	   r	   r
   unicode_container   s    r   c                   @   sl   e Zd Zdd Zdd Zdd Zdd Zd	d
 Zdd Zdd Z	dd Z
dd Zdd Zdd Zdd ZdS )TestFrozenListc                 O   sN   t d}d}tjt|d ||i | W d    n1 s@0    Y  d S )Nz#does not support mutable operationsz/'(_s)?re.(SRE_)?Pattern' object is not callablematch)recompilepytestraises	TypeError)selfargskwargsZmutable_regexmsgr	   r	   r
   check_mutable_error   s    
z"TestFrozenList.check_mutable_errorc                    sz    fdd}|  |  fdd}|  |  fdd}|  |  fdd}|  | d	}|D ]}|  t | q`d S )
Nc                      s   d d< d S )Nr   r   r	   r	   r   r	   r
   setitem!   s    z5TestFrozenList.test_no_mutable_funcs.<locals>.setitemc                      s   d dd< d S )Nr   r   r   r	   r	   r   r	   r
   setslice&   s    z6TestFrozenList.test_no_mutable_funcs.<locals>.setslicec                      s
    d= d S )Nr   r	   r	   r   r	   r
   delitem+   s    z5TestFrozenList.test_no_mutable_funcs.<locals>.delitemc                      s    dd= d S )Nr   r   r	   r	   r   r	   r
   delslice0   s    z6TestFrozenList.test_no_mutable_funcs.<locals>.delslice)extendpopremoveinsert)r   getattr)r   r   r   r   r    r!   Zmutable_methodsmethr	   r   r
   test_no_mutable_funcs    s    



z$TestFrozenList.test_no_mutable_funcsc                 C   s(   |dd }|dd }|  || d S )Nr   r   check_resultr   r   r   resultexpectedr	   r	   r
   test_slicing_maintains_type:   s    z*TestFrozenList.test_slicing_maintains_typec                 C   s   t |tsJ ||ksJ d S r   )
isinstancer   r   r,   r-   r	   r	   r
   r*   ?   s    zTestFrozenList.check_resultc                 C   s   t | t| t| d S r   )reprstrbytes)r   r   r	   r	   r
   test_string_methods_dont_failC   s    z,TestFrozenList.test_string_methods_dont_failc                 C   s   t | t| d S r   )r1   r2   )r   r   r	   r	   r
   test_tricky_containerH   s    z$TestFrozenList.test_tricky_containerc                 C   sL   |d }t |g d }| || d| }t g d| }| || d S N)r   r   r   )r   r*   r+   r	   r	   r
   test_addL   s    zTestFrozenList.test_addc                 C   s4   | }}|dg7 }|  ||dg  |  || d S )Nr   r)   )r   r   r   qrr	   r	   r
   	test_iaddU   s    
zTestFrozenList.test_iaddc                 C   s*   | d}t|g d }| || d S r6   )unionr   r*   r+   r	   r	   r
   
test_union^   s    
zTestFrozenList.test_unionc                 C   s(   | dg}tg d}| || d S )Nr   )r   r   r   r   )
differencer   r*   )r   r   r,   r-   r	   r	   r
   test_differencec   s    zTestFrozenList.test_differencec                 C   s0   t g ddg}t ddg}| || d S )N)r   r   r   r   r   r   r   )r   r=   r*   r0   r	   r	   r
   test_difference_dupeh   s    z#TestFrozenList.test_difference_dupec                 C   s>   d}t jt|d t| W d    n1 s00    Y  d S )Nz2^'str' object cannot be interpreted as an integer$r   )r   r   r   r3   )r   r   r   r	   r	   r
   %test_tricky_container_to_bytes_raisesm   s    z4TestFrozenList.test_tricky_container_to_bytes_raisesN)__name__
__module____qualname__r   r(   r.   r*   r4   r5   r7   r:   r<   r>   r?   r@   r	   r	   r	   r
   r      s   		r   )	r   r   Zpandas.core.indexes.frozenr   Zfixturer   r   r   r   r	   r	   r	   r
   <module>   s   


