File "mock.cpython-37.opt-2.pyc"

Full Path: /home/attunedd/public_html/byp/izo/con7ext_sym404/rintoar.txt/opt/alt/python37/lib64/python3.7/unittest/__pycache__/mock.cpython-37.opt-2.pyc
File size: 47.2 KB
MIME-type: text/x-bytecode.python
Charset: 8 bit

B

YI~dC@s\dZdZddlZddlZddlZddlZddlZddlZddlm	Z	m
Z
ddlmZm
Z
ddeeDZefZdejkrddlZeejjfZd	ZeZd
dZdd
ZddZddZdddZddZddZddZ ddZ!dddZ"dd Z#d!d"Z$Gd#d$d$e%Z&Gd%d&d&e%Z'e'Z(e(j)Z)e(j*Z+e(j,Z-d'd(Z.d)d*d+d,d-d.d/d0hZ/d1d2Z0Gd3d4d4e1Z2d5d6Z3Gd7d8d8e%Z4Gd9d:d:e%Z5Gd;d<d<e5Z6d=d>Z7Gd?d@d@e5Z8GdAdBdBe8e6Z9dCdDZ:dEdFZ;dGdHZ<GdIdJdJe%Z=dKdLZ>e)dddddfdMdNZ?ddOdPZ@e)dddddfdQdRZAGdSdTdTe%ZBdUdVZCdWdXZDe?eA_%eBeA_Ee@eA_FeDeA_GdYeA_HdZZId[ZJd\Kd]d^eJLDZMd\Kd_d^eJLDZNd`dadbdcdddedfdgdhdidjdkdldmdndodpdqhZOdrdsZPdtdd\KeIeJeMeNgLDZQeQeOBZRdudvdwdxdydzd{d|hZSd}d~dd~dd~dZTeUeUeUeUddddddd	ddZVddZWddZXddZYeWeXeYdZZddZ[Gddde%Z\Gddde\e6Z]Gddde\e9Z^Gddde%Z_Gddde%Z`e`ZaddZbGdddecZdedddZedddZfddZgddZhGddde%ZiejefejeajkfZldamddZndddZoGddde9ZpddZqdS))Mock	MagicMockpatchsentinelDEFAULTANYcallcreate_autospec
FILTER_DIRNonCallableMockNonCallableMagicMock	mock_openPropertyMocksealz1.0N)
ModuleType
MethodType)wrapspartialcCsh|]}|ds|qS)_)
startswith).0namer2/opt/alt/python37/lib64/python3.7/unittest/mock.py	<setcomp>&srjavaTcCstt|tS)N)
issubclasstyper
)objrrr_is_instance_mock5srcCst|tpt|tot|tS)N)
isinstanceBaseExceptionsrr)rrrr
_is_exception;s
r"cCs"t|trt|dr|jS|SdS)Nmock)r 
FunctionTypeshasattrr#)rrrr
_extract_mockBsr&cCst|tr4|s4y
|j}Wntk
r,dSXd}n*t|ts^y
|j}Wntk
r\dSX|rnt|d}n|}y|t|fSt	k
rdSXdS)NT)
r r__init__AttributeErrorr$__call__rinspectZ	signature
ValueError)funcZas_instanceZeat_selfZsig_funcrrr_get_signature_objectKs$


r-FcsNt|||dkrdS\}fdd}t|||t|_t|_dS)Ncsj||dS)N)bind)
_mock_selfargskwargs)sigrrchecksigpsz"_check_signature.<locals>.checksig)r-_copy_func_detailsr_mock_check_sig
__signature__)r,r#	skipfirstinstancer3r)r2r_check_signatureks

r9c	Cs>x8dD]0}yt||t||Wqtk
r4YqXqWdS)N)__name____doc____text_signature__
__module____defaults____kwdefaults__)setattrgetattrr()r,funcopy	attributerrrr4wsr4cCs@t|trdSt|tttfr(t|jSt|dddk	r<dSdS)NTr)F)r rstaticmethodclassmethodr	_callable__func__rA)rrrrrFs

rFcCst|ttfkS)N)rlisttuple)rrrr_is_listsrJcCsHt|tst|dddk	Sx(|f|jD]}|jddk	r(dSq(WdS)Nr)TF)r rrA__mro____dict__get)rbaserrr_instance_callables
rOcst|sdSt|t}t|||}|dkr.|S|\}fdd}t|||j}|s^d}||d}d|}	t|	|||}
t|
||
S)Ncsj||dS)N)r.)r0r1)r2rrr3sz _set_signature.<locals>.checksigrB)Z
_checksig_r#zYdef %s(*args, **kwargs):
    _checksig_(*args, **kwargs)
    return mock(*args, **kwargs))	rFr rr-r4r:isidentifierexec_setup_func)r#originalr8r7resultr,r3rcontextsrcrBr)r2r_set_signatures$



rWcs_tsdSfdd}fdd}fdd}fdd}fd	d
}fdd}fd
d}	fdd}
d_d_d_t_t_t_j	_	j
_
j_|_|_
|_|	_|
_|_|_|_|__dS)Ncsj||S)N)assert_called_with)r0r1)r#rrrXsz'_setup_func.<locals>.assert_called_withcsj||S)N)
assert_called)r0r1)r#rrrYsz"_setup_func.<locals>.assert_calledcsj||S)N)assert_not_called)r0r1)r#rrrZsz&_setup_func.<locals>.assert_not_calledcsj||S)N)assert_called_once)r0r1)r#rrr[sz'_setup_func.<locals>.assert_called_oncecsj||S)N)assert_called_once_with)r0r1)r#rrr\sz,_setup_func.<locals>.assert_called_once_withcsj||S)N)assert_has_calls)r0r1)r#rrr]sz%_setup_func.<locals>.assert_has_callscsj||S)N)assert_any_call)r0r1)r#rrr^sz$_setup_func.<locals>.assert_any_callcs:t_t_j}t|r6|k	r6|dS)N)	_CallListmethod_calls
mock_calls
reset_mockreturn_valuer)ret)rBr#rrrbsz_setup_func.<locals>.reset_mockFr)r#rcalled
call_count	call_argsr_call_args_listr`rarcside_effect_mock_childrenrXr\r]r^rbrYrZr[r6_mock_delegate)rBr#r2rXrYrZr[r\r]r^rbr)rBr#rrRs<rRcCsd|dd|kS)Nz__%s__r)rrrr	_is_magicsrnc@s$eZdZddZddZddZdS)_SentinelObjectcCs
||_dS)N)r)selfrrrrr'sz_SentinelObject.__init__cCs
d|jS)Nzsentinel.%s)r)rprrr__repr__sz_SentinelObject.__repr__cCs
d|jS)Nzsentinel.%s)r)rprrr
__reduce__sz_SentinelObject.__reduce__N)r:r=__qualname__r'rqrrrrrrrosroc@s$eZdZddZddZddZdS)	_SentinelcCs
i|_dS)N)
_sentinels)rprrrr'sz_Sentinel.__init__cCs|dkrt|j|t|S)N	__bases__)r(ru
setdefaultro)rprrrr__getattr__
sz_Sentinel.__getattr__cCsdS)Nrr)rprrrrrsz_Sentinel.__reduce__N)r:r=rsr'rxrrrrrrrtsrtcCs$t|ttttfkr t||S|S)N)rdictrHrIset)valuerrr_copysr|rc_mock_return_valueri_mock_side_effect_mock_parent_mock_new_parent
_mock_name_mock_new_namecCs8t|d|}||fdd}||fdd}t||S)NZ_mock_cSs"|j}|dkrt||St||S)N)rkrA)rpr	_the_namer2rrr_get+s
z"_delegating_property.<locals>._getcSs*|j}|dkr||j|<nt|||dS)N)rkrLr@)rpr{rrr2rrr_set0sz"_delegating_property.<locals>._set)_allowed_namesaddproperty)rrrrrrr_delegating_property(s

rc@seZdZddZddZdS)r_cCsnt|tst||St|}t|}||kr2dSx6td||dD] }||||}||krFdSqFWdS)NFrT)r rH__contains__lenrange)rpr{Z	len_valueZlen_selfiZsub_listrrrr=s
z_CallList.__contains__cCstt|S)N)pprintZpformatrH)rprrrrqKsz_CallList.__repr__N)r:r=rsrrqrrrrr_;sr_cCst|}t|sdS|js4|js4|jdk	s4|jdk	r8dS|}x|dk	rZ||krRdS|j}q>W|rl||_||_|r|||_||_dS)NFT)r&rrrrr)parentr{rnew_name_parentrrr_check_and_set_parentOs&



rc@s$eZdZddZddZddZdS)	_MockItercCst||_dS)N)iterr)rprrrrr'ksz_MockIter.__init__cCs|S)Nr)rprrr__iter__msz_MockIter.__iter__cCs
t|jS)N)nextr)rprrr__next__osz_MockIter.__next__N)r:r=rsr'rrrrrrrjsrc@seZdZeZdZddZdS)BaseNcOsdS)Nr)rpr0r1rrrr'usz
Base.__init__)r:r=rsrr}r~r'rrrrrrsrc@sTeZdZddZdGddZdd	ZdHd
dZdIdd
ZddZddZ	dZ
eee	e
ZeddZ
edZedZedZedZedZddZddZeeeZdJddddd Zd!d"Zd#d$Zd%d&Zd'd(Zd)d*Zd+d,Zd-d.Zd/d0Zd1d2Z d3d4Z!d5d6Z"d7d8Z#d9d:Z$d;d<Z%d=d>Z&d?d@Z'dKdAdBZ(dCdDZ)dEdFZ*dS)Lr
cOs$t|j|fd|ji}t|}|S)Nr;)rr:r;object__new__)clsr0kwnewr8rrrr}s
zNonCallableMock.__new__NFcKs|dkr|}|j}
||
d<||
d<||
d<||
d<d|
d<|dk	rJ|}d}|
dkrZ|dk	}
||||	|
i|
d<||
d	<d|
d
<d|
d<d|
d<d
|
d<t|
d<t|
d<t|
d<||
d<|r|jf|tt|||||||dS)NrrrrF_mock_sealedTrj_mock_wrapsrkZ_mock_calledZ_mock_call_argsrZ_mock_call_countZ_mock_call_args_listZ_mock_mock_callsr`_mock_unsafe)rL_mock_add_specr_configure_mock_safe_superr
r')rpspecrrspec_setr_spec_state	_new_name_new_parent_spec_as_instance	_eat_selfZunsafer1rLrrrr's:




zNonCallableMock.__init__cCs0t|}d|_d|_d|_d|_t|||dS)Nr)r&rrrrr@)rpr#rCZ
inner_mockrrrattach_mockszNonCallableMock.attach_mockcCs|||dS)N)r)rprrrrr
mock_add_specszNonCallableMock.mock_add_specc	Cszd}d}|dk	rPt|sPt|tr(|}nt|}t|||}|oF|d}t|}|j}||d<||d<||d<||d<dS)Nr_spec_class	_spec_set_spec_signature
_mock_methods)rJr r
_get_classr-dirrL)	rprrrrrrZresrLrrrrs
zNonCallableMock._mock_add_speccCs8|j}|jdk	r|jj}|tkr4|j|dd}||_|S)Nz())rr)r}rkrcr_get_child_mock)rprdrrrZ__get_return_values

z"NonCallableMock.__get_return_valuecCs,|jdk	r||j_n||_t||dddS)Nz())rkrcr}r)rpr{rrrZ__set_return_values

z"NonCallableMock.__set_return_valuez1The value to be returned when the mock is called.cCs|jdkrt|S|jS)N)rr)rprrr	__class__s
zNonCallableMock.__class__rerfrgrhracCsN|j}|dkr|jS|j}|dk	rJt|sJt|tsJt|sJt|}||_|S)N)rkr~ricallabler rr")rp	delegatedZsfrrrZ__get_side_effectsz!NonCallableMock.__get_side_effectcCs(t|}|j}|dkr||_n||_dS)N)	_try_iterrkr~ri)rpr{rrrrZ__set_side_effects
z!NonCallableMock.__set_side_effect)rcricCs|dkrg}t||krdS|t|d|_d|_d|_t|_t|_t|_|r^t	|_
|rhd|_x0|j
D]"}t|tst|tkrqt||qtW|j
}t|r||k	r||dS)NFr)idappendrergrfr_rarhr`rr}r~rjvaluesr 
_SpecState_deletedrbr)rpZvisitedrcrichildrdrrrrbs,zNonCallableMock.reset_mockcKs`xZt|dddD]B\}}|d}|}|}x|D]}t||}q:Wt|||qWdS)NcSs|ddS)Nr.)count)entryrrr<lambda>Iz0NonCallableMock.configure_mock.<locals>.<lambda>)keyr)sorteditemssplitpoprAr@)rpr1argvalr0finalrrrrrr<s	


zNonCallableMock.configure_mockcCs|dkrt|n:|jdk	r<||jks.|tkrLtd|nt|rLt||jsd|drdt||j|}|tkrt|np|dkrd}|j	dk	rt
|j	|}|j|||||d}||j|<n.t|t
rt|j|j|j|j|j}||j|<|S)N>rrzMock object has no attribute %r)assertZassret)rrrrr)r(r_all_magicsrnrrrjrMrrrArr rrrrr8rr)rprrTrrrrrxRs6






zNonCallableMock.__getattr__cCs|jg}|j}|}d}|dgkr$d}t}xT|dk	r~|}||j|d}|jdkrZd}|j}t||krnP|t|q,Wtt|}|jpd}t	|dkr|ddkr|d7}||d<d
|S)Nrz()rr#r)z()z().r)rrrzrrrrHreversedrrjoin)rpZ
_name_listrZlastdotseenZ_firstrrr_extract_mock_namexs0



z"NonCallableMock._extract_mock_namecCs^|}d}|dkrd|}d}|jdk	rDd}|jr8d}||jj}dt|j||t|fS)Nr)r#zmock.z name=%rz spec=%rz spec_set=%rz<%s%s%s id='%s'>)rrrr:rr)rprZname_stringZspec_stringrrrrqs
zNonCallableMock.__repr__cCsvtst|S|jpg}tt|}t|j}dd|j	D}dd|D}dd|D}t
t||||S)NcSsg|]\}}|tk	r|qSr)r)rZm_nameZm_valuerrr
<listcomp>sz+NonCallableMock.__dir__.<locals>.<listcomp>cSsg|]}|ds|qS)r)r)rerrrrscSs"g|]}|drt|r|qS)r)rrn)rrrrrrs)r	r__dir__rrrrHrLrjrrrz)rpextrasZ	from_typeZ	from_dictZfrom_child_mocksrrrrs


zNonCallableMock.__dir__csT|tkrt||SjrHjdk	rH|jkrH|jkrHtd|n|tkrbd|}t|n|tkrjdk	r|jkrtd|t	|st
t|t|||fdd}n(t
|d|t
t|||j|<n,|dkr|_dSt
|||r|j|<jrFt|sFd|}td|t||S)Nz!Mock object has no attribute '%s'z.Attempting to set unsupported magic method %r.csf||S)Nr)r0r)rSrprrrrz-NonCallableMock.__setattr__.<locals>.<lambda>rrzCannot set )rr__setattr__rrrLr(_unsupported_magicsrrr@r_get_methodrrjrrr%r)rprr{msg	mock_namer)rSrprrs8



zNonCallableMock.__setattr__cCs|tkr2|t|jkr2tt||||jkr2dS|j|t}||jkr\tt|	|n|t
krlt||tk	r||j|=t
|j|<dS)N)rrrLdelattrrjrM_missingrr
__delattr__rr()rprrrrrrs

zNonCallableMock.__delattr__cCs|jpd}t|||S)Nr#)r_format_call_signature)rpr0r1rrrr_format_mock_call_signatures
z+NonCallableMock._format_mock_call_signaturecCsDd}|||}|j}t|dkr.|dd}|j|}|||fS)Nz!Expected call: %s
Actual call: %sr)rrgr)rpr0r1messageexpected_stringrgZ
actual_stringrrr_format_mock_failure_messages
z,NonCallableMock._format_mock_failure_messagecCsl|s
|jSd}|ddd}|j}x@|D]8}||}|dksLt|trPPq,t|}|j}|j}q,W|S)Nz()rr)rreplacerrjrMr rr&)rprr2namesZchildrenrrrr_get_call_signature_from_names


z-NonCallableMock._get_call_signature_from_namec
Cst|tr&t|dkr&||d}n|j}|dk	rt|dkrNd}|\}}n
|\}}}y||j||fStk
r}z
|dSd}~XYqXn|SdS)Nrlrr)r rIrrrr.	TypeErrorwith_traceback)rp_callr2rr0r1rrrr
_call_matcher(s

zNonCallableMock._call_matchercCs.|}|jdkr*d|jpd|jf}t|dS)Nrz7Expected '%s' to not have been called. Called %s times.r#)rfrAssertionError)r/rprrrrrZBs

z!NonCallableMock.assert_not_calledcCs(|}|jdkr$d|jpd}t|dS)Nrz"Expected '%s' to have been called.r#)rfrr)r/rprrrrrYKs

zNonCallableMock.assert_calledcCs.|}|jdks*d|jpd|jf}t|dS)Nrz8Expected '%s' to have been called once. Called %s times.r#)rfrr)r/rprrrrr[Ts

z"NonCallableMock.assert_called_oncecs||jdkr(}td|ffdd}f}j}||krxt|trh|nd}t||dS)NzExpected call: %s
Not calledcs}|S)N)r)r)r0r1rprr_error_messagegsz:NonCallableMock.assert_called_with.<locals>._error_message)rgrrrr 	Exception)r/r0r1expectedractualcauser)r0r1rprrX]s
z"NonCallableMock.assert_called_withcOs6|}|jdks*d|jpd|jf}t||j||S)Nrz1Expected '%s' to be called once. Called %s times.r#)rfrrrX)r/r0r1rprrrrr\qs
z'NonCallableMock.assert_called_once_withc		sfdd|D}tdd|Dd}tfddjD}|s||kr|dkrXd}nddd|D}td	|t|jf|dSt|}g}x:|D]2}y||Wqtk
r||YqXqW|rtd
t	|f|dS)Ncsg|]}|qSr)r)rc)rprrrsz4NonCallableMock.assert_has_calls.<locals>.<listcomp>css|]}t|tr|VqdS)N)r r)rrrrr	<genexpr>sz3NonCallableMock.assert_has_calls.<locals>.<genexpr>c3s|]}|VqdS)N)r)rr)rprrrszCalls not found.z+Error processing expected calls.
Errors: {}cSsg|]}t|tr|ndqS)N)r r)rrrrrrsz%s
Expected: %r
Actual: %rz%r not all found in call list)
rr_raformatrrHremover+rrI)	rpZcallsZ	any_orderrrZ	all_callsZproblemZ	not_foundZkallr)rprr]|s4


z NonCallableMock.assert_has_callscsZ||f}fddjD}||krVt|tr8|nd}||}td||dS)Ncsg|]}|qSr)r)rr)rprrrsz3NonCallableMock.assert_any_call.<locals>.<listcomp>z%s call not found)rrhr rrr)rpr0r1rrrrr)rprr^szNonCallableMock.assert_any_callcKsxt|}t|ts2t|tr"t}q<t|tr<t}n
|jd}|jrnd|krVd|dnd}|	|}t
||f|S)Nrrrz())rr
CallableMixinrrr
rrKrrr()rpr_typeklassrCrrrrrs



zNonCallableMock._get_child_mock)NNNNNNrNFNF)F)FF)N)F)+r:r=rsrr'rrrZ"_NonCallableMock__get_return_valueZ"_NonCallableMock__set_return_valueZ"_NonCallableMock__return_value_docrrcrrrerfrgrhraZ!_NonCallableMock__get_side_effectZ!_NonCallableMock__set_side_effectrirbrrxrrqrrrrrrrrZrYr[rXr\r]r^rrrrrr
zsT

*
	


& '
!			
*r
cCsF|dkr|St|r|St|r$|Syt|Stk
r@|SXdS)N)r"rFrr)rrrrrsrc
@sBeZdZddedddddddf
ddZddZddZd	d
ZdS)rNrc	Ks6||jd<tt|j|||||||	|
f|||_dS)Nr})rLrrr'ri)rprrircrrrrrrrr1rrrr's



zCallableMixin.__init__cOsdS)Nr)rpr0r1rrrr5szCallableMixin._mock_check_sigcOs|j|||j||S)N)r5
_mock_call)r/r0r1rrrr)szCallableMixin.__call__cOs|}d|_|jd7_t||fdd}||_|j|t}|jdk	}|j}|j	}|dk}	|j
td||f|j}
x|
dk	r*|r|
jt|||f|
jdk	}|r|
jd|}t|||f}|
j
||
j	r|	rd}nd}|
j	dk}	|
j	||}|
j}
t
|
}
|
|krP||
q|W|j}|dk	rt|rL|n,t|snt|}t|rx|n
|||}|tk	r|S|jtk	r|jS|jdk	r|j||S|jS)NTr)twoz()rr)rerf_Callrgrhrrzrrrrarr`rrrir"rFrrr}rcr)r/r0r1rprrZdo_method_callsZmethod_call_nameZmock_call_nameZ	is_a_callrZthis_mock_callrZ_new_parent_idZeffectrTrrrrs`









zCallableMixin._mock_call)r:r=rsrr'r5r)rrrrrrsrc@seZdZdS)rN)r:r=rsrrrrrIs1rcCs2y
t||Stk
r,t|t||SXdS)N)rAr(
__import__)thingcompimport_pathrrr_dot_lookup~s

rcCsF|d}|d}t|}x$|D]}|d|7}t|||}q"W|S)Nrrz.%s)rrrr)targetZ
componentsrrrrrr	_importers


rcCs
t|dS)Nis_local)r%)patcherrrr_is_startedsrc@sdeZdZdZgZddZddZddZdd	Zd
dZ	dd
Z
ddZddZddZ
ddZdS)_patchNc

Csn|dk	r(|tk	rtd|dk	r(td||_||_||_||_||_||_d|_||_	||_
|	|_g|_dS)Nz,Cannot use 'new' and 'new_callable' togetherz1Cannot use 'autospec' and 'new_callable' togetherF)
rr+getterrCrnew_callablercreateZ	has_localrautospecr1additional_patchers)
rprrCrrr
rrr	r1rrrr's$z_patch.__init__c
CsHt|j|j|j|j|j|j|j|j|j		}|j
|_
dd|jD|_|S)NcSsg|]}|qSr)copy)rprrrrsz_patch.copy.<locals>.<listcomp>)rrrCrrr
rrr	r1attribute_namer)rprrrrr
sz_patch.copycCst|tr||S||S)N)r rdecorate_classdecorate_callable)rpr,rrrr)s

z_patch.__call__cCsRxLt|D]@}|tjsq
t||}t|ds2q
|}t||||q
W|S)Nr))rrrTEST_PREFIXrAr%r
r@)rprattr
attr_valuerrrrrs

z_patch.decorate_classcs<tdrj|Stfdd|g_S)N	patchingsc	srg}t\}xBjD]8}||}|jdk	r:||q|jtkr||qW|t	|7}||SQRXdS)N)

contextlib	ExitStackr
enter_contextrupdaterrrrI)r0Zkeywargs
extra_args
exit_stackpatchingr)r,patchedrrrs



z)_patch.decorate_callable.<locals>.patched)r%rrr)rpr,r)r,rrrs
z_patch.decorate_callablec	Cs|}|j}t}d}y|j|}Wn$ttfk
rHt||t}YnXd}|tkrft|t	rfd|_
|j
s|tkrtd||f||fS)NFTz!%s does not have the attribute %r)rrCrrLr(KeyErrorrA	_builtinsr rr
)rprrrSlocalrrrget_originalsz_patch.get_originalcCsn|j|j|j}}}|j|j}}|j}||_|dkr@d}|dkrLd}|dkrXd}|dk	rp|dk	rptd|dk	s|dk	r|dkrtd|	\}}|t
krR|dkrRd}	|dkr|}|dkr|}d}n&|dk	r|dkr|}d}n|dkr|}|dk	s|dk	r.|t
krtdt|tr.d}	t
}
i}|dk	rF|}
nN|dk	sZ|dk	r|}|dk	rl|}t|rd|k}
n
t|}
|
rt}
|dk	r||d<|dk	r||d	<t|
trt|
tr|jr|j|d
<|||
f|}|	rt|r|}|dk	r|}t|s0t|s0t}
|d
|
f|dd||_nl|dk	r|t
k	rntd
|t
krtdt|}|dkr|}t|f||jd|}n|rtd|}||_||_t|_yrt |j|j||j!dk	rHi}|jt
kr|||j!<x2|j"D](}|j#|}|jt
kr||qW|S|S|j$t%&sdYnXdS)NFzCan't specify spec and autospec)TNz6Can't provide explicit spec_set *and* spec or autospecTz!Can't use 'spec' with create=Truer)rrrz())rrzBautospec creates the mock for you. Can't specify autospec and new.z%Can't use 'autospec' with create=True)r_namez.Can't pass kwargs to a mock we aren't creating)'rrrrr1r	rrrr!rr rrrJrrrr
rCrrrOrrcboolr
temp_originalrrr_exit_stackr@rrr__exit__sysexc_info)rprrrrr1r	rSr ZinheritKlass_kwargsZ	this_specZnot_callableZnew_attrrrrrrr	__enter__s





















z_patch.__enter__cGst|std|jr4|jtk	r4t|j|j|jn>t|j|j|j	srt
|j|jr`|jdkrrt|j|j|j|`|`|`|j}|`|j|S)Nz stop called on unstarted patcher)r;r=r>__annotations__r?)
rRuntimeErrorrr$rr@rrCrr
r%r%r&)rpr(rrrrr&s
z_patch.__exit__cCs|}|j||S)N)r+_active_patchesr)rprTrrrstartsz_patch.startcCs4y|j|Wntk
r$YnX|dddS)N)r.rr+r&)rprrrstops
z_patch.stop)r:r=rsrr.r'r
r)rrr!r+r&r/r0rrrrrs
rc	sPydd\}Wn&ttfk
r:tdfYnXfdd}||fS)Nrrz.Need a valid target to patch. You supplied: %rcstS)N)rr)rrrrrz_get_target.<locals>.<lambda>)rsplitrr+)rrCrr)rr_get_targetsr2c

s>ttkrtdfdd}	t|	||||||||	S)Nz3 must be the actual object to be patched, not a strcsS)Nrr)rrrrrz_patch_object.<locals>.<lambda>)rstrrr)
rrCrrr
rrr	r1rr)rr
_patch_objects
r4c
sttkrfdd}nfdd}|s2tdt|}|d\}	}
t||	|
|||||i	}|	|_xB|ddD]2\}	}
t||	|
|||||i	}|	|_|j|qvW|S)NcstS)N)rr)rrrrrz!_patch_multiple.<locals>.<lambda>csS)Nrr)rrrrrz=Must supply at least one keyword argument with patch.multiplerr)	rr3r+rHrrrrr)
rrr
rrr	r1rrrCrrZthis_patcherr)rr_patch_multiples&

r5c

Ks$t|\}}	t||	|||||||	S)N)r2r)
rrrr
rrr	r1rrCrrrrsE
rc@sNeZdZdddZddZddZd	d
ZddZd
dZddZ	eZ
e	ZdS)_patch_dictrFcKs,||_t||_|j|||_d|_dS)N)in_dictryrrclear	_original)rpr7rr8r1rrrr'ts

z_patch_dict.__init__cs.ttrStfdd}|S)Ncs"z
||SXdS)N)r6
_unpatch_dict)r0r)frprr_inners
z$_patch_dict.__call__.<locals>._inner)r rrr)rpr;r<r)r;rprr)}s

z_patch_dict.__call__cCs\xVt|D]J}t||}|tjr
t|dr
t|j|j|j	}||}t
|||q
W|S)Nr))rrArrrr%r6r7rr8r@)rprrrZ	decoratorZ	decoratedrrrrs

z_patch_dict.decorate_classcCs|dS)N)r6)rprrrr+sz_patch_dict.__enter__cCs|j}t|jtrt|j|_|j}|j}y|}Wn2tk
rhi}x|D]}||||<qPWYnX||_|r|t	|y|
|Wn.tk
rx|D]}||||<qWYnXdS)N)rr r7r3rr8r
r(r9_clear_dictr)rprr7r8rSrrrrr6s&

z_patch_dict._patch_dictcCsV|j}|j}t|y||Wn.tk
rPx|D]}||||<q8WYnXdS)N)r7r9r=rr()rpr7rSrrrrr:s
z_patch_dict._unpatch_dictcGs|dS)NF)r:)rpr0rrrr&sz_patch_dict.__exit__N)rF)r:r=rsr'r)rr+r6r:r&r/r0rrrrr6Ws
	
r6cCsBy|Wn0tk
r<t|}x|D]
}||=q*WYnXdS)N)r8r(rH)r7keysrrrrr=s
r=cCs xttjD]}|qWdS)N)rrr.r0)rrrr_patch_stopallsr?Ztestzlt le gt ge eq ne getitem setitem delitem len contains iter hash str sizeof enter exit divmod rdivmod neg pos abs invert complex int float index trunc floor ceil bool next zHadd sub mul matmul div floordiv mod lshift rshift and xor or pow truediv ccs|]}d|VqdS)zi%sNr)rnrrrrsrccs|]}d|VqdS)zr%sNr)rrArrrrs__get____set__
__delete____reversed____missing__rr
__reduce_ex__Z__getinitargs____getnewargs____getstate____setstate__
__getformat__Z
__setformat__rqr__subclasses__
__format____getnewargs_ex__csfdd}||_|S)Ncs|f||S)Nr)rpr0r)r,rrmethodsz_get_method.<locals>.method)r:)rr,rOr)r,rrsrcCsh|]}d|qS)z__%s__r)rrOrrrrsrxrr'r__prepare____instancecheck____subclasscheck____del__cCs
t|S)N)r__hash__)rprrrrrrcCs
t|S)N)r__str__)rprrrrrcCs
t|S)N)r
__sizeof__)rprrrrr)rTrUrVry?g?)__lt____gt____le____ge____int__r__len__r&__complex__	__float____bool__	__index__csfdd}|S)Ncs$jj}|tk	r|S|kr dStS)NT)__eq__r}rNotImplemented)otherret_val)rprrra0sz_get_eq.<locals>.__eq__r)rprar)rpr_get_eq/srecsfdd}|S)Ncs jjtk	rtS|krdStS)NF)__ne__r}rrb)rc)rprrrf:s
z_get_ne.<locals>.__ne__r)rprfr)rpr_get_ne9srgcsfdd}|S)Ncs jj}|tkrtgSt|S)N)rr}rr)rd)rprrrCsz_get_iter.<locals>.__iter__r)rprr)rpr	_get_iterBsrh)rarfrcCst|t}|tk	r||_dSt|}|dk	rdy||}Wntk
rXt|}YnX||_dSt|}|dk	r|||_dS)N)_return_valuesrMrrc_calculate_return_valuer(_side_effect_methodsri)r#rOrZfixedZreturn_calculatorrcZ
side_effectorrrr_set_return_valueTs

rlc@seZdZddZddZdS)
MagicMixincOs&|tt|j|||dS)N)_mock_set_magicsrrmr')rpr0rrrrr'lszMagicMixin.__init__cCst}t|dddk	rTt|j}t}t|}x$|D]}|t|jkr4t||q4W|tt|j}t|}x|D]}t||t	||qtWdS)Nr)
_magicsrAintersectionrrzrrLrr@
MagicProxy)rpZthese_magicsZ
remove_magicsrrrrrrnrs

zMagicMixin._mock_set_magicsN)r:r=rsr'rnrrrrrmksrmc@seZdZdddZdS)rFcCs||||dS)N)rrn)rprrrrrrsz"NonCallableMagicMock.mock_add_specN)F)r:r=rsrrrrrrsrc@seZdZdddZdS)rFcCs||||dS)N)rrn)rprrrrrrszMagicMock.mock_add_specN)F)r:r=rsrrrrrrsrc@s.eZdZddZddZddZd
dd	ZdS)rqcCs||_||_dS)N)rr)rprrrrrr'szMagicProxy.__init__cOs|}|||S)N)create_mock)rpr0r1mrrrr)szMagicProxy.__call__cCs8|j}|j}|j|||d}t|||t||||S)N)rrr)rrrr@rl)rprrrsrrrrrszMagicProxy.create_mockNcCs|S)N)rr)rprrrrrrBszMagicProxy.__get__)N)r:r=rsr'r)rrrBrrrrrqs	rqc@s$eZdZddZddZddZdS)_ANYcCsdS)NTr)rprcrrrrasz_ANY.__eq__cCsdS)NFr)rprcrrrrfsz_ANY.__ne__cCsdS)Nz<ANY>r)rprrrrqsz
_ANY.__repr__N)r:r=rsrarfrqrrrrrtsrtcCsdd|}d}ddd|D}dddt|D}|rD|}|r\|rT|d7}||7}||S)Nz%s(%%s)rz, cSsg|]}t|qSr)repr)rrrrrrsz*_format_call_signature.<locals>.<listcomp>cSsg|]\}}d||fqS)z%s=%rr)rrr{rrrrs)rrr)rr0r1rZformatted_argsargs_stringZ
kwargs_stringrrrrsrc@s^eZdZdddZddd	Zd
dZejZdd
ZddZ	ddZ
ddZddZddZ
dS)rrrNFTcCsd}i}t|}|dkr$|\}}}nr|dkrd|\}	}
t|	trX|	}t|
trR|
}qb|
}q|	|
}}n2|dkr|\}t|tr|}nt|tr|}n|}|rt|||fSt||||fS)Nrrrlr)rr r3rIr)rr{rrr	from_kallr0r1_lenfirstsecondrrrrs.



z
_Call.__new__cCs||_||_||_dS)N)rr_mock_from_kall)rpr{rrrrwrrrr'sz_Call.__init__cCsf|tkrdSyt|}Wntk
r,dSXd}t|dkrH|\}}n
|\}}}t|ddrzt|ddrz|j|jkrzdSd}|dkrdi}}n|dkr|\}}}n|d	kr|\}	t|	tr|	}i}n"t|	tr|	}di}}nd}|	}nV|dkr>|\}
}t|
tr2|
}t|tr&|i}}n
d|}}n
|
|}}ndS|rV||krVdS||f||fkS)
NTFrrlrrrrr)rrrrArr rIr3)rprcZ	len_otherZ	self_nameZ	self_argsZself_kwargsZ
other_nameZ
other_argsZother_kwargsr{ryrzrrrrasP




z_Call.__eq__cOs<|jdkrtd||fddS|jd}t|j||f||dS)Nrz())r)rr)rr)rpr0r1rrrrr)Ys

z_Call.__call__cCs2|jdkrt|ddSd|j|f}t||ddS)NF)rrwz%s.%s)rrrw)rr)rprrrrrrxas
z_Call.__getattr__cOs|d||S)Nr)rx)rpr0r1rrrrhsz_Call.countcOs|d||S)Nindex)rx)rpr0r1rrrr|ksz_Call.indexcCs||js&|jpd}|dr"d|}|St|dkr@d}|\}}n0|\}}}|sTd}n|dshd|}nd|}t|||S)Nrz()zcall%srlzcall.%s)r{rrrr)rprr0r1rrrrqns





z_Call.__repr__cCs8g}|}x"|dk	r*|jr"|||j}q
Wtt|S)N)r{rrr_r)rpZvalsrrrr	call_lists


z_Call.call_list)rrNFT)rNNFT)r:r=rsrr'rarrfr)rxrr|rqr}rrrrrs

7r)rwc	Ks$t|rt|}t|t}d|i}|r0d|i}n|dkr<i}|rL|rLd|d<||t}t|rji}n"t|sxt}n|r|rt	|st}|
d|}|}	|dkrd}	|f|||	|d|}
t|trt|
|}
nt
||
|||dk	r|s|
|j|<|r$|s$d|kr$t||dd	|
d
|
_xt|D]}t|r@q.yt||}Wntk
rhw.YnXd|i}|rd|i}t|tst|||
||}
|
|
j|<nZ|
}t|tr|
j}t|||}||d<tf||||d|}
|
|
j|<t
||
|d
t|
tr.t|
||
q.W|
S)NrrTrrr)rrrrrcz())r8r"rr)rrrr)r7)rJrr rrr*ZisdatadescriptorrFrrOrr$rWr9rjrrcrrnrAr(rr#
_must_skipr@)rrr8rr"r1is_typer*r)rr#rrSrrr7rrrrst










rcCstt|ts$|t|dikrdS|j}xJ|jD]@}|j|t}|tkrHq,t|tt	frZdSt|t
rh|SdSq,W|S)NrLF)r rrArrKrLrMrrDrEr$)rrrrrTrrrr~	s

r~cCs$y|jStk
rt|SXdS)N)rr(r)rrrrr)	src@seZdZdddZdS)rFNcCs(||_||_||_||_||_||_dS)N)ridsrrr8r)rprrrrrr8rrrr'3	sz_SpecState.__init__)FNNNF)r:r=rsr'rrrrr1	srcCs"t|trt|St|SdS)N)r bytesioBytesIOStringIO)	read_datarrr
_to_streamH	s

rrcs&t}|dgfdd}fdd}fddfddfd	d
}tdkrddl}ttt|jtt|ja|dkrt	dt
d
}t	tdj_dj
_dj_dj_dj_|j_d<dj_|j_j_|j_fdd}||_|_|S)Ncs$jjdk	rjjSdj||S)Nr)	readlinesrc)r0r1)_statehandlerr_readlines_side_effect^	sz)mock_open.<locals>._readlines_side_effectcs$jjdk	rjjSdj||S)Nr)readrc)r0r1)rrrr_read_side_effectc	sz$mock_open.<locals>._read_side_effectc?s(EdHxdj||VqWdS)Nr)readline)r0r1)_iter_side_effectrrr_readline_side_effecth	sz(mock_open.<locals>._readline_side_effectc3s8jjdk	rxjjVqWxdD]
}|Vq&WdS)Nr)rrc)line)rrrrrm	s
z$mock_open.<locals>._iter_side_effectcs jjdk	rjjStdS)Nr)rrcrr)rrrr_next_side_effectt	sz$mock_open.<locals>._next_side_effectropen)rr)rrcs6td<jjdkr2d<dj_tS)Nrr)rrrir)r0r1)rrrrrr
reset_data	s

zmock_open.<locals>.reset_data)r	file_spec_iorHrzr
TextIOWrapperunionrrrr+rcwriterrrrirr)r#rZ
_read_datarrrrrr)rrrrrrrO	s8"

rc@s$eZdZddZddZddZdS)r
cKs
tf|S)N)r)rpr1rrrr	szPropertyMock._get_child_mockcCs|S)Nr)rprZobj_typerrrrB	szPropertyMock.__get__cCs||dS)Nr)rprrrrrrC	szPropertyMock.__set__N)r:r=rsrrBrCrrrrr
	s	r
c	Cs`d|_xTt|D]H}yt||}Wntk
r8wYnXt|tsFq|j|krt|qWdS)NT)rrrAr(r r
rr)r#rrsrrrr	s


r)F)F)NFNNN)FFNN)Nr)r__all____version__rr*rr'builtinsrtypesrr	functoolsrrrr
BaseExceptionr!platformrlangZ	Throwabler	superrrr"r&r-r9r4rFrJrOrWrRrnrrortrrMISSINGrZDELETEDrr|rrrHr_rrrr
rrrrrrrr2r4r5rr6r=r?ryZmultipleZstopallrZ
magic_methodsZnumericsrrZinplacerightZ
_non_defaultsrrorrrjrbrirergrhrkrlrmrrrqrtrrrIrrrr~rrrrar$rrrr
rrrrr<module>s
	 



5Zi5
1Jv	

	
,

w
N