o
    .j                     @   s&   d dl Z d dlZG dd de jZdS )    Nc                   @   sH   e Zd ZdddZdddZdddZdd	d
ZdddZdddZdS )TestCaselessdictreturnNc                 C   sz   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out r   [/home/thesage/.local/lib/python3.10/site-packages/icalendar/tests/test_unit_caselessdict.py test_caselessdict_canonsort_keys   s    
z1TestCaselessdict.test_caselessdict_canonsort_keysc              	   C   s   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}|sHJ 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   r   r   r   !test_caselessdict_canonsort_items&   s@   






z2TestCaselessdict.test_caselessdict_canonsort_itemsc                 C   s,   t jj}|ddd}| }||ksJ d S )Nval1val2key1key2)r   r   CaselessDictcopy)r   r0   original_dictcopied_dictr   r   r   test_caselessdict_copyL   s   z'TestCaselessdict.test_caselessdict_copyc                 C   sB  t jj}|d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s8J |d	d
dksBJ |dddksLJ |d dksTJ |ddks]J |d	ddksgJ |dddksqJ d|v swJ |d= d|vsJ |dddd |d dksJ t| }|g dksJ d S )Nr+   r,   r-   )KEY2KEY1r.   r6   val3KEY3key3FOUNDkey4z	NOT FOUNDval5val6val7)key5KEY6KEY5key6)r6   r5   r8   rA   r@   )	r   r   r0   has_key
setdefaultgetupdatesortedr   )r   r0   ncdr   r   r   r   test_CaselessDictT   s*   z"TestCaselessdict.test_CaselessDictc                 C   s   t jj}| }d|d< |dksJ |dksJ |dusJ |g ks#J |dks)J |t ks0J |ddiks8J |ddiks@J |d	diksHJ dS )
zETest that CaselessDict.__eq__ handles non-dict comparisons correctly.   teststring{   Nr   TESTr   OTHER)r   r   r0   setr   r0   r'   r   r   r   test_eq_with_non_dict_typess   s   z,TestCaselessdict.test_eq_with_non_dict_typesc                 C   sj   t jj}| }d|d< |dksJ |dksJ |dusJ |g ks#J |ddiks+J |ddiks3J dS )zETest that CaselessDict.__ne__ handles non-dict comparisons correctly.rJ   rK   rL   rM   NrN   r   )r   r   r0   rQ   r   r   r   test_ne_with_non_dict_types   s   z,TestCaselessdict.test_ne_with_non_dict_types)r   N)	__name__
__module____qualname__r   r*   r4   rI   rR   rS   r   r   r   r   r      s    


&

r   )unittestr   TestCaser   r   r   r   r   <module>   s    