+
    üÐj  ã                   ó²   € R t ^ RIHt ^ RIHt ^ RIHt ^ RIHtH	t	H
t
HtHtHt ^ RIHtHtHtHtHtHt ^ RIHt ^ RIHt  ! R R	]4      t ! R
 R]4      tR# )z$
Tests for L{twisted.names.common}.
)ÚverifyClass)Ú	IResolver)ÚResolverBase)ÚEFORMATÚENAMEÚENOTIMPÚEREFUSEDÚESERVERÚQuery)ÚDNSFormatErrorÚDNSNameErrorÚDNSNotImplementedErrorÚDNSQueryRefusedErrorÚDNSServerErrorÚDNSUnknownError)ÚFailure)ÚSynchronousTestCasec                   óN   a € ] tR t^t o RtR tR tR tR tR t	R t
R tR	tV tR
# )ÚExceptionForCodeTestsz-
Tests for L{ResolverBase.exceptionForCode}.
c                ó8   € \        4       P                  V n        R # ©N)r   ÚexceptionForCode©Úselfs   &Ú@/usr/lib/python3/dist-packages/twisted/names/test/test_common.pyÚsetUpÚExceptionForCodeTests.setUp   s   € Ü ,£× ?Ñ ?ˆÖó    c                óX   € V P                  V P                  \        4      \        4       R# )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                óX   € V P                  V P                  \        4      \        4       R# )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                óX   € V P                  V P                  \        4      \        4       R# )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                óX   € V P                  V P                  \        4      \        4       R# )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                óX   € V P                  V P                  \        4      \        4       R# )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                ó`   € V P                  V P                  \        4       4      \        4       R# )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-   r1   Ú__static_attributes__Ú__classdictcell__©Ú__classdict__s   @r   r   r      s:   ø‡ € ñò@òFòFòBòNòM÷Hð Hr   r   c                   ó<   a € ] tR t^Lt o RtR tR tR tR tRt	V t
R# )Ú
QueryTestsz"
Tests for L{ResolverBase.query}.
c                ó.   € \        \        \        4       R# )z6
L{ResolverBase} provides the L{IResolver} interface.
N)r   r   r   r   s   &r   Ú"test_resolverBaseProvidesIResolverÚ-QueryTests.test_resolverBaseProvidesIResolverQ   s   € ô 	”Iœ|Ö,r   c                óž   a€ . o\        4       pRV3R l/Vn        \        RRR7      pVP                  V^{4       V P	                  R.S4       R# )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                 ó(   <€ SP                  W34      # r   )Úappend)ÚqueryÚtimeoutÚresultss   &&€r   Ú<lambda>Ú6QueryTests.test_typeToMethodDispatch.<locals>.<lambda>_   s   ø€ ¨'¯.©.¸%Ð9IÔ*Jr   ó   example.com©ÚnameÚtypeN)rJ   é{   )r   ÚtypeToMethodr
   rE   ÚassertEqual)r   ÚresolverrE   rG   s   &  @r   Útest_typeToMethodDispatchÚ$QueryTests.test_typeToMethodDispatchW   sQ   ø€ ð
 ˆÜ“>ˆàÔJð!
ˆÔô ˜>°Ô6ˆØ�‰�u˜cÔ"Ø×ÑÐ/Ð0°'Ö:r   c                óô   a€ \        4       o\        4       pRV3R l/Vn        \        RRR7      pVP	                  V^{4      p. pVP                  VP                  4       V P                  SV^ ,          4       R# )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                 ó   <€ S# r   © )rE   rF   Úexpecteds   &&€r   rH   Ú4QueryTests.test_typeToMethodResult.<locals>.<lambda>m   s   ø€ ¹xr   rJ   rK   N)r0   r   rO   r
   rE   ÚaddBothrD   rP   )r   rQ   rE   ÚqueryDeferredÚresultrW   s   &    @r   Útest_typeToMethodResultÚ"QueryTests.test_typeToMethodResulte   sh   ø€ ô “8ˆÜ“>ˆØ!&Ô(GÐ HˆÔÜ˜>°Ô6ˆØ Ÿ™ u¨cÓ2ˆØˆØ×Ñ˜fŸm™mÔ,Ø×Ñ˜ 6¨!¥9Ö-r   c                ó  € \        4       p/ Vn        \        RRR7      pVP                  V^{4      p. pVP	                  VP
                  4       V P                  V^ ,          \        4       V^ ,          P                  \        4       R# )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.
rJ   rB   rK   N)
r   rO   r
   rE   rY   rD   ÚassertIsInstancer   ÚtrapÚNotImplementedError)r   rQ   rE   rZ   r[   s   &    r   Útest_unknownQueryTypeÚ QueryTests.test_unknownQueryTypet   sk   € ô  “>ˆØ "ˆÔÜ˜>°Ô6ˆØ Ÿ™ u¨cÓ2ˆØˆØ×Ñ˜fŸm™mÔ,Ø×Ñ˜f Q�i¬Ô1Øˆq�	�‰Ô*Ö+r   rV   N)r3   r4   r5   r6   r7   r?   rR   r\   rb   r8   r9   r:   s   @r   r=   r=   L   s#   ø‡ € ñò-ò;ò.÷,ð ,r   r=   N)r7   Ú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=   rV   r   r   Ú<module>rk      sJ   ðñõ
 .å 1Ý -ß O× O÷÷ õ +Ý 6ô/HÐ/ô /Hôd5,Ð$ö 5,r   