mς
­fIc           @   sφ  d  k  l Z l Z l Z d k Z d f  d     YZ d   Z e e i e j  e e i d j  y e i	 Wn e
 j
 o n Xe d  e i h  j o e d  n d e _	 e i	 d j o e d	  n d
 Z e e _ e i e j o e d  n d e e  j o e d  n y
 e ` Wn e j
 o n Xe d  d e _	 y d e _ Wn e j
 o n Xe d  h  d d <Z e e _ e i e j	 o e d  n e i d j o e d  n e   Z e   Z y e i i	 Wn e
 j
 o n Xe d  y e i i	 Wn e
 j
 o n Xe d  y d e i _	 Wn e
 e f j
 o n Xe d  d e i i _	 e i i	 d j o e d  n e i i	 d j o e d  n e i i	 d j o e d  n d e e i  j o e d  n y d e i _	 Wn e
 e f j
 o n Xe d  y e e i _ Wn e
 e f j
 o n Xe d  e e i i _ e i i e i i e i i e i i e i i e i i j	 p e i i e i i j	 o e d  n y d< e i _ Wn e
 e f j
 o n Xe d  h  d d <d d <d  d! <e i i _ e i i d j o e d"  n d# k l Z e h  d$ d% <d& d' < Z y e e i _ Wn e
 e f j
 o n Xe  e i i e i i j o e i i j o
 d j n o
 e  n d k Z e i e d e  e _ e   Z e i   e e  j o
 e  n y e i i  Wn e
 j
 o n Xe  y d( e i _  Wn e
 e f j
 o n Xe  y e i i  Wn e
 j
 o n Xe  y e i i  Wn e
 j
 o n Xe  y d( e i _  Wn e
 e f j
 o n Xe  y e i i  Wn e
 j
 o n Xe  d)   Z! y
 e! ` Wn e j
 o n Xe  y
 e! ` Wn e j
 o n Xe  y d e! _ Wn e j
 o n Xe  y
 e! `" Wn e
 j
 o n Xe  e! `# d*   Z  d+   Z" d,   Z$ e  e" j o
 e  n h  Z d e e  <e$ i% e  _% e e  e
 e f d-  Z& d.   Z' d/   Z( d0   Z) d1   Z* d2   Z+ d3   Z, d4   Z- d5   Z. d6   Z/ d7   Z0 d8   Z1 d9   Z2 d:   Z3 d;   Z4 e4   d S(=   (   s   verboses
   TestFaileds   verifyNt   Fc           B   s   t  Z d   Z RS(   Nc         C   s   d  S(   N(    (   t   self(    (    t0   /mit/python/lib/python2.4/test/test_funcattrs.pyt   a   s    (   t   __name__t
   __module__R   (    (    (    R   R       s   c           C   s   d S(   s   my docstringN(    (    (    (    R   t   b   s    s   test.test_supports   expected AttributeErrors*   expected unassigned func.__dict__ to be {}i   s,   function attribute not set to expected values   its docstrings&   problem with setting __doc__ attributet   publishs   attribute not in dir()s$   del func.__dict__ expected TypeErrors'   func.__dict__ = None expected TypeErrort   hellot   worlds-   func.__dict__ assignment to dictionary faileds/   attribute after func.__dict__ assignment faileds$   expected AttributeError or TypeErrors2   unbound method attribute not set to expected values*   bound method attribute access did not worki    s   attributes were not the samei   i   s$   expected TypeError or AttributeErrort   onei   t   twoi   t   threei!   s   setting __dict__(   s   UserDictt   fouri,   t   fivei7   i   c           C   s   d  S(   N(    (    (    (    R   t   another­   s    c           C   s   d  S(   N(    (    (    (    R   t   fooΘ   s    c           C   s   d  S(   N(    (    (    (    R   t   barΛ   s    c           C   s	   d GHd  S(   Ni   (    (    (    (    R   t   tempΞ   s    c         C   s   t  t |  |   y t |  | |  Wn | j
 o n Xt d | | f  y t |  |  Wn t	 t
 f j
 o n Xt d |  d  S(   Ns!   shouldn't be able to set %s to %rs   shouldn't be able to del %s(   t   verifyt   hasattrt   objt   namet   setattrt   valuet	   exceptiont
   TestFailedt   delattrt   AttributeErrort	   TypeError(   R   R   R   R   (    (    R   t   cantsetέ   s    c             sr   d     d   } | i } t t | t   t t |  d j  t | d i i	 d j  t
 | d |  d  S(   Ni   c              s	     GHd  S(   N(   R   (    (   R   (    R   t   fξ   s    i   i    t   cellt   func_closure(   R   R   R!   t   cR   t
   isinstancet   tuplet   lent	   __class__R   R   (   R   R"   R   (    (   R   R   t   test_func_closureμ   s    	c          C   sι   d   }  t |  i d  j  t |  i d  j  d |  _ t |  i d j  t |  i d j  |  ` t |  i d  j  t |  i d  j  d |  _ t |  i d j  t |  i d j  |  ` t |  i d  j  t |  i d  j  d  S(   Nc           C   s   d  S(   N(    (    (    (    R   R   φ   s    R   R	   (   R   R   t   __doc__t   Nonet   func_doc(   R   (    (    R   t   test_func_docυ   s    			c          C   s6   d   }  t |  i t   j  t |  d t    d  S(   Nc           C   s   d  S(   N(    (    (    (    R   R     s    t   func_globals(   R   R   R,   t   globalsR   (   R   (    (    R   t   test_func_globals  s    	c          B   sΘ   d   } e | i d j  e | i d j  d | _ e | i d j  e | i d j  d | _ e | i d j  e | i d j  e | d d  e | d d  d }  |  h  d	 h  <Ud  S(
   Nc           C   s   d  S(   N(    (    (    (    R   R     s    R   t   gt   hR,   i   R   s   def f(): pass
f.__name__t   __builtins__(   R   R   R   t	   func_nameR   t   s(   R3   R   (    (    R   t   test_func_name  s    			c       
      sΦ   d    d   } d   }   d   }  d   }    d   } t t | i	  t
 i j  | i	 | _	 t | d d   t | d | i	 d t t | d | i	 d t t | d | i	 d t | i	 | _	 d  S(	   Ni   c           C   s   d  S(   N(    (    (    (    R   R     s    c           C   s	   d GHd  S(   Ni   (    (    (    (    R   R/     s    c              s	     GHd  S(   N(   R   (    (   R   (    R   t   f1   s    c              s	     GHd  S(   N(   R   (    (   R   (    R   t   g1!  s    c              s     G GHd  S(   N(   R   R   (    (   R   R   (    R   t   f2"  s    t	   func_codeR   (   R   R   R   R/   R5   R6   R7   R   t   typeR8   t   typest   CodeTypeR   R)   t
   ValueError(   R   R5   R7   R   R/   R6   R   (    (   R   R   R   t   test_func_code  s    
		c          C   s·   d   } t | i d  j  d | _ t | i d j  t | d  d	 j  d d d  }  t |  i d
 j  |  ` t |  i d  j  y |    Wn t j
 o n Xt d  d  S(   Nc         C   s
   |  | f S(   N(   R   R   (   R   R   (    (    R   R   -  s    i   i   i
   c         C   s
   |  | f S(   N(   R   R   (   R   R   (    (    R   R/   2  s    s-   shouldn't be allowed to call g() w/o defaults(   i   i   (   i   i   (   i
   i   (   i   i   (   R   R   t   func_defaultsR)   R/   R   R   (   R/   R   (    (    R   t   test_func_defaults,  s    		c          C   s  d   } | i }  | i } t |  h  j  t |  | j  d | _ t |  h  d d <j  t | i |  j o | i j n  h  | _ t t | d   h  d d <| _ t | i d j  t | i | i j o h  d d <j n  t	 | d d   t	 | d d   d  S(   Nc           C   s   d  S(   N(    (    (    (    R   R   >  s    R	   R   t	   func_dictt   __dict__(   R   RA   R   R@   R   R   R   R   R	   R   R)   (   R   R   R   (    (    R   t   test_func_dict=  s    				'	0c          C   so   d f  d     Y}  t |  i i |  j  t |    i i |  j  t |  i d |   t |    i d |   d  S(   Nt   Cc           B   s   t  Z d   Z RS(   Nc         C   s   d  S(   N(    (   R   (    (    R   R   P  s    (   R   R   R   (    (    (    R   RC   O  s   t   im_class(   RC   R   R   RD   R   (   RC   (    (    R   t   test_im_classN  s
    c          C   s   d   } d f  d     Y}  | |  _  t |  i  i | j  t |    i  i | j  t |  i  d |  t |    i  d |  d  S(   Nc         C   s   d  S(   N(    (   R   (    (    R   R   W  s    RC   c           B   s   t  Z RS(   N(   R   R   (    (    (    R   RC   X  s   t   im_func(   R   RC   R   RF   R   (   RC   R   (    (    R   t   test_im_funcV  s    		c          C   sr   d f  d     Y}  t |  i i d  j  |    } t | i i | j  t |  i d d   t | i d |  d  S(   NRC   c           B   s   t  Z d   Z RS(   Nc         C   s   d  S(   N(    (   R   (    (    R   R   b  s    (   R   R   R   (    (    (    R   RC   a  s   t   im_self(   RC   R   R   RH   R)   R"   R   (   RC   R"   (    (    R   t   test_im_self`  s    	c          C   s   d f  d     Y}  t |  i i h  d d <j  t |    i i h  d d <j  t |  i d |  i i  t |    i d |  i i  d  S(   NRC   c           B   s   t  Z d   Z d e _ RS(   Nc         C   s   d  S(   N(    (   R   (    (    R   R   k  s    i*   (   R   R   R   R   (    (    (    R   RC   j  s   	R   i*   RA   (   RC   R   R   RA   R   (   RC   (    (    R   t   test_im_dicti  s
    "c          C   so   d f  d     Y}  t |  i i d j  t |    i i d j  t |  i d d  t |    i d d  d  S(   NRC   c           B   s   t  Z d   Z RS(   Nc         C   s   d S(   R   N(    (   R   (    (    R   R   t  s    (   R   R   R   (    (    (    R   RC   s  s   R   R(   (   RC   R   R   R(   R   (   RC   (    (    R   t   test_im_docr  s
    c          C   so   d f  d     Y}  t |  i i d j  t |    i i d j  t |  i d d  t |    i d d  d  S(   NRC   c           B   s   t  Z d   Z RS(   Nc         C   s   d  S(   N(    (   R   (    (    R   R   |  s    (   R   R   R   (    (    (    R   RC   {  s   R   R   (   RC   R   R   R   R   (   RC   (    (    R   t   test_im_namez  s
    c           C   s_   t    t   t   t   t   t   t   t   t   t	   t
   t   t   d  S(   N(   R'   R+   R.   R4   R=   R?   RB   RE   RG   RI   RJ   RK   RL   (    (    (    R   t   testmore  s    (   i   i   i   (5   t   test.test_supportt   verboseR   R   R:   R    R   R   R   R   R   RA   t	   docstringR(   t   dirR   R)   t   dR@   R   R5   R7   R   RF   t   myclassR   t   UserDictR
   t   newt   instancemethodt   idt   effR   R   R   R>   R   R8   R   R'   R+   R.   R4   R=   R?   RB   RE   RG   RI   RJ   RK   RL   RM   (    R5   R7   RO   R+   R=   R   RJ   R   R4   R'   RE   RM   RU   R   RX   RK   R    RT   RP   RL   R   R   R:   R.   R   R   RR   R   RB   R?   RG   RI   (    (    R   t   ?   sh  		 			
 		 				 	 	 	 	 	



2 	* <
		
      	
 
  
 			

										
							