U
    !?hC  γ                   @   sX   d dl mZ d dlmZ d dlmZ G dd deZG dd deZG dd	 d	eZd
S )ι    )Ϊnan)ΪTestCase)Ϊequalc                   @   s   e Zd Zdd Zdd ZdS )Ϊ	TestEqualc                 C   s   |   td d ‘ d S ©N©Ϊ
assertTruer   ©Ϊself© r   ϊM/var/www/html/venv/lib/python3.8/site-packages/jsonschema/tests/test_utils.pyΪ	test_none   s    zTestEqual.test_nonec                 C   s   |   ttt‘ d S r   )r   r   r   r	   r   r   r   Ϊtest_nan   s    zTestEqual.test_nanN)Ϊ__name__Ϊ
__module__Ϊ__qualname__r   r   r   r   r   r   r      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 )ΪTestDictEqualc                 C   s(   ddd}ddd}|   t||‘ d S ©NΪbΪd©ΪaΪc©r   r   r   ©r
   Ϊdict_1Zdict_2r   r   r   Ϊtest_equal_dictionaries   s    

z%TestDictEqual.test_equal_dictionariesc                 C   s(   t dd}dt d}|  t||‘ d S )Nr   r   r   ©r   r   r   r   r   r   r   Ϊ test_equal_dictionaries_with_nan   s    

z.TestDictEqual.test_equal_dictionaries_with_nanc                 C   s(   ddd}ddd}|   t||‘ d S )Nr   r   r   )r   Ϊx©ZassertFalser   r   r   r   r   Ϊtest_missing_key   s    

zTestDictEqual.test_missing_keyc                 C   s*   ddd}dddd}|   t||‘ d S )Nr   r   r   r   )r   r   r   r    r   r   r   r   Ϊtest_additional_key   s    
z!TestDictEqual.test_additional_keyc                 C   s(   ddd}ddd}|   t||‘ d S ©Nr   r   r   r   r   r    r   r   r   r   Ϊtest_missing_value$   s    

z TestDictEqual.test_missing_valuec                 C   s   i }i }|   t||‘ d S r   r   r   r   r   r   Ϊtest_empty_dictionaries)   s    z%TestDictEqual.test_empty_dictionariesc                 C   s"   d }ddd}|   t||‘ d S ©Nr   r   r   r    r   r   r   r   Ϊtest_one_none.   s    
zTestDictEqual.test_one_nonec                 C   s   ddd}|   t||‘ d S r&   r   )r
   r   r   r   r   Ϊtest_same_item3   s    
zTestDictEqual.test_same_itemc                 C   s4   ddddd}ddddd}|   t||‘ d S r   r   r   r   r   r   Ϊtest_nested_equal7   s    zTestDictEqual.test_nested_equalc                 C   s4   ddddd}ddddd}|   t||‘ d S r#   r    r   r   r   r   Ϊtest_nested_dict_unequal<   s    z&TestDictEqual.test_nested_dict_unequalc                 C   s8   ddddgdd}dddddgd}|   t||‘ d S ©Nr   r   r   r   r   r   r   r   r   r   r   Ϊtest_mixed_nested_equalA   s    z%TestDictEqual.test_mixed_nested_equalc                 C   s8   ddddgdd}dddddgd}|   t||‘ d S r+   r    r   r   r   r   Ϊtest_nested_list_unequalF   s    z&TestDictEqual.test_nested_list_unequalN)r   r   r   r   r   r!   r"   r$   r%   r'   r(   r)   r*   r,   r-   r   r   r   r   r      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 )ΪTestListEqualc                 C   s(   dddg}dddg}|   t||‘ d S ©Nr   r   r   r   ©r
   Ϊlist_1Zlist_2r   r   r   Ϊtest_equal_listsM   s    

zTestListEqual.test_equal_listsc                 C   s(   dt dg}dt dg}|  t||‘ d S ©Nr   r   r   r0   r   r   r   Ϊtest_equal_lists_with_nanR   s    

z'TestListEqual.test_equal_lists_with_nanc                 C   s(   dddg}dddg}|   t||‘ d S r/   r    r0   r   r   r   Ϊtest_unsorted_listsW   s    

z!TestListEqual.test_unsorted_listsc                 C   s&   dddg}ddg}|   t||‘ d S r/   r    r0   r   r   r   Ϊtest_first_list_larger\   s    
z$TestListEqual.test_first_list_largerc                 C   s&   ddg}dddg}|   t||‘ d S r/   r    r0   r   r   r   Ϊtest_second_list_largera   s    
z%TestListEqual.test_second_list_largerc                 C   sL   ddd g}dddg}|   t||‘ ddd g}d ddg}|   t||‘ d S r/   r    r0   r   r   r   Ϊtest_list_with_none_unequalf   s    



z)TestListEqual.test_list_with_none_unequalc                 C   s(   dd dg}dd dg}|   t||‘ d S r3   r   r0   r   r   r   Ϊtest_list_with_none_equalo   s    

z'TestListEqual.test_list_with_none_equalc                 C   s   g }g }|   t||‘ d S r   r   r0   r   r   r   Ϊtest_empty_listt   s    zTestListEqual.test_empty_listc                 C   s   d }g }|   t||‘ d S r   r    r0   r   r   r   r'   y   s    zTestListEqual.test_one_nonec                 C   s   dddg}|   t||‘ d S r/   r   )r
   r1   r   r   r   Ϊtest_same_list~   s    
zTestListEqual.test_same_listc                 C   s0   dddgdg}dddgdg}|   t||‘ d S ©Nr   r   r   r   r   r0   r   r   r   Ϊtest_equal_nested_lists   s    z%TestListEqual.test_equal_nested_listsc                 C   s,   dddgdg}dg dg}|   t||‘ d S r<   r    r0   r   r   r   Ϊtest_unequal_nested_lists   s    
z'TestListEqual.test_unequal_nested_listsN)r   r   r   r2   r4   r5   r6   r7   r8   r9   r:   r'   r;   r=   r>   r   r   r   r   r.   L   s   	r.   N)	Ϊmathr   Zunittestr   Zjsonschema._utilsr   r   r   r.   r   r   r   r   Ϊ<module>   s
   =