ó
    Ö›‘h  ã                   ó°   • S r SSKJr  SSKJr  SSKJr  SSKJrJ	r	J
r
JrJrJr  SSKJrJrJrJrJrJr  SSKJr  SSKJr   " S	 S
\5      r " S S\5      rg)z$
Tests for L{twisted.names.common}.
é    )ÚverifyClass)Ú	IResolver)ÚResolverBase)ÚEFORMATÚENAMEÚENOTIMPÚEREFUSEDÚESERVERÚQuery)ÚDNSFormatErrorÚDNSNameErrorÚDNSNotImplementedErrorÚDNSQueryRefusedErrorÚDNSServerErrorÚDNSUnknownError)ÚFailure)ÚSynchronousTestCasec                   óB   • \ rS rSrSrS rS rS rS rS r	S r
S	 rS
rg)ÚExceptionForCodeTestsé   z-
Tests for L{ResolverBase.exceptionForCode}.
c                 ó6   • [        5       R                  U l        g ©N)r   ÚexceptionForCode©Úselfs    ÚbC:\Users\psant\Downloads\Noiseback\school\venv\Lib\site-packages\twisted/names/test/test_common.pyÚsetUpÚExceptionForCodeTests.setUp   s   € Ü ,£× ?Ñ ?ˆÕó    c                 óV   • U R                  U R                  [        5      [        5        g)zL
L{ResolverBase.exceptionForCode} converts L{EFORMAT} to
L{DNSFormatError}.
N)ÚassertIsr   r   r   r   s    r   Útest_eformatÚ"ExceptionForCodeTests.test_eformat"   ó   € ð
 	�‰�d×+Ñ+¬GÓ4´nÕEr   c                 óV   • U R                  U R                  [        5      [        5        g)zL
L{ResolverBase.exceptionForCode} converts L{ESERVER} to
L{DNSServerError}.
N)r!   r   r
   r   r   s    r   Útest_eserverÚ"ExceptionForCodeTests.test_eserver)   r$   r   c                 óV   • U R                  U R                  [        5      [        5        g)zH
L{ResolverBase.exceptionForCode} converts L{ENAME} to L{DNSNameError}.
N)r!   r   r   r   r   s    r   Ú
test_enameÚ ExceptionForCodeTests.test_ename0   s   € ð 	�‰�d×+Ñ+¬EÓ2´LÕAr   c                 óV   • U R                  U R                  [        5      [        5        g)zT
L{ResolverBase.exceptionForCode} converts L{ENOTIMP} to
L{DNSNotImplementedError}.
N)r!   r   r   r   r   s    r   Útest_enotimpÚ"ExceptionForCodeTests.test_enotimp6   s   € ð
 	�‰�d×+Ñ+¬GÓ4Ô6LÕMr   c                 óV   • U R                  U R                  [        5      [        5        g)zS
L{ResolverBase.exceptionForCode} converts L{EREFUSED} to
L{DNSQueryRefusedError}.
N)r!   r   r	   r   r   s    r   Útest_erefusedÚ#ExceptionForCodeTests.test_erefused=   s   € ð
 	�‰�d×+Ñ+¬HÓ5Ô7KÕLr   c                 ó^   • U R                  U R                  [        5       5      [        5        g)zZ
L{ResolverBase.exceptionForCode} converts any other response code to
L{DNSUnknownError}.
N)r!   r   Úobjectr   r   s    r   Ú
test_otherÚ ExceptionForCodeTests.test_otherD   s   € ð
 	�‰�d×+Ñ+¬F«HÓ5´ÕGr   )r   N)Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__r   r"   r&   r)   r,   r/   r3   Ú__static_attributes__© r   r   r   r      s1   † ñò@òFòFòBòNòMõHr   r   c                   ó0   • \ rS rSrSrS rS rS rS rSr	g)	Ú
QueryTestséL   z"
Tests for L{ResolverBase.query}.
c                 ó,   • [        [        [        5        g)z6
L{ResolverBase} provides the L{IResolver} interface.
N)r   r   r   r   s    r   Ú"test_resolverBaseProvidesIResolverÚ-QueryTests.test_resolverBaseProvidesIResolverQ   s   € ô 	”Iœ|Õ,r   c                 ó–   ^• / m[        5       nSU4S j0Ul        [        SSS9nUR                  US5        U R	                  S/T5        g)z‡
L{ResolverBase.query} looks up a method to invoke using the type of the
query passed to it and the C{typeToMethod} mapping on itself.
é90  c                 ó(   >• TR                  X45      $ r   )Úappend)ÚqueryÚtimeoutÚresultss     €r   Ú<lambda>Ú6QueryTests.test_typeToMethodDispatch.<locals>.<lambda>_   s   ø€ ¨'¯.©.¸%Ð9IÔ*Jr   ó   example.com©ÚnameÚtypeé{   )rK   rO   N)r   ÚtypeToMethodr   rF   ÚassertEqual)r   ÚresolverrF   rH   s      @r   Útest_typeToMethodDispatchÚ$QueryTests.test_typeToMethodDispatchW   sQ   ø€ ð
 ˆÜ“>ˆàÔJð!
ˆÔô ˜>°Ñ6ˆØ�‰�u˜cÔ"Ø×ÑÐ/Ð0°'Õ:r   c                 óä   ^• [        5       m[        5       nSU4S j0Ul        [        SSS9nUR	                  US5      n/ nUR                  UR                  5        U R                  TUS   5        g)z¤
L{ResolverBase.query} returns a L{Deferred} which fires with the result
of the method found in the C{typeToMethod} mapping for the type of the
query passed to it.
i1Ô  c                 ó   >• T$ r   r;   )rF   rG   Úexpecteds     €r   rI   Ú4QueryTests.test_typeToMethodResult.<locals>.<lambda>m   s   ø€ ¹xr   rK   rL   rO   r   N)r2   r   rP   r   rF   ÚaddBothrE   rQ   )r   rR   rF   ÚqueryDeferredÚresultrW   s        @r   Útest_typeToMethodResultÚ"QueryTests.test_typeToMethodResulte   sh   ø€ ô “8ˆÜ“>ˆØ!&Ô(GÐ HˆÔÜ˜>°Ñ6ˆØ Ÿ™ u¨cÓ2ˆØˆØ×Ñ˜fŸm™mÔ,Ø×Ñ˜ 6¨!¡9Õ-r   c                 óú   • [        5       n0 Ul        [        SSS9nUR                  US5      n/ nUR	                  UR
                  5        U R                  US   [        5        US   R                  [        5        g)z§
L{ResolverBase.query} returns a L{Deferred} which fails with
L{NotImplementedError} when called with a query of a type not present in
its C{typeToMethod} dictionary.
rK   rC   rL   rO   r   N)
r   rP   r   rF   rY   rE   ÚassertIsInstancer   ÚtrapÚNotImplementedError)r   rR   rF   rZ   r[   s        r   Útest_unknownQueryTypeÚ QueryTests.test_unknownQueryTypet   sk   € ô  “>ˆØ "ˆÔÜ˜>°Ñ6ˆØ Ÿ™ u¨cÓ2ˆØˆØ×Ñ˜fŸm™mÔ,Ø×Ñ˜f Q™i¬Ô1Øˆq‰	�‰Ô*Õ+r   r;   N)
r5   r6   r7   r8   r9   r@   rS   r\   rb   r:   r;   r   r   r=   r=   L   s   † ñò-ò;ò.õ,r   r=   N)r9   Úzope.interface.verifyr   Útwisted.internet.interfacesr   Útwisted.names.commonr   Útwisted.names.dnsr   r   r   r	   r
   r   Útwisted.names.errorr   r   r   r   r   r   Útwisted.python.failurer   Útwisted.trial.unittestr   r   r=   r;   r   r   Ú<module>rk      sJ   ðñõ
 .å 1Ý -ß O× O÷÷ õ +Ý 6ô/HÐ/ô /Hôd5,Ð$õ 5,r   