bd+ddlmZddlZddlZddlZddlZddlZddlZddlZddl Z ddl Z ddl m Z m Z ddlmZddlZej"dZej"dZGddZej*d Zej*d Zd Zd Zd ZdZdZdZdZdZdZ dZ!dZ"dZ#dZ$dZ%dZ&dZ'dZ(dZ)dZ*dZ+dZ,d Z-d!Z.d"Z/d#Z0d$Z1d%Z2d&Z3y)')print_functionN)journalid128 _make_line 8441372f8dca4ca98694a6091fd8519f 8441370000000000000000001fd85000ceZdZdZ ddZy) MockSendercg|_yN)buf)selfs ;/usr/lib/python3/dist-packages/systemd/test/test_journal.py__init__zMockSender.__init__s Nc d|zg}|!t|d|}|jd|z||cxur|cxur#nn tjdddd\}}}||jd|z| |jd j |||jd |z|j d |j D|jj|y) NzMESSAGE=hex MESSAGE_ID=)limitrz CODE_FILE=zCODE_LINE={:d}z CODE_FUNC=c3:K|]\}}t||ywr r).0keyvals r z"MockSender.send..*sHXS#JsC(Hs)getattrappend traceback extract_stackformatextenditemsr) rMESSAGE MESSAGE_ID CODE_FILE CODE_LINE CODE_FUNCkwargsargsids rsendzMockSender.sendsW$%  !UJ7B KK * +  6Y 6.7.E.EA.Nq.QRTST.U +Iy)  KK y0 1  KK(// : ;  KK y0 1 HHH r)NNNN)__name__ __module__ __qualname__rr-rrr r s(,7;rr c#K dy#ttf$r)}|j|k(rtjd}~wwxYwwr )OSErrorIOErrorerrnopytestskip)codees r skip_oserrorr:-s9 W  77d? KKM s"A AA$<AAc#\K dy#t$rtjYywxYwwr ) ValueErrorr6r7r1rrskip_valueerrorr=6s%  s, ,),),ctjj}|tjtj k(sJ|tj tj k(sJ|tj dz tj k(sJ|tj dztjk(sJ|tjdz tjk(sJ|tjtjk(sJ|tjdztjk(sJ|tjdz tjk(sJ|tjtjk(sJ|tjdztjk(sJ|tjdz tjk(sJ|tjtjk(sJ|tjdztjk(sJ|tjtjk(sJ|tjtjk(sJ|tjdztj k(sJy)N)rJournalHandler map_priorityloggingNOTSET LOG_DEBUGDEBUGLOG_INFOINFO LOG_WARNINGWARNLOG_ERRERRORLOG_CRITFATALCRITICAL LOG_ALERT)ps rtest_prioritiesrQ=s ++A W^^ g&7&7 77 7 W]] g&7&7 77 7 W]]Q  g&7&7 77 7 W]]Q  g&6&6 66 6 W\\A  g&6&6 66 6 W\\?g&6&6 66 6 W\\A  g&9&9 99 9 W\\A  g&9&9 99 9 W\\?g&9&9 99 9 W\\A  goo 55 5 W]]Q  goo 55 5 W]] goo 55 5 W]]Q  g&6&6 66 6 W]] g&6&6 66 6 W   g&6&6 66 6 W   ! "g&7&7 77 7rc,ddi}tjt5tjdi|dddtjt5tjj |dddy#1swYKxYw#1swYyxYw)Nz X rr1)r6raisesr<rr@ with_argskws r"test_journalhandler_init_exceptionrWRsw B z "%$$% z "-((,--%%--sA> B >B Bcddd}tjtjfi|tj|d<tjj |y)Nr)XX3level)rr@rBrGrTrUs rtest_journalhandler_initr]YsCaB 7<<.2.,,BwK $$R(rc tjdtjddddd}t}dd|jd}t j tjfi|}|j|t|jdk(sJd|jd vsJd |jd vsJt}t j jtjdd|jd }|j|t|jdk(sJd|jd vsJd |jd vsJt j jy) N test-loggertestpathr?testrrY)rZr[sender_functionzX=3rzX3=4)r\rZr[rb) rB LogRecordrGr r-rr@emitlenrrT)recordsenderrVhandlers rtest_journalhandler_infori_s6   }gllJ6SWY] ^F \FaFKK 8B$$W\\8R8G LL vzz?a   FJJqM !! ! VZZ] "" " \F$$.. !RSgmgrgr/stG LL vzz?a   FJJqM !! ! VZZ] "" " $$&rc `tjdtjddddd}t}t j tj|j }|j|t|jdk(sJtd|jdDsJy)Nr_r`r?ra)rbc3@K|]}|jd yw)rN) startswith)rms rrz4test_journalhandler_no_message_id..zsF11<< ..Fsr) rBrcrGr rr@r-rdrerallrfrgrhs r!test_journalhandler_no_message_idrpts   }gllJ6SWY] ^F \F$$W\\6;;OG LL vzz?a   F 1 F FF Frc ptjdtjddddd}t}t j tj|j t}|j|t|jdk(sJdtjz|jdvsJyNr_r`r?rarbr&rr) rBrcrGr rr@r-TEST_MIDrdrerrros r)test_journalhandler_message_id_on_handlerru|s   }gllJ6SWY] ^F \F$$W\\6;;08:G LL vzz?a   8<< '6::a= 88 8rc tjdtjddddd}t}t j tj|j tj}|j|t|jdk(sJdtjz|jdvsJyrr) rBrcrGr rr@r-rtrrdrerros r-test_journalhandler_message_id_on_handler_hexrws   }gllJ6SWY] ^F \F$$W\\6;;08 >G LL vzz?a   8<< '6::a= 88 8rc tjdtjddddd}t|jd<t }t jtj|jt}|j|t|jdk(sJdtjz|jdvsJy Nr_r`r?rar&rsrr)rBrcrG TEST_MID2__dict__r rr@r-rtrdrerrros r)test_journalhandler_message_id_on_messager|s   }gllJ6SWY] ^F$-FOOL! \F$$W\\6;;08:G LL vzz?a   9== (FJJqM 99 9rc tjdtjddddd}tj|j d<t }tjtj|jt}|j|t|jdk(sJdtjz|jdvsJyry)rBrcrGrzrr{r rr@r-rtrdrerros r-test_journalhandler_message_id_on_message_hexr~s   }gllJ6SWY] ^F$-MMFOOL! \F$$W\\6;;08:G LL vzz?a   9== (FJJqM 99 9rctj}tjtj}tjtj}tjtj}tjtjtjztjz}tjd}y)Nr)rReader LOCAL_ONLY RUNTIME_ONLY SYSTEM_ONLY)j1j2j3j4j5j6s rtest_reader_init_flagsrs  B ** +B ,, -B ++ ,B **W-A-AAGDWDWW XB  Brctjt5tjtj dddt 5tj|jtj }dddt 5tj|jtj tjz}dddtj|jtj tjz}y#1swYxYw#1swYxYw#1swYbxYw)N)pathflags) r6rSr<rrOS_ROOTr=strpath CURRENT_USERr)tmpdirrrrs rtest_reader_os_rootrs z "(w'(  3 ^^")//33  J ^^")//G4H4H"HJJ V^^%oo0C0CC EB((33JJs$$D0D(AD4D%(D14D=ctj|j}tjd|jtj|j}tj|jy)Nrr)rrr)rrrs rtest_reader_init_pathrsH V^^ ,B NN16>>* V^^ ,B NN'rctjt5tjdddddy#1swYyxYw)Nrrr6rSr3rrr1rr test_reader_init_path_invalid_fdrs1 w #qr"### ;Actjt5tjdddddy#1swYyxYw)Nrrrr1rr%test_reader_init_path_nondirectory_fdrs1 w "qq!"""rctj|jtj}t t j 5tj|}dddtgk(sJt5tjtj|}dddtgk(sJtjtj|}t|gk(sJy#1swYxYw#1swY[xYwNr) osopenrO_RDONLYr:r5ENOSYSrrlistr=SYSTEMr)rfdrrrs rtest_reader_init_path_fdrs  -B ell #% ^^ $% 8r>>  5 ^^GNN 45 8r>> ,,2 6B 8r>>%%55sC5&D5C>D ctj|j}|5|jrJ ddd|jsJt j t 5t|dddy#1swYExYw#1swYyxYwr)rrrclosedr6rSr3nextrjs rtest_reader_as_cmrsrFNN+A 88|8 88O8 w  Q sA7" B7BB ctj|j}|5|jtj |jtj jdddy#1swYyxYwr)rrrmessageid_matchrSD_MESSAGE_JOURNAL_STARTSD_MESSAGE_JOURNAL_STOPrrs rtest_reader_messageid_matchrsZFNN+A = %889 %77;;<===s A A55A>ctj|j}|5|j|jt|jtj dddy#1swYyxYwr)rrr this_bootrtrrs rtest_reader_this_bootrsQFNN+A "  H HLL!""" AA11A:ctj|j}|5|j|jt|jtj dddy#1swYyxYwr)rrr this_machinertrrs rtest_reader_this_machinersRFNN+A %  x  x||$%%%rc2tj|j}|5ttj 5|j d}ddddddttsJ|tk(sJy#1swY3xYw#1swY7xYw)NrFOOBAR) rrrr:r5r query_unique isinstancesetrranss rtest_reader_query_uniquers{FNN+A + %,, ' +..*C ++ c3   #%<< + +++s"B BB B B  Bc0tj|j}|5ttj 5|j }ddddddttsJ|tk(sJy#1swY3xYw#1swY7xYwr) rrrr:r5renumerate_fieldsrrrs rtest_reader_enumerate_fieldsrs{FNN+A ' %,, ' '$$&C '' c3   #%<< ' '''s"B BB B B  Bctj|j}|5ttj 5|j }dddddddusJy#1swYxYw#1swYxYwNrFrrrr:r5rhas_runtime_filesrs rtest_reader_has_runtime_filesriFNN+A ( %,, ' (%%'C (( %<< ( ((("A1A%A1%A. *A11A:ctj|j}|5ttj 5|j }dddddddusJy#1swYxYw#1swYxYwrrrs r test_reader_has_persistent_filesrrrcddi}tj|j|}|jdd}|dk(sJ|jdd}|dk(sJy)NxxxcyNyyyr1args rz(test_reader_converters..rr convertersabcrzzz)rrr_convert_fieldrrrrs rtest_reader_convertersrs_+,JFNNzBA  5& )C %<<  5+ .C +  rcddd}tj|j|}|jddddgddgd }|d dd d gddgd k(sJy) Ncyrr1rs rrz+test_reader_convert_entry..rrcy)NYYYr1rs rrz+test_reader_convert_entry..rr)x1x2rrrsdefs)ry1ry2rr)rrr_convert_entryrs rtest_reader_convert_entryrs{**,JFNNzBA  6#.$*F#3$/#=? @C %% %.& 46 66 6rcxtj|j}|jdd}tj dk\r|j J|jdd}tj dk\r|j J|jdd}tj dk\r|j Jyy)Nr_SOURCE_REALTIME_TIMESTAMPlZKT.)r__REALTIME_TIMESTAMPCOREDUMP_TIMESTAMP)rrrrsys version_infotzinfo)rrrs rtest_reader_convert_timestampsr&sFNN+A  79I JC 4zz%%%  13C DC 4zz%%%  /1A BC 4zz%%% rctj|j}tj}|j ||j dt j ddd}|j |y)Nri90irY)rrrtime seek_realtimedatetime)rrnowlong_agos rtest_seek_realtimer5sWFNN+A ))+COOCOOE  q!,HOOHrcttj5tjd}dddj d}|dvsJt d|y#1swY.xYw)Nztest_journal.pyz message... ) Nzprinted message...)file)r:r5ENOENTrstreamwriteprint)rress rtest_journal_streamr@s[ ell #3 123 ,,~ &C *   V, 33s AA&)4 __future__r contextlibrr5rBrruuidrr systemdrrsystemd.journalrr6UUIDrtrzr contextmanagerr:r=rQrWr]rirprurwr|r~rrrrrrrrrrrrrrrrrrrr1rrrs%  "& 4997 8 DII8 9 2   8*-) '*G99:: E(#" = "% 6 & -r