Your IP : 216.73.216.196


Current Path : /opt/alt/python27/lib/python2.7/site-packages/_pytest/
Upload File :
Current File : //opt/alt/python27/lib/python2.7/site-packages/_pytest/debugging.pyc

�
�mYc@`s�dZddlmZmZmZddlZddlZd�Zd�Zddd��YZ	ddd	��YZ
d
�Zd�Zd�Z
d
�ZdS(s6 interactive debugging with PDB, the Python Debugger. i(tabsolute_importtdivisiontprint_functionNcC`sQ|jd�}|jddddddd�|jd	dd
dddd
�dS(Ntgenerals--pdbtdesttusepdbtactiont
store_truethelps0start the interactive Python debugger on errors.s--pdbclst
usepdb_clstmetavarsmodulename:classnamesqstart a custom interactive Python debugger on errors. For example: --pdbcls=IPython.terminal.debugger:TerminalPdb(tgetgroupt
_addoption(tparsertgroup((sB/opt/alt/python27/lib/python2.7/site-packages/_pytest/debugging.pytpytest_addoptionsc`s�|jd�rP|jd�jd�\}}t|�ttj||�}n	tj}|jd�r�|jj	t
�d�ntjtj
f��fd�}tjt_|jt_
|t_|t_|jj|�dS(NR	t:Rt	pdbinvokec`s+�\t_t_dt_tjt_dS(N(tpdbt	set_tracet	pytestPDBt_pluginmanagertNonet_configtPdbt_pdb_cls((told(sB/opt/alt/python27/lib/python2.7/site-packages/_pytest/debugging.pytfin s	(tgetvaluetsplitt
__import__tgetattrtsystmodulesRRt
pluginmanagertregistert	PdbInvokeRRRRRt_cleanuptappend(tconfigtmodnamet	classnametpdb_clsR((RsB/opt/alt/python27/lib/python2.7/site-packages/_pytest/debugging.pytpytest_configures
			RcB`s2eZdZdZdZejZe	d��Z
RS(s) Pseudo PDB that defers to the real pdb. cC`s�ddl}tj�j}|jdk	r�|jjd�}|rU|jdt�n|j	j
|j�}|j�|j
dd�|jjjd|j�n|j�j|�dS(s< invoke PDB set_trace debugging, dropping any IO capturing. iNtcapturemanagertin_t>s'PDB set_trace (IO-capturing turned off)R'(t_pytest.configR t	_getframetf_backRRt	getplugintsuspendcapturetTrueR'tcreate_terminal_writerRtlinetsepthooktpytest_enter_pdbRR(tclst_pytesttframetcapmanttw((sB/opt/alt/python27/lib/python2.7/site-packages/_pytest/debugging.pyR1s
N(t__name__t
__module__t__doc__RRRRRRtclassmethodR(((sB/opt/alt/python27/lib/python2.7/site-packages/_pytest/debugging.pyR+s
	R$cB`seZd�Zd�ZRS(cC`sm|jjjd�}|rV|jdt�\}}tjj|�tjj|�nt||j	|�dS(NR,R-(
R'R"R2R3R4R tstdouttwritet
_enter_pdbtexcinfo(tselftnodetcalltreportR=toutterr((sB/opt/alt/python27/lib/python2.7/site-packages/_pytest/debugging.pytpytest_exception_interactBscC`s[x>t|�jd�D]'}tjjd|�tjj�qWt|�}t|�dS(Ns
sINTERNALERROR> %s
(tstrRR tstderrRDtflusht_postmortem_tracebacktpost_mortem(RGtexcreprRFR6ttb((sB/opt/alt/python27/lib/python2.7/site-packages/_pytest/debugging.pytpytest_internalerrorJs
(R?R@RMRU(((sB/opt/alt/python27/lib/python2.7/site-packages/_pytest/debugging.pyR$As	cC`sr|jjjd�j}|j�|jdd�|j|�|jdd�t|�}t|�t	|_
|S(NtterminalreporterR.t	tracebacksentering PDB(R'R"R2t_twR6R7t
toterminalRQRRR4t	_pdbshown(RHRFtrepR>RT((sB/opt/alt/python27/lib/python2.7/site-packages/_pytest/debugging.pyRERs


	cC`s?ddlm}t|j|�r0|jjdS|jdSdS(Ni(tUnexpectedExceptioni(tdoctestR\t
isinstancetvaluetexc_infot_excinfo(RFR\((sB/opt/alt/python27/lib/python2.7/site-packages/_pytest/debugging.pyRQascC`sQtdt|�d�}x1|rL||djjdt�rL|d8}qW|S(Niit__tracebackhide__(tmaxtlentf_localstgettFalse(tstackti((sB/opt/alt/python27/lib/python2.7/site-packages/_pytest/debugging.pyt_find_last_non_hidden_frameks&cC`s@dtjfd��Y}|�}|j�|jd|�dS(NRcB`seZd�ZRS(cS`sCtjj|||�\}}|dkr9t|�}n||fS(N(RRt	get_stackRRj(RGtfttRhRi((sB/opt/alt/python27/lib/python2.7/site-packages/_pytest/debugging.pyRkts(R?R@Rk(((sB/opt/alt/python27/lib/python2.7/site-packages/_pytest/debugging.pyRss(RRtresettinteractionR(RmRtp((sB/opt/alt/python27/lib/python2.7/site-packages/_pytest/debugging.pyRRrs	
(((RAt
__future__RRRRR RR+RR$RERQRjRR(((sB/opt/alt/python27/lib/python2.7/site-packages/_pytest/debugging.pyt<module>s