
    i                     <    d dl Z d dlZ G d de j                  ZdS )    Nc                   2    e Zd Zd Zd Zd Zd Zd Zd ZdS )TestCaselessdictc                     t           j        j        }g d} ||          }|g dk    sJ  ||d          }|g dk    sJ  ||d          }|g dk    sJ  ||d          }|g dk    sJ d S )N)DTENDDTSTAMPDTSTARTUIDSUMMARYLOCATION)r   r   r   r   r
   r	   )r
   r   r   )r
   r   r   r   r   r	   )r	   r   r   )r	   r   r   r   r   r
   )r	   r   r   RRULEEXDATE)	icalendarcaselessdictcanonsort_keys)selfr   keysouts       a/root/projects/butler/venv/lib/python3.11/site-packages/icalendar/tests/test_unit_caselessdict.py test_caselessdict_canonsort_keysz1TestCaselessdict.test_caselessdict_canonsort_keys   s    "/>LLLnT""SSSSSSSn
 
 SSSSSSSn
 
 SSSSSSSnT#QRRSSSSSSSSS    c           	          t           j        j        }ddddddgddd	id
d} ||          }|ddddd	ifdddgfddddgk    sJ  ||d          }|sJ dddddd	ifdddgfdddg            d S )N   at      @               xy      ?)icalendr)r&   r   )r%   r   r*   r(   )r$   r   )r'   r   )r)   r    )r+   r#   )r$   r%   r&   )r   r   canonsort_items)r   r,   r*   r   s       r   !test_caselessdict_canonsort_itemsz2TestCaselessdict.test_caselessdict_canonsort_items&   s    #0@ Qs	
 	
 oa  3*1a&M	
 	
 	
 	
 	
 oa11 		
 		
3*1a&M	
 		
 		
 		
 		
 		
r   c                 z    t           j        j        } |dd          }|                                }||k    sJ d S )Nval1val2key1key2)r   r   CaselessDictcopy)r   r4   original_dictcopied_dicts       r   test_caselessdict_copyz'TestCaselessdict.test_caselessdict_copyL   sI     -:$&v>>>#((**++++++r   c                    t           j        j        } |dd          }| |ddd          k    sJ |d         dk    sJ |d         dk    sJ |                    d          sJ d|d<   |d	         dk    sJ |                    d	d
          dk    sJ |                    dd          dk    sJ |d         dk    sJ |                    d          dk    sJ |                    d	d          dk    sJ |                    dd          dk    sJ d|v sJ |d= d|vsJ |                    dddd           |d         dk    sJ t          |                                          }|g dk    sJ d S )Nr/   r0   r1   )KEY2KEY1r2   r;   val3KEY3key3FOUNDkey4z	NOT FOUNDval5val6val7)key5KEY6KEY5key6)r;   r:   r=   rF   rE   )	r   r   r4   has_key
setdefaultgetupdatesortedr   )r   r4   ncdr   s       r   test_CaselessDictz"TestCaselessdict.test_CaselessDictT   s    -:lV444llFF#C#CDDDDDD6{f$$$$6{f$$$${{6"""""F6{f$$$$~~fg..&8888~~fk22kAAAA6{k))))wwv&((((wwv{++v5555wwv{++{::::}}}}KS    

FFFCCDDD6{f$$$$chhjj!!?????????r   c                     t           j        j        } |            }d|d<   |dk    sJ |dk    sJ |J |g k    sJ |dk    sJ |t                      k    sJ |ddik    sJ |ddik    sJ |d	dik    sJ dS )
zETest that CaselessDict.__eq__ handles non-dict comparisons correctly.   teststring{   N TESTr   OTHER)r   r   r4   setr   r4   r*   s      r   test_eq_with_non_dict_typesz,TestCaselessdict.test_eq_with_non_dict_typess   s     -:LNN&	 H}}}}Cxxxx}}}BwwwwBwwwwCEEzzzz VQKVQKWaL      r   c                     t           j        j        } |            }d|d<   |dk    sJ |dk    sJ |J |g k    sJ |ddik    sJ |ddik    sJ dS )zETest that CaselessDict.__ne__ handles non-dict comparisons correctly.rP   rQ   rR   rS   NrU   r   )r   r   r4   rX   s      r   test_ne_with_non_dict_typesz,TestCaselessdict.test_ne_with_non_dict_types   s     -:LNN&	 H}}}}Cxxxx}}}Bwwww VQKVQKr   N)	__name__
__module____qualname__r   r-   r8   rN   rY   r[   rT   r   r   r   r      su        T T T>$
 $
 $
L, , ,@ @ @>! ! !(         r   r   )unittestr   TestCaser   rT   r   r   <module>ra      s[        P  P  P  P  P x( P  P  P  P  P r   