a 8êdg#ã@sNddlZddlmZddlZddlmZGdd„dejƒZedkrJe ¡dS)éN)Úmock)Ú transportsc@sDeZdZdd„Zdd„Zdd„Zdd„Zd d „Zd d „Zd d„Z dS)ÚTransportTestscCst ¡}| |ji¡dS©N)ÚasyncioÚ TransportÚ assertEqualZ_extra©ÚselfÚ transport©r ú=/usr/local/lib/python3.9/test/test_asyncio/test_transports.pyÚtest_ctor_extra_is_none sz&TransportTests.test_ctor_extra_is_nonecCsNt ddi¡}| d| d¡¡| | d¡¡tƒ}| || d|¡¡dS)NÚextraÚinfoÚunknown)rrrZget_extra_infoZ assertIsNoneÚobjectZassertIs)r r Údefaultr r r Útest_get_extra_infos z"TransportTests.test_get_extra_infocsXt ¡‰G‡fdd„dtjƒ}|ƒ}| dtdƒtdƒg¡| dˆj¡ˆ  d¡dS)NcseZdZ‡fdd„ZdS)z3TransportTests.test_writelines..MyTransportcs ˆ|ƒdSrr )r Údata©Úwriterr r Úwritesz9TransportTests.test_writelines..MyTransport.writeN)Ú__name__Ú __module__Ú __qualname__rr rr r Ú MyTransportsrsline1sline2sline3ésline1line2line3) rÚMockrrÚ writelinesÚ bytearrayÚ memoryviewrZ call_countZassert_called_with)r rr r rr Útest_writelinessþzTransportTests.test_writelinescCsšt ¡}| t|j¡| t|j¡| t|jd¡| t|j¡| t|j¡| t|j ¡| t|j ¡| t|j ¡| t|j ¡| t|j ¡dS©Nr)rrÚ assertRaisesÚNotImplementedErrorÚset_write_buffer_limitsÚget_write_buffer_sizerZ write_eofZ can_write_eofZ pause_readingZresume_readingZ is_readingÚcloseÚabortr r r r Útest_not_implemented'sÿz#TransportTests.test_not_implementedcCs*t ¡}| t|jd¡| t|j¡dSr#)rZDatagramTransportr$r%Úsendtor)r r r r Útest_dgram_not_implemented6sz)TransportTests.test_dgram_not_implementedcCsdt ¡}| t|j¡| t|j¡| t|jd¡| t|jd¡| t|j¡| t|j ¡dS)Nr) rZSubprocessTransportr$r%Zget_pidZget_returncodeZget_pipe_transportÚ send_signalÚ terminateÚkillr r r r Ú)test_subprocess_transport_not_implemented<sz8TransportTests.test_subprocess_transport_not_implementedcCsÐGdd„dtjtjƒ}t ¡}||d}t ¡|_| |j¡| t d¡|j dddWdƒn1sn0Y|j dd d| |j¡|  |  ¡d ¡|j d d d|  |j¡|  |  ¡d ¡dS) Nc@seZdZdd„ZdS)zKTransportTests.test_flowcontrol_mixin_set_write_limits..MyTransportcSsdS)Nir )r r r r r'KszaTransportTests.test_flowcontrol_mixin_set_write_limits..MyTransport.get_write_buffer_sizeN)rrrr'r r r r rHsr)Úloopzhigh.*must be >= lowrr)ÚhighÚlowéé€)r5r4é)r5r6)rZ_FlowControlMixinrrrZ _protocolZ assertFalseZ_protocol_pausedZassertRaisesRegexÚ ValueErrorr&rZget_write_buffer_limitsZ assertTrue)r rr1r r r r Ú'test_flowcontrol_mixin_set_write_limitsFsÿ   ,  z6TransportTests.test_flowcontrol_mixin_set_write_limitsN) rrrrrr"r*r,r0r8r r r r r s rÚ__main__)ZunittestrrrZTestCaserrÚmainr r r r Ús   V