a  ze#@sRdZddlZddlmZddlZddlmZGdddejZedkrNedS)zTests for transports.py.N)mock) transportsc@sDeZdZddZddZddZddZd d Zd d Zd dZ dS)TransportTestscCst}||jidSN)asyncio Transport assertEqualZ_extraself transportr U/opt/bitninja-python-dojo/embedded/lib/python3.9/test/test_asyncio/test_transports.pytest_ctor_extra_is_none sz&TransportTests.test_ctor_extra_is_nonecCsNtddi}|d|d||dt}|||d|dS)Nextrainfounknown)rrrZget_extra_infoZ assertIsNoneobjectZassertIs)r r defaultr r r test_get_extra_infos z"TransportTests.test_get_extra_infocsXtGfdddtj}|}|dtdtdg|dj ddS)NcseZdZfddZdS)z3TransportTests.test_writelines..MyTransportcs |dSrr )r datawriterr r writesz9TransportTests.test_writelines..MyTransport.writeN)__name__ __module__ __qualname__rr rr r MyTransportsrsline1sline2sline3sline1line2line3) rMockrr writelines bytearray memoryviewrZ call_countZassert_called_with)r rr r rr test_writelinesszTransportTests.test_writelinescCst}|t|j|t|j|t|jd|t|j|t|j|t|j |t|j |t|j |t|j |t|j dSNr)rr assertRaisesNotImplementedErrorset_write_buffer_limitsget_write_buffer_sizerZ write_eofZ can_write_eofZ pause_readingZresume_readingZ is_readingcloseabortr r r r test_not_implemented'sz#TransportTests.test_not_implementedcCs*t}|t|jd|t|jdSr#)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 terminatekillr r r r )test_subprocess_transport_not_implemented<sz8TransportTests.test_subprocess_transport_not_implementedcCsGdddtjtj}t}||d}t|_||j|t d|j dddWdn1sn0Y|j dd d||j| | d |j d d d| |j| | d dS) Nc@seZdZddZdS)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)highlow)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__) __doc__ZunittestrrrZTestCaserrmainr r r r s  V