Ñò
ïžòKc           @   s  d  d k  Z  d  d k Z d  d k Z d  d k Z d e  i f d „  ƒ  YZ d e  i f d „  ƒ  YZ d e  i f d „  ƒ  YZ d e  i f d	 „  ƒ  YZ	 d
 e  i f d „  ƒ  YZ
 d e  i f d „  ƒ  YZ d e  i f d „  ƒ  YZ d „  Z d „  Z e d j o e ƒ  n d S(   iÿÿÿÿNt   ModuleTestsc           B   s}   e  Z d  „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z	 d „  Z
 d	 „  Z d
 „  Z d „  Z d „  Z RS(   c         C   s!   |  i  t i d d t i ƒ d  S(   Ns   2.0s   apilevel is %s, should be 2.0(   t   assertEqualt   sqlitet   apilevel(   t   self(    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyt   CheckAPILevel   s    c         C   s!   |  i  t i d d t i ƒ d  S(   Ni   s   threadsafety is %d, should be 1(   R   R   t   threadsafety(   R   (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyt   CheckThreadSafety"   s    c         C   s!   |  i  t i d d t i ƒ d  S(   Nt   qmarks%   paramstyle is '%s', should be 'qmark'(   R   R   t
   paramstyle(   R   (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyt   CheckParamStyle&   s    c         C   s    |  i  t t i t ƒ d ƒ d  S(   Ns*   Warning is not a subclass of StandardError(   t   assert_t
   issubclassR   t   Warningt   StandardError(   R   (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyt   CheckWarning+   s    c         C   s    |  i  t t i t ƒ d ƒ d  S(   Ns(   Error is not a subclass of StandardError(   t
   failUnlessR   R   t   ErrorR   (   R   (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyt
   CheckError/   s    c         C   s#   |  i  t t i t i ƒ d ƒ d  S(   Ns)   InterfaceError is not a subclass of Error(   R   R   R   t   InterfaceErrorR   (   R   (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyt   CheckInterfaceError3   s    c         C   s#   |  i  t t i t i ƒ d ƒ d  S(   Ns(   DatabaseError is not a subclass of Error(   R   R   R   t   DatabaseErrorR   (   R   (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyt   CheckDatabaseError7   s    c         C   s#   |  i  t t i t i ƒ d ƒ d  S(   Ns,   DataError is not a subclass of DatabaseError(   R   R   R   t	   DataErrorR   (   R   (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyt   CheckDataError;   s    c         C   s#   |  i  t t i t i ƒ d ƒ d  S(   Ns3   OperationalError is not a subclass of DatabaseError(   R   R   R   t   OperationalErrorR   (   R   (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyt   CheckOperationalError?   s    c         C   s#   |  i  t t i t i ƒ d ƒ d  S(   Ns1   IntegrityError is not a subclass of DatabaseError(   R   R   R   t   IntegrityErrorR   (   R   (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyt   CheckIntegrityErrorC   s    c         C   s#   |  i  t t i t i ƒ d ƒ d  S(   Ns0   InternalError is not a subclass of DatabaseError(   R   R   R   t   InternalErrorR   (   R   (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyt   CheckInternalErrorG   s    c         C   s#   |  i  t t i t i ƒ d ƒ d  S(   Ns3   ProgrammingError is not a subclass of DatabaseError(   R   R   R   t   ProgrammingErrorR   (   R   (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyt   CheckProgrammingErrorK   s    c         C   s#   |  i  t t i t i ƒ d ƒ d  S(   Ns4   NotSupportedError is not a subclass of DatabaseError(   R   R   R   t   NotSupportedErrorR   (   R   (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyt   CheckNotSupportedErrorO   s    	(   t   __name__t
   __module__R   R   R
   R   R   R   R   R   R   R   R   R    R"   (    (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyR       s   												t   ConnectionTestsc           B   sb   e  Z d  „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z	 d „  Z
 d	 „  Z RS(
   c         C   sB   t  i d ƒ |  _ |  i i ƒ  } | i d ƒ | i d d ƒ d  S(   Ns   :memory:s4   create table test(id integer primary key, name text)s!   insert into test(name) values (?)t   foo(   s   foo(   R   t   connectt   cxt   cursort   execute(   R   t   cu(    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyt   setUpU   s    c         C   s   |  i  i ƒ  d  S(   N(   R(   t   close(   R   (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyt   tearDown[   s    c         C   s   |  i  i ƒ  d  S(   N(   R(   t   commit(   R   (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyt   CheckCommit^   s    c         C   s   |  i  i ƒ  |  i  i ƒ  d S(   sV   
        A commit should also work when no changes were made to the database.
        N(   R(   R/   (   R   (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyt   CheckCommitAfterNoChangesa   s    c         C   s   |  i  i ƒ  d  S(   N(   R(   t   rollback(   R   (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyt   CheckRollbackh   s    c         C   s   |  i  i ƒ  |  i  i ƒ  d S(   sX   
        A rollback should also work when no changes were made to the database.
        N(   R(   R2   (   R   (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyt   CheckRollbackAfterNoChangesk   s    c         C   s   |  i  i ƒ  } d  S(   N(   R(   R)   (   R   R+   (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyt   CheckCursorr   s    c         C   sD   d } y t  i | ƒ } Wn t  i j
 o d  SX|  i d ƒ d  S(   Ns   /foo/bar/bla/23534/mydb.dbs&   should have raised an OperationalError(   R   R'   R   t   fail(   R   t   YOU_CANNOT_OPEN_THISt   con(    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyt   CheckFailedOpenu   s    c         C   s   |  i  i ƒ  d  S(   N(   R(   R-   (   R   (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyt
   CheckClose}   s    c         C   sþ   |  i  |  i i t i ƒ |  i  |  i i t i ƒ |  i  |  i i t i ƒ |  i  |  i i t i ƒ |  i  |  i i t i ƒ |  i  |  i i t i ƒ |  i  |  i i	 t i	 ƒ |  i  |  i i
 t i
 ƒ |  i  |  i i t i ƒ |  i  |  i i t i ƒ d  S(   N(   t   failUnlessEqualR(   R   R   R   R   R   R   R   R   R   R   R!   (   R   (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyt   CheckExceptions€   s    (   R#   R$   R,   R.   R0   R1   R3   R4   R5   R9   R:   R<   (    (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyR%   T   s   									t   CursorTestsc           B   s�  e  Z d  „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z	 d „  Z
 d	 „  Z d
 „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z  d „  Z! d  „  Z" d! „  Z# d" „  Z$ d# „  Z% d$ „  Z& d% „  Z' d& „  Z( d' „  Z) d( „  Z* d) „  Z+ d* „  Z, d+ „  Z- d, „  Z. RS(-   c         C   sK   t  i d ƒ |  _ |  i i ƒ  |  _ |  i i d ƒ |  i i d d ƒ d  S(   Ns   :memory:sC   create table test(id integer primary key, name text, income number)s!   insert into test(name) values (?)R&   (   s   foo(   R   R'   R(   R)   R+   R*   (   R   (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyR,   Ž   s    c         C   s   |  i  i ƒ  |  i i ƒ  d  S(   N(   R+   R-   R(   (   R   (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyR.   ”   s    c         C   s   |  i  i d ƒ d  S(   Ns   delete from test(   R+   R*   (   R   (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyt   CheckExecuteNoArgs˜   s    c         C   sR   y! |  i  i d ƒ |  i d ƒ Wn* t i j
 o d  S|  i d ƒ n Xd  S(   Ns   select asdfs&   should have raised an OperationalErrors   raised wrong exception(   R+   R*   R6   R   R   (   R   (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyt   CheckExecuteIllegalSql›   s    c         C   sR   y! |  i  i d ƒ |  i d ƒ Wn* t i j
 o d  S|  i d ƒ n Xd  S(   Ns   select 5+4; select 4+5s   should have raised a Warnings   raised wrong exception(   R+   R*   R6   R   R   (   R   (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyt   CheckExecuteTooMuchSql¤   s    c         C   s   |  i  i d ƒ d  S(   Ns   select 5+4; -- foo bar(   R+   R*   (   R   (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyt   CheckExecuteTooMuchSql2­   s    c         C   s   |  i  i d ƒ d  S(   NsT   
            select 5+4;

            /*
            foo
            */
            (   R+   R*   (   R   (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyt   CheckExecuteTooMuchSql3°   s    	c         C   sO   y! |  i  i d ƒ |  i d ƒ Wn' t j
 o d  S|  i d ƒ n Xd  S(   Ni*   s   should have raised a ValueErrors   raised wrong exception.(   R+   R*   R6   t
   ValueError(   R   (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyt   CheckExecuteWrongSqlArg¹   s    c         C   s   |  i  i d d ƒ d  S(   Ns   insert into test(id) values (?)i*   (   i*   (   R+   R*   (   R   (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyt   CheckExecuteArgIntÂ   s    c         C   s   |  i  i d d ƒ d  S(   Ns#   insert into test(income) values (?)gq=
×£ˆ£@(   gq=
×£ˆ£@(   R+   R*   (   R   (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyt   CheckExecuteArgFloatÅ   s    c         C   s   |  i  i d d ƒ d  S(   Ns!   insert into test(name) values (?)t   Hugo(   RG   (   R+   R*   (   R   (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyt   CheckExecuteArgStringÈ   s    c         C   sA   y$ |  i  i d d ƒ |  i d ƒ Wn t i j
 o n Xd  S(   Ns   insert into test(id) values (?)i   t   Egons#   should have raised ProgrammingError(   i   RI   (   R+   R*   R6   R   R   (   R   (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyt   CheckExecuteWrongNoOfArgs1Ë   s
    c         C   s>   y! |  i  i d ƒ |  i d ƒ Wn t i j
 o n Xd  S(   Ns   insert into test(id) values (?)s#   should have raised ProgrammingError(   R+   R*   R6   R   R   (   R   (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyt   CheckExecuteWrongNoOfArgs2Ó   s
    c         C   s>   y! |  i  i d ƒ |  i d ƒ Wn t i j
 o n Xd  S(   Ns   insert into test(id) values (?)s#   should have raised ProgrammingError(   R+   R*   R6   R   R   (   R   (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyt   CheckExecuteWrongNoOfArgs3Û   s
    c         C   sM   |  i  i d ƒ |  i  i d d g ƒ |  i  i ƒ  } |  i | d d ƒ d  S(   Ns%   insert into test(name) values ('foo')s"   select name from test where name=?R&   i    (   R+   R*   t   fetchoneR;   (   R   t   row(    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyt   CheckExecuteParamListã   s    c         C   sc   d t  f d „  ƒ  Y} |  i i d ƒ |  i i d | ƒ  ƒ |  i i ƒ  } |  i | d d ƒ d  S(   Nt   Lc           B   s   e  Z d  „  Z d „  Z RS(   c         S   s   d S(   Ni   (    (   R   (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyt   __len__ë   s    c         S   s   | d j p t  ‚ d S(   Ni    R&   (   t   AssertionError(   R   t   x(    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyt   __getitem__í   s    (   R#   R$   RQ   RT   (    (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyRP   ê   s   	s%   insert into test(name) values ('foo')s"   select name from test where name=?i    R&   (   t   objectR+   R*   RM   R;   (   R   RP   RN   (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyt   CheckExecuteParamSequenceé   s
    c         C   sQ   |  i  i d ƒ |  i  i d h d d 6ƒ |  i  i ƒ  } |  i | d d ƒ d  S(   Ns%   insert into test(name) values ('foo')s&   select name from test where name=:nameR&   t   namei    (   R+   R*   RM   R;   (   R   RN   (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyt   CheckExecuteDictMappingö   s    c         C   sx   t  i d	 j  o d  Sd t f d „  ƒ  Y} |  i i d ƒ |  i i d | ƒ  ƒ |  i i ƒ  } |  i | d d ƒ d  S(
   Ni   i   i    t   Dc           B   s   e  Z d  „  Z RS(   c         S   s   d S(   NR&   (    (   R   t   key(    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyt   __missing__  s    (   R#   R$   R[   (    (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyRY     s   s%   insert into test(name) values ('foo')s&   select name from test where name=:nameR&   (   i   i   i    (   t   syst   version_infot   dictR+   R*   RM   R;   (   R   RY   RN   (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyt   CheckExecuteDictMapping_Mappingü   s    c         C   sX   |  i  i d ƒ y+ |  i  i d h d d 6ƒ |  i d ƒ Wn t i j
 o n Xd  S(   Ns%   insert into test(name) values ('foo')s1   select name from test where name=:name and id=:idR&   RW   s#   should have raised ProgrammingError(   R+   R*   R6   R   R   (   R   (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyt$   CheckExecuteDictMappingTooLittleArgs
  s    c         C   sN   |  i  i d ƒ y! |  i  i d ƒ |  i d ƒ Wn t i j
 o n Xd  S(   Ns%   insert into test(name) values ('foo')s&   select name from test where name=:names#   should have raised ProgrammingError(   R+   R*   R6   R   R   (   R   (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyt   CheckExecuteDictMappingNoArgs  s    c         C   sX   |  i  i d ƒ y+ |  i  i d h d d 6ƒ |  i d ƒ Wn t i j
 o n Xd  S(   Ns%   insert into test(name) values ('foo')s"   select name from test where name=?R&   RW   s#   should have raised ProgrammingError(   R+   R*   R6   R   R   (   R   (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyt   CheckExecuteDictMappingUnnamed  s    c         C   s   |  i  i ƒ  d  S(   N(   R+   R-   (   R   (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyR:   "  s    c         C   sZ   |  i  i d ƒ |  i  i d ƒ |  i  i d ƒ |  i  i d ƒ |  i |  i  i d ƒ d  S(   Ns   delete from tests%   insert into test(name) values ('foo')s   update test set name='bar'i   (   R+   R*   R;   t   rowcount(   R   (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyt   CheckRowcountExecute%  s
    c         C   s*   |  i  i d ƒ |  i |  i  i d ƒ d S(   sÁ   
        pysqlite does not know the rowcount of SELECT statements, because we
        don't fetch all rows after executing the select statement. The rowcount
        has thus to be -1.
        s   select 5 union select 6iÿÿÿÿN(   R+   R*   R;   Rc   (   R   (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyt   CheckRowcountSelect,  s    c         C   sF   |  i  i d ƒ |  i  i d d d d g ƒ |  i |  i  i d ƒ d  S(	   Ns   delete from tests!   insert into test(name) values (?)i   i   i   (   i   (   i   (   i   (   R+   R*   t   executemanyR;   Rc   (   R   (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyt   CheckRowcountExecutemany5  s    c         C   sH   |  i  i d ƒ |  i  i d ƒ |  i i d j  o |  i d ƒ n d  S(   Ns%   insert into test(name) values ('foo')i   s"   total changes reported wrong value(   R+   R*   R(   t   total_changesR6   (   R   (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyt   CheckTotalChanges:  s    c         C   s>   |  i  i d g  } t d d ƒ D] } | | f q  ~ ƒ d  S(   Ns#   insert into test(income) values (?)id   in   (   R+   Rf   t   range(   R   t   _[1]RS   (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyt   CheckExecuteManySequenceD  s    c         C   s-   d d d „  ƒ  Y} |  i  i d | ƒ  ƒ d  S(   Nt   MyIterc           B   s   e  Z d  „  Z d „  Z RS(   c         S   s   d |  _  d  S(   Ni   (   t   value(   R   (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyt   __init__I  s    c         S   s7   |  i  d j o
 t ‚ n |  i  d 7_  |  i  f Sd  S(   Ni
   i   (   Rn   t   StopIteration(   R   (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyt   nextL  s    
(   R#   R$   Ro   Rq   (    (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyRm   H  s   	s#   insert into test(income) values (?)(    (   R+   Rf   (   R   Rm   (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyt   CheckExecuteManyIteratorG  s    c         C   s#   d „  } |  i  i d | ƒ  ƒ d  S(   Nc          s   s#   x t  d ƒ D] }  |  f Vq Wd  S(   Ni   (   Rj   (   t   i(    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyt   mygenV  s     s#   insert into test(income) values (?)(   R+   Rf   (   R   Rt   (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyt   CheckExecuteManyGeneratorU  s    	c         C   sU   y' |  i  i d d g ƒ |  i d ƒ Wn' t j
 o d  S|  i d ƒ n Xd  S(   Ni*   i   s   should have raised a ValueErrors   raised wrong exception.(   i   (   R+   Rf   R6   RC   (   R   (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyt   CheckExecuteManyWrongSqlArg\  s    c         C   sX   y' |  i  i d d g ƒ |  i d ƒ Wn* t i j
 o d  S|  i d ƒ n Xd  S(   Ns   select ?i   s%   should have raised a ProgrammingErrors   raised wrong exception.(   i   (   R+   Rf   R6   R   R   (   R   (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyt   CheckExecuteManySelecte  s    c         C   sl   y$ |  i  i d d ƒ |  i d ƒ WnA t j
 o d  St j
 o" } d G| i GH|  i d ƒ n Xd  S(   Ns#   insert into test(income) values (?)i*   s   should have raised a TypeErrort   raiseds   raised wrong exception.(   R+   Rf   R6   t	   TypeErrort	   Exceptiont	   __class__(   R   t   e(    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyt   CheckExecuteManyNotIterablen  s    c         C   s�   |  i  i d ƒ |  i  i d d ƒ |  i  i d d	 ƒ |  i  i d ƒ g  } x" |  i  D] } | i | d ƒ qV W|  i | d d ƒ |  i | d d ƒ d  S(
   Ns   delete from tests   insert into test(id) values (?)i   i   s   select id from test order by idi    i   (   i   (   i   (   R+   R*   t   appendR;   (   R   t   lstRN   (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyt   CheckFetchIterx  s    
 c         C   sV   |  i  i d ƒ |  i  i ƒ  } |  i | d d ƒ |  i  i ƒ  } |  i | d  ƒ d  S(   Ns   select name from testi    R&   (   R+   R*   RM   R;   t   None(   R   RN   (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyt   CheckFetchone„  s
    c         C   s/   |  i  i ƒ  } | i ƒ  } |  i | d  ƒ d  S(   N(   R(   R)   RM   R;   R�   (   R   t   curRN   (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyt   CheckFetchoneNoStatement‹  s    c         C   s›   |  i  |  i i d ƒ d |  i _ |  i i d ƒ |  i i d ƒ |  i i d ƒ |  i i d ƒ |  i i d ƒ |  i i ƒ  } |  i  t | ƒ d ƒ d  S(   Ni   i   s   delete from tests#   insert into test(name) values ('A')s#   insert into test(name) values ('B')s#   insert into test(name) values ('C')s   select name from test(   R;   R+   t	   arraysizeR*   t	   fetchmanyt   len(   R   t   res(    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyt   CheckArraySize�  s    c         C   s^   |  i  i d ƒ |  i  i d ƒ } |  i t | ƒ d ƒ |  i  i d ƒ } |  i | g  ƒ d  S(   Ns   select name from testid   i   (   R+   R*   R†   R;   R‡   (   R   Rˆ   (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyt   CheckFetchmany¡  s
    c         C   s?   |  i  i d ƒ |  i  i d d ƒ } |  i t | ƒ d ƒ d S(   s0   Checks if fetchmany works with keyword argumentss   select name from testt   sizeid   i   N(   R+   R*   R†   R;   R‡   (   R   Rˆ   (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyt   CheckFetchmanyKwArg¨  s    c         C   sX   |  i  i d ƒ |  i  i ƒ  } |  i t | ƒ d ƒ |  i  i ƒ  } |  i | g  ƒ d  S(   Ns   select name from testi   (   R+   R*   t   fetchallR;   R‡   (   R   Rˆ   (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyt   CheckFetchall®  s
    c         C   s   |  i  i d d d g ƒ d  S(   Ni   i   i   (   R+   t   setinputsizes(   R   (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyt   CheckSetinputsizesµ  s    c         C   s   |  i  i d d ƒ d  S(   Ni   i    (   R+   t   setoutputsize(   R   (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyt   CheckSetoutputsize¸  s    c         C   s   |  i  i d ƒ d  S(   Ni*   (   R+   R‘   (   R   (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyt   CheckSetoutputsizeNoColumn»  s    c         C   s   |  i  |  i i |  i ƒ d  S(   N(   R;   R+   t
   connectionR(   (   R   (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyt   CheckCursorConnection¾  s    c         C   sT   y, d „  } |  i  i | ƒ } |  i d ƒ Wn t j
 o d  SX|  i d ƒ d  S(   Nc           S   s   d  S(   N(    (    (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyt   fÄ  s    s   should have raised a TypeErrors   should have raised a ValueError(   R(   R)   R6   Ry   (   R   R–   Rƒ   (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyt   CheckWrongCursorCallableÂ  s    	c         C   sV   d d d „  ƒ  Y} | ƒ  } y  t  i | ƒ } |  i d ƒ Wn t j
 o n Xd  S(   Nt   Fooc           B   s   e  Z RS(    (   R#   R$   (    (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyR˜   Ì  s    s   should have raised a ValueError(    (   R   t   CursorR6   Ry   (   R   R˜   R&   Rƒ   (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyt   CheckCursorWrongClassË  s    	(/   R#   R$   R,   R.   R>   R?   R@   RA   RB   RD   RE   RF   RH   RJ   RK   RL   RO   RV   RX   R_   R`   Ra   Rb   R:   Rd   Re   Rg   Ri   Rl   Rr   Ru   Rv   Rw   R}   R€   R‚   R„   R‰   RŠ   RŒ   RŽ   R�   R’   R“   R•   R—   Rš   (    (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyR=   �   sZ   																															
								
													t   ThreadTestsc           B   sb   e  Z d  „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z	 d „  Z
 d	 „  Z RS(
   c         C   s8   t  i d ƒ |  _ |  i i ƒ  |  _ |  i i d ƒ d  S(   Ns   :memory:s\   create table test(id integer primary key, name text, bin binary, ratio number, ts timestamp)(   R   R'   R8   R)   Rƒ   R*   (   R   (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyR,   Õ  s    c         C   s   |  i  i ƒ  |  i i ƒ  d  S(   N(   Rƒ   R-   R8   (   R   (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyR.   Ú  s    c         C   s}   d „  } g  } t  i d | d h |  i d 6| d 6ƒ } | i ƒ  | i ƒ  t | ƒ d j o |  i d i | ƒ ƒ n d  S(   Nc         S   sR   y! |  i  ƒ  } | i d ƒ d  SWn* t i j
 o d  S| i d ƒ n Xd  S(   Ns   did not raise ProgrammingErrors   raised wrong exception(   R)   R~   R   R   (   R8   t   errorsRƒ   (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyt   runß  s    t   targett   kwargsR8   Rœ   i    s   
(   t	   threadingt   ThreadR8   t   startt   joinR‡   R6   (   R   R�   Rœ   t   t(    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyt   CheckConCursorÞ  s    	
)

c         C   s}   d „  } g  } t  i d | d h |  i d 6| d 6ƒ } | i ƒ  | i ƒ  t | ƒ d j o |  i d i | ƒ ƒ n d  S(   Nc         S   sP   y |  i  ƒ  | i d ƒ d  SWn* t i j
 o d  S| i d ƒ n Xd  S(   Ns   did not raise ProgrammingErrors   raised wrong exception(   R/   R~   R   R   (   R8   Rœ   (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyR�   ñ  s    
Rž   RŸ   R8   Rœ   i    s   
(   R    R¡   R8   R¢   R£   R‡   R6   (   R   R�   Rœ   R¤   (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyt   CheckConCommitð  s    	
)

c         C   s}   d „  } g  } t  i d | d h |  i d 6| d 6ƒ } | i ƒ  | i ƒ  t | ƒ d j o |  i d i | ƒ ƒ n d  S(   Nc         S   sP   y |  i  ƒ  | i d ƒ d  SWn* t i j
 o d  S| i d ƒ n Xd  S(   Ns   did not raise ProgrammingErrors   raised wrong exception(   R2   R~   R   R   (   R8   Rœ   (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyR�     s    
Rž   RŸ   R8   Rœ   i    s   
(   R    R¡   R8   R¢   R£   R‡   R6   (   R   R�   Rœ   R¤   (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyt   CheckConRollback  s    	
)

c         C   s}   d „  } g  } t  i d | d h |  i d 6| d 6ƒ } | i ƒ  | i ƒ  t | ƒ d j o |  i d i | ƒ ƒ n d  S(   Nc         S   sP   y |  i  ƒ  | i d ƒ d  SWn* t i j
 o d  S| i d ƒ n Xd  S(   Ns   did not raise ProgrammingErrors   raised wrong exception(   R-   R~   R   R   (   R8   Rœ   (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyR�     s    
Rž   RŸ   R8   Rœ   i    s   
(   R    R¡   R8   R¢   R£   R‡   R6   (   R   R�   Rœ   R¤   (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyt   CheckConClose  s    	
)

c         C   s}   d „  } g  } t  i d | d h |  i d 6| d 6ƒ } | i ƒ  | i ƒ  t | ƒ d j o |  i d i | ƒ ƒ n d  S(   Nc         S   sS   y" |  i  d ƒ | i d ƒ d  SWn* t i j
 o d  S| i d ƒ n Xd  S(   Ns#   insert into test(name) values ('a')s   did not raise ProgrammingErrors   raised wrong exception(   R*   R~   R   R   (   Rƒ   Rœ   (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyR�   '  s    Rž   RŸ   Rƒ   Rœ   i    s   
(   R    R¡   Rƒ   R¢   R£   R‡   R6   (   R   R�   Rœ   R¤   (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyt   CheckCurImplicitBegin&  s    	
)

c         C   s}   d „  } g  } t  i d | d h |  i d 6| d 6ƒ } | i ƒ  | i ƒ  t | ƒ d j o |  i d i | ƒ ƒ n d  S(   Nc         S   sP   y |  i  ƒ  | i d ƒ d  SWn* t i j
 o d  S| i d ƒ n Xd  S(   Ns   did not raise ProgrammingErrors   raised wrong exception(   R-   R~   R   R   (   Rƒ   Rœ   (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyR�   9  s    
Rž   RŸ   Rƒ   Rœ   i    s   
(   R    R¡   Rƒ   R¢   R£   R‡   R6   (   R   R�   Rœ   R¤   (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyt   CheckCurClose8  s    	
)

c         C   s�   d „  } g  } |  i  i d ƒ t i d | d h |  i  d 6| d 6ƒ } | i ƒ  | i ƒ  t | ƒ d j o |  i d i | ƒ ƒ n d  S(	   Nc         S   sS   y" |  i  d ƒ | i d ƒ d  SWn* t i j
 o d  S| i d ƒ n Xd  S(   Ns   select name from tests   did not raise ProgrammingErrors   raised wrong exception(   R*   R~   R   R   (   Rƒ   Rœ   (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyR�   K  s    s#   insert into test(name) values ('a')Rž   RŸ   Rƒ   Rœ   i    s   
(   Rƒ   R*   R    R¡   R¢   R£   R‡   R6   (   R   R�   Rœ   R¤   (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyt   CheckCurExecuteJ  s    	
)

c         C   s�   d „  } g  } |  i  i d ƒ |  i  i d ƒ t i d | d h |  i  d 6| d 6ƒ } | i ƒ  | i ƒ  t | ƒ d j o |  i d	 i | ƒ ƒ n d  S(
   Nc         S   sR   y! |  i  ƒ  } | i d ƒ d  SWn* t i j
 o d  S| i d ƒ n Xd  S(   Ns   did not raise ProgrammingErrors   raised wrong exception(   RM   R~   R   R   (   Rƒ   Rœ   RN   (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyR�   ^  s    s#   insert into test(name) values ('a')s   select name from testRž   RŸ   Rƒ   Rœ   i    s   
(   Rƒ   R*   R    R¡   R¢   R£   R‡   R6   (   R   R�   Rœ   R¤   (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyt   CheckCurIterNext]  s    	
)

(   R#   R$   R,   R.   R¥   R¦   R§   R¨   R©   Rª   R«   R¬   (    (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyR›   Ô  s   									t   ConstructorTestsc           B   sG   e  Z d  „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z RS(   c         C   s   t  i d d d ƒ } d  S(   NiÔ  i
   i   (   R   t   Date(   R   t   d(    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyt	   CheckDater  s    c         C   s   t  i d d d ƒ } d  S(   Ni   i'   i#   (   R   t   Time(   R   R¤   (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyt	   CheckTimeu  s    c         C   s"   t  i d d d d d d ƒ } d  S(   NiÔ  i
   i   i   i'   i#   (   R   t	   Timestamp(   R   t   ts(    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyt   CheckTimestampx  s    c         C   s   t  i d ƒ } d  S(   Ni*   (   R   t   DateFromTicks(   R   R¯   (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyt   CheckDateFromTicks{  s    c         C   s   t  i d ƒ } d  S(   Ni*   (   R   t   TimeFromTicks(   R   R¤   (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyt   CheckTimeFromTicks~  s    c         C   s   t  i d ƒ } d  S(   Ni*   (   R   t   TimestampFromTicks(   R   R´   (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyt   CheckTimestampFromTicks�  s    c         C   s   t  i t d ƒ d ƒ } d  S(   Ni    t   '(   R   t   Binaryt   chr(   R   t   b(    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyt   CheckBinary„  s    (	   R#   R$   R°   R²   Rµ   R·   R¹   R»   RÀ   (    (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyR­   q  s   						t   ExtensionTestsc           B   sG   e  Z d  „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z RS(   c         C   sY   t  i d ƒ } | i ƒ  } | i d ƒ | i d ƒ | i ƒ  d } |  i | d ƒ d  S(   Ns   :memory:s�   
            -- bla bla
            /* a stupid comment */
            create table a(i);
            insert into a(i) values (5);
            s   select i from ai    i   (   R   R'   R)   t   executescriptR*   RM   R;   (   R   R8   Rƒ   Rˆ   (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyt   CheckScriptStringSqlˆ  s    c         C   sY   t  i d ƒ } | i ƒ  } | i d ƒ | i d ƒ | i ƒ  d } |  i | d ƒ d  S(   Ns   :memory:u¶   
            create table a(i);
            insert into a(i) values (5);
            select i from a;
            delete from a;
            insert into a(i) values (6);
            s   select i from ai    i   (   R   R'   R)   RÂ   R*   RM   R;   (   R   R8   Rƒ   Rˆ   (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyt   CheckScriptStringUnicode•  s    c         C   sh   t  i d ƒ } | i ƒ  } t } y | i d ƒ Wn t  i j
 o t } n X|  i | t d ƒ d  S(   Ns   :memory:s   create table test(sadfsadfdsas   should have raised an exception(   R   R'   R)   t   FalseRÂ   R   t   TrueR;   (   R   R8   Rƒ   Rx   (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyt   CheckScriptErrorIncomplete£  s    c         C   sh   t  i d ƒ } | i ƒ  } t } y | i d ƒ Wn t  i j
 o t } n X|  i | t d ƒ d  S(   Ns   :memory:s5   create table test(sadfsadfdsa); select foo from hurz;s   should have raised an exception(   R   R'   R)   RÅ   RÂ   R   RÆ   R;   (   R   R8   Rƒ   Rx   (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyt   CheckScriptErrorNormal­  s    c         C   s?   t  i d ƒ } | i d ƒ i ƒ  d } |  i | d d ƒ d  S(   Ns   :memory:s   select 5i    i   s    Basic test of Connection.execute(   R   R'   R*   RM   R;   (   R   R8   t   result(    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyt   CheckConnectionExecute·  s    c         C   s�   t  i d ƒ } | i d ƒ | i d d
 d g ƒ | i d ƒ i ƒ  } |  i | d d d d ƒ |  i | d	 d d d ƒ d  S(   Ns   :memory:s   create table test(foo)s    insert into test(foo) values (?)i   i   s!   select foo from test order by fooi    s$   Basic test of Connection.executemanyi   (   i   (   i   (   R   R'   R*   Rf   R�   R;   (   R   R8   RÉ   (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyt   CheckConnectionExecutemany¼  s    c         C   sL   t  i d ƒ } | i d ƒ | i d ƒ i ƒ  d } |  i | d d ƒ d  S(   Ns   :memory:s9   create table test(foo); insert into test(foo) values (5);s   select foo from testi    i   s&   Basic test of Connection.executescript(   R   R'   RÂ   R*   RM   R;   (   R   R8   RÉ   (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyt   CheckConnectionExecutescriptÄ  s    (	   R#   R$   RÃ   RÄ   RÇ   RÈ   RÊ   RË   RÌ   (    (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyRÁ   ‡  s   			
	
		t   ClosedTestsc           B   s>   e  Z d  „  Z d „  Z d „  Z d „  Z d „  Z d „  Z RS(   c         C   s   d  S(   N(    (   R   (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyR,   Ë  s    c         C   s   d  S(   N(    (   R   (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyR.   Î  s    c         C   sf   t  i d ƒ } | i ƒ  y | i ƒ  } |  i d ƒ Wn) t  i j
 o n |  i d ƒ n Xd  S(   Ns   :memory:s%   Should have raised a ProgrammingError(   R   R'   R-   R)   R6   R   (   R   R8   Rƒ   (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyt   CheckClosedConCursorÑ  s    
c         C   sd   t  i d ƒ } | i ƒ  y | i ƒ  |  i d ƒ Wn) t  i j
 o n |  i d ƒ n Xd  S(   Ns   :memory:s%   Should have raised a ProgrammingError(   R   R'   R-   R/   R6   R   (   R   R8   (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyt   CheckClosedConCommitÜ  s    

c         C   sd   t  i d ƒ } | i ƒ  y | i ƒ  |  i d ƒ Wn) t  i j
 o n |  i d ƒ n Xd  S(   Ns   :memory:s%   Should have raised a ProgrammingError(   R   R'   R-   R2   R6   R   (   R   R8   (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyt   CheckClosedConRollbackç  s    

c         C   ss   t  i d ƒ } | i ƒ  } | i ƒ  y | i d ƒ |  i d ƒ Wn) t  i j
 o n |  i d ƒ n Xd  S(   Ns   :memory:s   select 4s%   Should have raised a ProgrammingError(   R   R'   R)   R-   R*   R6   R   (   R   R8   Rƒ   (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyt   CheckClosedCurExecuteò  s    
(   R#   R$   R,   R.   RÎ   RÏ   RÐ   RÑ   (    (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyRÍ   Ê  s   					c          C   s    t  i t d ƒ }  t  i t d ƒ } t  i t d ƒ } t  i t d ƒ } t  i t d ƒ } t  i t d ƒ } t  i t d ƒ } t  i	 |  | | | | | | f ƒ S(   Nt   Check(
   t   unittestt	   makeSuiteR    R%   R=   R›   R­   RÁ   RÍ   t	   TestSuite(   t   module_suitet   connection_suitet   cursor_suitet   thread_suitet   constructor_suitet	   ext_suitet   closed_suite(    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyt   suiteþ  s    c          C   s    t  i ƒ  }  |  i t ƒ  ƒ d  S(   N(   RÓ   t   TextTestRunnerR�   RÝ   (   t   runner(    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyt   test  s    t   __main__(   RÓ   R\   R    t   sqlite3R   t   TestCaseR    R%   R=   R›   R­   RÁ   RÍ   RÝ   Rà   R#   (    (    (    s(   scripts/common/Lib/sqlite3/test/dbapi.pyt   <module>   s   79ÿ H�C4	
	