%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /usr/local/lib/python2.7/test/
Upload File :
Create Path :
Current File : //usr/local/lib/python2.7/test/test_bdb.pyc


Nac@@spdZddlmZddlmZddlZddlZddlZddlZddl	Z	ddl
Z
ddlZddlm
Z
ddlmZmZddlZdefdYZd	efd
YZdefdYZd
efdYZdZejjeddZdZdZdejefdYZdefdYZ dd,dYZ!ddZ#e
dZ$ee%ddZ&dZ'e'dZ(dZ)dZ*dZ+dZ,d ej-fd!YZ.d"e.fd#YZ/d$e.fd%YZ0d&e.fd'YZ1d(e.fd)YZ2d*Z3e4d+krle3ndS(-s Test the bdb module.

    A test defines a list of tuples that may be seen as paired tuples, each
    pair being defined by 'expect_tuple, set_tuple' as follows:

        ([event, [lineno[, co_name[, eargs]]]]), (set_type, [sargs])

    * 'expect_tuple' describes the expected current state of the Bdb instance.
      It may be the empty tuple and no check is done in that case.
    * 'set_tuple' defines the set_*() method to be invoked when the Bdb
      instance reaches this state.

    Example of an 'expect_tuple, set_tuple' pair:

        ('line', 2, 'tfunc_main'), ('step', )

    Definitions of the members of the 'expect_tuple':
        event:
            Name of the trace event. The set methods that do not give back
            control to the tracer [1] do not trigger a tracer event and in
            that case the next 'event' may be 'None' by convention, its value
            is not checked.
            [1] Methods that trigger a trace event are set_step(), set_next(),
            set_return(), set_until() and set_continue().
        lineno:
            Line number. Line numbers are relative to the start of the
            function when tracing a function in the test_bdb module (i.e. this
            module).
        co_name:
            Name of the function being currently traced.
        eargs:
            A tuple:
            * On an 'exception' event the tuple holds a class object, the
              current exception must be an instance of this class.
            * On a 'line' event, the tuple holds a dictionary and a list. The
              dictionary maps each breakpoint number that has been hit on this
              line to its hits count. The list holds the list of breakpoint
              number temporaries that are being deleted.

    Definitions of the members of the 'set_tuple':
        set_type:
            The type of the set method to be invoked. This may
            be the type of one of the Bdb set methods: 'step', 'next',
            'until', 'return', 'continue', 'break', 'quit', or the type of one
            of the set methods added by test_bdb.Bdb: 'ignore', 'enable',
            'disable', 'clear', 'up', 'down'.
        sargs:
            The arguments of the set method if any, packed in a tuple.
i(tabsolute_import(tprint_functionN(tcontextmanager(tislicetrepeattBdbExceptioncB@seZRS((t__name__t
__module__(((s)/usr/local/lib/python2.7/test/test_bdb.pyRAstBdbErrorcB@seZdZRS(s!Error raised by the Bdb instance.(RRt__doc__(((s)/usr/local/lib/python2.7/test/test_bdb.pyRBstBdbSyntaxErrorcB@seZdZRS(sSyntax error in the test case.(RRR	(((s)/usr/local/lib/python2.7/test/test_bdb.pyR
CstBdbNotExpectedErrorcB@seZdZRS(sUnexpected result.(RRR	(((s)/usr/local/lib/python2.7/test/test_bdb.pyRDss.pycC@s+dtj_itj_dgtj_dS(Ni(t_bdbt
BreakpointtnexttbplisttNonet
bpbynumber(((s)/usr/local/lib/python2.7/test/test_bdb.pytreset_BreakpointNsc
C@sgtjjD]}|r
|^q
}|s/dSt}x|D]}|sWd}t}n|jrfdnd}|jr{dnd}|d|j|||j|j	t
jj|j
|jf7}|jr|d|jf7}n|d	7}q<W|S(
Nts!BpNum Temp Enb Hits Ignore Where
syes sno  tyessno s%-5d %s %s %-4d %-6d at %s:%ds
	stop only if %ss
(RR
RtFalsetTruet	temporarytenabledtnumberthitstignoretostpathtbasenametfiletlinetcond(tbptbp_listtheader_addedtinfotdisptenab((s)/usr/local/lib/python2.7/test/test_bdb.pytinfo_breakpointsSs"%
	 	tBdbcB@sqeZdZdZedddZdZdZdZ	dZ
dZdZd	Z
d
ZRS(s$Extend Bdb to enhance test coverage.cC@s%d|_tt|j|||S(N(Rt	currentbptsuperR)ttrace_dispatch(tselftframeteventtarg((s)/usr/local/lib/python2.7/test/test_bdb.pyR,ks	c	C@st|try|tkr't}ntj|d }|j}t||}|j}	|	j	}|	j
}|	j}ntt
|j||d|d|d|}
t|
trt|
n|
S(NiRR!tfuncname(t
isinstancetstrt__file__tglobalst	importlibt
import_modulet__dict__tevalt__code__tco_filenametco_firstlinenotco_nameR+R)t	set_breakR(R-tfilenametlinenoRR!R1tglobals_tmoduletfunctcodetres((s)/usr/local/lib/python2.7/test/test_bdb.pyR>os				cC@s|stdnyt|}Wn!tk
rHtd|nXytjj|}Wn!tk
rtd|nX|dkrtd|n|S(sReturn a breakpoint by its index in Breakpoint.bybpnumber.

        For invalid arg values or if the breakpoint doesn't exist,
        raise a ValueError.
        sBreakpoint number expecteds Non-numeric breakpoint number %ss!Breakpoint number %d out of rangesBreakpoint %d already deletedN(t
ValueErrortintRR
Rt
IndexErrorR(R-R0RR"((s)/usr/local/lib/python2.7/test/test_bdb.pytget_bpbynumbers

cC@sNtt|j||\|_|_|j|jd|_|j|jfS(Ni(R+R)t	get_stacktstacktindexR.(R-tftt((s)/usr/local/lib/python2.7/test/test_bdb.pyRJs'cC@s"|j|}|jd7_dS(s8Increment the ignore count of Breakpoint number 'bpnum'.iN(RIR(R-tbpnumR"((s)/usr/local/lib/python2.7/test/test_bdb.pyt
set_ignorescC@s|j|}t|_dS(N(RIRR(R-ROR"((s)/usr/local/lib/python2.7/test/test_bdb.pyt
set_enablescC@s|j|}t|_dS(N(RIRR(R-ROR"((s)/usr/local/lib/python2.7/test/test_bdb.pytset_disablescC@s+|j||}|r't|ndS(N(tclear_breakR(R-tfnameR@terr((s)/usr/local/lib/python2.7/test/test_bdb.pyt	set_clearscC@sB|jstdn|jd8_|j|jd|_dS(sMove up in the frame stack.sOldest frameiiN(RLRRKR.(R-((s)/usr/local/lib/python2.7/test/test_bdb.pytset_ups	cC@sU|jdt|jkr+tdn|jd7_|j|jd|_dS(sMove down in the frame stack.isNewest frameiN(RLtlenRKRR.(R-((s)/usr/local/lib/python2.7/test/test_bdb.pytset_downsN(RRR	R,RRR>RIRJRPRQRRRVRWRY(((s)/usr/local/lib/python2.7/test/test_bdb.pyR)hs								tTracercB@seZdZdeddZdZdZdZdZ	dZ
dZdZd	Z
d
ZdZdZd
ZdZdZdZdZddZdZdZRS(s$A tracer for testing the bdb module.cC@sXtt|jd|||_||_|dk	rAd|nd|_|jdS(NtskipsDry-run results for %s:(R+RZt__init__t
expect_settdry_runRtheadert	init_test(R-R]R[R^t	test_case((s)/usr/local/lib/python2.7/test/test_bdb.pyR\s
		cC@sad|_d|_d|_tt|jddd|_tt|jddd|_dS(Niii(	Rt
cur_exceptt
expect_set_notbreakpoint_hitstlistRR]t
expected_listtset_list(R-((s)/usr/local/lib/python2.7/test/test_bdb.pyR`s
			!cC@s|jdk	r|jn|dkrsy&tt|j|||}|SWqtk
ro}||_|jSXntt|j|||SdS(Nt	exception(RbRR+RZR,R(R-R.R/R0REte((s)/usr/local/lib/python2.7/test/test_bdb.pyR,s	cC@s4|j|sdS|jd|||jdS(Ntcall(t	stop_heret
process_eventtnext_set_method(R-R.t
argument_list((s)/usr/local/lib/python2.7/test/test_bdb.pyt	user_callscC@s|jd||jr_|jr_tjd}x(|jdD]}td|qDWn|jd|_|j	dS(NR s
s  (
RlR^RdR(tstriptsplittprinttdelete_temporariesRRm(R-R.R%R ((s)/usr/local/lib/python2.7/test/test_bdb.pyt	user_lines
	cC@s!|jd|||jdS(Ntreturn(RlRm(R-R.treturn_value((s)/usr/local/lib/python2.7/test/test_bdb.pytuser_returnscC@s'||_|jd||jdS(NRh(texc_infoRlRm(R-R.Rx((s)/usr/local/lib/python2.7/test/test_bdb.pytuser_exceptions	cC@s|jg}||f|_dS(N(R*Rd(R-R0R#((s)/usr/local/lib/python2.7/test/test_bdb.pytdo_clearscC@s5|jr1x%|jdD]}|j|qWndS(Ni(Rdtclear_bpbynumber(R-tn((s)/usr/local/lib/python2.7/test/test_bdb.pyRss	cC@sh|jd7_y|jjd|_Wn$tk
rNtd|jnX|jjd|_dS(Niis-expect_set list exhausted, cannot pop item %d(RcRftpoptexpectRHRRgt	set_tuple(R-((s)/usr/local/lib/python2.7/test/test_bdb.pytpop_next
s
c
G@s+d}|dkr"|jd}n|j|||jdk	ri|jri|jg}|gf|_n||_|j|jr|j|j	dS|j
r|j|j
d|d|jn|dkr|j
dnBt|j
dkr'|dkr|j
d\}}t|j}|jsK|jd	|jn|j||jdd
|jg|D]}	||	^qrg|jdD]}	|j|	j^qd|jt||jdd
q'|dkr't|jd|j
ds$|jd|j|jfq$q'ndS(NRhiisWrong event typeRjRuiR s(No breakpoints hit at expect_set item %dsBreakpoint numbers do not matchsWrong breakpoint hit countisWrong temporary breakpointss/Wrong exception at expect_set item %d, got '%s'(RjRu(RRxRJR*RdR/RR^tprint_stateR_R~tcheck_equaltcheck_lno_nametcheck_expect_max_sizeRXtsortedtkeystraise_not_expectedRcRIRR2(
R-R/R.targsttbR#tbpsttemporariestbpnumsR|((s)/usr/local/lib/python2.7/test/test_bdb.pyRlsL	
		
	 &
cC@s1||krdS|jd||j|fdS(Ns"%s at expect_set item %d, got '%s'(RRc(R-texpectedtresulttmsg((s)/usr/local/lib/python2.7/test/test_bdb.pyRFs	cC@szt|j}|dkrD|j}|j|jd|dn|dkrv|j|jd|jjjdndS(s+Check the line number and function co_name.isWrong line numberisWrong function nameN(RXR~tlno_abs2relRR.tf_codeR=(R-tsR@((s)/usr/local/lib/python2.7/test/test_bdb.pyRLscC@s8t|j|kr4td|j|jfndS(Ns'Invalid size of the %s expect tuple: %s(RXR~R
R/(R-tsize((s)/usr/local/lib/python2.7/test/test_bdb.pyRVscC@sR|j|jjj}|jj}||jtkrN||jjjdS|S(Ni(tcanonicR.RR;tf_linenoR4R<(R-RTR@((s)/usr/local/lib/python2.7/test/test_bdb.pyR[scC@s=|r9|j||jtkr9|jjj|dS|S(Ni(RR4R.RR<(R-RTR@((s)/usr/local/lib/python2.7/test/test_bdb.pytlno_rel2absas9cC@s!|j}|jjj}d|j||f}|jrd}xN|jdD]?}|dkrm|d7}n|d||j|jf7}qNW|d7}d|dt|jdd	}|d|7}n*|jd
kr|d|j	dj
7}n|d7}|jdt|jd
S(Ns('%s', %d, '%s't{is, s%s: %st}t(it)Rhs), i t,(
RR.RR=R/RdRIRR3RxRtljustR(R-R@R=tstateRR|((s)/usr/local/lib/python2.7/test/test_bdb.pyt	get_statefs 	
$
#
cC@sP|dk	r/|jdkr/tt|ntd|j|jfdS(Nis%d: %s(RRcRrR(R-R_((s)/usr/local/lib/python2.7/test/test_bdb.pyRxs
cC@sE|d7}|dt|j7}|d|j7}t|dS(Ns
s  Expected: %s
s  Got:      (R3R~RR(R-R((s)/usr/local/lib/python2.7/test/test_bdb.pyR~s
cC@s|jd}t|jdkr/|jdnd}t|d|}|dkr_|dS|dkr|||jdS|d
kr||jdS|r|dks|dkr|dkr|d}|d}|j||}||gt|d}||n/|dkr)||n|dkr?|nd|_|j|j	rh|j
n#|jr~|jn|j
d|jntd|jdS(Niiitset_tsteptcontinuetquitRRutuntiltbreaktclearRtenabletdisabletuptdownis"%s" is an invalid set_tuple(RRR(RRu(RRRRR(RR(RR(RRR(RR(RRXRtgetattrR.RReR/RR^RR~RRRmR
(R-tset_typeRt
set_methodRTR@((s)/usr/local/lib/python2.7/test/test_bdb.pyRmsD
(

	




	
	
	


N(RRR	RRR\R`R,RoRtRwRyRzRsRRlRRRRRRRRRm(((s)/usr/local/lib/python2.7/test/test_bdb.pyRZs*					
					
	2		
					t	TracerRuncB@s5eZdZddZdZddddZRS(sAProvide a context for running a Tracer instance with a test case.cC@sF||_|j|_t|jd|d|jd|j|_dS(NR[R^Ra(RaR^RZR]tidttracer(R-RaR[((s)/usr/local/lib/python2.7/test/test_bdb.pyR\s	cC@st|jS(N(RR(R-((s)/usr/local/lib/python2.7/test/test_bdb.pyt	__enter__scC@sttjdd}|jjrG|d7}|d|jj7}n|dk	rtt|rt	|t
r|jr|jd}|r|d|7}n|jrt
|tS|jj|qtstdn|r|jrt
|q|jj|ndS(NRs+All paired tuples have not been processed, sthe last one was number %dis
s#BdbNotExpectedError with empty args(RtsystsettraceRRRgRct
issubclassRR2t
BaseExceptionRR^RrRRatfailRtAssertionError(R-ttype_tvaluet	tracebackt	not_emptyterr_msg((s)/usr/local/lib/python2.7/test/test_bdb.pyt__exit__s*


	
	
N(RRR	RR\RR(((s)/usr/local/lib/python2.7/test/test_bdb.pyRs	c
C@sd}ddg}|j|t}t|_d|_t|td	t||_t	|Ct
jjt
jt|d|}|jtWdQXWdQXdS(
s{Run a test and print the dry-run results.

    'modules':  A dictionary mapping module names to their source code as a
                string. The dictionary MUST include one module named
                'test_module' with a main() function.
    'set_list': A list of set_type tuples to be run on the module.

    For example, running the following script outputs the following results:

    *****************************   SCRIPT   ********************************

    from test.test_bdb import run_test, break_in_func

    code = '''
        def func():
            lno = 3

        def main():
            func()
            lno = 7
    '''

    set_list = [
                break_in_func('func', 'test_module.py'),
                ('continue', ),
                ('step', ),
                ('step', ),
                ('step', ),
                ('quit', ),
            ]

    modules = { 'test_module': code }
    run_test(modules, set_list)

    ****************************   results   ********************************

    1: ('line', 2, 'tfunc_import'),    ('next',),
    2: ('line', 3, 'tfunc_import'),    ('step',),
    3: ('call', 5, 'main'),            ('break', ('test_module.py', None, False, None, 'func')),
    4: ('None', 5, 'main'),            ('continue',),
    5: ('line', 3, 'func', ({1: 1}, [])), ('step',),
      BpNum Temp Enb Hits Ignore Where
      1     no   yes 1    0      at test_module.py:2
    6: ('return', 3, 'func'),          ('step',),
    7: ('line', 7, 'main'),            ('step',),
    8: ('return', 7, 'main'),          ('quit',),

    *************************************************************************

    cs@sFy-x&t|}t|}|V|VqWWntk
rAdSXdS(N(Rt
StopIteration(tatbtxty((s)/usr/local/lib/python2.7/test/test_bdb.pytgens

RRcS@sdS(N(R(((s)/usr/local/lib/python2.7/test/test_bdb.pyt<lambda>"RR[N(R(R((textendtBaseTestCaseRR^RReRtiterR]tcreate_modulesRRtappendRtgetcwdRtruncallttfunc_import(tmodulesRgR[RtslttestR((s)/usr/local/lib/python2.7/test/test_bdb.pytrun_tests3	
		$
c
c@stjjz|tjjdtjxW|D]O}|d}t|d!}|j	t
j||WdQXtj
|q3WdVWdtjjdx|D]}tjj|qWXWdQXdS(Nis.pytw(Rtsupportttemp_cwdRRtinsertRRtopentwritettextwraptdedentt	linecachet
checkcacheR}tforget(RtmRTRM((s)/usr/local/lib/python2.7/test/test_bdb.pyR)s

 	
cC@sd|d|||ffS(NR(R(R1RTRR!((s)/usr/local/lib/python2.7/test/test_bdb.pyt
break_in_func9sttest_module_for_bdbcC@sddl}|jdS(Ni(Rtmain(R((s)/usr/local/lib/python2.7/test/test_bdb.pyR>scC@s*d}ttd}d}d}dS(Niiii(ttfunc_firstttfunc_second(tlno((s)/usr/local/lib/python2.7/test/test_bdb.pyt
tfunc_mainBscC@sd}d}d}dS(Niii((R((s)/usr/local/lib/python2.7/test/test_bdb.pyRJscC@s
d}dS(Ni((R((s)/usr/local/lib/python2.7/test/test_bdb.pyROsRcB@seZdZeZRS(sBase class for all tests.(RRR	R^(((s)/usr/local/lib/python2.7/test/test_bdb.pyRRst
StateTestCasecB@seZdZdZdZdZdZdZdZdZ	dZ
d	Zd
ZdZ
dZd
ZdZRS(s;Test the step, next, return, until and quit 'set_' methods.c	C@sGd
ddd
ddddg|_t|}|jtWdQXdS(NR iRRiRjiRR(R iR(R(R iR(R(RjiR(R(R iR(R(R]RRR(R-R((s)/usr/local/lib/python2.7/test/test_bdb.pyt	test_stepYscC@sxdddddd	tdffdddddidd6gffdddg|_t|}|jtWdQXdS(NR iRRiRjiRRRRiR(R iR(R(R iR(R(RjiR(RiR(R(R(R iR(R(R4R]RRR(R-R((s)/usr/local/lib/python2.7/test/test_bdb.pyttest_step_on_last_statementcscC@sxdddddd	tdffdddddidd6gffdddg|_t|}|jtWdQXdS(NR iRRiRjiRRRRRiR(R iR(R(R iR(R(RjiR(RiR(R(R(R iR(R(R4R]RRR(R-R((s)/usr/local/lib/python2.7/test/test_bdb.pyttest_next_on_last_statementoscC@sMdd
ddddddddg
|_t|}|jtWdQXdS(NR iRRiRiRjiRR(R iR(R(R iR(R(R iR(R(RjiR(R(R iR(R(R]RRR(R-R((s)/usr/local/lib/python2.7/test/test_bdb.pyt	test_next{sc
C@sad}i|t6}t|<dd	d
dg|_t|}|jtWdQXWdQXdS(Ns9
            def main():
                lno = 3
        R iRRiR(R iR(R(R iR(R(tTEST_MODULERR]RRR(R-RDRR((s)/usr/local/lib/python2.7/test/test_bdb.pyttest_next_over_imports

c	C@sGddd
dddddg|_t|}|jtWdQXdS(NR iRRiRjiRRR(R iR(R(R iR(R(RjiR(R(R iR(R(R]RRR(R-R((s)/usr/local/lib/python2.7/test/test_bdb.pyttest_next_on_plain_statementscC@sMddddddddddg
|_t|}|jtWdQXdS(NR iRRiRjiRRRRiR(R iR(R(R iR(R(RjiR(R(RiR(R(R iR(R(R]RRR(R-R((s)/usr/local/lib/python2.7/test/test_bdb.pyttest_next_in_caller_framesc
C@sSdd
ddddddddddg|_t|}|jtWdQXdS(NR iRRiRjiRRuiR(R iR(R(R iR(R(RjiR(R(R iR(Ru(RuiR(R(R iR(R(R]RRR(R-R((s)/usr/local/lib/python2.7/test/test_bdb.pyttest_returnscC@sMddddddddddg
|_t|}|jtWdQXdS(NR iRRiRjiRRRRuiR(R iR(R(R iR(R(RjiR(R(RiR(Ru(RuiR(R(R]RRR(R-R((s)/usr/local/lib/python2.7/test/test_bdb.pyttest_return_in_caller_framescC@sMddd
dddddddg
|_t|}|jtWdQXdS(NR iRRiRjiRRR(R iR(R(R iR(R(RjiR(R(R iR(R(R iR(R(R]RRR(R-R((s)/usr/local/lib/python2.7/test/test_bdb.pyt
test_untilscC@sMddddddddddg
|_t|}|jtWdQXdS(NR iRRiRjiRRRRiR(R iR(R(R iR(R(RjiR(R(RiR(R(R iR(R(R]RRR(R-R((s)/usr/local/lib/python2.7/test/test_bdb.pyttest_until_in_caller_framesc
C@ssd}i|t6}t|Nd
ddd
g|_dtf}t|d	|}|jtWdQXWdQXdS(Ns9
            def main():
                lno = 3
        R iRRiRs
importlib*R[(R iR(R(R iR(R(RRR]RRR(R-RDRR[R((s)/usr/local/lib/python2.7/test/test_bdb.pyt	test_skips

cC@s>ddg|_t|}|jt|jtWdQXdS(NR iRR(R iR(R(R]RtassertRaisesRRR(R-R((s)/usr/local/lib/python2.7/test/test_bdb.pyt	test_downsc	C@sGdd
ddddddg|_t|}|jtWdQXdS(NR iRRiRjiRRRR(R iR(R(R iR(R(RjiR(R(RiR(R(R]RRR(R-R((s)/usr/local/lib/python2.7/test/test_bdb.pyttest_ups(RRR	RRRRRRRRRRRRRR(((s)/usr/local/lib/python2.7/test/test_bdb.pyRVs	
						
						tBreakpointTestCasecB@sheZdZdZdZdZdZdZdZdZ	dZ
d	Zd
ZRS(sTest the breakpoint set method.cC@sDdddfg|_t|}|jt|jtWdQXdS(	NR iRRs/non/existent/module.pyi(R iR(s/non/existent/module.pyi(R]RRRRR(R-R((s)/usr/local/lib/python2.7/test/test_bdb.pyttest_bp_on_non_existent_modulescC@spd}i|t6}t|Kddtdffg|_t|}|jt|jtWdQXWdQXdS(Ns9
            def main():
                lno = 3
        R iRRi(R iR(	RRtTEST_MODULE_FNAMER]RRRRR(R-RDRR((s)/usr/local/lib/python2.7/test/test_bdb.pyttest_bp_after_last_statements

cC@sd}i|t6}t|dtdttdtdttd
ddddid	d	6d	gffddddid	d6dgffdg
|_t|}|jtWdQXWdQXdS(Ns
            def func():
                lno = 3

            def main():
                for i in range(2):
                    func()
        R iRRCRRiiR(R iR(RiR(RiR(R(R(R(	RRRRRR]RRR(R-RDRR((s)/usr/local/lib/python2.7/test/test_bdb.pyttest_temporary_bps

"+cC@sd}i|t6}t|d
tdtdtdttdddfdddd	did
d
6gffddfdddfdddd	did
d6dgffddfdddd	didd
6gffdg|_t|}|jtWdQXWdQXdS(Ns
            def func():
                lno = 3

            def main():
                for i in range(3):
                    func()
        R iRRCRRRiiRR(R iR(RiR(RiR(i(RiR(R(i(RiRC(i(RiRC(R(i(RiRC(R(R(	RRRRRR]RRR(R-RDRR((s)/usr/local/lib/python2.7/test/test_bdb.pyttest_disabled_temporary_bp+s"

%((cC@sd}i|t6}t|jdtdttdd
ddd	did	d
6gffdg|_t|}|jtWdQXWdQXdS(Ns
            def func(a):
                lno = 3

            def main():
                for i in range(3):
                    func(i)
        R iRRCsa == 2RRiiR(R iR(RiR(R(R(	RRRRRR]RRR(R-RDRR((s)/usr/local/lib/python2.7/test/test_bdb.pyttest_bp_conditionGs

(cC@sd}i|t6}t|jdtdttdd
ddd	did
d
6gffdg|_t|}|jtWdQXWdQXdS(Nsk
            def func(a):
                lno = 3

            def main():
                func(0)
        R iRRCs1 // 0RRiiR(R iR(RiR(R(R(	RRRRRR]RRR(R-RDRR((s)/usr/local/lib/python2.7/test/test_bdb.pyt)test_bp_exception_on_condition_evaluation[s

(cC@sd}i|t6}t|pdtdtd
ddfdddd
didd6gffdg|_t|}|jtWdQXWdQXdS(Ns
            def func():
                lno = 3

            def main():
                for i in range(2):
                    func()
        R iRRCRRiRiR(R iR(RiR(i(RiR(R(R(RRRRR]RRR(R-RDRR((s)/usr/local/lib/python2.7/test/test_bdb.pyttest_bp_ignore_countns

(cC@sd}i|t6}t|dtdtdtdtdddfdd	dfdddddidd6gffddfdddddidd6gffddddidd6gffdg|_t|}|jtWdQXWdQXdS(Ns
            def func():
                lno = 3

            def main():
                for i in range(3):
                    func()
        R iRRCRRiRRiRR(R iR(RiR(RiR(i(RiR(i(RiR(R(i(RiRC(R(R(R(RRRRR]RRR(R-RDRR((s)/usr/local/lib/python2.7/test/test_bdb.pyt test_ignore_count_on_disabled_bps 

%(cC@sd}i|t6}t|ddtdffddtdffddtdffddddd
idd6gffdddd
idd6gffdtdffddddd
idd6gffdg|_t|}|jtWdQXWdQXdS(Ns
            def func():
                lno = 3
                lno = 4

            def main():
                for i in range(3):
                    func()
        R iRRiRiRRCiRR(R iR(RiR(RiR(RiR(R(R(RiRC(R(R(RRRR]RRR(R-RDRR((s)/usr/local/lib/python2.7/test/test_bdb.pyttest_clear_two_bp_on_same_lines	

+(cC@sJddtdffg|_t|}|jt|jtWdQXdS(NR iRRi(R iR(R4R]RRRRR(R-R((s)/usr/local/lib/python2.7/test/test_bdb.pyttest_clear_at_no_bps(
RRR	RRRRRRRRRR(((s)/usr/local/lib/python2.7/test/test_bdb.pyRs		
							tRunTestCasecB@s eZdZdZdZRS(s Test run, runeval and set_trace.c	C@sVd}d
ddd
g|_t|)}|jttj|dd	WdQXdS(Ns
            lno = 2
        R is<module>RRuRs<string>texec(R is<module>(R(Ruis<module>(R(R]RtruntcompileRR(R-RDR((s)/usr/local/lib/python2.7/test/test_bdb.pyt
test_run_steps
cC@sd}i|t6}t|fddddddddddg
|_ddl}t| }|jd
ttWdQXWdQXdS(Ns9
            def main():
                lno = 3
        R is<module>RRjiRiRuRistest_module_for_bdb.main()(R is<module>(R(RjiR(R(R iR(R(RuiR(R(Ruis<module>(R(RRR]RRtrunevalR5tlocals(R-RDRRR((s)/usr/local/lib/python2.7/test/test_bdb.pyttest_runeval_steps

(RRR	RR(((s)/usr/local/lib/python2.7/test/test_bdb.pyRs	tIssuesTestCasecB@seZdZdZRS(sTest fixed bdb issues.cC@sd}d}i|t6|d6}t|pdtdddddddidd6gffdddddg
|_t|}|jtWdQXWdQXdS(Ns
            from test_module_for_bdb_2 import func
            def main():
                func()
                lno = 5
        s9
            def func():
                lno = 3
        ttest_module_for_bdb_2R iRRCstest_module_for_bdb_2.pyRRiiRRuiRR(R iR(RiR(R(R(RuiRC(R(R iR(R(RRRR]RRR(R-tcode_1tcode_2RR((s)/usr/local/lib/python2.7/test/test_bdb.pyt+test_step_at_return_with_no_trace_in_callers	

(RRR	R(((s)/usr/local/lib/python2.7/test/test_bdb.pyRscC@stjjttttdS(N(RRtrun_unittestRRRR(((s)/usr/local/lib/python2.7/test/test_bdb.pyt	test_mains
	t__main__((5R	t
__future__RRtbdbRRRtunittestRR6Rt
contextlibRt	itertoolsRRttest.supportRt	ExceptionRRR
RR^RtsplitextR4RR(R)tobjectRZRRRRRRRRRRRRtTestCaseRRRRRRR(((s)/usr/local/lib/python2.7/test/test_bdb.pyt<module>1sP		U,K
				"!	

Zerion Mini Shell 1.0