o
    TÃi  ã                   @   sH   d dl Z d dlZd dlmZ d dlZd dlmZmZ G dd„ deƒZ	dS )é    N)ÚTestCase)ÚuÚbc                   @   s,   e Zd Zdd„ Zdd„ Zdd„ Zdd„ Zd	S )
Ú
TestErrorsc                 C   s$   dddddœg}|   ttj|¡ d S )NÚA)é   é   g      @zD tuple)Úar   Úc)Úd)ÚassertRaisesÚ	TypeErrorÚjsonÚ	dumpsJSON)ÚselfÚdata© r   úK/home/ubuntu/.local/lib/python3.10/site-packages/hjson/tests/test_errors.pyÚtest_string_keys_error   s   z!TestErrors.test_string_keys_errorc                 C   sz   d }zt  d¡ W n t jy   t ¡ d }Y nw |  d¡ |  |jd¡ |  |jd¡ |  |j	d¡ |  |j
d¡ d S )Nú{}
a
bé   úExpected HjsonDecodeErrorr   é   )r   ÚloadsÚHjsonDecodeErrorÚsysÚexc_infoÚfailÚassertEqualÚlinenoÚcolnoÚ	endlinenoÚendcolno)r   Úerrr   r   r   Útest_decode_error   s   ÿ
zTestErrors.test_decode_errorc              	   C   sp   d }t tfD ]/}z	t |dƒ¡ W n tjy!   t ¡ d }Y nw |  d¡ |  |j	d¡ |  |j
d¡ qd S )Nz
{"asdf": "r   r   é
   )r   r   r   r   r   r   r   r   r   r   r    )r   r#   Útr   r   r   Útest_scan_error   s   ÿ
øzTestErrors.test_scan_errorc                 C   s–   d }zt  d¡ W n t jy   t ¡ d }Y nw |  d¡ t |¡}t |¡}|  |j	|j	¡ |  |j
|j
¡ |  |j|j¡ |  |j|j¡ d S )Nr   r   r   )r   r   r   r   r   r   ÚpickleÚdumpsr   ÚmsgÚdocÚposÚend)r   r#   ÚsÚer   r   r   Útest_error_is_pickable%   s   ÿ


z!TestErrors.test_error_is_pickableN)Ú__name__Ú
__module__Ú__qualname__r   r$   r'   r0   r   r   r   r   r      s
    r   )
r   r(   Úunittestr   Úhjsonr   Úhjson.compatr   r   r   r   r   r   r   Ú<module>   s
    