
    0hh                         S SK JrJr  \R                  " S5      rS SKJr  S SKrS SKrS SK	r	S SK
r
S SKJr   " S S\
R                  5      r\S:X  a  \
R                   " 5         gg)	    )import_helperthreading_helpersyslog)supportN)dedentc                       \ rS rSrS rS rS rS rS rS r	S r
S	 r\R                  " 5       S
 5       rS rS rS rSrg)Test   c                 ,    [         R                  5         g N)r   closelogselfs    9/opt/python-3.13.8/usr/lib/python3.13/test/test_syslog.pytearDownTest.tearDown   s        c                 x    [         R                  S5        U R                  [        [         R                  S5        g )Npythonu   )r   openlogassertRaisesUnicodeEncodeErrorr   s    r   test_openlogTest.test_openlog   s%    x ,fnnhGr   c                     [         R                  S5        [         R                  S5        [         R                  [         R                  S5        g )Nr   $test message from python test_syslog"test error from python test_syslog)r   r   LOG_ERRr   s    r   test_syslogTest.test_syslog   s.    x <=fnn&JKr   c                     [         R                  5         [         R                  S5        [         R                  [         R                  S5        g )Nr   r   )r   r   r   r   s    r   test_syslog_implicit_openTest.test_syslog_implicit_open   s,    <=fnn&JKr   c                 ~    [         R                  S5        [         R                  5         [         R                  5         g )Nr   )r   r   r   r   s    r   test_closelogTest.test_closelog"   s"    x r   c                    [         R                  [         R                  5      n[         R                  U5      nU R	                  [         R                  S5      U5        U R	                  [         R                  U5      U5        g )Nr   )r   LOG_UPTOLOG_WARNING
setlogmaskassertEqual)r   maskoldmasks      r   test_setlogmaskTest.test_setlogmask'   s\    v112##D)**1-t4**73T:r   c                    [         R                  [         R                  5      nU R                  U[         R	                  [         R                  5      -  5        U R                  U[         R	                  [         R
                  5      -  5        U R                  U[         R	                  [         R                  5      -  5        g r   )r   r(   r)   
assertTrueLOG_MASKr   assertFalseLOG_INFO)r   r,   s     r   test_log_maskTest.test_log_mask-   st    v112vv/A/ABBCvv~~>>? @@Ar   c                 V    [         R                  5         [         R                  S5        g )Nr   )r   r   r   s    r   test_openlog_noargsTest.test_openlog_noargs3   s    <=r   c                 R  ^^ [         R                  " 5       mSmUU4S jnUU4S jn[        R                  " 5       n[        R
                  " S5         [         R                  " US9/nU[        S5       Vs/ s H  n[         R                  " US9PM     sn-  n[        R                  " U5         TR                  5         [        R                  " S5        SmS S S 5        [        R
                  " U5        g s  snf ! , (       d  f       N*= f! [        R
                  " U5        f = f)	NFc                     > TR                  S5        Sn T(       d'  [        R                  SU  35        U S-  n T(       d  M&  g g )N
      zpython-test-)waitr   r   )istartstops    r   opener)Test.test_syslog_threaded.<locals>.opener;   s9    JJrNAaS12Q dr   c                  t   > T R                  S5        T(       d  [        R                  S5        T(       d  M  g g )Nr<   r   )r>   r   )r@   rA   s   r   logger)Test.test_syslog_threaded.<locals>.loggerA   s%    JJrNDE dr   g&.>)targetr<   g?T)	threadingEventsysgetswitchintervalr   setswitchintervalThreadranger   start_threadssettimesleep)r   rB   rE   orig_sithreadskr@   rA   s         @@r   test_syslog_threadedTest.test_syslog_threaded7   s    !		F
 '')!!$'	+ ''v67GrKA	((7KKG!//8		

3 9
 !!'* L88
 !!'*s6   #D 7C8D 0)C=D 8D =
DD D&c                     U R                  S5         [        S5      n[        R                  " U5      nU R	                  US5        S S S 5        [
        R                  5          U R                  S5         [        S5      n[        R                  " U5      nU R	                  US5        S S S 5        [
        R                  5         g ! , (       d  f       N= f! , (       d  f       N4= f! [
        R                  5         f = f)Nzbefore openlog()a   
                import syslog
                caught_error = False
                try:
                    syslog.syslog('foo')
                except RuntimeError:
                    caught_error = True
                assert(caught_error)
            r   zafter openlog()z\
                    import syslog
                    syslog.syslog('foo')
                )subTestr   r   run_in_subinterpr+   r   r   r   r   coderess      r   test_subinterpreter_syslogTest.test_subinterpreter_syslogR   s     \\,-  D **40CS!$ . 			/0   ..t4  a( 1 OO/ .- 10 OOs/   4C#C' 44C(C' 
C
C$ C' 'C=c                      [        S5      n[        R                  " U5      nU R                  US5        [        R                  5         g ! [        R                  5         f = f)Nz
                import syslog
                caught_error = False
                try:
                    syslog.openlog()
                except RuntimeError:
                    caught_error = True

                assert(caught_error)
            r   )r   r   rZ   r+   r   r   r[   s      r   test_subinterpreter_openlog Test.test_subinterpreter_openlogn   sM    	 	 	D **40CS!$OOFOOs   3A
 
A c                     [         R                  S5         [        S5      n[        R                  " U5      nU R                  US5        [         R                  5         g ! [         R                  5         f = f)Nr   z
                import syslog
                caught_error = False
                try:
                    syslog.closelog()
                except RuntimeError:
                    caught_error = True

                assert(caught_error)
            r   )r   r   r   r   rZ   r+   r   r[   s      r   test_subinterpreter_closelog!Test.test_subinterpreter_closelog   sY    x 	 	 	D **40CS!$OOFOOs   3A A5 N)__name__
__module____qualname____firstlineno__r   r   r   r"   r%   r.   r5   r8   r   requires_working_threadingrV   r^   ra   rd   __static_attributes__rf   r   r   r	   r	      sZ    H
L
L

;B> 002+ 3+48"r   r	   __main__)test.supportr   r   import_moduler   testr   rJ   rH   rQ   unittesttextwrapr   TestCaser	   rg   mainrf   r   r   <module>ru      sW    8		$	$X	.  
    A8 AH zMMO r   