�
��abc @ s� d Z d d l m Z d d l m Z m Z m Z m Z m Z m Z m
Z
m Z m Z d � Z
d � Z d � Z d � Z d � Z d
� Z d � Z d � Z d
� Z d S( u�
webencodings.tests
~~~~~~~~~~~~~~~~~~
A basic test suite for Encoding.
:copyright: Copyright 2012 by Simon Sapin
:license: BSD, see LICENSE for details.
i����( t unicode_literalsi ( t lookupt LABELSt decodet encodet iter_decodet iter_encodet IncrementalDecodert IncrementalEncodert UTF8c O s: y | | | � Wn | k
r% d SXt d | � � d S( Nu Did not raise %s.( t AssertionError( t exceptiont functiont argst kwargs( ( sB /usr/lib/python2.7/site-packages/pip/_vendor/webencodings/tests.pyt
assert_raises s
c C s� t d � j d k s t � t d � j d k s6 t � t d � j d k sQ t � t d � j d k sl t � t d � j d k s� t � t d � j d k s� t � t d � j d k s� t � t d � d k s� t � t d � d k s� t � t d � j d
k st � t d � j d
k s#t � t d � j d
k s>t � t d
� j d
k sYt � t d � d k sqt � t d � d k s�t � d S( Nu utf-8u Utf-8u UTF-8u utf8u utf8 u
utf8 u u8u utf-8 u US-ASCIIu windows-1252u
iso-8859-1u latin1u LATIN1u latin-1u LATİN1( R t nameR
t None( ( ( sB /usr/lib/python2.7/site-packages/pip/_vendor/webencodings/tests.pyt test_labels s c C s� xVt D]N} t d | � d t | � f k s4 t � t d | � d k sO t � xs d d d g D]b } t d g | | � \ } } t | � g k s� t � t t d g | | � � g k s_ t � q_ Wt | � } | j d � d k s� t � | j d d t �d k s
t � t
| � } | j d � d k s4t � | j d d t �d k s t � q Wx5 t t j � � D]! } t | � j
| k slt � qlWd S( Nt u i i i t final( R R R R
R R t listR R t TrueR t sett valuesR ( t labelt repeatt outputt _t decodert encoderR ( ( sB /usr/lib/python2.7/site-packages/pip/_vendor/webencodings/tests.pyt test_all_labels0 s
',!%c C sp t t t d d � t t t d d � t t t g d � t t t g d � t t t d � t t t d � d S( Ns éu invalidu é( R t LookupErrorR R R R R R ( ( ( sB /usr/lib/python2.7/site-packages/pip/_vendor/webencodings/tests.pyt test_invalid_labelC s c C sz t d d � d t d � f k s' t � t d t d � � d t d � f k sT t � t d d � d t d � f k s{ t � t d t � d t d � f k s� t � t d d � d t d � f k s� t � t d d � d t d � f k s� t � t d
d � d t d � f k st � t d d � d t d
� f k s>t � t d d � d t d � f k set � t d d � d t d
� f k s�t � t d d � d t d � f k s�t � t d d � d t d
� f k s�t � t d d � d t d
� f k st � t d d � d t d � f k s(t � t d d � d t d
� f k sOt � t d d � d t d
� f k svt � d S( Ns �u latin1u €s éu utf8u éu asciiu és és �� �u utf-16bes ��� u utf-16les ��� u s �� �s �u UTF-16BEs � u UTF-16LEu UTF-16( R R R
R ( ( ( sB /usr/lib/python2.7/site-packages/pip/_vendor/webencodings/tests.pyt test_decodeL s '-'''''''''''''c C s� t d d � d k s t � t d d � d k s6 t � t d d � d k sQ t � t d d � d k sl t � t d d � d k s� t � t d d � d
k s� t � d S( Nu éu latin1s �u utf8s éu utf-16s � u utf-16leu utf-16bes �( R R
( ( ( sB /usr/lib/python2.7/site-packages/pip/_vendor/webencodings/tests.pyt test_encodeb s c C s> d � } | g d � d k s$ t � | d g d � d k sB t � | d g d � d k s` t � | d g d � d k s~ t � | d d
g d � d k s� t � | d d g d � d k s� t � | d
g d � d k s� t � | d g d � d k s� t � | d d d g d � d k s t � | d d d g d � d k sDt � | d d d d d d g d � d k sqt � | d g d � d k s�t � | d g d � d k s�t � | d g d � d k s�t � | d g d � d k s�t � | d d d d d d g d � d k st � | d d d
g d � d k s:t � d S(! Nc S s" t | | � \ } } d j | � S( Nu ( R t join( t inputt fallback_encodingR t _encoding( ( sB /usr/lib/python2.7/site-packages/pip/_vendor/webencodings/tests.pyt iter_decode_to_stringl s u latin1u R s �u ét hellou hellot het llot hellt os éu és és s �s �t au a�s �s ���s �u ï»s �� �s ��� s �s ��s s h�u x-user-definedu hllo( R
( R( ( ( sB /usr/lib/python2.7/site-packages/pip/_vendor/webencodings/tests.pyt test_iter_decodek s. !!!!**c C sf d j t g d � � d k s$ t � d j t d g d � � d k sK t � d j t d g d � � d k sr t � d j t d d d d g d � � d k s� t � d j t d d d d g d � � d k s� t � d j t d d d d g d � � d k st � d j t d d d d g d � � d
k s2t � d j t d d d d g d
� � d k sbt � d S( NR u latin1u u és �u utf-16s � u utf-16leu utf-16bes �u hu llou x-user-defineds h�llo( R$ R R
( ( ( sB /usr/lib/python2.7/site-packages/pip/_vendor/webencodings/tests.pyt test_iter_encode� s $''0000 c C s^ d } d } d } d } t | d � | t d � f k s? t � t | d � | k sZ t � d S( Ns 2,O�#�ɻtϨ�u 2,O#tt aau aau x-user-defined( R R R
R ( t encodedt decoded( ( sB /usr/lib/python2.7/site-packages/pip/_vendor/webencodings/tests.pyt test_x_user_defined� s 'N( t __doc__t
__future__R R R R R R R R R R R R R R R! R" R# R/ R0 R4 ( ( ( sB /usr/lib/python2.7/site-packages/pip/_vendor/webencodings/tests.pyt