python (3.11.7)

(root)/
lib/
python3.11/
unittest/
test/
testmock/
__pycache__/
testhelpers.cpython-311.opt-1.pyc

e݇vddlZddlZddlZddlZddlmZmZmZmZm	Z	m
Z
mZmZm
Z
mZddlmZddlmZGddeZGddejZGd	d
ejZGddejZGd
dejZGddejZedkrejdSdS)N)
call_Callcreate_autospec	MagicMockMockANY	_CallListpatchPropertyMock	_callable)datetimepartialc"eZdZdZdZddZdS)	SomeClasscdSNselfabs   V/BuggyBox/python/3.11.7/bootstrap/lib/python3.11/unittest/test/testmock/testhelpers.pyonez
SomeClass.onecdSrrrs rtwoz
SomeClass.tworrNcdSrrrrs  rthreezSomeClass.threerrr)__name__
__module____qualname__rrr"rrrrrs.!!!!!!rrc2eZdZdZdZdZdZdZdZdS)AnyTestc8|ttt}|t|tt}|t|tdSNfoo)assertEqualrobjectrassert_called_withrmocks  rtest_anyzAnyTest.test_anys{fhh'''vvS			$$$vv



C(((((rc|ttd|ttddS)Nz<ANY>)r,reprrstrrs r	test_reprzAnyTest.test_repr"s@cG,,,S7+++++rct}|tjtj|ttdSr))rr
nowr.rr/s  rtest_any_and_datetimezAnyTest.test_any_and_datetime'sKvvX\^^0000-----rct}Gddt}tj|fD]}||||||||||||t
tttt
jtttt
t
ttg}|||j	||j	|dS)NceZdZdZdZdS)9AnyTest.test_any_mock_calls_comparison_order.<locals>.FoocdSrrrothers  r__eq__z@AnyTest.test_any_mock_calls_comparison_order.<locals>.Foo.__eq__1rrcdSrrr=s  r__ne__z@AnyTest.test_any_mock_calls_comparison_order.<locals>.Foo.__ne__2rrN)r#r$r%r?rArrrFoor;0s"))))))))rrBr+bar)zingaalpha)a1z99)
rr-r
r7
reset_mockmethodrrr,
mock_calls)rr0rBdexpecteds     r$test_any_mock_calls_comparison_orderz,AnyTest.test_any_mock_calls_comparison_order.s=vv	*	*	*	*	*&	*	*	*&
	8
	8AOODq!!!!KK!K,,,DFFMMQAM&&&Scs+++Cs#666

#
66H

Xt777T_h7777
	8
	8rc"Gdd}t}||d|ttdg|td|tddS)NceZdZdZdS)%AnyTest.test_any_no_spec.<locals>.FoocdSrrr=s  rr?z,AnyTest.test_any_no_spec.<locals>.Foo.__eq__FrrNr#r$r%r?rrrrBrQE)))))rrBrassert_has_callsrrr.assert_any_callrrBr0s   rtest_any_no_speczAnyTest.test_any_no_specCs	*	*	*	*	*	*	*	*vvSSUUAtC||n---Q'''S!$$$$$rc&Gdd}t|}||d|ttdg|td|tddS)NceZdZdZdS)*AnyTest.test_any_and_spec_set.<locals>.FoocdSrrr=s  rr?z1AnyTest.test_any_and_spec_set.<locals>.Foo.__eq__QrrNrSrrrrBr]PrTrrB)specrUrVrYs   rtest_any_and_spec_setzAnyTest.test_any_and_spec_setNs	*	*	*	*	*	*	*	*~~~SSUUAtC||n---Q'''S!$$$$$rN)	r#r$r%r1r5r8rNrZr`rrrr'r'sn	)	)	),,,
...888*	%	%	%
%
%
%
%
%rr'ceZdZdZdZdZdZdZdZdZ	dZ
d	Zd
ZdZ
dZd
ZdZdZdZdZdZdZdZdZdS)CallTestc	t}||t||td||td||tif||td||tdif||tddif||td||td||tdif||td	diftd
}||td
||td||tdif||tddiftd
}||td||tddiftd}||td||tddif||td||tddiftddif}||tddddif||tdddif||tdddif||tddifdS)N)r)rdrrdrr*rDrbazspamrU)rdrjrj)rUrk)r+rm)rdrmrm)rDrmrDrrlrr,assertNotEqual)rkalls  rtest_call_with_callzCallTest.test_call_with_call\swwuww'''uU||,,,uU||,,,ubU||,,,uX///ub"X///ub"b\22333uX///u[11222ueR[11222ufb"%566777\""u\22333u_55666ui_55666ub)R%899:::\""D%"8"8999D%Y(;"<"<===())D%"8"8999D%Y(;"<"<===D%(:";";<<<D%	2(>"?"?@@@sAh[!!ub"sAh%788999ub3(^44555ub3(^44555usAh[1122222rcbt}||d||d||d||d||ddif||dif||ifdS)Nrr*rer+rr+)rr,rargss  rtest_empty__CallzCallTest.test_empty__Callswwr"""x(((u%%%{+++b"~...r{+++u%%%%%rctddif}||d||d||ddif||dif||d||d||if||d||d||difdS)	Nr+rr*rtre)rDrfrDrorus  rtest_named_empty_callzCallTest.test_named_empty_callseR_%%x((({+++b"~...r{+++D%(((D"%%%D2%(((D(+++D+...D5"+.....rcNtdif}||d||d||ddif||dif||jd||jidS)Nrjrir+rjr+)rr,rvkwargsrus  rtest_call_with_argszCallTest.test_call_with_argssi_%%|,,,1222y"5666	2///I...b)))))rcPtddif}||d||ddif||jd||ji||d||difdS)Nr+rjr{ri)rr,rvr|rprus  rtest_named_call_with_argsz"CallTest.test_named_call_with_argsseY+,,1222y"5666I...b)))D,///D9b/22222rc	tdtddf}||tddf||dtddf||ddtddf||dtddf||jd||jtdddS)Nrrlrnrrr+)rdictr,rvr|rus  rtest_call_with_kwargszCallTest.test_call_with_kwargssb$a...)**qA0111ta1~~~6777r4!q>>>:;;;D1NNN3444B'''dQ!nnn55555rc	
tddtddf}||dtddf||ddtddf||jd||jtdd||tddf||dtddfdS)Nr+rrlrnr)rrr,rvr|rprus  rtest_named_call_with_kwargsz$CallTest.test_named_call_with_kwargsseRQ011ta1~~~6777r4!q>>>:;;;B'''dQ!nnn555D4!q>>>"3444D2ta1~~~"677777rctdif}||tddd|tddd||tddd|gdS)NrjrUrkrl)rr,rassertInrus  r#test_call_with_args_call_empty_namez,CallTest.test_call_with_args_call_empty_namesyi_%%tAq!}}---aA---

d1ammdV,,,,,rc@|tdtdd|tdtdddk|tdiftdddkdS)NrirUrkrlrUrk)rprrassertFalse
assertTruers rtest_call_nezCallTest.test_call_nesE,//a<<<|,,Q1

=>>>vrl++tAq!}}<=====rctd}dd|tfD]1}||||||k2dS)NrirU)rintrpr)rrqvalues   rtest_call_non_tupleszCallTest.test_call_non_tuplessb\""dC'	,	,Ee,,,TU]++++	,	,rc
|ttd|ttdd|ttdddifd|ttddddifd	|ttd
|t	td
|ttd|ttdd|ttd
d|ttjd|ttdjdjd|ttdddd|ttd|ttddd|ttj	dddS)Nzcall()r*z
call.foo()rjrrzcall(1, 2, 3, a='b')rDzcall.bar(1, 2, 3, a='b')rrUzcall(1)thing)zzzcall(zz='thing')z
call().foorlrzcall().foo.bar().bingrkzcall().foo(1, 2, a=3)zcall()()z	call()(2)zcall()().bar().baz.beep(1))
r,r3rrr4r+rDbingrgbeeprs rr5zCallTest.test_reprsegg111eHoo..===eYc
$;<<==/	1	1	1eUISz$BCCDD3	5	5	5	
dV,,,TF+++dffx000d1gg	222dg...//1CDDDdffj))<888d1ggkooo227880	2	2	2AqA&&''#	
	
	
	
fdffhh444gd1ggajj));777#((++,,(	
	
	
	
	
rcp|tddif|tdddddddddft}|d	d
d|dd||jtd	d
dtddgdS)
Nrdrr+rDrlrn)rrrCrUrkr)r,rrcall_args_listr/s  r	test_callzCallTest.test_calls"b"...eUq999na.B.BC	E	E	EvvQ1


qA,q!Q--Q8	:	:	:	:	:rc|tjdddif|tjdddddift}|dd	d
|jd
d||jtjdd	d
tjd
dgdS)
NrUr+)rUeggs)fishzbar.bazrrrkrlrr)r,rr+rDrgrmethod_callsr/s  rtest_attribute_callzCallTest.test_attribute_call
s!udB&7888622#R&&)9:	<	<	<vvAqqA*(1a++TX\\A\-C-CD	F	F	F	F	Frc	2tdddd}||ddt	dft}|dddd||jtdddd||jtddd||jtddddg||j	tddddgt}|dj
d	tjdj
d	}||j	d
|||j	|dS)NrUrkrlrnrz().foo().barrlrr)
rr+rDr,rr	call_argsrprrKrgr	call_list)rresultr0	last_calls    rtest_extended_callzCallTest.test_extended_callsaQ##A#++.$q			!BCCC{{QQ!aa1)=)=)=>>>DNDAqMM:::,tAqA/C/C/C.DEEE41Q+?+?+?*@AAA{{$$q$)))%DHQKKOO%%''+001055	,i888)*=*=*?*?@@@@@rctdj}tdj}|||||||||dSNrUxrk)rr+r,rprs   rtest_extended_not_equalz CallTest.test_extended_not_equal*sh1IIIM1IIIMAAAq!!!!!rc&tdj}tdj}|||||||||dSr)rr+rDr,rprs   rtest_nested_calls_not_equalz$CallTest.test_nested_calls_not_equal2sz1IIIMMOO1IIIMMOOAAAq!!!!!rct}|d|td|jt}|dd|tdd|jt}|ddd|tddd|jt}t
|dddjj	ddtdddjj	dd
}|||jdS)NrUrkrlrn)rr,rrrKrJrr+rDrg__int__)rr0rqs   rtest_call_listzCallTest.test_call_list:s{{Qa**,,do>>>{{Qqa**4466	*	*	*{{Qq!*a**1--7799	*	*	*{{/DDGGNN1a  $(,,Q//223332 tAww~~a  ##'+//22155==??))4?;;;;;rc|ttt}t	|||jtg|tg|jdSr)r,rrrrrKrms  r
test_call_anyzCallTest.test_call_anyOsfs###KKAu---#-----rc<tdddifd}|t|d||dd||ddditdddif}|||dS)	NrrrlT)rrkrrU)rr,len)rrv
other_argss   rtest_two_args_callzCallTest.test_two_args_callXsfsAh'T222TA&&&a&)))a3(+++FS!H-..
z*****rc|tdddd|tddd|tdddifdddS)	Nrr+r)rDbarzrdrhelloworld)r,rrs rtest_call_with_namezCallTest.test_call_with_nameas~r5))!,e444133A6;;;'71CDFFqI2NNNNNrc	t}|d||jt	t	t	dt	gt}d|d<||jt	t	t	ddgt}t|||jt	t	t	gdS)NrDrU)	rr+r,rKr__getitem____setitem__iter__iter__rs  rtest_dunder_callzCallTest.test_dunder_callfsKK		%
L
VVTVVZZ\\466::<<#;#;E#B#BD^DFFJJLLD\D\D^D^D`D`a	
	
	

KK		%
L
VVTVVZZ\\466::<<#;#;E1#E#EF	
	
	

KKQQSSWWYY
L
VVTVVZZ\\466::<<#8#8#:#:;	
	
	
	
	
rN)r#r$r%rrrwryr}rrrrrrr5rrrrrrrrrrrrrrbrbZsY"3"3"3J	&	&	&
/
/
/ ***	3	3	3666	8	8	8--->>>,,,


>	:	:	:	F	F	FAAA(""""""<<<*...+++OOO





rrbceZdZdZdZdZdZdZdZdZ	dZ
d	Zd
ZdZ
dZd
ZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZ dZ!d Z"d!Z#d"Z$d#Z%d$Z&d%Z'd&Z(d'Z)d(Z*d)S)*SpecSignatureTestc|tt|d|dd|jdd|t
|jjdd|t|jd||j|t
|jjd|t|jd||j|t
|jjd|t|jdd|d|jd|d|jddS)Nr+rUrkrlrnr)	assertRaisesAttributeErrorgetattrrr.AssertionError	TypeErrorrr"r/s  r_check_someclass_mockz'SpecSignatureTest._check_someclass_mock}s.'4???A##Aq))).(5q!	=	=	=)TXq111


##%%%.(5q	:	:	:)TXq111


%%'''.*7	<	<	<)TZA666

1



%%a(((

Q

%%%*****rctt}||tt}||dSr)rrrr/s  r
test_basiczSpecSignatureTest.test_basicsNy))""4(((y{{++""4(((((rcd}t|d}||dGddt}t|d}||ddS)NcdSrrrrrfz>SpecSignatureTest.test_create_autospec_return_value.<locals>.frrr+return_valueceZdZdS)@SpecSignatureTest.test_create_autospec_return_value.<locals>.FooNr#r$r%rrrrBrDrrB)rr,r-)rrr0rBs    r!test_create_autospec_return_valuez3SpecSignatureTest.test_create_autospec_return_values

qu555'''					&			s777'''''rctt}t||||jjddS)Nr)rrrIr,r
call_countrs  rtest_autospec_reset_mockz*SpecSignatureTest.test_autospec_reset_mocksHC  A	-q11111rcGddt}tj|d}|}|d|ddS)NceZdZdZdS);SpecSignatureTest.test_mocking_unbound_methods.<locals>.FoocdSrr)rr+s  rr+z?SpecSignatureTest.test_mocking_unbound_methods.<locals>.Foo.foorrNr#r$r%r+rrrrBr$$$$$rrBr+rU)r-r
startr+r.)rrBpmock_foos    rtest_mocking_unbound_methodsz.SpecSignatureTest.test_mocking_unbound_methodssy	%	%	%	%	%&	%	%	%Le$$7799		!##A&&&&&rcGddt}t|d}||jddS)NceZdZdZdS)ESpecSignatureTest.test_create_autospec_keyword_arguments.<locals>.FoorlNr#r$r%rrrrrBrAAArrB3r)r-rr,r)rrBrs   r&test_create_autospec_keyword_argumentsz8SpecSignatureTest.test_create_autospec_keyword_argumentss\					&			C3'''c"""""rcddd}t|}|d|d|t|dd|dd|dddS)NrcdSrrrs  rr+zJSpecSignatureTest.test_create_autospec_keyword_only_arguments.<locals>.foorrrUrkrl)rr.rr)rr+rs   r+test_create_autospec_keyword_only_argumentsz=SpecSignatureTest.test_create_autospec_keyword_only_argumentss#####C  	!	Q)Q1---	!q					Q!$$$$$rct}d}||_t|}|d|jddS)NcdSrrrs rrz@SpecSignatureTest.test_function_as_instance_attribute.<locals>.frrr)rrrr.)robjrr0s    r#test_function_as_instance_attributez5SpecSignatureTest.test_function_as_instance_attributesQkks##v!!&)))))rctg}|d|jd|tt
|dGddt}t|}|jd|jjd|tt
|jddS)Nr+ceZdZgZdS)0SpecSignatureTest.test_spec_as_list.<locals>.FooNrrrrrBrsCCCrrBrl)rappendr.rrrr-r+)rr0rBs   rtest_spec_as_listz#SpecSignatureTest.test_spec_as_listsr""E&&u---.'4???					&			s##**1---.'48UCCCCCrcGddt}t|}||jfD]}||dS)Nc"eZdZeZdS).SpecSignatureTest.test_attributes.<locals>.SubNr#r$r%rattrrrrSubr9;;DDDrr)rrrr)rrsub_mockr0s    rtest_attributesz!SpecSignatureTest.test_attributessr					)			#3''x}-	-	-D&&t,,,,	-	-rcGddtGfddt}t|}|d|t5|dddn#1swxYwY|t5|ddddddS#1swxYwYdS)NceZdZdZdS)VSpecSignatureTest.test_spec_has_descriptor_returning_function.<locals>.CrazyDescriptorc|dSdS)NcdSrrrs r<lambda>zpSpecSignatureTest.test_spec_has_descriptor_returning_function.<locals>.CrazyDescriptor.__get__.<locals>.<lambda>sTrr)rrtype_s   r__get__z^SpecSignatureTest.test_spec_has_descriptor_returning_function.<locals>.CrazyDescriptor.__get__s;)>);rNr#r$r%rrrrCrazyDescriptorr	s#
*
*
*
*
*rrc$eZdZZdS)NSpecSignatureTest.test_spec_has_descriptor_returning_function.<locals>.MyClassN)r#r$r%	some_attr)rsrMyClassrs'))IIIrrrUrk)r-rrrr)rrr0rs   @r+test_spec_has_descriptor_returning_functionz=SpecSignatureTest.test_spec_has_descriptor_returning_functions	*	*	*	*	*f	*	*	*	*	*	*	*	*	*	*f	*	*	*w''q


y
)
)		NN															


y
)
)	!	!NN1a   	!	!	!	!	!	!	!	!	!	!	!	!	!	!	!	!	!	!s$(B		B
B
.CCCcpGfddt}|t5|jdddn#1swxYwY||ddt
|}|d|t5|dddn#1swxYwY|t5|ddddddS#1swxYwYdS)Nc(eZdZfdZdZxZS)ISpecSignatureTest.test_spec_has_function_not_in_bases.<locals>.CrazyClasscPt|dgzS)Ncrazy)super__dir__)r
CrazyClass	__class__s rrzQSpecSignatureTest.test_spec_has_function_not_in_bases.<locals>.CrazyClass.__dir__
s&Z..6688'BBrc2|dkrdSt|)Nrc|Srrrs rrzgSpecSignatureTest.test_spec_has_function_not_in_bases.<locals>.CrazyClass.__getattr__.<locals>.<lambda>sQrr)ritems  r__getattr__zUSpecSignatureTest.test_spec_has_function_not_in_bases.<locals>.CrazyClass.__getattr__s!7??&;&$T***r)r#r$r%rr#
__classcell__)rrs@rrrsS
C
C
C
C
C
C
+
+
+
+
+
+
+rr*rUrk)r-rrr>r,rrr)rinstr0rs   @r#test_spec_has_function_not_in_basesz5SpecSignatureTest.test_spec_has_function_not_in_bases	s	+	+	+	+	+	+	+	+	+	+z||


~
.
.		JJ															B,,,t$$

2


y
)
)		JJLLL															


y
)
)		JJq!																		s5AAAC""C&)C&D++D/2D/cZGddt}t|}|d|jd|t
t|jd|d|jd|t|jdd|t
t|jd|	ddg|j	ddg|t
t|j	d|j
d|j
jd|t
t|j
ddS)NceZdZdZeZiZdS)GSpecSignatureTest.test_builtin_functions_types.<locals>.BuiltinSubclasscdSrr)rargs  rrDzKSpecSignatureTest.test_builtin_functions_types.<locals>.BuiltinSubclass.bar'rrN)r#r$r%rDsortedrrrrBuiltinSubclassr*&s!$$$FDDDrr.rlr+rDrUrk)listrrr.rrrrDrr-rpoprr.r0s   rtest_builtin_functions_typesz.SpecSignatureTest.test_builtin_functions_types"ss					d			
//A&&q))).'4;FFF##E***)TXue<<<.'48UCCCQF&&1v....'4;FFF	

a	
((+++.'49eDDDDDrc$Gddt}t|}|dd||dtjddtjtjdg}||j||jdd|j|jd|	t
jddt
jt
jdg||j|dS)Nc"eZdZeZdS)0SpecSignatureTest.test_method_calls.<locals>.SubNrrrrrr5?rrrrUrkrl)
rrrrr"rr,rrextend)rrr0rMs    rtest_method_callsz#SpecSignatureTest.test_method_calls>sG					)			s##A




1


HQNNDHJJ
1

>*H555	

a	

	
Y]]1a
 
 $)--//49??13E3EF	
	
	
	
*H55555rcGddt}t|}|t|g|tt
||tt
|j|t|g||dt||jdtdS)NceZdZiZdS)=SpecSignatureTest.test_magic_methods.<locals>.BuiltinSubclassN)r#r$r%rrrrr.r:UsDDDrr.r+)	r/rr,rrrrassertIsInstancerr1s   rtest_magic_methodsz$SpecSignatureTest.test_magic_methodsTs					d			//dR((()S$///)S$)444dR(((d5k9555di.	:::::rc,Gddt}||fD]s}t|d}|||tt
|dd|tt
|jddtdS)Nc"eZdZeZdS),SpecSignatureTest.test_spec_set.<locals>.SubNrrrrrr?crrrT)spec_setr+rD)rrrrrsetattrr)rrr_r0s    r
test_spec_setzSpecSignatureTest.test_spec_setbs					)			##%%L	P	PD"4$777D&&t,,,ngtUEJJJngty%OOOO	P	PrcGddt}Gdd|}Gddt|}||||||fD]s}t|}|dd|jdd|d	d
|jd	d
tdS)Nc:eZdZedZedZdS)/SpecSignatureTest.test_descriptors.<locals>.FoocdSrr)clsrrs   rrz1SpecSignatureTest.test_descriptors.<locals>.Foo.fp"drcdSrrrs  rgz1SpecSignatureTest.test_descriptors.<locals>.Foo.grsrN)r#r$r%classmethodrstaticmethodrJrrrrBrEos6
""["
\rrBceZdZdS)/SpecSignatureTest.test_descriptors.<locals>.BarNrrrrBarrNurrOceZdZdS)/SpecSignatureTest.test_descriptors.<locals>.BazNrrrrBazrRwrPrrSrUrkrlrn)r-rrrassert_called_once_withrJ)rrBrOrSr_r0s      rtest_descriptorsz"SpecSignatureTest.test_descriptorsns					&				#''''')S'''##%%cceeS##%%8	1	1D"4((DFF1aLLLF**1a000FF1aLLLF**1a0000
	1	1rcGddt}||_t|}|||jj||j||jtjtjg|	|j
|j||j
|j|j

|t|jj
jdS)NceZdZdZdZeZdS)+SpecSignatureTest.test_recursive.<locals>.AcdSrrrs rrz-SpecSignatureTest.test_recursive.<locals>.A.arrzfoo bar bazN)r#r$r%rr+rDrrrArXs!CCCCrrZ)r-Brrcalledrr,rrassertIsr+rDassertIsNotlowerrrr.)rrZr0s   rtest_recursivez SpecSignatureTest.test_recursives								
q!!'''


*TVXXtvxxzz,BCCC

aeQU###48,,,.$(.*KLLLLLrcGddt}t|}|||||fD]}|d|jd|jd|t|jdd|tt|dt|}|d|jd|jd|t|jdd|tt|d|t||j	
d|j	j
d|j	j
d	|tt|j	d
|	
d|	j
d|	j
d	|tt|	d
dS)Nc0eZdZdZGddeZdS)@SpecSignatureTest.test_spec_inheritance_for_classes.<locals>.FoocdSrr)rrs  rrzBSpecSignatureTest.test_spec_inheritance_for_classes.<locals>.Foo.arrceZdZdZdS)DSpecSignatureTest.test_spec_inheritance_for_classes.<locals>.Foo.BarcdSrr)rys  rrzFSpecSignatureTest.test_spec_inheritance_for_classes.<locals>.Foo.Bar.frrNr#r$r%rrrrrOrfs$$$$$rrON)r#r$r%rr-rOrrrrBrcsG   
%
%
%
%
%f
%
%
%
%
%rrBrrr+rDrr)rhrJ)r-rr^rr.rrrrrOr)rrB
class_mock	this_mock
instance_mocks     r!test_spec_inheritance_for_classesz3SpecSignatureTest.test_spec_inheritance_for_classess	%	%	%	%	%&	%	%	%
%S))
ZZ\\222#ZZ\\1	G	GIKK!KK**Q*///K**1---ieUCCCngy#FFFF'..
**1---**Q*///)]_eUCCC.'=#FFF	
)]333A..q111...333.'=3DcJJJa   003330010555.'=3D3D3F3FLLLLLrc0Gddt}||_t|}|}|tt
|d|}|tt
|dt|}|tt
|d|t||}|tt
|ddS)NceZdZdZdS)+SpecSignatureTest.test_inherit.<locals>.FoorlNrrrrrBrprrrBr)r-rBrrrrr)rrBr0instance
attr_instancecall_results      rtest_inheritzSpecSignatureTest.test_inherits					&			s##466.'8SAAA


.'=#FFFssuu%%.'4===)T***hhjj.';DDDDDrcDtdtttdtttitttgtttttt
tdtttdtttdtddS)NrUr+g?y?FT)rrr4rr/setfloatcomplexrs r
test_builtinszSpecSignatureTest.test_builtinss   rcd}t|}|t||dd|dd|dd|dd||_t|}|t|j|dd|jdd|jdddS)NcdSrrrs  rrz*SpecSignatureTest.test_function.<locals>.frrrUrkrrrlrn)rrrr.rrrr0s   r
test_functionzSpecSignatureTest.test_functionsq!!)T***Q


1%%%Q'''!q)))q!!)TV,,,q!!!!Q'''!!A!+++++rcGddtGfddt}||dddt||t
fd|ddjj|tfd	j}|j	|j
fdS)
NceZdZddZdS);SpecSignatureTest.test_skip_attributeerrors.<locals>.RaiserNc(|tddS)Nz$Can only be accessed via an instancer!)rrtypes   rrzCSpecSignatureTest.test_skip_attributeerrors.<locals>.Raiser.__get__s;()OPPP;rrrrrrRaiserrs.
Q
Q
Q
Q
Q
Qrrc:eZdZZedZdS)@SpecSignatureTest.test_skip_attributeerrors.<locals>.RaiserClassc||zSrrrs  rexistingzISpecSignatureTest.test_skip_attributeerrors.<locals>.RaiserClass.existings1urN)r#r$r%raiserrLr)rsrRaiserClassrs9VXXF


\


rrrUrkrlc2dddS)NrUrkrl)r)rss rrz=SpecSignatureTest.test_skip_attributeerrors.<locals>.<lambda>sqzz!Q/B/BrcjSr)nonexisting)rsrrz=SpecSignatureTest.test_skip_attributeerrors.<locals>.<lambda>s	!-r)r-r,rrrrrrrr+rD)rrrrrs   @@rtest_skip_attributeerrorsz+SpecSignatureTest.test_skip_attributeerrorss&	Q	Q	Q	Q	QV	Q	Q	Q
							&				
--a33Q777K(()%B%B%B%BCCCAq))1:+BCCC.*?*?*?*?@@@hrcGddt}t|}|t||d|d|d|t
|jd|dd|dd|dd|t
|jdddS)	NceZdZddZdS)3SpecSignatureTest.test_signature_class.<locals>.FoorlcdSrrrs   r__init__z<SpecSignatureTest.test_signature_class.<locals>.Foo.__init__rrNrr#r$r%rrrrrBrs,,,,,,rrBrUrrkrnrr)r-rrrrTrr.rYs   rtest_signature_classz&SpecSignatureTest.test_signature_classs	-	-	-	-	-&	-	-	-s##)T***Q$$Q'''$$q$))).$*FJJJQ


1%%%!q))).$*AQ!LLLLLrcJGddt}t|dS)NceZdZdS)6SpecSignatureTest.test_class_with_no_init.<locals>.FooNrrrrrBr*rrrB)r-r)rrBs  rtest_class_with_no_initz)SpecSignatureTest.test_class_with_no_init's@					&			rcGddt}t|}|dd|dd|dd|t|d|dd}|t||d|d|d|d|d|dt|dd}|d|d|t||d|ddS)NceZdZdZdZdS);SpecSignatureTest.test_signature_callable.<locals>.CallablecdSrr)rrrhs   rrzDSpecSignatureTest.test_signature_callable.<locals>.Callable.__init__1rrcdSrrr!s  r__call__zDSpecSignatureTest.test_signature_callable.<locals>.Callable.__call__2rrN)r#r$r%rrrrrCallabler0s"***'''''rrrUrkrrhrr)r-rrTrrr.)rrr0rqs    rtest_signature_callablez)SpecSignatureTest.test_signature_callable/s	(	(	(	(	(v	(	(	(x((Q


$$Q***$$qA$...)T3///41::)X...3((---((3(///


##C(((##c#***xx1~~..s$$s$+++)T***S			$$$$$rcGddt}t|}|}||t|d|t||t|dt|}|t||t|ddS)NceZdZdZdS)ASpecSignatureTest.test_signature_noncallable.<locals>.NonCallablecdSrrrs rrzJSpecSignatureTest.test_signature_noncallable.<locals>.NonCallable.__init__MsrNrrrrNonCallablerLs#




rrr)r-rrTrr)rrr0rqs    rtest_signature_noncallablez,SpecSignatureTest.test_signature_noncallableKs					&			{++466$$&&&)T3///)X...)Xs333{{}}--)T***)T3/////rcGddt}t|}|j}||t	d||jdS)NceZdZdZdS)8SpecSignatureTest.test_create_autospec_none.<locals>.FooN)r#r$r%rDrrrrBr]sCCCrrB)r-rrDassertNotIsInstancerr+rT)rrBr0nones    rtest_create_autospec_nonez+SpecSignatureTest.test_create_autospec_none\s					&			s##x  tDzz222


((*****rctGddt}t|}|d|jd|jd|d|jd|jddS)NceZdZdZdS)MSpecSignatureTest.test_autospec_functions_with_self_in_odd_place.<locals>.FoocdSrr)rrs  rrzOSpecSignatureTest.test_autospec_functions_with_self_in_odd_place.<locals>.Foo.fjrrNrirrrrBris     rrB
r)r-rrr.)rrBrs   r.test_autospec_functions_with_self_in_odd_placez@SpecSignatureTest.test_autospec_functions_with_self_in_odd_placehs	!	!	!	!	!&	!	!	!
C  	B	r"""	B'''		r"""	B'''''rc,GddtGddtGfddt}t|}fd}||j||j||j||jdS)Nc"eZdZdZddZdZdS)CSpecSignatureTest.test_autospec_data_descriptor.<locals>.Descriptorc||_dSr)r)rrs  rrzLSpecSignatureTest.test_autospec_data_descriptor.<locals>.Descriptor.__init__ws
"


rNc|Srr)rrrGs   rrzKSpecSignatureTest.test_autospec_data_descriptor.<locals>.Descriptor.__get__zsrcdSrr)rrrs   r__set__zKSpecSignatureTest.test_autospec_data_descriptor.<locals>.Descriptor.__set__}rrr)r#r$r%rrrrrr
Descriptorrvs>
#
#
#




0////rrceZdZdS)CSpecSignatureTest.test_autospec_data_descriptor.<locals>.MyPropertyNrrrr
MyPropertyrrrrcXeZdZdgZedZdZdZdS)<SpecSignatureTest.test_autospec_data_descriptor.<locals>.FooslotcdSrrrs rpropzASpecSignatureTest.test_autospec_data_descriptor.<locals>.Foo.props DrcdSrrrs rsubpropzDSpecSignatureTest.test_autospec_data_descriptor.<locals>.Foo.subprops#trr%N)r#r$r%	__slots__propertyrrdesc)rrsrrBrsII
  X 
##Z#:b>>DDDrrBc|t|ddd|ddd|ddd|jddddS)NrUrkrlrnrr)r;rabcrT)	mock_attrrs rcheck_data_descriptorzNSpecSignatureTest.test_autospec_data_descriptor.<locals>.check_data_descriptors{!!)Y777IaAMM!Q"""--aA666M11!Q:::::r)r-rrrrrr)rrBr+rrrs`   @@rtest_autospec_data_descriptorz/SpecSignatureTest.test_autospec_data_descriptorus	0	0	0	0	0	0	0	0										"		"		"		"		"		"		"		"&		"		"		"c""	;	;	;	;	;	ch'''ck***ch'''ch'''''rcvtjtjtj}||t
t
|}||||ddd|ddddS)Nrnrr)	types
MethodTypetimectimer;r4rrTrI)rmethmockeds   r'test_autospec_on_bound_builtin_functionz9SpecSignatureTest.test_autospec_on_bound_builtin_functions
DIKK88ddffc*** &&	&&(((q!Q&&q!Q/////rcGdd}|}t|}|t|ddS)NceZdZdZdS)ESpecSignatureTest.test_autospec_getattr_partial_function.<locals>.Fooc$td|S)Nc|Srr)names rrzcSpecSignatureTest.test_autospec_getattr_partial_function.<locals>.Foo.__getattr__.<locals>.<lambda>sDrr)r	attributes  rr#zQSpecSignatureTest.test_autospec_getattr_partial_function.<locals>.Foo.__getattr__s00)<<<rN)r#r$r%r#rrrrBrs#
=
=
=
=
=rrBr#)rrhasattr)rrBproxyautospecs    r&test_autospec_getattr_partial_functionz8SpecSignatureTest.test_autospec_getattr_partial_functionsh	=	=	=	=	=	=	=	=
"5)):6677777rcGdd}t|jd}|tj|jtj|dS)Nc&eZdZeddZdS)CSpecSignatureTest.test_autospec_signature_staticmethod.<locals>.FoorcdSrrrrcs   r
static_methodzQSpecSignatureTest.test_autospec_signature_staticmethod.<locals>.Foo.static_methods.2drNr)r#r$r%rLrrrrrBrs&
222\222rrBr)r__dict__r,inspect	signaturerrYs   r$test_autospec_signature_staticmethodz6SpecSignatureTest.test_autospec_signature_staticmethodsv	3	3	3	3	3	3	3	3s|O<==*3+<==w?PQU?V?VWWWWWrcGdd}t|jd}|tj|jtj|dS)Nc&eZdZeddZdS)BSpecSignatureTest.test_autospec_signature_classmethod.<locals>.FoorcdSrr)rGrrrs    rclass_methodzOSpecSignatureTest.test_autospec_signature_classmethod.<locals>.Foo.class_methods26$rNr)r#r$r%rKrrrrrBrs&
666[666rrBr)rrr,rrrrYs   r#test_autospec_signature_classmethodz5SpecSignatureTest.test_autospec_signature_classmethodsv	7	7	7	7	7	7	7	7s|N;<<*3+;<<g>OPT>U>UVVVVVrc|d}t|}|dd|dd|tj|tj|||jtddtddg|t|ddS)NcdSrrrs  rmyfuncz=SpecSignatureTest.test_spec_inspect_signature.<locals>.myfuncrrrUrkr)rr,rrrKrrr)rrr0s   rtest_spec_inspect_signaturez-SpecSignatureTest.test_spec_inspect_signaturesv&&Q


qA*400'2CF2K2KLLL41::ta1~~~*FGGG)T1-----rc	Dd
dtdtdtdtfd}||ddd	
dt|}|ddd	
|dd	
|tj|tj|||jt
ddd	
t
dd	
g|t|d|t|ddd	d
dS)Nrrrrreturnc||z|zSrrrs   rr+zFSpecSignatureTest.test_spec_inspect_signature_annotations.<locals>.foosq519rrUrkrl)rrrnr)	rr,rrrrKrrr)rr+r0s   r'test_spec_inspect_signature_annotationsz9SpecSignatureTest.test_spec_inspect_signature_annotationss,		3	3							
Qa!,,,s##QQQ!*400'2CC2H2HIII41???DaLLL*IJJJ)T1---)T1aa88888rc`d}t|}||jddS)NcdS)Nnoperrrrrz>SpecSignatureTest.test_spec_function_no_name.<locals>.<lambda>svrfuncopy)rr,r#)rfuncr0s   rtest_spec_function_no_namez,SpecSignatureTest.test_spec_function_no_names4~t$$	22222rc2d}t|}|d|tdg|t5|tdgddddS#1swxYwYdS)NcdSrrrs rrz@SpecSignatureTest.test_spec_function_assert_has_calls.<locals>.frrrUrk)rrWrrrr|s   r#test_spec_function_assert_has_callsz5SpecSignatureTest.test_spec_function_assert_has_callssq!!QtAwwi(((


~
.
.	-	-!!477),,,	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-s$BBBcd}t|}|d|d|t5|dddddS#1swxYwYdS)NcdSrrrs rrz?SpecSignatureTest.test_spec_function_assert_any_call.<locals>.frrrUrk)rrXrrr|s   r"test_spec_function_assert_any_callz4SpecSignatureTest.test_spec_function_assert_any_callsq!!QQ


~
.
.	$	$  ###	$	$	$	$	$	$	$	$	$	$	$	$	$	$	$	$	$	$s
A00A47A4cd}t}t||}|dd||jt	dg||jt	dg|||jg||jgdS)NcdSrrrs rrz:SpecSignatureTest.test_spec_function_reset_mock.<locals>.frrrrUrk)rrr,rKrrI)rrrvr0s    rtest_spec_function_reset_mockz/SpecSignatureTest.test_spec_function_reset_mocks
VVqr222Q


477)444a	222"---+++++rN)+r#r$r%rrrrrrrrrrrr'r2r7r<rBrUr`rmrtryr}rrrrrrrrrrrrrrrrrrrrrrr{s+++6)))	(	(	(222'''###	%	%	%***DDD$---!!!(2EEE8666,;;;	P	P	P111(MMM,#M#M#MLEEE0*,,,$0MMM$%%%8000"	+	+	+
(
(
()()()(X
0
0
0
8
8
8XXXWWW
.
.
.
9
9
9 333---$$$	,	,	,	,	,rrc2eZdZdZdZdZdZdZdZdS)TestCallListct}||jt|dd|d|dd|dt	ddt	dt	ddt	dfD]}|||jt	dt	ddg}|||jt	ddt	dg}|||jt	ddt	dg}|||jt	ddg}|||j|t	d|j|t	dg|jdS)	NrUrkrlrrnrrr)rr;rr	rrassertNotIn)rr0rqcallss    r!test_args_list_contains_call_listz.TestCallList.test_args_list_contains_call_listsvvd19===Q


q				Q


q				AJJq			41::tayyy@	5	5DMM$ 34444DAJJ'

eT0111aTAYYY'

eT0111aTAYYY'

eT0111a

eT0111ft':;;;$v,,)<=====rct}|dd|d|jddd}|t|j|dS)	NrUrkrlrrdog)catzU[call(1, 2),
 call.foo(a=3),
 call.foo.bar(),
 call.foo.bar().baz('fish', cat='dog')])rr+rDrgr,r4rK)rr0rMs   rtest_call_list_strzTestCallList.test_call_list_str)svvQ


1


6u---
6		
T_--x88888rcVtdtzt}|}	tj|t	}|j|||j	ttgd|_||j	tttdg|dS#|wxYw)Nz%s.SomeClass.one)new_callablerl)r
r#rrrrrTr.r,rKrstop)rrr0rs    rtest_propertymockzTestCallList.test_propertymock8s$x/lKKKwwyy	MM((***A
EE##%%%T_tvvtvv.>???AET_tvvtvvtAww.GHHH
FFHHHHHAFFHHHHsCDD(ct}t}|t|_|j}|||t||tdSr)rrrr+rTr;rrrrreturneds    rtest_propertymock_barez#TestCallList.test_propertymock_bareJslKKNNQ5	!!###h	222  <88888rct}td}|t|_|j}|||d||tdS)Nr%r)rrrr+rTr,rrs    rtest_propertymock_returnvaluez*TestCallList.test_propertymock_returnvalueUssKKb)))Q5	!!###2&&&  <88888rct}tt}|t|_|t5|jdddn#1swxYwY|dS)N)side_effect)rr
ValueErrorrr+rrT)rrrs   rtest_propertymock_side_effectz*TestCallList.test_propertymock_side_effect`sKKZ000Q


z
*
*		
EE																!!#####sA&&A*-A*N)	r#r$r%rrrrrr#rrrr
r
sn>>>2999$999999$$$$$rr
c2eZdZdZdZdZdZdZdZdS)TestCallablePredicatectttttt
fD]$}|t|%dSr)r4bytesrr/tuplerrr)rrs  r	test_typezTestCallablePredicate.test_typelsCT5)<	,	,COOIcNN++++	,	,rcxGdd}|}|t|dS)NceZdZdZdS)>TestCallablePredicate.test_call_magic_method.<locals>.CallablecdSrrrs rrzGTestCallablePredicate.test_call_magic_method.<locals>.Callable.__call__rrrN)r#r$r%rrrrrr,qrrr)rr)rrrqs   rtest_call_magic_methodz,TestCallablePredicate.test_call_magic_methodpsU	%	%	%	%	%	%	%	%8::	(++,,,,,rcnGdd}|t|jdS)Nc$eZdZedZdS)ATestCallablePredicate.test_staticmethod.<locals>.WithStaticMethodcdSrrrrr
staticfunczLTestCallablePredicate.test_staticmethod.<locals>.WithStaticMethod.staticfuncxrHrN)r#r$r%rLr3rrrWithStaticMethodr1ws#
""\"""rr4)rrr3)rr4s  rtest_staticmethodz'TestCallablePredicate.test_staticmethodvsP	#	#	#	#	#	#	#	#	
	"2"=>>?????rcnGdd}|t|jdS)Nc$eZdZedZdS)MTestCallablePredicate.test_non_callable_staticmethod.<locals>.BadStaticMethodN)r#r$r%rLnot_callablerrrBadStaticMethodr8}s'<--LLLrr:rrr9)rr:s  rtest_non_callable_staticmethodz4TestCallablePredicate.test_non_callable_staticmethod|sO	.	.	.	.	.	.	.	.?#?@@AAAAArcnGdd}|t|jdS)Nc$eZdZedZdS)?TestCallablePredicate.test_classmethod.<locals>.WithClassMethodcdSrr)rGs r	classfunczITestCallablePredicate.test_classmethod.<locals>.WithClassMethod.classfuncs $rN)r#r$r%rKrArrrWithClassMethodr?s#
$$[$$$rrB)rrrA)rrBs  rtest_classmethodz&TestCallablePredicate.test_classmethodsO	%	%	%	%	%	%	%	%	
	/";<<=====rcnGdd}|t|jdS)Nc$eZdZedZdS)KTestCallablePredicate.test_non_callable_classmethod.<locals>.BadClassMethodN)r#r$r%rKr9rrrBadClassMethodrFs&;t,,LLLrrGr;)rrGs  rtest_non_callable_classmethodz3TestCallablePredicate.test_non_callable_classmethodsO	-	-	-	-	-	-	-	->#>??@@@@@rN)	r#r$r%r)r.r5r<rCrHrrrr%r%jsy,,,---@@@BBB
>>>AAAAArr%__main__)rrrunittest
unittest.mockrrrrrrr	r
rrr
	functoolsrr-rTestCaser'rbrr
r%r#mainrrr<module>rOs%
""""""""C%C%C%C%C%hC%C%C%J^
^
^
^
^
x ^
^
^
B	P
,P
,P
,P
,P
,)P
,P
,P
,fY$Y$Y$Y$Y$8$Y$Y$Y$x A A A A AH- A A AFzHMOOOOOr