Your IP : 216.73.216.213


Current Path : /opt/alt/python34/lib64/python3.4/unittest/test/testmock/__pycache__/
Upload File :
Current File : //opt/alt/python34/lib64/python3.4/unittest/test/testmock/__pycache__/testhelpers.cpython-34.pyo

�
j f1h�@s�ddlZddlmZmZmZmZmZmZmZm	Z	m
Z
ddlmZGdd�de�Z
Gdd�dej�ZGdd	�d	ej�ZGd
d�dej�ZGdd
�d
ej�Zedkr�ej�ndS)�N)	�call�_Call�create_autospec�	MagicMock�Mock�ANY�	_CallList�patch�PropertyMock)�datetimec@s7eZdZdd�Zdd�Zddd�ZdS)�	SomeClasscCsdS)N�)�self�a�br
r
�G/opt/alt/python34/lib64/python3.4/unittest/test/testmock/testhelpers.py�onesz
SomeClass.onecCsdS)Nr
)rr
r
r�two
sz
SomeClass.twoNcCsdS)Nr
)rrr
r
r�threeszSomeClass.three)�__name__�
__module__�__qualname__rrrr
r
r
rr
src@s@eZdZdd�Zdd�Zdd�Zdd�Zd	S)
�AnyTestcCs]|jtt��t�}|t�|jt�t�}|dt�|jdt�dS)N�foo)�assertEqualr�objectr�assert_called_with)r�mockr
r
r�test_anys	

	
zAnyTest.test_anycCs0|jtt�d�|jtt�d�dS)Nz<ANY>)r�reprr�str)rr
r
r�	test_repr!szAnyTest.test_reprcCs<t�}|tj�dtj��|jtdt�dS)Nr)rr�nowrr)rrr
r
r�test_any_and_datetime&s	zAnyTest.test_any_and_datetimec	Cst�}tj�}Gdd�dt�}x�tj�|�fD]�}|j�||d|d|�|j|d|d|�|�jd|d|�ttdtdt�tjtdtdt�t�t�jdtdt�g}|j||j	�|j|j	|�qAWdS)	Nc@s(eZdZdd�Zdd�ZdS)z9AnyTest.test_any_mock_calls_comparison_order.<locals>.FoocSsdS)NFr
)r�otherr
r
r�__eq__1sz@AnyTest.test_any_mock_calls_comparison_order.<locals>.Foo.__eq__cSsdS)NTr
)rr$r
r
r�__ne__3sz@AnyTest.test_any_mock_calls_comparison_order.<locals>.Foo.__ne__N)rrrr%r&r
r
r
r�Foo0sr'r�barZzingaZalphaZa1Zz99)
rrr"r�
reset_mock�methodrrr�
mock_calls)rr�dr'�expectedr
r
r�$test_any_mock_calls_comparison_order-s	
$z,AnyTest.test_any_mock_calls_comparison_orderN)rrrrr!r#r.r
r
r
rrsrc@s�eZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zdd�Zd
d�Z	dd�Z
dd�Zdd�Zdd�Z
dd�Zdd�Zdd�Zdd�Zdd �Zd!d"�Zd#S)$�CallTestcCs�t�}|j|t��|j|td��|j|tff��|j|tif��|j|tdff��|j|tdif��|j|tdfif��|j|td��|j|tdff��|j|tdif��|j|tdfif��td�}|j|td��|j|td��|j|tdif��|j|tddif��td�}|j|td��|j|tddif��td�}|j|td��|j|tddif��|j|td ��|j|tdd!if��tidd
6f�}|j|tdfidd
6f��|j|tdidd
6f��|j|tfidd
6f��|j|tidd
6f��dS)"N�rr(�bazZspam����r)r0)�foo�r2r3r4)r7�r2r3r4)r8�r2r3r4)r0r9)r2r3r4)r2r3r4�r2r3r5)r:�r2r3r4)r0r;)r2r3r4�r2r3r5)r6r<�r2r3r5)r0r=)r2r3r5�r2r3r5)zbarr>)r2r3r5)rr�assertNotEqual)r�kallr
r
r�test_call_with_callIs<	&##zCallTest.test_call_with_callcCs�t�}|j|f�|j|d�|j|ff�|j|dff�|j|dfif�|j|dif�|j|if�dS)Nr)zfoo)rr)r�argsr
r
r�test_empty__Callns	zCallTest.test_empty__CallcCs�tdfif�}|j|d�|j|dff�|j|dfif�|j|dif�|j|ff�|j|f�|j|if�|j|d�|j|dff�|j|dif�dS)Nrr()zfoo)zbar)rrr?)rrBr
r
r�test_named_empty_callzszCallTest.test_named_empty_callcCsetdif�}|j|d�|j|d	�|j|dd
if�|j|dif�dS)Nr2r3r4r)r2r3r4�r2r3r4)rE�r2r3r4)zfoorF)r2r3r4)r2r3r4)rr)rrBr
r
r�test_call_with_args�s
zCallTest.test_call_with_argscCshtddif�}|j|d�|j|ddif�|j|d
�|j|dif�dS)Nrr2r3r4)r2r3r4�r2r3r4)zfoorH)r2r3r4�r2r3r4)rI)r2r3r4)rrr?)rrBr
r
r�test_named_call_with_args�s
z"CallTest.test_named_call_with_argsc	Cs�tftdddd�f�}|j|tdddd�f�|j|dtdddd�f�|j|dftdddd�f�|j|ftdddd�f�dS)Nrr4rr5r)r�dictr)rrBr
r
r�test_call_with_kwargs�s
!"%(zCallTest.test_call_with_kwargsc	Cs�tdftdddd�f�}|j|dtdddd�f�|j|dftdddd�f�|j|tdddd�f�|j|ftdddd�f�dS)Nrrr4rr5)rrKrr?)rrBr
r
r�test_named_call_with_kwargs�s
$%("z$CallTest.test_named_call_with_kwargscCsmtdif�}|j|tddd��|jtddd�|�|jtddd�|g�dS)Nr2r3r4)r2r3r4)rrr�assertIn)rrBr
r
r�#test_call_with_args_call_empty_name�sz,CallTest.test_call_with_args_call_empty_namecCss|jtd�tdd��|jtd�tddd�k�|jtdif�tddd�k�dS)	Nr2r3r4�r2r3r4)rP�r2r3r4)rQ)r2r3)r?rr�assertFalseZ
assertTrue)rr
r
r�test_call_ne�s%zCallTest.test_call_necCsPtd�}x=dd|tfD])}|j||�|j||k�qWdS)Nr2r3r4�r2r3r4)rT)r�intr?rR)rr@�valuer
r
r�test_call_non_tuples�szCallTest.test_call_non_tuplescCs�|jtt��d�|jttd��d�|jttdidd6f��d	�|jttd
didd6f��d�|jtt�d�|jtt�d�|jtt��d�|jttd��d
�|jttdd��d�|jtt�j�d�|jttd�jjdd�j�d�|jtt�jdddd��d�|jtt���d�|jttd�d��d�|jtt��j�jj	d��d�dS)Nzcall()rz
call.foo()r2r3r4rrzcall(1, 2, 3, a='b')r(zcall.bar(1, 2, 3, a='b')rzcall(1)Zzz�thingzcall(zz='thing')z
call().foozcall().foo.bar().bingzcall().foo(1, 2, a=3)zcall()()z	call()(2)zcall()().bar().baz.beep(1))zfoo)r2r3r4)r2r3r4)
rrrrr rr(�bingr1�beep)rr
r
rr!�s,"%'"!zCallTest.test_reprcCs�|jt�dfif�|jtdddddd�dd
idd6dd6f�t�}|dd	d�|d
ddd�|j|jtdd	d�td
ddd�g�dS)Nr0rr(rr4rr5r2r3rr�)zfoozbar)rrr�call_args_list)rrr
r
r�	test_call�s	zCallTest.test_callcCs�|jtjd�ddif�|jtjjdd�dfidd6f�t�}|jddd�|jjddd	d
�|j|jtjddd�tjjddd	d
�g�dS)Nr2r�fishZeggszbar.bazr3r4rrr[)r2)rrrr(r1r�method_calls)rrr
r
r�test_attribute_call�s"	zCallTest.test_attribute_callc	Cs�td�jd�jddd�}|j|dd	tdd�f�t�}|dddddd�|j|jtdddddd��|j|jtddd��|j|jtdddddd�g�|j|j	tdddddd�g�t�}|jd�j��j
jdd�tjd�j��j
jdd�}|j|j	d
|�|j|j	|j��dS)Nr2r3r4rr5z().foo().barrr[)r4���)
rrr(rrKr�	call_argsr?r\r+r1rZ�	call_list)r�resultrZ	last_callr
r
r�test_extended_call�s$"	(++	%'zCallTest.test_extended_callcCsVt�}|d�|jtd�j�|j�t�}|d�jd�|jtd�jd�j�|j�t�}|d�jd�d�|jtd�jd�d�j�|j�t�}t|d�jd�d�jjj	d�d��td�jd�d�jjj	d�d�j
�}|j|j�|j�dS)Nr2r3r4r5�)rrrrcr+r*rUrr(r1�__int__)rrr@r
r
r�test_call_lists	
	
	$
	46zCallTest.test_call_listcCsS|jtt�t�}t|�|j|jtg�|jtg|j�dS)N)rrrrrUr+)r�mr
r
r�
test_call_any#s
	
zCallTest.test_call_anycCs�tdidd6fdd�}|jt|�d�|j|dd	�|j|didd6�td
idd6f�}|j||�dS)Nr2r3r4rrTr)r2r3)r2r3)r2r3)rr�len)rrBZ
other_argsr
r
r�test_two_args_call,szCallTest.test_two_args_callN)rrrrArCrDrGrJrLrMrOrSrWr!r]r`rerhrjrlr
r
r
rr/Gs"%	
	
	r/c@sxeZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zdd�Zd
d�Z	dd�Z
dd�Zdd�Zdd�Z
dd�Zdd�Zdd�Zdd�Zdd �Zd!d"�Zd#d$�Zd%d&�Zd'd(�Zd)d*�Zd+d,�Zd-d.�Zd/d0�Zd1d2�Zd3d4�Zd5d6�Zd7d8�Zd9d:�Zd;d<�Z d=S)>�SpecSignatureTestcCs>|jtt|d�|jdd�|jjdd�|jt|jjdd�|jt|jd�|j�|jj�|jt|jjd�|jt|jd�|j�|jj�|jt|jjd�|jt|jdd�|jd�|jjd�|jdd�|jjdd�dS)Nrr2r3r4r5r)	�assertRaises�AttributeError�getattrrr�AssertionError�	TypeErrorrr)rrr
r
r�_check_someclass_mock8s(	

	

	
z'SpecSignatureTest._check_someclass_mockcCs9tt�}|j|�tt��}|j|�dS)N)rrrs)rrr
r
r�
test_basicSs
zSpecSignatureTest.test_basiccCspdd�}t|dd�}|j|�d�Gdd�dt�}t|dd�}|j|�d�dS)NcSsdS)Nr
r
r
r
r�f[sz>SpecSignatureTest.test_create_autospec_return_value.<locals>.fZreturn_valuerc@seZdZdS)z@SpecSignatureTest.test_create_autospec_return_value.<locals>.FooN)rrrr
r
r
rr'`sr')rrr)rrurr'r
r
r�!test_create_autospec_return_valueZsz3SpecSignatureTest.test_create_autospec_return_valuecCs:tt�}t|�|j�|j|jjd�dS)Nr)rrUr)rrgZ
call_count)rrir
r
r�test_autospec_reset_mockgs

z*SpecSignatureTest.test_autospec_reset_mockcCsUGdd�dt�}tj|d�}|j�}|�jd�|jd�dS)Nc@seZdZdd�ZdS)z;SpecSignatureTest.test_mocking_unbound_methods.<locals>.FoocSsdS)Nr
)rrr
r
rrpsz?SpecSignatureTest.test_mocking_unbound_methods.<locals>.Foo.fooN)rrrrr
r
r
rr'osr'rr2)rr	�startrr)rr'�pZmock_foor
r
r�test_mocking_unbound_methodsns
z.SpecSignatureTest.test_mocking_unbound_methodscCsudSGdd�dt�}t|�}|�}|jt|jd�|jd�|jjd�|jt|j�)Nc@seZdZdd�ZdS)zCSpecSignatureTest.test_create_autospec_unbound_methods.<locals>.FoocSsdS)Nr
)rr
r
rr~szGSpecSignatureTest.test_create_autospec_unbound_methods.<locals>.Foo.fooN)rrrrr
r
r
rr'}sr'r2)rrrnrrrr)rr'�klass�instancer
r
r�$test_create_autospec_unbound_methodsys	
z6SpecSignatureTest.test_create_autospec_unbound_methodscCs?Gdd�dt�}t|dd�}|j|jd�dS)Nc@seZdZdZdS)zESpecSignatureTest.test_create_autospec_keyword_arguments.<locals>.Foor4N)rrrrr
r
r
rr'�sr'r�3)rrrr)rr'rir
r
r�&test_create_autospec_keyword_arguments�sz8SpecSignatureTest.test_create_autospec_keyword_argumentscCsrdddd�}t|�}|d�|jd�|jt|dd�|ddd�|jddd�dS)NrcSsdS)Nr
)rrr
r
rr�szJSpecSignatureTest.test_create_autospec_keyword_only_arguments.<locals>.foor2r3r4)rrrnrr)rrrir
r
r�+test_create_autospec_keyword_only_arguments�s

z=SpecSignatureTest.test_create_autospec_keyword_only_argumentscCsKt�}dd�}||_t|�}|jd�|jjd�dS)NcSsdS)Nr
)rr
r
rru�sz@SpecSignatureTest.test_function_as_instance_attribute.<locals>.frY)rrurr)r�objrurr
r
r�#test_function_as_instance_attribute�s		
z5SpecSignatureTest.test_function_as_instance_attributecCs�tg�}|jd�|jjd�|jtt|d�Gdd�dt�}t|�}|jjd�|jjjd�|jtt|jd�dS)Nrc@seZdZgZdS)z0SpecSignatureTest.test_spec_as_list.<locals>.FooN)rrrrr
r
r
rr'�sr'r4)r�appendrrnrorprr)rrr'r
r
r�test_spec_as_list�s
z#SpecSignatureTest.test_spec_as_listcCsMGdd�dt�}t|�}x$||jfD]}|j|�q2WdS)Nc@seZdZe�ZdS)z.SpecSignatureTest.test_attributes.<locals>.SubN)rrrr�attrr
r
r
r�Sub�sr�)rrr�rs)rr�Zsub_mockrr
r
r�test_attributes�sz!SpecSignatureTest.test_attributescCs)Gdd�dt�}t|�}|jd�|jjd�|jtt|jd�|jd�|jjd�|jt|jdd�|jtt|jd�|j	ddg�|j	jddg�|jtt|j	d�|j
jd�|j
jjd�|jtt|j
d�dS)Nc@s(eZdZdd�ZeZiZdS)zGSpecSignatureTest.test_builtin_functions_types.<locals>.BuiltinSubclasscSsdS)Nr
)r�argr
r
rr(�szKSpecSignatureTest.test_builtin_functions_types.<locals>.BuiltinSubclass.barN)rrrr(�sortedr�r
r
r
r�BuiltinSubclass�sr�r4rr(r2r3)�listrr�rrnrorpr(rrr�r��pop)rr�rr
r
r�test_builtin_functions_types�s

z.SpecSignatureTest.test_builtin_functions_typescCsGdd�dt�}t|�}|jdd�|j�|jd�tjdd�tj�tjd�g}|j|j|�|jjdd�|jj�|jjd�|j	tjjdd�tjj�tjjd�g�|j|j|�dS)Nc@seZdZe�ZdS)z0SpecSignatureTest.test_method_calls.<locals>.SubN)rrrrr�r
r
r
rr��sr�r2r3r4)
rrrrrrrr_r��extend)rr�rr-r
r
r�test_method_calls�s

*
4z#SpecSignatureTest.test_method_callscCs�Gdd�dt�}t|�}|jt|�g�|jtt|�|jtt|j�|jt|�g�|j|dt�|j|jdt�dS)Nc@seZdZiZdS)z=SpecSignatureTest.test_magic_methods.<locals>.BuiltinSubclassN)rrrr�r
r
r
rr��sr�r)	r�rrrnrrrUr��assertIsInstancer)rr�rr
r
r�test_magic_methods�sz$SpecSignatureTest.test_magic_methodscCs�Gdd�dt�}xk||�fD]Z}t|dd�}|j|�|jtt|dd�|jtt|jdd�q&WdS)Nc@seZdZe�ZdS)z,SpecSignatureTest.test_spec_set.<locals>.SubN)rrrrr�r
r
r
rr�sr�Zspec_setTrr()rrrsrnro�setattrr�)rr��specrr
r
r�
test_spec_sets
zSpecSignatureTest.test_spec_setcCs�Gdd�dt�}Gdd�d|�}Gdd�dt|�}x{||�||�||�fD]X}t|�}|jdd�|jjdd�|jd	d
�|jjd	d
�qgWdS)Nc@s4eZdZedd��Zedd��ZdS)z/SpecSignatureTest.test_descriptors.<locals>.FoocSsdS)Nr
)�clsrrr
r
rrusz1SpecSignatureTest.test_descriptors.<locals>.Foo.fcSsdS)Nr
)rrr
r
r�gsz1SpecSignatureTest.test_descriptors.<locals>.Foo.gN)rrr�classmethodru�staticmethodr�r
r
r
rr'sr'c@seZdZdS)z/SpecSignatureTest.test_descriptors.<locals>.BarN)rrrr
r
r
r�Barsr�c@seZdZdS)z/SpecSignatureTest.test_descriptors.<locals>.BazN)rrrr
r
r
r�Bazsr�r2r3r4r5)rrrru�assert_called_once_withr�)rr'r�r�r�rr
r
r�test_descriptorss(z"SpecSignatureTest.test_descriptorscCs�Gdd�dt�}||_t|�}|�|j|jj�|j�|jj�|j|jtj�tjj�g�|j	|j
|j�|j|j
|j�|j
j
�|jt|jj
j�dS)Nc@s(eZdZdd�ZdZeZdS)z+SpecSignatureTest.test_recursive.<locals>.AcSsdS)Nr
)rr
r
rr-sz-SpecSignatureTest.test_recursive.<locals>.A.azfoo bar bazN)rrrrrr(r
r
r
r�A,sr�)r�BrrRZcalledrrr_rZassertIsrr(�assertIsNot�lowerrnrqr)rr�rr
r
r�test_recursive+s	

(
z SpecSignatureTest.test_recursivecCs�Gdd�dt�}t|�}|j||��xy||�fD]h}|jdd�|jjdd�|jjd�|jt|jdd�|jtt|d�qEWt|��}|jd�|jjd�|jjdd�|jt|jdd�|jtt|d�|jt|�|j	j
d�|j	j
jd�|j	j
jd	d�|jtt|j	d
�|j	�j
d�|j	�j
jd�|j	�j
jd	d�|jtt|j	�d
�dS)Nc@s2eZdZdd�ZGdd�de�ZdS)z@SpecSignatureTest.test_spec_inheritance_for_classes.<locals>.FoocSsdS)Nr
)r�xr
r
rrDszBSpecSignatureTest.test_spec_inheritance_for_classes.<locals>.Foo.ac@seZdZdd�ZdS)zDSpecSignatureTest.test_spec_inheritance_for_classes.<locals>.Foo.BarcSsdS)Nr
)r�yr
r
rruGszFSpecSignatureTest.test_spec_inheritance_for_classes.<locals>.Foo.Bar.fN)rrrrur
r
r
rr�Fsr�N)rrrrrr�r
r
r
rr'Csr'r�rfrr(rr[r�r�)rrr�rrrnrrrorpr�ru)rr'Z
class_mockZ	this_mockZ
instance_mockr
r
r�!test_spec_inheritance_for_classesBs0
z3SpecSignatureTest.test_spec_inheritance_for_classescCs�Gdd�dt�}||_t|�}|�}|jtt|d�|j�}|jtt|d�t|��}|jtt|d�|jt|�|j�}|jtt|d�dS)Nc@seZdZdZdS)z+SpecSignatureTest.test_inherit.<locals>.Foor4N)rrrrr
r
r
rr'ksr'r)rr'rrnrorprr)rr'rr|Z
attr_instanceZcall_resultr
r
r�test_inheritjs		zSpecSignatureTest.test_inheritcCs�td�tt�td�tt�ti�tt�tg�tt�tt��tt�td�tt�td�tt�td�td�dS)Nr2rg�?y�?FT)rrUr rKr��set�float�complex)rr
r
r�
test_builtins�s 














zSpecSignatureTest.test_builtinscCs�dd�}t|�}|jt|�|dd�|jdd�|jddd�|jdddd�||_t|�}|jt|j�|jdd�|jjdd�|jjdddd�dS)	NcSsdS)Nr
)rrr
r
rru�sz*SpecSignatureTest.test_function.<locals>.fr2r3rrr4r5)rrnrrrru)rrurr
r
r�
test_function�s
	zSpecSignatureTest.test_functioncs�Gdd�dt��G�fdd�dt�}t|��|jt�fdd���jdd�|jt�fd	d���j}|j|jfdS)
Nc@seZdZddd�ZdS)z;SpecSignatureTest.test_skip_attributeerrors.<locals>.RaiserNcSs|dkrtd��ndS)Nz$Can only be accessed via an instance)ro)rr��typer
r
r�__get__�szCSpecSignatureTest.test_skip_attributeerrors.<locals>.Raiser.__get__)rrrr�r
r
r
r�Raiser�sr�cs+eZdZ��Zedd��ZdS)z@SpecSignatureTest.test_skip_attributeerrors.<locals>.RaiserClasscSs||S)Nr
)rrr
r
r�existing�szISpecSignatureTest.test_skip_attributeerrors.<locals>.RaiserClass.existingN)rrr�raiserr�r�r
)r�r
r�RaiserClass�s	r�cs�jddd�S)Nr2r3r4)r�)r�)�sr
r�<lambda>�sz=SpecSignatureTest.test_skip_attributeerrors.<locals>.<lambda>r2r3cs�jS)N)Znonexistingr
)r�r
rr��s)	rrrnrrr�ror�rr()rr�r�r
)r�r�r�test_skip_attributeerrors�s	z+SpecSignatureTest.test_skip_attributeerrorscCs�Gdd�dt�}t|�}|jt|�|d�|jd�|jdd�|jt|jd�|dd�|jdd�|jdddd�|jt|jdddd�dS)	Nc@seZdZddd�ZdS)z3SpecSignatureTest.test_signature_class.<locals>.Foor4cSsdS)Nr
)rrrr
r
r�__init__�sz<SpecSignatureTest.test_signature_class.<locals>.Foo.__init__N)rrrr�r
r
r
rr'�sr'r2rr3r5rfr)rrrnrrr�rqr)rr'rr
r
r�test_signature_class�s


z&SpecSignatureTest.test_signature_classcCs$Gdd�dt�}t|�dS)Nc@seZdZdS)z6SpecSignatureTest.test_class_with_no_init.<locals>.FooN)rrrr
r
r
rr'�sr')rr)rr'r
r
r�test_class_with_no_init�sz)SpecSignatureTest.test_class_with_no_initcCs5Gdd�dt�}t|�}|dd�|jdd�|jdddd�|jt|d�|dd�}|jt|�|dd�|jd�|jdd�|d�|jd�|jdd�t|dd��}|dd�|jdd�|jt|�|d�|jd�dS)Nc@s(eZdZdd�Zdd�ZdS)z;SpecSignatureTest.test_signature_callable.<locals>.CallablecSsdS)Nr
)rr�r�r
r
rr��szDSpecSignatureTest.test_signature_callable.<locals>.Callable.__init__cSsdS)Nr
)rrr
r
r�__call__�szDSpecSignatureTest.test_signature_callable.<locals>.Callable.__call__N)rrrr�r�r
r
r
r�Callable�sr�r2r3r�r�r)rrr�rnrrr)rr�rr|r
r
r�test_signature_callable�s(






z)SpecSignatureTest.test_signature_callablecCs�Gdd�dt�}t|�}|�}|j�|jt|d�|jt|�|jt|d�t|��}|jt|�|jt|d�dS)Nc@seZdZdd�ZdS)zASpecSignatureTest.test_signature_noncallable.<locals>.NonCallablecSsdS)Nr
)rr
r
rr��szJSpecSignatureTest.test_signature_noncallable.<locals>.NonCallable.__init__N)rrrr�r
r
r
r�NonCallable�sr�r)rrr�rnrr)rr�rr|r
r
r�test_signature_noncallable�s	
z,SpecSignatureTest.test_signature_noncallablecCs\Gdd�dt�}t|�}|j}|j|td��|j�|jj�dS)Nc@seZdZdZdS)z8SpecSignatureTest.test_create_autospec_none.<locals>.FooN)rrrr(r
r
r
rr'sr')rrr(�assertNotIsInstancer�rr�)rr'rZnoner
r
r�test_create_autospec_nones	
z+SpecSignatureTest.test_create_autospec_nonecCs�Gdd�dt�}t|�}|jd�|jjd�|jjdd�|jdd�|jjd�|jjdd�dS)Nc@seZdZdd�ZdS)zMSpecSignatureTest.test_autospec_functions_with_self_in_odd_place.<locals>.FoocSsdS)Nr
)rrr
r
rruszOSpecSignatureTest.test_autospec_functions_with_self_in_odd_place.<locals>.Foo.fN)rrrrur
r
r
rr'sr'�
r)rrrur)rr'rr
r
r�.test_autospec_functions_with_self_in_odd_places
z@SpecSignatureTest.test_autospec_functions_with_self_in_odd_placecCs�Gdd�dt�}t|�}|j}|j|t�|ddd�|jddd�|jddd�|jjddd�dS)	Nc@s"eZdZedd��ZdS)z5SpecSignatureTest.test_autospec_property.<locals>.FoocSsdS)Nr4r
)rr
r
rr'sz9SpecSignatureTest.test_autospec_property.<locals>.Foo.fooN)rrr�propertyrr
r
r
rr'&sr'r2r3r4r5rfr[)rrrr�r�abcr�)rr'rZ
mock_propertyr
r
r�test_autospec_property%s	z(SpecSignatureTest.test_autospec_propertycCs{Gdd�dt�}t|�}|j}|ddd�|jddd�|jddd�|jjddd�dS)	Nc@seZdZdgZdS)z2SpecSignatureTest.test_autospec_slots.<locals>.FoorN)rrr�	__slots__r
r
r
rr'7sr'r2r3r4r5rfr[)rrrr�r�)rr'rZ	mock_slotr
r
r�test_autospec_slots6s	z%SpecSignatureTest.test_autospec_slotsN)!rrrrsrtrvrwrzr}rr�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r
r
r
rrm6s<


(rmc@s@eZdZdd�Zdd�Zdd�Zdd�Zd	S)
�TestCallListcCs�t�}|j|jt�|dd�|dd�|dd�|dd�xQtdd�tdd�tdd�tdd�fD]}|j||j�q�Wtdd�tdd�g}|j||j�tdd�tdd�g}|j||j�tdd�tdd�g}|j||j�tdd�g}|j||j�|jtd�|j�|jtd�g|j�dS)	Nr2r3rr4r5rr[r^)rr�r\rrrNZassertNotIn)rrr@Zcallsr
r
r�!test_args_list_contains_call_listFs$	



=z.TestCallList.test_args_list_contains_call_listcCset�}|dd�|jdd�|jj�jddd�d}|jt|j�|�dS)	Nr2r3rr4r^�catZdogzU[call(1, 2),
 call.foo(a=3),
 call.foo.bar(),
 call.foo.bar().baz('fish', cat='dog')])rrr(r1rr r+)rrr-r
r
r�test_call_list_str_s	
zTestCallList.test_call_list_strcCs�tdtdt�}|j�}ztj|j�t�}|j|j�|j|j	t
�t
�g�d|_|j|j	t
�t
�t
d�g�Wd|j�XdS)Nz%s.SomeClass.oneZnew_callabler4)r	rr
rxrrr�rrr+r�stop)rryrr�r
r
r�test_propertymockns
	
	,zTestCallList.test_propertymockcCsXt�}t�}|t|�_|j}|j�|j|t�|j|t�dS)N)rr
r�rr�r�r�)rriryZreturnedr
r
r�test_propertymock_returnvalue�s			
z*TestCallList.test_propertymock_returnvalueN)rrrr�r�r�r�r
r
r
rr�Dsr��__main__)ZunittestZ
unittest.mockrrrrrrrr	r
rrrZTestCaserr/rmr�r�mainr
r
r
r�<module>s@
3���G