Ñò
•à"Ic           @   sÑ   d  d k  Z  d  d k Z y d  d k Z e Z Wn e j
 o d  d k Z n Xd  d k Z d  d k l Z l Z l	 Z	 l
 Z
 l Z l Z d e i f d „  ƒ  YZ d „  Z e d j o e i d d ƒ n d S(	   iÿÿÿÿN(   t   dbt   dbtablest   test_supportt   verboset   get_new_environment_patht   get_new_database_patht   TableDBTestCasec           B   sh   e  Z d  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z	 d „  Z
 d	 „  Z d
 „  Z RS(   s   test-table.dbc      	   C   sw   d d  k  } | i d d j o# d d k l } | t ƒ |  _ n t ƒ  |  _ t i	 d d d |  i d d	 ƒ |  _
 d  S(
   Niÿÿÿÿi    i   (   t   do_proxy_db_py3kt   filenames   tabletest.dbt   dbhomet   createi   (   t   syst   version_infot   test_allR   t   Falset   _flag_proxy_db_py3kR   t   testHomeDirR   t
   bsdTableDBt   tdb(   t   selfR   R   (    (    s5   /mit/python/lib/python2.6/bsddb/test/test_dbtables.pyt   setUp'   s    	c         C   sb   |  i  i ƒ  d d  k } | i d d j o! d d k l } | |  i ƒ n t i |  i	 ƒ d  S(   Niÿÿÿÿi    i   (   R   (
   R   t   closeR   R   R   R   R   R   t   rmtreeR   (   R   R   R   (    (    s5   /mit/python/lib/python2.6/bsddb/test/test_dbtables.pyt   tearDown1   s    c         C   sŠ  d } d } y |  i  i | ƒ Wn t i j
 o n X|  i  i | | g ƒ d d  k } | i d d j  o* |  i  i | h t i	 d d ƒ | 6ƒ n0 |  i  i | h t i	 d d ƒ i
 d ƒ | 6ƒ t o |  i  i ƒ  n |  i  i | | g d	 h d  | 6ƒ} d d  k } | i d d j  o t i | d | ƒ } n! t i t | d | d ƒ ƒ } |  i | d
 j ƒ |  i | d j  ƒ d  S(   Nt   test01s   cool numbersiÿÿÿÿi    i   gn†ðù!	@i   s	   iso8859-1t
   conditionsgTã¥›Ä 	@g‰A`åÐ"	@(   R   t   DropR   t   TableDBErrort   CreateTableR   R   t   Insertt   picklet   dumpst   decodeR   t	   _db_printt   Selectt   Nonet   loadst   bytest   assert_(   R   t   tabnamet   colnameR   t   valuest   colval(    (    s5   /mit/python/lib/python2.6/bsddb/test/test_dbtables.pyR   9   s,    *	 c   	      C   s»  d } d } d } d } d d  k  } | i d d j  ov h t i d d	 ƒ | 6d
 | 6d | 6h t i d d	 ƒ | 6d
 | 6d | 6h t i d d	 ƒ | 6d | 6d | 6g } nŽ h t i d d	 ƒ i d ƒ | 6d
 | 6d | 6h t i d d	 ƒ i d ƒ | 6d
 | 6d | 6h t i d d	 ƒ i d ƒ | 6d | 6d | 6g } y |  i i | ƒ Wn t i j
 o n X|  i i	 | | | | g ƒ x! | D] } |  i i
 | | ƒ q‹Wd d  k  } | i d d j  o, |  i i | | g d h d „  | 6ƒ} n) |  i i | | g d h d „  | 6ƒ} |  i t | ƒ d ƒ | d d d j o |  i | d	 d d ƒ nU | d d d j o |  i | d	 d d ƒ n$ t o d | f GHn t d ƒ ‚ d  S(   Nt   test02s   coolness factors   but can it fly?t   Speciesiÿÿÿÿi    i   i   i   t   not   Penguint   Turkeyi	   t   yess   SR-71A Blackbirds	   iso8859-1R   c         S   s   t  i |  ƒ d  j S(   i   (   R   R$   (   t   x(    (    s5   /mit/python/lib/python2.6/bsddb/test/test_dbtables.pyt   <lambda>y   s    c         S   s   t  i t |  d  ƒ ƒ d j S(   s	   iso8859-1i   (   R   R$   R%   (   R1   (    (    s5   /mit/python/lib/python2.6/bsddb/test/test_dbtables.pyR2   |   s    i   s
   values= %rs   Wrong values returned!(   R   R   R   R   R    R   R   R   R   R   R   R"   t   assertEqualt   lenR   t   RuntimeError(	   R   R'   t   col0t   col1t   col2R   t   testinfot   rowR)   (    (    s5   /mit/python/lib/python2.6/bsddb/test/test_dbtables.pyR+   W   sJ    $$. c         C   s  d } y |  i  i | ƒ Wn t i j
 o n Xt o d GH|  i  i ƒ  n |  i  i | d d d d d g ƒ t o d GH|  i  i ƒ  n |  i  i | ƒ t o d	 GH|  i  i ƒ  n |  i  i | d d d d d g ƒ yY |  i  i | h d
 d 6t i	 h d d 6d d 6d g d ƒ d 6d d 6ƒ |  i
 d ƒ Wn t i j
 o n Xy1 |  i  i | g  d h d d 6ƒ|  i
 d ƒ Wn t i j
 o n X|  i  i | h d d 6d d 6d d 6d d 6ƒ |  i  i | h d d 6d d 6d d 6d d 6d d 6ƒ |  i  i | h d d 6d d 6d d 6d d 6d  d 6ƒ t o |  i  i ƒ  n |  i  i | d d d g d h t i d! ƒ i d 6t i d" ƒ i d 6ƒ} |  i t | ƒ d# ƒ |  i  i | d h t i d ƒ d 6ƒ|  i  i | d d d g d h t i d$ ƒ d 6ƒ} |  i t | ƒ d ƒ |  i | d% d d  ƒ |  i  i | d g d h d& „  d 6ƒ} |  i t | ƒ d ƒ |  i | d% d d ƒ d  S('   Nt   test03s   ...before CreateTable...t   at   bt   ct   dt   es   ...after CreateTable...s   ...after Drop...t    i   i   i   i   t   fooi   t   Zerot   fs   Expected an exceptionR   t   123t   42t   badt   meeps   Fuzzy wuzzy was a beart   581750t   goodt   blat   blacks   fuzzy was heret   800000s   Fuzzy wuzzy is a beart   wuzzys   ^[0-9]+$i   t   Fuzzyi    c         S   s
   |  d  j S(   RH   (    (   R>   (    (    s5   /mit/python/lib/python2.6/bsddb/test/test_dbtables.pyR2   Ï   s    (   R   R   R   R   R   R!   R   R   R   R   t   failR"   t   ret   compilet   searcht   matchR3   R4   t   Deletet	   ExactCondt
   PrefixCondR#   (   R   R'   R)   (    (    s5   /mit/python/lib/python2.6/bsddb/test/test_dbtables.pyR;   ‰   s~    ""
' 


&	c         C   sò  d } y |  i  i | ƒ Wn t i j
 o n X|  i  i | d d d d d g ƒ yY |  i  i | h d d 6t i h d d	 6d
 d 6d g d ƒ d 6d d 6ƒ |  i d ƒ Wn t i j
 o n X|  i  i | h d d 6d d 6d d 6d d 6d d 6ƒ |  i  i | h d d 6d d 6d d 6d d 6d d 6ƒ |  i  i | h d d 6d d 6d d 6d d 6d d 6ƒ t	 o |  i  i
 ƒ  n |  i  i | d d d g d  h t i d ƒ d 6t i d ƒ d 6t i d! ƒ d 6ƒ} |  i t | ƒ d" | ƒ d  S(#   Nt   test04_MultiCondSelectR<   R=   R>   R?   R@   RA   i   i   i   i   RB   i   RC   RD   s   Expected an exceptiont   At   Bt   Ct   Dt   Es   -As   -Bs   -Cs   -Ds   -Es   A-s   B-s   C-s   D-s   E-R   t   -i    (   R   R   R   R   R   R   R   R   RP   R   R!   R"   RV   RW   R3   R4   (   R   R'   R)   (    (    s5   /mit/python/lib/python2.6/bsddb/test/test_dbtables.pyRX   Ô   s6    "
'+++c         C   sâ   d } |  i  i | d d d d d g ƒ y9 |  i  i | h d d 6d d 6d d	 6ƒ |  i d
 ƒ Wn n X|  i  i | d d d	 g ƒ |  i  i | h d d 6d d 6d d	 6ƒ |  i  i | h d d 6d d 6d d	 6d d 6ƒ d  S(   Nt   test_CreateOrExtendt   namet   tastet   fillings   alcohol contentt   pricet   crapR-   s   is it Guinness?s.   Insert should've failed due to bad column namet   greatR0   t   Guinness(   R   t   CreateOrExtendTableR   RP   (   R   R'   (    (    s5   /mit/python/lib/python2.6/bsddb/test/test_dbtables.pyR_   ü   s$    	
c         C   sƒ  d } |  i  i | d d d d d d g ƒ |  i  i | h d d 6d	 d 6d
 d 6ƒ |  i  i | h d d 6d d 6d
 d 6d d 6ƒ |  i  i | h d d 6d d 6d
 d 6d d 6ƒ |  i  i | d d g d h t i d ƒ d 6ƒ} |  i t | ƒ d | ƒ |  i | d d | d d | ƒ |  i | d d | d d | ƒ |  i  i | d d g d h t i	 d ƒ d 6ƒ} |  i t | ƒ d | ƒ |  i | d d d | ƒ |  i | d d d | ƒ |  i  i | d  h t i ƒ  d 6t i	 d ƒ d 6t i d ƒ d 6t i d ƒ d 6t i d ƒ d 6d „  d 6ƒ } |  i t | ƒ d | ƒ |  i | d d d | ƒ |  i | d d d | ƒ d  S(   Nt   test_CondObjsR<   R=   R>   R?   R@   t   ps   the letter As   the letter Bs   is for cookies   is for aardvarks   the letter Es
   is for dogs   is for PythonR   s   the li   i    i   s
   %aardvark%s   %letter%t   iss   is forc         S   s   |  S(    (    (   t   s(    (    s5   /mit/python/lib/python2.6/bsddb/test/test_dbtables.pyR2   9  s    (   R   R   R   R"   R   RW   R3   R4   t   assertNotEqualt   LikeCondR#   t   CondRV   (   R   R'   R)   (    (    s5   /mit/python/lib/python2.6/bsddb/test/test_dbtables.pyRh     sF    %	##	c         C   sÙ   d } |  i  i | d d d g ƒ |  i  i | h d d 6d d 6ƒ |  i  i | h d d 6d d 6d	 d 6ƒ |  i  i | d
 h t i d ƒ d 6ƒ|  i  i | d g d
 h t i d ƒ d 6ƒ} |  i t | ƒ d ƒ d  S(   Nt   test_DeleteR1   t   yt   zt   X1t   Y1t   X2t   Y2t   Z2R   t   Xi    (	   R   R   R   RU   R   RW   R"   R3   R4   (   R   R'   R)   (    (    s5   /mit/python/lib/python2.6/bsddb/test/test_dbtables.pyRo   >  s    !(&c         C   s  d } |  i  i | d d d g ƒ |  i  i | h d d 6d d 6d d 6ƒ |  i  i | h d d 6d	 d 6ƒ |  i  i | h d
 d 6d d 6ƒ d „  } d „  } d „  } |  i  i | d h t i d ƒ d 6d h | d 6ƒ|  i  i | d h t i d ƒ d 6d h | d 6ƒ|  i  i | d h t i d ƒ d 6d h | d 6ƒy7 |  i  i | d h t i d ƒ d 6d h d d 6ƒWn t j
 o n Xt d ‚ |  i  i	 | d  d h t i d
 ƒ d 6ƒ} |  i t | ƒ d | ƒ |  i | d d d  | ƒ |  i | d d d  | ƒ |  i  i	 | d  d h t i d ƒ d 6ƒ} |  i t | ƒ d | ƒ |  i | d d d | ƒ |  i | d d d | ƒ |  i  i	 | d  d h t i d ƒ d 6ƒ} |  i t | ƒ d | ƒ |  i | d d d | ƒ |  i | d d d | ƒ d  S(   Nt   test_Modifyt   Namet   Typet   Accesss   Index to MP3 files.doct   Wordt   8s	   Nifty.MP3t   1t   Unknownt   0c         S   s   |  d  j o d S|  S(   Nt   MP3(   R#   (   t   type(    (    s5   /mit/python/lib/python2.6/bsddb/test/test_dbtables.pyt   set_typeW  s    c         S   s   t  t |  ƒ d ƒ S(   Ni   (   t   strt   int(   t   count(    (    s5   /mit/python/lib/python2.6/bsddb/test/test_dbtables.pyt   increment_access\  s    c         S   s   d  S(   N(   R#   (   t   value(    (    s5   /mit/python/lib/python2.6/bsddb/test/test_dbtables.pyt   remove_value_  s    R   t   mappingss   %MP3%t   %s   What is your quest?s.   why was TypeError not raised for bad callable?i   i    R   t   2s   %doc%t   9(   R   R   R   t   ModifyR   RV   Rm   t	   TypeErrorR5   R"   R#   R3   R4   (   R   R'   Rƒ   R‡   R‰   R)   (    (    s5   /mit/python/lib/python2.6/bsddb/test/test_dbtables.pyRx   N  sT    !!									"(   t   __name__t
   __module__t   db_nameR   R   R   R+   R;   RX   R_   Rh   Ro   Rx   (    (    (    s5   /mit/python/lib/python2.6/bsddb/test/test_dbtables.pyR   $   s   	
			2	K	(		*	c          C   s&   t  i ƒ  }  |  i t  i t ƒ ƒ |  S(   N(   t   unittestt	   TestSuitet   addTestt	   makeSuiteR   (   t   suite(    (    s5   /mit/python/lib/python2.6/bsddb/test/test_dbtables.pyt
   test_suiteŽ  s    t   __main__t   defaultTestR˜   (   t   osRQ   t   cPickleR   t   ImportErrorR“   R   R    R   R   R   R   R   t   TestCaseR   R˜   R   t   main(    (    (    s5   /mit/python/lib/python2.6/bsddb/test/test_dbtables.pyt   <module>   s   
.ÿ k	