ó
    Ö›‘hÂ  ã                   ór   • S r SSKJr  SSKJr  SSKJrJr  SSKJ	r	  SSK
Jr   " S S	\R                  5      rg
)z)
Test cases for L{twisted.logger._util}.
é    )Úimplementer)Úunittesté   )ÚILogObserverÚLogEvent)ÚLogPublisher)ÚformatTracec                   ó,   • \ rS rSrSrSS jrSS jrSrg)Ú	UtilTestsé   z
Utility tests.
Nc                 ó„  ^ ^^^^^• [        5       m[        / S9m[        [        5      S[        SS4S j5       m[        [        5      S[        SS4UUUUU 4S jj5       m[        [        5      S[        SS4UUUUUU 4S jj5       mTR                  T5        TR                  T5        TR                  T5        T" T5        g)z:
Tracing keeps track of forwarding done by the publisher.
©Ú	log_traceÚeÚreturnNc                 ó   • g ©N© ©r   s    ÚaC:\Users\psant\Downloads\Noiseback\school\venv\Lib\site-packages\twisted/logger/test/test_util.pyÚo1Ú UtilTests.test_trace.<locals>.o1   ó   € àó    c                 ó`   >• TR                  U T5        TR                  U S   TT4TT4/5        g ©Nr   ©ÚassertIsÚassertEqual)r   Úeventr   Úo2Ú	publisherÚselfs    €€€€€r   r!   Ú UtilTests.test_trace.<locals>.o2!   s9   ø€ à�M‰M˜!˜UÔ#Ø×ÑØ�+‘à �OØ �Oðõr   c                 óf   >• TR                  U T5        TR                  U S   TT4TT4TT4/5        g r   r   )r   r    r   r!   Úo3r"   r#   s    €€€€€€r   r&   Ú UtilTests.test_trace.<locals>.o3-   s@   ø€ à�M‰M˜!˜UÔ#Ø×ÑØ�+‘à �OØ �OØ �Oðõr   )r   Údictr   r   r   ÚaddObserver)r#   r    r   r!   r&   r"   s   `@@@@@r   Ú
test_traceÚUtilTests.test_trace   sÇ   ý€ ô !“Nˆ	ä¨Ñ,ˆä	”\Ó	"ð	”(ð 	˜tó 	ó 
#ð	ô 
”\Ó	"ð		”(ð 		˜t÷ 		ò 		ó 
#ð		ô 
”\Ó	"ð		”(ð 		˜t÷ 		ó 		ó 
#ð		ð 	×Ñ˜bÔ!Ø×Ñ˜bÔ!Ø×Ñ˜bÔ!Ù�%Õr   c                 ó–  ^ ^^• [        / S9m[        [        5      S[        SS4S j5       n[        [        5      S[        SS4S j5       n[        [        5      S[        SS4S j5       n[        [        5      S[        SS4S j5       n[        [        5      S[        SS4S	 j5       nS
Ul        SUl        SUl        SUl        SUl        [        [        5      S[        SS4UUU 4S jj5       nUn[        U5      n[        X#U5      n	SUl        SU	l        [        XXW5      n
SU
l        SnUR                  U
UUUUUU	UUS9	mU
" T5        g)z
Format trace as string.
r   r   r   Nc                 ó   • g r   r   r   s    r   r   Ú&UtilTests.test_formatTrace.<locals>.o1D   r   r   c                 ó   • g r   r   r   s    r   r!   Ú&UtilTests.test_formatTrace.<locals>.o2H   r   r   c                 ó   • g r   r   r   s    r   r&   Ú&UtilTests.test_formatTrace.<locals>.o3L   r   r   c                 ó   • g r   r   r   s    r   Úo4Ú&UtilTests.test_formatTrace.<locals>.o4P   r   r   c                 ó   • g r   r   r   s    r   Úo5Ú&UtilTests.test_formatTrace.<locals>.o5T   r   r   zroot/o1z
root/p1/o2z
root/p1/o3zroot/p1/p2/o4zroot/o5c                 ój   >• TR                  U T5        [        U S   5      nTR                  UT5        g r   )r   r	   r   )r   Útracer    ÚexpectedTracer#   s     €€€r   ÚtestObserverÚ0UtilTests.test_formatTrace.<locals>.testObserver`   s/   ø€ à�M‰M˜!˜UÔ#Ü  +¡Ó/ˆEØ×Ñ˜U MÕ2r   zroot/p1/p2/zroot/p1/zroot/zÆ{root} ({root.name})
  -> {o1} ({o1.name})
  -> {p1} ({p1.name})
    -> {o2} ({o2.name})
    -> {o3} ({o3.name})
    -> {p2} ({p2.name})
      -> {o4} ({o4.name})
  -> {o5} ({o5.name})
  -> {oTest}
)	Úrootr   r!   r&   r4   r7   Úp1Úp2ÚoTest)r(   r   r   r   Únamer   Úformat)r#   r   r!   r&   r4   r7   r<   rA   r@   r?   r>   ÚexpectedTraceTemplater    r;   s   `           @@r   Útest_formatTraceÚUtilTests.test_formatTrace>   s¤  ú€ ô ¨Ñ,ˆä	”\Ó	"ð	”(ð 	˜tó 	ó 
#ð	ô 
”\Ó	"ð	”(ð 	˜tó 	ó 
#ð	ô 
”\Ó	"ð	”(ð 	˜tó 	ó 
#ð	ô 
”\Ó	"ð	”(ð 	˜tó 	ó 
#ð	ô 
”\Ó	"ð	”(ð 	˜tó 	ó 
#ð	ð ˆŒØˆŒØˆŒØ!ˆŒØˆŒô 
”\Ó	"ð	3œHð 	3¨÷ 	3ð 	3ó 
#ð	3ð
 ˆä˜"ÓˆÜ˜" "Ó%ˆàˆŒØˆŒä˜B BÓ.ˆØˆŒ	ðð 	ð  .×4Ñ4ØØØØØØØØØð 5ð 

ˆñ 	ˆU�r   r   )r   N)Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__r*   rE   Ú__static_attributes__r   r   r   r   r      s   † ñô'÷RMr   r   N)rK   Úzope.interfacer   Útwisted.trialr   Ú_interfacesr   r   Ú	_observerr   Ú_utilr	   ÚTestCaser   r   r   r   Ú<module>rS      s/   ðñõ 'å "ß 0Ý $Ý ô{�×!Ñ!õ {r   