+
    üÐjþ  ã                  ó  € R t ^ RIHt ^ RIt^ RIt^ RIHt ^ RIHt ^ RI	H
t
Ht ^ RIHt ^ RIHt ^ RIHt ^ R	IHt ^ R
IHt ]! RR4      t]! RR4      t]! RR4      t]! RR4      t ! R R]4      t ! R R]4      t ! R R]4      tR# )z(
Tests for L{twisted.internet.default}.
)ÚannotationsN)ÚCallable)Údefault)Ú_getInstallFunctionÚinstall)ÚIReactorCore)Ú	NoReactor)ÚrequireModule)ÚPlatform)ÚSynchronousTestCaseÚposixÚotherÚlinux2ÚntÚwin32Údarwinc                  ó>   € ] tR t^tRtR R ltR R ltR R ltRtR	# )
ÚPollReactorTestsz‚
Tests for the cases of L{twisted.internet.default._getInstallFunction}
in which it picks the poll(2) or epoll(7)-based reactors.
c               ó    € V ^8„  d   QhRRRR/# )é   r   zCallable[..., object]ÚreturnÚNone© )Úformats   "ÚD/usr/lib/python3/dist-packages/twisted/internet/test/test_default.pyÚ__annotate__ÚPollReactorTests.__annotate__!   s   € ÷ Sñ SÐ$9ð S¸dñ Só    c                ó¦   € \        \        R4      '       d   V P                  VP                  R4       R# V P                  VP                  R4       R# )zb
Assert the given function will install the poll() reactor, or select()
if poll() is unavailable.
Úpollztwisted.internet.pollreactorútwisted.internet.selectreactorN)ÚhasattrÚselectÚassertEqualÚ
__module__©Úselfr   s   &&r   ÚassertIsPollÚPollReactorTests.assertIsPoll!   s?   € ô
 ”6˜6×"Ò"Ø×Ñ˜W×/Ñ/Ð1OÖPà×Ñ˜W×/Ñ/Ð1QÖRr   c               ó   € V ^8„  d   QhRR/# ©r   r   r   r   )r   s   "r   r   r   +   s   € ÷ #ñ #˜4ñ #r   c                óF   € \        \        4      pV P                  V4       R# )z~
L{_getInstallFunction} chooses the poll reactor on arbitrary Unix
platforms, falling back to select(2) if it is unavailable.
N)r   Úunixr'   r%   s   & r   Ú	test_unixÚPollReactorTests.test_unix+   s   € ô
 &¤dÓ+ˆØ×Ñ˜'Ö"r   c               ó   € V ^8„  d   QhRR/# r*   r   )r   s   "r   r   r   3   s   € ÷ 	Rñ 	R˜Dñ 	Rr   c                óœ   € \        \        4      p\        R4      f   V P                  V4       R# V P	                  VP
                  R4       R# )z]
L{_getInstallFunction} chooses the epoll reactor on Linux, or poll if
epoll is unavailable.
ztwisted.internet.epollreactorN)r   Úlinuxr	   r'   r#   r$   r%   s   & r   Ú
test_linuxÚPollReactorTests.test_linux3   s?   € ô
 &¤eÓ,ˆÜÐ8Ó9ÒAØ×Ñ˜gÖ&à×Ñ˜W×/Ñ/Ð1PÖQr   r   N)	Ú__name__r$   Ú__qualname__Ú__firstlineno__Ú__doc__r'   r-   r2   Ú__static_attributes__r   r   r   r   r      s   † ñõ
Sõ#÷	Rñ 	Rr   r   c                  ó2   € ] tR t^?tRtR R ltR R ltRtR# )ÚSelectReactorTestszw
Tests for the cases of L{twisted.internet.default._getInstallFunction}
in which it picks the select(2)-based reactor.
c               ó   € V ^8„  d   QhRR/# r*   r   )r   s   "r   r   ÚSelectReactorTests.__annotate__E   s   € ÷ Oñ O˜$ñ Or   c                ó\   € \        \        4      pV P                  VP                  R4       R# )z=
L{_getInstallFunction} chooses the select reactor on macOS.
r    N)r   Úosxr#   r$   r%   s   & r   Útest_osxÚSelectReactorTests.test_osxE   s%   € ô &¤cÓ*ˆØ×Ñ˜×+Ñ+Ð-MÖNr   c               ó   € V ^8„  d   QhRR/# r*   r   )r   s   "r   r   r<   L   s   € ÷ Oñ O˜dñ Or   c                ó\   € \        \        4      pV P                  VP                  R4       R# )z?
L{_getInstallFunction} chooses the select reactor on Windows.
r    N)r   Úwindowsr#   r$   r%   s   & r   Útest_windowsÚSelectReactorTests.test_windowsL   s%   € ô &¤gÓ.ˆØ×Ñ˜×+Ñ+Ð-MÖNr   r   N)r4   r$   r5   r6   r7   r?   rD   r8   r   r   r   r:   r:   ?   s   † ñõ
O÷Oñ Or   r:   c                  ó2   € ] tR t^TtRtR R ltR R ltRtR# )ÚInstallationTestsz/
Tests for actual installation of the reactor.
c               ó   € V ^8„  d   QhRR/# r*   r   )r   s   "r   r   ÚInstallationTests.__annotate__Y   s   € ÷ Cñ C˜dñ Cr   c                ó¸   € \        4       ;_uu_ 4        \        4        V P                  R\        P                  4       RRR4       R#   + '       g   i     R# ; i)z 
L{install} installs a reactor.
ztwisted.internet.reactorN)r   r   ÚassertInÚsysÚmodules)r&   s   &r   Útest_installÚInstallationTests.test_installY   s/   € ô �[�[ÜŒIØ�M‰MÐ4´c·k±kÔB÷ �[�[Š[ús   “+AÁA	c               ó   € V ^8„  d   QhRR/# r*   r   )r   s   "r   r   rI   a   s   € ÷ 0ñ 0˜dñ 0r   c                ó&  a€ . oR V3R llpV P                  \        RV4       \        4       ;_uu_ 4        ^ RIHp V P                  \        P                  ! V4      4       V P                  SR.4       RRR4       R#   + '       g   i     R# ; i)zZ
Importing L{twisted.internet.reactor} installs the default reactor if
none is installed.
c               ó   € V ^8„  d   QhRR/# )r   r   Úobjectr   )r   s   "r   r   Ú4InstallationTests.test_reactor.<locals>.__annotate__h   s   € ÷ 	ñ 	˜6ñ 	r   c                 ó:   <€ S P                  R 4       \        4       # )T)Úappendr   )Ú	installeds   €r   Ú	installerÚ1InstallationTests.test_reactor.<locals>.installerh   s   ø€ Ø×Ñ˜TÔ"Ü“9Ðr   r   )ÚreactorTN)	Úpatchr   r   Útwisted.internetrZ   Ú
assertTruer   Ú
providedByr#   )r&   rX   rZ   rW   s   &  @r   Útest_reactorÚInstallationTests.test_reactora   se   ø€ ð
 !#ˆ	÷	ð 	ð 	�
‰
”7˜I yÔ1ä�[�[Ý0à�O‰OœL×3Ò3°GÓ<Ô=Ø×Ñ˜Y¨¨Ô/÷	 �[�[Š[ús   ¶?A?Á?B	r   N)r4   r$   r5   r6   r7   rN   r_   r8   r   r   r   rG   rG   T   s   † ñõC÷0ñ 0r   rG   )r7   Ú
__future__r   r"   rL   Útypingr   r\   r   Útwisted.internet.defaultr   r   Útwisted.internet.interfacesr   Útwisted.internet.test.test_mainr   Útwisted.python.reflectr	   Útwisted.python.runtimer
   Útwisted.trial.unittestr   r,   r1   rC   r>   r   r:   rG   r   r   r   Ú<module>ri      s‰   ðñõ #ã Û 
Ý å $ß AÝ 4Ý 5Ý 0Ý +Ý 6á�˜Ó!€Ù�˜(Ó#€Ù
�4˜Ó
!€Ùˆw˜Ó!€ô!RÐ*ô !RôHOÐ,ô Oô*0Ð+ö 0r   