Your IP : 216.73.217.129
��Yf� � @ s� d Z d d l Z d d l Z d d l Z d d l Z d d l Z d d l m Z d d � Z Gd d � d e j � Z
e d k r� e j � d S) z'Unit tests for collections.defaultdict.� N)�defaultdictc C s t S)N)�list� r r �:/opt/alt/python35/lib64/python3.5/test/test_defaultdict.py�foobar s r c @ s� 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 S)�TestDefaultDictc C s� t � } | j | j d � t | _ | d j d � | j | d d g i � | d j d � | j | d d d g i � | d | d | j | d d d g d g d g i � | j | d | d k o� | d k n � t t d d d d �} | j | j t � | j | d d d d i � | j | d d � | j | d d � | j | d g � | j d | � | j d | j � � | j d | � | j d | j � � | j d | � | j d | j � � | j d | � | j d | j � � d | _ | j | j d � y | d
Wn8 t k
r`} z | j | j
d � WYd d } ~ Xn X| j d � | j t
t d � d S)
N� �* � �
� �foo� Zbar� � zd2[15] didn't raise KeyError)r )r �assertEqual�default_factoryr �append�
assertTrueZassertIn�keysZassertNotIn�KeyError�args�fail�assertRaises� TypeError)�self�d1�d2�errr r r �
test_basic sB (/ &
zTestDefaultDict.test_basicc C sE t � } | j t | j d � t | _ | j | j d � g � d S)Nr )r r r �__missing__r r r )r r r r r �test_missing4 s zTestDefaultDict.test_missingc C s t � } | j | j d � | j t | � d � | j t t | � � | � d | d <| j t | � d � t t � } | j | j t � d | d <| j t | � d � d d � } t | � } | j | j | k � | d
| j t | � d t | � � d S)Nzdefaultdict(None, {})�) � zdefaultdict(None, {11: 41})r r z$defaultdict(<class 'int'>, {12: 42})c S s d S)N�+ r r r r r r
E s z&TestDefaultDict.test_repr.<locals>.foor zdefaultdict(%s, {13: 43}))r r r �repr�eval�intr )r r r r
�d3r r r � test_repr: s
zTestDefaultDict.test_reprc C s� t � } d d � } t | d d i � } t j � } z� t | d � } zq t | d | �t | d | �| j d � | j | j � t | � d � | j | j � t | � d � Wd | j � XWd t
j | � Xd S) Nc S s d S)Nr r r r r r r
M s z'TestDefaultDict.test_print.<locals>.foor r zw+�filer �
)r �tempfile�mktemp�open�print�seekr �readliner% �close�os�remove)r r r
r �tfn�fr r r �
test_printK s
$zTestDefaultDict.test_printc C sJ t � } | j � } | j t | � t � | j | j d � | j | i � t | _ | j � } | j t | � t � | j | j t � | j | i � | d | j � } | j t | � t � | j | j t � | j | d g i � | d | j | d g d g i � t � } d | d <| j � } | j | d d � d S)Nr r �a)r �copyr �typer r )r r r r( Zd4�d�er r r � test_copy` s*
zTestDefaultDict.test_copyc C s� t t d d i � } t j | � } | j | j t � | j | | � t | _ t j | � } | j | j t � | j | | � d S)Nr )r r r9 r r r )r r r r r r �test_shallow_copyy s z!TestDefaultDict.test_shallow_copyc C s� t t d d g i � } t j | � } | j | j t � | j | | � | j | d | d k � t | _ t j | � } | j | j t � | j | | � d S)Nr )r r r9 �deepcopyr r r r )r r r r r r �test_deep_copy� s zTestDefaultDict.test_deep_copyc C se t � } y | d Wn<