a }|gM> @ sx d Z ddlZddlZddlZddlZddlZddlmZ ddlZddlm Z ddl Z ddlmZ ddl mZ ddl mZ ddlmZ dd lmZ dd lmZ ddlmZ G dd dejZG d d dejZG dd dejZG dd dejZG dd dejZG dd dejZG dd dejZG dd dejZ G dd dej!Z"e#dkrte$e %ej&dd e'g dS )z Tests for certbot._internal.log. N)Optional)mock)messages)errors)util) constants) filesystem)osc s\ e Zd ZdZedd Z fddZedededed d d Z Z S )PreArgParseSetupTestz4Tests for certbot._internal.log.pre_arg_parse_setup.c O s ddl m} | S )Nr )pre_arg_parse_setup)certbot._internal.logr )clsargskwargsr r D/usr/lib/python3.9/site-packages/certbot/_internal/tests/log_test.py_call s zPreArgParseSetupTest._callc s t t d S N)loggingshutdownsupertearDownself __class__r r r s zPreArgParseSetupTest.tearDowncertbot._internal.log.sysz/certbot._internal.log.pre_arg_parse_except_hook'certbot._internal.log.logging.getLoggerz*certbot._internal.log.util.atexit_registerc C s dg|_ tj|_| | }|jtj d }|jj D ]2}|d d }|d u r8t |tjjr8|}|j } q8q8|tj |ddd |j|dddddtjd d S ) Nz--debugr TFdebugquietlog_path)argvsysversion_infor setLevelassert_called_once_withr DEBUG addHandlerZcall_args_list isinstancehandlers MemoryHandlertargetr excepthookr ANY) r Z mock_registerZmock_getmock_except_hookmock_sysZmock_root_loggermemory_handlercallhandlerr/ r r r test_it$ s" zPreArgParseSetupTest.test_it)__name__ __module____qualname____doc__classmethodr r r patchr7 __classcell__r r r r r s r c sP e Zd ZdZedd Z fddZ fddZdd Zd d Z dd Z ZS )PostArgParseSetupTestz5Tests for certbot._internal.log.post_arg_parse_setup.c O s ddl m} ||i |S )Nr )post_arg_parse_setup)r r@ )r r r r@ r r r r D s zPostArgParseSetupTest._callc s t d| j_d| j_d| j_tjd | j_t t jd| _ddlm } |t | _ddlm} ddlm} | | _| jj| _|| j| _tj| j| jgd | _d S ) NFi verbose_countwr ColoredStreamHandlerr. TempHandler)r- )r setUpconfigr" max_log_backupsr# r ZCLI_DEFAULTSrA openr devnullr rD ioStringIOstream_handlerr. rG temp_handlerpathZ temp_pathr4 r MagicMockroot_logger)r rD r. rG r r r rH I s zPostArgParseSetupTest.setUpc s6 | j | j | j | j t d S r )r4 closerO rP rL r r r r r r r [ s zPostArgParseSetupTest.tearDownc C s t d}| j|_d}t |N}t d$}tj|_| | j W d n1 sX0 Y W d n1 sv0 Y W d n1 s0 Y tj | jjd}| jj | j |ddd |j ddd| jj| jj|d | jj}| jjrn d S ) Nr 0certbot._internal.log.post_arg_parse_except_hookr zletsencrypt.logr r r r! )r r= rS Zreturn_valuer&