ÿØÿàJFIFÿþ ÿÛC       ÿÛC ÿÀÿÄÿÄ"#QrÿÄÿÄ&1!A"2qQaáÿÚ ?Øy,æ/3JæÝ¹È߲؋5êXw²±ÉyˆR”¾I0ó2—PI¾IÌÚiMö¯–þrìN&"KgX:Šíµ•nTJnLK„…@!‰-ý ùúmë;ºgµŒ&ó±hw’¯Õ@”Ü— 9ñ-ë.²1<yà‚¹ïQÐU„ہ?.’¦èûbß±©Ö«Âw*VŒ) `$‰bØÔŸ’ëXÖ-ËTÜíGÚ3ð«g Ÿ§¯—Jx„–’U/ÂÅv_s(Hÿ@TñJÑãõçn­‚!ÈgfbÓc­:él[ðQe 9ÀPLbÃãCµm[5¿ç'ªjglå‡Ûí_§Úõl-;"PkÞÞÁQâ¼_Ñ^¢SŸx?"¸¦ùY騐ÒOÈ q’`~~ÚtËU¹CڒêV  I1Áß_ÿÙ 4]c@sddlmZddlZddlZddlmZddlmZddlmZddlmZdd lm Z dd lm Z dd l m Z d ej fd YZdefdYZdS(i(tdequeNi(tconfig(tfixtures(t profilingi(t create_engine(tMetaData(tutil(tSessiontReplayFixtureTestcBs>eZejdZdZdZdZdZRS(cos dVdS(N((tselftargtkw((sT/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/testing/replay_fixture.pyt _dummy_ctxscs<ttjjjfd}ttjjd|dt}t||_ ||_ t ||_ |j z|jd|jWd|j|jXfd}ttjjd|dt}t||_ ||_ t ||_ |j z|jdtjWd|j j|jXdS(NcsjS(N(trecorder((tcreatort dbapi_session(sT/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/testing/replay_fixture.pyR sRtuse_native_hstoretctxcs jS(N(tplayer((R(sT/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/testing/replay_fixture.pyR)s(tReplayableSessionRtdbtpoolt_creatorRturltFalseRtmetadatatengineRtsessiont setup_enginet _run_stepsR tteardown_enginetdisposeRtcount_functionstclose(R R RR((RRsT/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/testing/replay_fixture.pyttest_invocations0        cCsdS(N((R ((sT/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/testing/replay_fixture.pyR;scCsdS(N((R ((sT/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/testing/replay_fixture.pyR>scCs tdS(N(tNotImplementedError(R R((sT/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/testing/replay_fixture.pyRAs( t__name__t __module__t contextlibtcontextmanagerR R"RRR(((sT/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/testing/replay_fixture.pyRs  (  RcBsteZdZeZeZejrege e D]$Z e j ds7e e e ^q7jgdD]Z e e e ^qkZnege e D]$Z e j dse e e ^qjgejD]'Z ee esee ne ^qjgdD]Z e e e ^q ZdZd Zd Zd efd YZd efdYZRS(sA simple record/playback tool. This is *not* a mock testing class. It only records a session for later playback and makes no assertions on call consistency whatsoever. It's unlikely to be suitable for anything other than DB-API recording. t_t FunctionTypetBuiltinFunctionTypet MethodTypetBuiltinMethodTypet LambdaTypetUnboundMethodTypecCst|_dS(N(Rtbuffer(R ((sT/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/testing/replay_fixture.pyt__init__~scCs|j|j|S(N(tRecorderR/(R tbase((sT/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/testing/replay_fixture.pyR scCs|j|jS(N(tPlayerR/(R ((sT/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/testing/replay_fixture.pyRsR1cBs2eZdZdZedZdZRS(cCs||_||_dS(N(t_buffert_subject(R R/tsubject((sT/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/testing/replay_fixture.pyR0s cOsgdD]}tj||^q\}}|||}t|tjkrr|jtjt|||S|j||SdS(NR5R4(R5R4(tobjectt__getattribute__ttypeRtNativestappendtCallable(R targsR txR6R/tresult((sT/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/testing/replay_fixture.pyt__call__s( cCs|jS(N(R5(R ((sT/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/testing/replay_fixture.pyt _sqla_unwrapscCsytj||SWntk r'nXgdD]}tj||^q/\}}yt|j||}Wn$tk r|jtjnJXt|tjkr|jtjt|||S|j||SdS(NR5R4(R5R4( R7R8tAttributeErrorR9R;Rt NoAttributeR:R<(R tkeyR>R6R/R?((sT/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/testing/replay_fixture.pyR8s  (  (R$R%R0R@tpropertyRAR8(((sT/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/testing/replay_fixture.pyR1s  R3cBs2eZdZdZedZdZRS(cCs ||_dS(N(R4(R R/((sT/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/testing/replay_fixture.pyR0scOs9tj|d}|j}|tjkr1|S|SdS(NR4(R7R8tpopleftRR<(R R=R R/R?((sT/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/testing/replay_fixture.pyR@s  cCsdS(N(tNone(R ((sT/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/testing/replay_fixture.pyRAscCsytj||SWntk r'nXtj|d}|j}|tjkrY|S|tjkrwt|n|SdS(NR4(R7R8RBRFRR<RC(R RDR/R?((sT/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/testing/replay_fixture.pyR8s  (R$R%R0R@RERAR8(((sT/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/testing/replay_fixture.pyR3s  (R)R*R+R,R-R.(R)R*R+R,R-(R$R%t__doc__R7R<RCRtpy2ktsettdirttypesttt startswithtgetattrt differenceR:tuniont __builtins__tvaluest isinstanceR9R0R RR1R3(((sT/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/testing/replay_fixture.pyREs<   :%':"   .(t collectionsRR&RLtRRRRRRtormRtTestBaseRR7R(((sT/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/testing/replay_fixture.pyts  7