JFIF$        dd7 

Viewing File: /usr/lib/python3.9/site-packages/certbot/_internal/tests/__pycache__/eff_test.cpython-39.pyc

a

}|�g�@sdZddlZddlZddlZddlmZddlZddlZddlZddlZddl	m
Z
ddlmZddlm
Z
ddlmmZej�e�d��ZGdd	�d	ej�ZGd
d�de�ZGdd
�d
e�ZGdd�dej�Zedkr�e�e�ejdd�e g��dS)z Tests for certbot._internal.eff.�N)�mock)�messages)�account)�	constantszrsa512_key.pemcs eZdZdZ�fdd�Z�ZS)�SubscriptionTestz&Abstract class for subscription tests.csbt���tjtjdt��dd�ttjjdt	j	ddddddt
jd	�d
�d�|_d|j_
d|j_dS)
N�hi)Zuri�bodyZnew_authzr_uriztest.certbot.orgi�����
)Ztzinfo)Z
creation_hostZcreation_dt)Zregr�key�meta�certbot@example.org)�super�setUprZAccountrZRegistrationResourceZRegistration�_KEYZMeta�datetime�pytzZUTC�config�email�	eff_email��self��	__class__��D/usr/lib/python3.9/site-packages/certbot/_internal/tests/eff_test.pyrs 
����	zSubscriptionTest.setUp)�__name__�
__module__�__qualname__�__doc__r�
__classcell__rrrrrsrc@s�eZdZdZdd�Ze��e�d�dd���Z	e��dd��Z
e��d	d
��Ze��dd��Ze��d
d��Z
dd�Zdd�ZdS)�PrepareSubscriptionTestz5Tests for certbot._internal.eff.prepare_subscription.cCsddlm}||j|j�dS)Nr)�prepare_subscription)�certbot._internal.effr$rr)rr$rrr�_call'szPrepareSubscriptionTest._call�)certbot._internal.eff.display_util.notifycCsLd|j_d|j_|��|jdd}d}||vs6J�|jjjdusHJ�dS)NTrz,because you didn't provide an e-mail address)rrrr&�	call_argsrr�register_to_eff)r�mock_notify�mock_get_utility�actual�
expected_partrrr�test_failure+sz$PrepareSubscriptionTest.test_failurecCs0d|j_|��|�|�|jjjdus,J�dS�NF)rrr&�_assert_no_get_utility_callsrrr)�rr+rrr�&test_will_not_subscribe_with_no_prompt6s
z>PrepareSubscriptionTest.test_will_not_subscribe_with_no_promptcCs4d|j_|��|�|�|jjj|jjks0J�dS�NT)rrr&r0rrr)rr1rrr�"test_will_subscribe_with_no_prompt=s
z:PrepareSubscriptionTest.test_will_subscribe_with_no_promptcCs@d|�j_|��|�jjr J�|�|�|jjjdus<J�dSr/)	�yesno�return_valuer&�add_message�called�_assert_correct_yesno_callrrr)r1rrr�#test_will_not_subscribe_with_promptDs


z;PrepareSubscriptionTest.test_will_not_subscribe_with_promptcCsDd|�j_|��|�jjr J�|�|�|jjj|j	j
ks@J�dSr3)r5r6r&r7r8r9rrr)rrr1rrr�test_will_subscribe_with_promptLs


z7PrepareSubscriptionTest.test_will_subscribe_with_promptcCs |�jjrJ�|�jjrJ�dS)N)r5r8r7r1rrrr0Tsz4PrepareSubscriptionTest._assert_no_get_utility_callscCsH|�jjsJ�|�jj\}}|d}d}||vs4J�|�dd�rDJ�dS)NrzElectronic Frontier Foundation�defaultT)r5r8r(�get)rr+r(�call_kwargsr,r-rrrr9Xsz2PrepareSubscriptionTest._assert_correct_yesno_callN)rrr r!r&�	test_util�patch_display_utilr�patchr.r2r4r:r;r0r9rrrrr#%s	



r#c@s<eZdZdZdd�Ze�d�dd��Ze�d�dd��Zd	S)
�HandleSubscriptionTestz4Tests for certbot._internal.eff.handle_subscription.cCsddlm}||j|j�dS)Nr)�handle_subscription)r%rCrr)rrCrrrr&cszHandleSubscriptionTest._callzcertbot._internal.eff.subscribecCs|��|jdusJ�dSr/�r&r8�rZmock_subscriberrr�test_no_subscribegsz(HandleSubscriptionTest.test_no_subscribecCsH|jjj|jjd�|j_|��|js*J�|jdd|jjksDJ�dS)N)r)r)rr�updaterrr&r8r(rErrr�test_subscribels
z%HandleSubscriptionTest.test_subscribeN)	rrr r!r&rrArFrHrrrrrBas
rBc@sjeZdZdZdd�Ze�d�dd��Zdd�Zd	d
�Z	dd�Z
d
d�Zdd�Zdd�Z
e��dd��ZdS)�
SubscribeTestz*Tests for certbot._internal.eff.subscribe.cCsNd|_ddi|_tjdd�|_|j|jj_t�d�}|��|_|�	|j
�dS)Nr�statusT)�okr')r�jsonrZMock�responser6rA�startr*Z
addCleanup�stop)rZpatcherrrrrvs


zSubscribeTest.setUpz#certbot._internal.eff.requests.postcCs,|j|_ddlm}||j�|�|�dS)Nr)�	subscribe)rMr6r%rPr�_check_post_call)r�	mock_postrPrrrr&s
zSubscribeTest._callcCsX|jdksJ�|j\}}|dtjks*J�|�d�}|dus@J�|�d�|jksTJ�dS)N�r�datar)Z
call_countr(rZEFF_SUBSCRIBE_URIr=r)rrRr(r>rTrrrrQ�s

zSubscribeTest._check_post_callcCs.d|jd<|��|��}d}||vs*J�dS)NFrJz2because your e-mail address appears to be invalid.)rLr&�_get_reported_message�rr,r-rrr�test_bad_status�s

zSubscribeTest.test_bad_statuscCs:d|j_tjj|jj_|��|��}d}||vs6J�dS)NFZbecause)	rMrK�requests�
exceptionsZ	HTTPErrorZraise_for_status�side_effectr&rU)rr,Zunexpected_partrrr�test_not_ok�szSubscribeTest.test_not_okcCs0t�|jj_|��|��}d}||vs,J�dS�NZproblem)�
ValueErrorrMrLrZr&rUrVrrr�test_response_not_json�s
z$SubscribeTest.test_response_not_jsoncCs.|j��|��|��}d}||vs*J�dSr\)rL�clearr&rUrVrrr�)test_response_json_missing_status_element�s

z7SubscribeTest.test_response_json_missing_status_elementcCs|jjsJ�|jjddS)Nr)r*r8r(rrrrrU�sz#SubscribeTest._get_reported_messagecCs|��|jdusJ�dSr/rDr1rrrrH�szSubscribeTest.test_subscribeN)rrr r!rrrAr&rQrWr[r^r`rUr?r@rHrrrrrIts	
	rI�__main__rS)!r!r�sysZunittestrZjosepyZpytestrrXZacmerZcertbot._internalrrZcertbot.tests.utilZtests�utilr?ZJWKRSA�loadZload_vectorrZConfigTestCaserr#rBZTestCaserIr�exit�main�argv�__file__rrrr�<module>s&<C
Back to Directory  nL+D550H?Mx ,D"v]qv;6*Zqn)ZP0!1 A "#a$2Qr D8 a Ri[f\mIykIw0cuFcRı?lO7к_f˓[C$殷WF<_W ԣsKcëIzyQy/_LKℂ;C",pFA:/]=H  ~,ls/9ć:[=/#f;)x{ٛEQ )~ =𘙲r*2~ a _V=' kumFD}KYYC)({ *g&f`툪ry`=^cJ.I](*`wq1dđ#̩͑0;H]u搂@:~וKL Nsh}OIR*8:2 !lDJVo(3=M(zȰ+i*NAr6KnSl)!JJӁ* %݉?|D}d5:eP0R;{$X'xF@.ÊB {,WJuQɲRI;9QE琯62fT.DUJ;*cP A\ILNj!J۱+O\͔]ޒS߼Jȧc%ANolՎprULZԛerE2=XDXgVQeӓk yP7U*omQIs,K`)6\G3t?pgjrmۛجwluGtfh9uyP0D;Uڽ"OXlif$)&|ML0Zrm1[HXPlPR0'G=i2N+0e2]]9VTPO׮7h(F*癈'=QVZDF,d߬~TX G[`le69CR(!S2!P <0x<!1AQ "Raq02Br#SCTb ?Ζ"]mH5WR7k.ۛ!}Q~+yԏz|@T20S~Kek *zFf^2X*(@8r?CIuI|֓>^ExLgNUY+{.RѪ τV׸YTD I62'8Y27'\TP.6d&˦@Vqi|8-OΕ]ʔ U=TL8=;6c| !qfF3aů&~$l}'NWUs$Uk^SV:U# 6w++s&r+nڐ{@29 gL u"TÙM=6(^"7r}=6YݾlCuhquympǦ GjhsǜNlɻ}o7#S6aw4!OSrD57%|?x>L |/nD6?/8w#[)L7+6〼T ATg!%5MmZ/c-{1_Je"|^$'O&ޱմTrb$w)R$& N1EtdU3Uȉ1pM"N*(DNyd96.(jQ)X 5cQɎMyW?Q*!R>6=7)Xj5`J]e8%t!+'!1Q5 !1 AQaqё#2"0BRb?Gt^## .llQT $v,,m㵜5ubV =sY+@d{N! dnO<.-B;_wJt6;QJd.Qc%p{ 1,sNDdFHI0ГoXшe黅XۢF:)[FGXƹ/w_cMeD,ʡcc.WDtA$j@:) -# u c1<@ۗ9F)KJ-hpP]_x[qBlbpʖw q"LFGdƶ*s+ډ_Zc"?%t[IP 6J]#=ɺVvvCGsGh1 >)6|ey?Lӣm,4GWUi`]uJVoVDG< SB6ϏQ@ TiUlyOU0kfV~~}SZ@*WUUi##; s/[=!7}"WN]'(L! ~y5g9T̅JkbM' +s:S +B)v@Mj e Cf jE 0Y\QnzG1д~Wo{T9?`Rmyhsy3!HAD]mc1~2LSu7xT;j$`}4->L#vzŏILS ֭T{rjGKC;bpU=-`BsK.SFw4Mq]ZdHS0)tLg