<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0-alpha1/dist/css/bootstrap.min.css" rel="stylesheet"
        integrity="sha384-GLhlTQ8iRABdZLl6O3oVMWSktQOp6b7In1Zl3/Jr59b6EGGoI1aFkw7cmDA6j6gD" crossorigin="anonymous">
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.3.0/css/all.min.css"
        integrity="sha512-SzlrxWUlpfuzQ+pcUCosxcglQRNAq/DZjVsC0lE40xsADsfeQoEypE+enwcOiGjk/bSuGGKHEyjSoQ1zVisanQ=="
        crossorigin="anonymous" referrerpolicy="no-referrer" />
</head>
</html>
3
X]'                 @   s  d dl mZ d dlZd dlZd dlZd dlZd dlZd dlZd dlZd dl	Z
d dlmZmZ d dlmZ d dlZejdZejdZG dd dZejd	d
 Zejdd Zdd Zdd Zdd Zdd Zdd Zdd Zdd Zdd Zdd Z dd  Z!d!d" Z"d#d$ Z#d%d& Z$d'd( Z%d)d* Z&d+d, Z'd-d. Z(d/d0 Z)d1d2 Z*d3d4 Z+d5d6 Z,d7d8 Z-d9d: Z.d;d< Z/d=d> Z0d?d@ Z1dAdB Z2dS )C    )print_functionN)journalid128)
_make_lineZ 8441372f8dca4ca98694a6091fd8519fZ 8441370000000000000000001fd85000c               @   s   e Zd Zdd ZdddZdS )
MockSenderc             C   s
   g | _ d S )N)buf)self r	   $/usr/lib64/python3.6/test_journal.py__init__   s    zMockSender.__init__Nc       	      K   s   d| g}|d k	r,t |d|}|jd|  ||  koH|  koHd kn  rltjddd d d \}}}|d k	r|jd|  |d k	r|jd	j| |d k	r|jd
|  |jdd |j D  | jj| d S )NzMESSAGE=hexzMESSAGE_ID=   )limitr      z
CODE_FILE=zCODE_LINE={:d}z
CODE_FUNC=c             s   s   | ]\}}t ||V  qd S )N)r   ).0keyvalr	   r	   r
   	<genexpr>)   s    z"MockSender.send.<locals>.<genexpr>)getattrappend
_tracebackextract_stackformatextenditemsr   )	r   ZMESSAGE
MESSAGE_IDZ	CODE_FILEZ	CODE_LINEZ	CODE_FUNCkwargsargsidr	   r	   r
   send   s    
"zMockSender.send)NNNN)__name__
__module____qualname__r   r   r	   r	   r	   r
   r      s    r   c             c   sJ   y
d V  W n: t tfk
rD } z|j| kr2tj   W Y d d }~X nX d S )N)OSErrorIOErrorerrnopytestskip)codeer	   r	   r
   skip_oserror,   s    

r*   c               c   s,   y
d V  W n t k
r&   tj  Y nX d S )N)
ValueErrorr&   r'   r	   r	   r	   r
   skip_valueerror5   s    
r,   c              C   s   t jj} d S )N)r   JournalHandlerZmap_priority)pr	   r	   r
   test_priorities<   s    r/   c           
   C   s.   ddi} t jt tjf |  W d Q R X d S )Nz X  r   )r&   raisesr+   r   r-   )kwr	   r	   r
   "test_journalhandler_init_exceptionQ   s    r2   c              C   s   ddd} t jtjf|  d S )Nr      )XX3)r   r-   loggingINFO)r1   r	   r	   r
   test_journalhandler_initV   s    
r8   c              C   sJ   t jdt jdddd d } t }dd|jd}tjt jf|}|j|  d S )Nztest-loggertestpath   testr   r3   )r4   r5   sender_function)r6   	LogRecordr7   r   r   r   r-   emit)recordsenderr1   handlerr	   r	   r
   test_journalhandler_infoZ   s    
rB   c              C   s>   t jdt jdddd d } t }tjt j|jd}|j|  d S )Nztest-loggerr9   r:   r;   )r<   )r6   r=   r7   r   r   r-   r   r>   )r?   r@   rA   r	   r	   r
   !test_journalhandler_no_message_ide   s
    
rC   c              C   s@   t jdt jdddd d } t }tjt j|jtd}|j|  d S )Nztest-loggerr9   r:   r;   )r<   r   )	r6   r=   r7   r   r   r-   r   TEST_MIDr>   )r?   r@   rA   r	   r	   r
   )test_journalhandler_message_id_on_handlerm   s    
rE   c              C   sB   t jdt jdddd d } t }tjt j|jtjd}|j	|  d S )Nztest-loggerr9   r:   r;   )r<   r   )
r6   r=   r7   r   r   r-   r   rD   r   r>   )r?   r@   rA   r	   r	   r
   -test_journalhandler_message_id_on_handler_hexv   s    

rF   c              C   sJ   t jdt jdddd d } t| jd< t }tjt j|jt	d}|j
|  d S )Nztest-loggerr9   r:   r;   r   )r<   r   )r6   r=   r7   	TEST_MID2__dict__r   r   r-   r   rD   r>   )r?   r@   rA   r	   r	   r
   )test_journalhandler_message_id_on_message   s    

rI   c              C   sL   t jdt jdddd d } tj| jd< t }tjt j|j	t
d}|j|  d S )Nztest-loggerr9   r:   r;   r   )r<   r   )r6   r=   r7   rG   r   rH   r   r   r-   r   rD   r>   )r?   r@   rA   r	   r	   r
   -test_journalhandler_message_id_on_message_hex   s    
rJ   c              C   sR   t j } t jt j}t jt j}t jt j}t jt jt jB t jB }t jd}d S )Nr   )r   ReaderZ
LOCAL_ONLYZRUNTIME_ONLYSYSTEM_ONLY)j1j2j3Zj4Zj5Zj6r	   r	   r
   test_reader_init_flags   s    rP   c             C   s   t jt tjtj W d Q R X t  tj| jtjd}W d Q R X t  tj| jtjtjB d}W d Q R X tj| jtjtj	B d}d S )N)pathflags)
r&   r0   r+   r   rK   ZOS_ROOTr,   strpathCURRENT_USERrL   )tmpdirrM   rN   rO   r	   r	   r
   test_reader_os_root   s    rV   c             C   s>   t j| jd}t jd| jd t j| jd}t j| jd d S )N)rQ   r   )r   rK   rS   )rU   rM   rN   r	   r	   r
   test_reader_init_path   s    rW   c               C   s(   t jt tjddd W d Q R X d S )Nr   r:   )rQ   )r&   r0   r#   r   rK   r	   r	   r	   r
    test_reader_init_path_invalid_fd   s    rY   c               C   s(   t jt tjddd W d Q R X d S )Nr   )rQ   )r&   r0   r#   r   rK   r	   r	   r	   r
   %test_reader_init_path_nondirectory_fd   s    rZ   c             C   sh   t j| jt j}ttj tj|d}W d Q R X t	  tjtj
|d}W d Q R X tjtj|d}d S )N)rQ   )osopenrS   O_RDONLYr*   r%   ENOSYSr   rK   r,   ZSYSTEMrT   )rU   fdrM   rN   rO   r	   r	   r
   test_reader_init_path_fd   s    r`   c             C   s@   t j| jd}| W d Q R X tjt t| W d Q R X d S )N)rQ   )r   rK   rS   r&   r0   r#   next)rU   jr	   r	   r
   test_reader_as_cm   s
    
rc   c          	   C   s<   t j| jd}|  |jtj |jtjj W d Q R X d S )N)rQ   )r   rK   rS   Zmessageid_matchr   ZSD_MESSAGE_JOURNAL_STARTZSD_MESSAGE_JOURNAL_STOPr   )rU   rb   r	   r	   r
   test_reader_messageid_match   s    rd   c          	   C   s@   t j| jd}|$ |j  |jt |jtj W d Q R X d S )N)rQ   )r   rK   rS   Z	this_bootrD   r   )rU   rb   r	   r	   r
   test_reader_this_boot   s
    
re   c          	   C   s@   t j| jd}|$ |j  |jt |jtj W d Q R X d S )N)rQ   )r   rK   rS   Zthis_machinerD   r   )rU   rb   r	   r	   r
   test_reader_this_machine   s
    
rf   c             C   sB   t j| jd}|& ttj |jd}W d Q R X W d Q R X d S )N)rQ   ZFOOBAR)r   rK   rS   r*   r%   r^   Zquery_unique)rU   rb   ansr	   r	   r
   test_reader_query_unique   s
    rh   c             C   s@   t j| jd}|$ ttj |j }W d Q R X W d Q R X d S )N)rQ   )r   rK   rS   r*   r%   r^   Zenumerate_fields)rU   rb   rg   r	   r	   r
   test_reader_enumerate_fields   s
    ri   c             C   s@   t j| jd}|$ ttj |j }W d Q R X W d Q R X d S )N)rQ   )r   rK   rS   r*   r%   r^   has_runtime_files)rU   rb   rg   r	   r	   r
   test_reader_has_runtime_files   s
    rk   c             C   s@   t j| jd}|$ ttj |j }W d Q R X W d Q R X d S )N)rQ   )r   rK   rS   r*   r%   r^   rj   )rU   rb   rg   r	   r	   r
    test_reader_has_persistent_files   s
    rl   c             C   s8   ddd i}t j| j|d}|jdd}|jdd}d S )NZxxxc             S   s   dS )Nyyyr	   )argr	   r	   r
   <lambda>   s    z(test_reader_converters.<locals>.<lambda>)rQ   
converterss   abcZzzzs   )r   rK   rS   Z_convert_field)rU   rp   rb   r   r	   r	   r
   test_reader_converters   s
    rq   c             C   sB   dd dd d}t j| j|d}|jddddgdd	gd
}d S )Nc             S   s   dS )Nrm   r	   )rn   r	   r	   r
   ro   
  s    z+test_reader_convert_entry.<locals>.<lambda>c             S   s   dS )NZYYYr	   )rn   r	   r	   r
   ro     s    )x1x2)rQ   rp   s   abcs   s   defs   )rr   Zy1rs   Zy2)r   rK   rS   Z_convert_entry)rU   rp   rb   r   r	   r	   r
   test_reader_convert_entry	  s    rt   c             C   sF   t j| jd}tj }|j| |jd tjddd}|j| d S )N)rQ   i90  i     r3   )r   rK   rS   timeZseek_realtimedatetime)rU   rb   ZnowZlong_agor	   r	   r
   test_seek_realtime  s    

rx   c              C   s:   t tj tjd} W d Q R X | jd}td| d d S )Nztest_journal.pyzmessage...
zprinted message...)file)r*   r%   ENOENTr   streamwriteprint)r{   resr	   r	   r
   test_journal_stream"  s    
r   )3Z
__future__r   
contextlibrw   r%   r6   r[   rv   Zuuid	tracebackr   Zsystemdr   r   Zsystemd.journalr   r&   ZUUIDrD   rG   r   contextmanagerr*   r,   r/   r2   r8   rB   rC   rE   rF   rI   rJ   rP   rV   rW   rY   rZ   r`   rc   rd   re   rf   rh   ri   rk   rl   rq   rt   rx   r   r	   r	   r	   r
   <module>   sV   

			

	
