JFIF$        dd7 

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

a

}|�gX:�@s�dZddlZddlZddlZddlmZddlZddlmZddlm	Z	ddlm
Z
ddlmZddl
mmZGdd	�d	ej�ZGd
d�dej�ZGdd
�d
ej�Zedkr�e�e�ejdd�eg��dS)z#Tests for certbot._internal.renewal�N)�mock)�
challenges)�
configuration)�errors)�storagec@s�eZdZej�ejd�dd��Zej�ejd�dd��Z	e�d�dd��Z
e�d�d	d
��Zej�ejd�dd��Ze�d
�ej�ejd�dd���Z
e��ej�ejd�dd���Zej�ejd�dd��ZdS)�RenewalTest�set_by_usercCs|d|_t�|jjd�}d|j_d|j_d|j_t�	|j�}t
�||�}|jd}ddlm
}|�||�|jdgksxJ�dS)NFzsample-renewal-ancient.conf�
renewalparamsr��renewalz	/var/www/)�return_value�	test_util�make_lineage�config�
config_dir�accountZemail�webroot_pathr�NamespaceConfigr�
RenewableCert�certbot._internalr�_restore_webroot_config)�self�mock_set_by_user�rc_pathr�lineager	r�r�H/usr/lib/python3.9/site-packages/certbot/_internal/tests/renewal_test.py�!test_ancient_webroot_renewal_confs�
z-RenewalTest.test_ancient_webroot_renewal_confcCs�ddlm}d|_ddiddgd�}|�|j|�|jjddiksFJ�|jjddgksZJ�idd�}|�|j|�|jjiks�J�|jjdgks�J�dS)Nrr
Fztest.example.comz
/var/www/testz/var/www/other)�webroot_mapr)rrrrrrr)rrrr	rrr� test_webroot_params_conservation!s��z,RenewalTest.test_webroot_params_conservationz4certbot._internal.renewal._avoid_reuse_key_conflictscCs�d|j_d|j_d|j_t�|j�}t�|jjd�}t	�
||�}t��}d|j
_ddlm}t�d��"|�|jd||�Wd�n1s�0Y|jjdks�J�dS)	NZ
INVALID_VALUET�sample-renewal.conf�NNNNrr
�*certbot._internal.renewal.hooks.renew_hook�	secp256r1)r�elliptic_curve�	reuse_key�dry_runrrr
rrrrr�	MagicMock�obtain_certificaterrr�patch�
renew_cert�rZ!unused_mock_avoid_reuse_conflictsrrr�	le_clientrrrr�test_reuse_key_renewal_params9s�0z)RenewalTest.test_reuse_key_renewal_paramscCs�d|j_d|j_d|j_d|j_t�|j�}tj|jj	ddd�}t
�||�}t�
�}d|j_ddlm}t�d	��"|�|jd||�Wd�n1s�0Y|jjd
ks�J�dS)NZ
INVALID_CURVET�ecdsazsample-renewal-ec.conf�Zecr!rr
r"r#)rr$r%r&�key_typerrr
rrrrrr'r(rrrr)r*r+rrr� test_reuse_ec_key_renewal_paramsNs"�0z,RenewalTest.test_reuse_ec_key_renewal_paramscCs�d|_d|j_d|j_d|j_t�|j�}t�|jj	d�}t
�||�}t�
�}d|j_ddlm}t�d��"|�|jd||�Wd�n1s�0Y|jjdks�J�|jjd	ks�J�|jjs�J�|j�tjd�dS)
NFTr r!rr
r"r#r.)rrr%Znew_keyr&rrr
rrrrrr'r(rrr)r*r$r0Zassert_called_with�ANY)rrrrrr,rrrr�test_new_keygs$�0zRenewalTest.test_new_keyr"cCs�d|_d|j_d|j_d|j_d|j_t�|j�}t�	|jj
d�}t�||�}d|jdd<t
��}d|j_d	d
lm}tjtjdd��"|�|jd||�Wd�n1s�0Yd
d�|_d|j_|�|jd||�dS)NFT�rsair r	r%r!rr
zUnable to change the --key-type)�matchcSs|dkS)Nr%r)�varrrr�<lambda>��z6RenewalTest.test_reuse_key_conflicts.<locals>.<lambda>)rrr%r0Zrsa_key_sizer&rrr
rrrrrr'r(rr�pytest�raisesr�Errorr*Zside_effect)rrZunused_mock_renew_hookrrrr,rrrr�test_reuse_key_conflicts�s&�0
z$RenewalTest.test_reuse_key_conflictscCsbd|_t�|j�}d|_t�|jjd�}ddlm	}t
�|j�}|�||�}t
|jtj�s^J�dS)NFz sample-renewal-deprecated-optionz%sample-renewal-deprecated-option.confrr
)rrrrZcertnamer
rrrr�copy�deepcopy�reconstitute�
isinstanceZmanual_public_ip_logging_okrr')rrZunused_mock_get_utilityrrr�lineage_configZrenewal_candidaterrr�&test_remove_deprecated_config_elements�s�z2RenewalTest.test_remove_deprecated_config_elementscCsPd|_tj|jjddd�}ddlm}t�|j�}|�	||�|j
dksLJ�dS)NFr r/rr
r4)rr
rrrrrr=r>r?r0)rrrrrArrr�test_absent_key_type_restored�sz)RenewalTest.test_absent_key_type_restoredN)�__name__�
__module__�__qualname__rr)�objectrrrrr-r1r3r<r
Zpatch_display_utilrBrCrrrrrs$




rc@s�eZdZdZedd��Zej�e	j
d�dd��Zej�e	j
d�dd��Zej�e	j
d�d	d
��Z
ej�e	j
d�dd��Zej�e	j
d�d
d��Zej�e	j
d�dd��Zej�e	j
d�dd��Zej�e	j
d�dd��Zdd�ZdS)�!RestoreRequiredConfigElementsTestzETests for certbot._internal.renewal.restore_required_config_elements.cOsddlm}||i|��S)Nr)� restore_required_config_elements)�certbot._internal.renewalrI)�cls�args�kwargsrIrrr�_call�sz'RestoreRequiredConfigElementsTest._callrcCs,d|_|�|jddi�|jjdus(J�dS)NF�allow_subset_of_names�TrueT)rrNrrO�rrrrr�"test_allow_subset_of_names_success�szDRestoreRequiredConfigElementsTest.test_allow_subset_of_names_successcCsLd|_ddi}t�tj��|�|j|�Wd�n1s>0YdS)NFrO�maybe�rr9r:rr;rNr�rrr	rrr�"test_allow_subset_of_names_failure�szDRestoreRequiredConfigElementsTest.test_allow_subset_of_names_failurecCsFd|_dd�d�i}|�|j|�tjjtjjg}|jj|ksBJ�dS)NF�pref_challszhttp-01, dns�,)	r�splitrNrrZHTTP01�typ�DNS01rW�rrr	Zexpectedrrr�test_pref_challs_list�s
z7RestoreRequiredConfigElementsTest.test_pref_challs_listcCs:d|_ddi}|�|j|�tjjg}|jj|ks6J�dS)NFrWZdns)rrNrrr[rZrWr\rrr�test_pref_challs_str�s

z6RestoreRequiredConfigElementsTest.test_pref_challs_strcCsLd|_ddi}t�tj��|�|j|�Wd�n1s>0YdS)NFrWzfinding-a-shrubberyrTrUrrr�test_pref_challs_failure�sz:RestoreRequiredConfigElementsTest.test_pref_challs_failurecCs,d|_|�|jddi�|jjdus(J�dS)NF�must_staplerPT)rrNrr`rQrrr�test_must_staple_success�sz:RestoreRequiredConfigElementsTest.test_must_staple_successcCsLd|_ddi}t�tj��|�|j|�Wd�n1s>0YdS)NFr`rSrTrUrrr�test_must_staple_failure�sz:RestoreRequiredConfigElementsTest.test_must_staple_failurecCsHddlm}d|j_d|_|�|jd|ji�|jj|jdksDJ�dS)Nr)�	constantsF�server)rrcrrdrrNZV1_URIZCLI_DEFAULTS)rrrcrrr� test_ancient_server_renewal_conf�s
zBRestoreRequiredConfigElementsTest.test_ancient_server_renewal_confcCs0ddd�}|�|j|�|�|jj|d�dS)Nzhttps://example.orgZsomehash)rdrr)rNrZassertEqualr)rr	rrr�test_related_valuess
�z5RestoreRequiredConfigElementsTest.test_related_valuesN)rDrErF�__doc__�classmethodrNrr)rGrrrRrVr]r^r_rarbrerfrrrrrH�s(








rHc@sTeZdZdZdd�Zdd�Zedd��Zdd	�Zd
d�Z	dd
�Z
dd�Zdd�ZdS)�DescribeResultsTestz<Tests for certbot._internal.renewal._renew_describe_results.cCs<t�d�t�d�d�|_|jd��|_|jd��|_dS)Nz&certbot._internal.renewal.logger.errorz-certbot._internal.renewal.display_util.notify)�	log_error�notifyrkrj)rr)�patchers�start�mock_notify�
mock_error�rrrr�setUps
�zDescribeResultsTest.setUpcCs|j��D]}|��q
dS)N)rl�values�stop)rr)rrr�tearDownszDescribeResultsTest.tearDowncOsddlm}||i|��dS)Nr)�_renew_describe_results)rJru)rKrLrMrurrrrNszDescribeResultsTest._callcCs|j�dd�|D��dS)NcSsg|]}t�|��qSr)r�call)�.0�lrrr�
<listcomp> r8z>DescribeResultsTest._assert_success_output.<locals>.<listcomp>)rn�assert_has_calls)r�linesrrr�_assert_success_outputsz*DescribeResultsTest._assert_success_outputcCs*|�tjdd�gggg�|�dg�dS)NT�r&z%No simulated renewals were attempted.�rNrr'r|rprrr�test_no_renewal_attempts"sz,DescribeResultsTest.test_no_renewal_attemptscCs.|�tjdd�dgddd�|�gd��dS)NFr}�good.pem)�P
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -z)Congratulations, all renewals succeeded: z  good.pem (success)�O- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -r~rprrr�test_successful_renewal&sz+DescribeResultsTest.test_successful_renewalcCsL|�tjdd�gdggg�|�ddg�|j�t�dd�t�d�g�dS)	NFr}�bad.pemr�r�z@All %ss failed. The following certificates could not be renewed:rz  bad.pem (failure)�rNrr'r|rorzrvrprrr�test_failed_renewal/s�
�z'DescribeResultsTest.test_failed_renewalcCsV|�tjdd�ddgddgdgdg�|�gd	��|j�t�d
d�t�d�g�dS)
NTr}r�z	good2.pemr�zbad2.pemzfoo.pem expires on 123zerrored.conf)r�z7The following certificates are not due for renewal yet:z"  foo.pem expires on 123 (skipped)z+The following simulated renewals succeeded:z+  good.pem (success)
  good2.pem (success)
zB
Additionally, the following renewal configurations were invalid: z  errored.conf (parsefail)r�zThe following %ss failed:zsimulated renewalz(  bad.pem (failure)
  bad2.pem (failure)r�rprrr�test_all_renewal:s�

�z$DescribeResultsTest.test_all_renewalN)
rDrErFrgrqrtrhrNr|rr�r�r�rrrrri
s
	ri�__main__�)rgr=�sysZunittestrr9ZacmerZcertbotrrrrZcertbot.tests.utilZtests�utilr
ZConfigTestCaserrHZTestCaserirD�exit�main�argv�__file__rrrr�<module>s 1MA
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