U
    ÔZjU  ã                   @   sR   d Z ddlZddlZddlmZ ddlmZ G dd„ dejƒZedkrNe 	¡  dS )z@Test for certbot_apache.entrypoint for override class resolutioné    N)Úconfigurator)Ú
entrypointc                   @   s,   e Zd ZdZdZdd„ Zdd„ Zdd„ Zd	S )
ÚEntryPointTestzEntrypoint testsTc              	   C   sd   t  d¡�P}tjD ]B}|df}|dkr,d}n|dkr8d}||_|  t ¡ tj| ¡ qW 5 Q R X d S )Núcertbot.util.get_os_infoZwhateverZ
fedora_old)ÚfedoraZ28r   )r   Z29)ÚmockÚpatchr   ÚOVERRIDE_CLASSESÚreturn_valueÚassertEqualÚget_configurator)ÚselfÚ	mock_infoÚdistror
   © r   úg/var/www/html/TRUCKING_PROJECT/venv/lib/python3.8/site-packages/certbot_apache/tests/entrypoint_test.pyÚtest_get_configurator   s    

ÿz$EntryPointTest.test_get_configuratorc              
   C   s`   t  d¡�L}d|_t  d¡�0}tjD ]"}|g|_|  t ¡ tj| ¡ q$W 5 Q R X W 5 Q R X d S )Nr   ©ZnonexistentZ
irrelevantú certbot.util.get_systemd_os_like)r   r   r
   r   r	   r   r   )r   r   Ú	mock_likeÚliker   r   r   Útest_nonexistent_like   s    

ÿz$EntryPointTest.test_nonexistent_likec              
   C   sP   t  d¡�<}d|_t  d¡� }dg|_|  t ¡ tj¡ W 5 Q R X W 5 Q R X d S )Nr   r   r   Zunknonwn)r   r   r
   r   r   r   r   ZApacheConfigurator)r   r   r   r   r   r   Útest_nonexistent_generic%   s    
ÿz'EntryPointTest.test_nonexistent_genericN)Ú__name__Ú
__module__Ú__qualname__Ú__doc__Z_multiprocess_can_split_r   r   r   r   r   r   r   r   
   s
   	r   Ú__main__)
r   Zunittestr   Zcertbot_apacher   r   ZTestCaser   r   Úmainr   r   r   r   Ú<module>   s   $