U
��.e� � @ s� d Z ddlmZ ddlmZmZmZmZmZm Z m
Z
mZmZ dd� Z
dd� Zd d
� Zdd� Zd
d� Zdd� Zdd� Zdd� Zdd� ZdS )z�
webencodings.tests
~~~~~~~~~~~~~~~~~~
A basic test suite for Encoding.
:copyright: Copyright 2012 by Simon Sapin
:license: BSD, see LICENSE for details.
� )�unicode_literals� ) �lookup�LABELS�decode�encode�iter_decode�iter_encode�IncrementalDecoder�IncrementalEncoder�UTF8c O s6 z|||� W n | k
r$ Y d S X t d| ��d S )NzDid not raise %s.)�AssertionError)Z exceptionZfunction�args�kwargs� r �B/usr/lib/python3.8/site-packages/pip/_vendor/webencodings/tests.py�
assert_raises s
r c C s d S �Nr r r r r �test_labels s r c C sN t D ]2} dD ]}tdg| | �\}}qt| �}t| �}qtt �� �D ]}qDd S )N)r r � � )r r r
r �set�values)Zlabel�repeat�output�_�decoder�encoder�namer r r �test_all_labels0 s r c C sT t ttdd� t ttdd� t ttg d� t ttg d� t ttd� t ttd� d S )Ns éZinvalid� é)r �LookupErrorr r r r r
r r r r r �test_invalid_labelC s r" c C s d S r r r r r r �test_decodeL s r# c C s d S r r r r r r �test_encodeb s r$ c C s dd� } d S )Nc S s t | |�\}}d�|�S )N� )r �join)�inputZfallback_encodingr Z _encodingr r r �iter_decode_to_stringl s z/test_iter_decode.