mς
­fIc           @   s  d  k  l Z l Z d f  d     YZ d e f d     YZ d e f d     YZ d   Z e d  Z e d  Z e d  Z	 e d e j d	  e d
 e j d  e d e	 j d  e d
 e	 j d  y d e j e d
 d  Wn e
 j
 o n Xy d e j e d
 d  Wn e
 j
 o n Xe d d j d  e d d j d  e d d j d  e d d j d  y d1 d j e d
 d  Wn e
 j
 o n Xe oe d e d  j d  e d e d  j d  e d e d  j d  e e d  d j d  e e d  e d  j d  e d e d  j d  e e d  d j d  e e d  e d  j d   y! d1 e d  j e d
 d!  Wn e
 j
 o n Xe e d  e d  j d"  e e d  e d  j d#  e e d  d j d$  e e d  d j d%  n e d&  Z x+ e D]# Z e e e j d' e e f  qCWe d( e j d) e f  e e e j d* e e f  e e  Z x+ e D]# Z e e e j d' e e f  q΄We d( e j d) e f  e e e j d' e e f  d+ f  d,     YZ e e   e i j d-  d. f  d/     YZ y e e   e j d0  Wn e
 j
 o n Xd1 S(2   (   s
   TestFaileds   have_unicodet   base_setc           B   s   t  Z d   Z RS(   Nc         C   s   | |  _  d  S(   N(   t   elt   self(   R   R   (    (    t/   /mit/python/lib/python2.4/test/test_contains.pyt   __init__   s    (   t   __name__t
   __module__R   (    (    (    R   R       s   t   setc           B   s   t  Z d   Z RS(   Nc         C   s   |  i | j S(   N(   R   R   (   R   R   (    (    R   t   __contains__
   s    (   R   R   R   (    (    (    R   R      s   t   seqc           B   s   t  Z d   Z RS(   Nc         C   s   |  i g | S(   N(   R   R   t   n(   R   R
   (    (    R   t   __getitem__   s    (   R   R   R   (    (    (    R   R	      s   c         G   s*   |  p t d i t t |    n d  S(   Nt    (   t   okt
   TestFailedt   joint   mapt   strt   args(   R   R   (    (    R   t   check   s    i   s   1 not in set(1)i    s   0 in set(1)s   1 not in seq(1)s   0 in seq(1)s   in base_set did not raise errors#   not in base_set did not raise errort   ct   abcs   'c' not in 'abc't   ds   'd' in 'abc't    s   '' not in ''s   '' not in 'abc's!   None in 'abc' did not raise errors   'c' not in u'abc's   'd' in u'abc's   '' not in u''s   u'' not in ''s   u'' not in u''s   '' not in u'abc's   u'' not in 'abc's   u'' not in u'abc's"   None in u'abc' did not raise errors   u'c' not in u'abc's   u'd' in u'abc's   u'c' not in 'abc's   u'd' in 'abc'i
   s   %r not in %ri   s   16 not in %rs   %s not in %rt   Deviant1c           B   s#   t  Z d  Z e d  Z d   Z RS(   s   Behaves strangely when compared

    This class is designed to make sure that the contains code
    works when the list is modified during the check.
    i   c         C   sE   | d j o4 |  i i d  |  i i d  |  i i d  n d S(   Ni   i   i   i   (   t   otherR   t   aListt   remove(   R   R   (    (    R   t   __cmp__n   s
    (   R   R   t   __doc__t   rangeR   R   (    (    (    R   R   e   s    s   Deviant1 failedt   Deviant2c           B   s   t  Z d  Z d   Z RS(   s   Behaves strangely when compared

    This class raises an exception during comparison.  That in
    turn causes the comparison to fail with a TypeError.
    c         C   s   | d j o t d  n d  S(   Ni   t   gotcha(   R   t   RuntimeError(   R   R   (    (    R   R   ~   s    (   R   R   R   R   (    (    (    R   R   w   s    t   oopsN(   t   test.test_supportR   t   have_unicodeR    R   R	   R   t   at   bR   t	   TypeErrort   Nonet   unicodeR   t   it   tupleR   R   R   (   R%   R   R   R$   R	   R*   R    R   R&   R   R   R   (    (    R   t   ?   s   	


 ! !