a 8êdgÐã@s¬ddlZddlZddlZddlZddlmZddlmZddlm Z dd„Z Gdd„de j ƒZ Gd d „d e ejƒZe eed ƒd ¡Gd d„de ejƒƒZedkr¨e ¡dS)éN)Ú socket_helper)Úutils)Ú functionalcCst d¡dS©N)ÚasyncioZset_event_loop_policy©rrú9/usr/local/lib/python3.9/test/test_asyncio/test_server.pyÚtearDownModule sr c@seZdZdd„Zdd„ZdS)ÚBaseStartServercCst‚dSr)ÚNotImplementedError©ÚselfrrrÚnew_loopszBaseStartServer.new_loopc sˆddd‰‡‡fdd„‰‡fdd„}dd „}| t¡0|j tj|tjd |jd d ¡‰Wdƒn1sn0Y| ˆ  ¡¡|j  |ˆƒ¡‰ˆj d   ¡‰|  tj¡P| ‡‡fd d„¡|j ˆ¡Wdƒn1sè0YWdƒn1s0Y| ˆj d¡| ˆj¡| ˆj¡| ˆ  ¡¡| td¡ |j ˆ ¡¡Wdƒn1sz0YdS)Nó1111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111éó cs\tdƒD]}t d¡ˆ ¡rq(qt‚| d¡| |¡| ˆ¡| d¡|  ¡dS)Né gš™™™™™É?éé) ÚrangeÚtimeÚsleepÚ is_servingÚ RuntimeErrorÚ settimeoutÚconnectÚsendÚrecv_allÚclose)ÚsockÚaddrÚi)Ú HELLO_MSGÚsrvrrÚclients      z3BaseStartServer.test_start_server_1..clientc“s:| ¡IdHˆ ¡| d¡| ¡| ¡IdHdS©Nó1©ÚreadlineÚcancelÚwriterZ wait_closed©ÚreaderÚwriter©Ú main_taskrrÚserve%s  z2BaseStartServer.test_start_server_1..servec ÓsJ|4IdHš$| ¡IdHWdƒIdHqF1IdHs<0YdSr)Ú serve_forever©r#rrrÚmain,sz1BaseStartServer.test_start_server_1..mainrF©ÚloopÚ start_servingcs ˆ|ˆƒSrr©r©r r$rrÚ:óz5BaseStartServer.test_start_server_1..rú is closed)Ú assertWarnsÚDeprecationWarningr5Úrun_until_completerZ start_serverrZHOSTv4Ú assertFalserÚ create_taskÚsocketsÚ getsocknameÚ assertRaisesÚCancelledErrorZ tcp_clientÚ assertEqualÚ assertIsNoneÚ_socketsÚ_waitersÚassertRaisesRegexrr1)r r0r3r)r"r r$r/r#rÚtest_start_server_1s(    ÿ&J  z#BaseStartServer.test_start_server_1N)Ú__name__Ú __module__Ú __qualname__rrJrrrrr sr c@s"eZdZdd„Zejdd„ƒZdS)ÚSelectorStartServerTestscCst ¡Sr)rZSelectorEventLoopr rrrrIsz!SelectorStartServerTests.new_loopc s¢ddd‰t ¡‰‡‡fdd„‰‡fdd„}‡‡fdd „}t ¡F‰ˆ t¡,ˆj tj |ˆˆjd d ¡}Wdƒn1s„0Yˆj  ||ƒ¡‰ˆ  tj ¡Pˆ  ‡‡fd d „¡ˆj ˆ¡Wdƒn1sâ0YWdƒn1s0Yˆ |jd¡ˆ |j¡ˆ |j¡ˆ | ¡¡ˆ td¡ ˆj | ¡¡Wdƒn1st0YWdƒn1s”0YdS)Nrrrcs>| d¡ˆ d¡| |¡| ˆ¡| d¡| ¡dS)Nrrr)rÚwaitrrrr)rr )r"Ústartedrrr$Qs      zASelectorStartServerTests.test_start_unix_server_1..clientc“s:| ¡IdHˆ ¡| d¡| ¡| ¡IdHdSr%r'r+r.rrr0Ys  z@SelectorStartServerTests.test_start_unix_server_1..servec “s||4IdHšVˆ | ¡¡| ¡IdHˆ | ¡¡ˆ ¡| ¡IdHWdƒIdHqx1IdHsn0YdSr)r?rr6Z assertTrueÚsetr1r2)r rPrrr3`s z?SelectorStartServerTests.test_start_unix_server_1..mainFr4cs ˆ|ˆƒSrrr7r8rrr9pr:zCSelectorStartServerTests.test_start_unix_server_1..rr;)Ú threadingÚEventÚ test_utilsZunix_socket_pathr<r=r5r>rZstart_unix_serverr@rCrDZ unix_clientrErArFrGrHr?rrIrr1)r r0r3r#r)r"r r$r/r rPrÚtest_start_unix_server_1Ls(      ÿ&J  z1SelectorStartServerTests.test_start_unix_server_1N)rKrLrMrrZskip_unless_bind_unix_socketrUrrrrrNGsrNÚProactorEventLoopz Windows onlyc@seZdZdd„ZdS)ÚProactorStartServerTestscCst ¡Sr)rrVr rrrr€sz!ProactorStartServerTests.new_loopN)rKrLrMrrrrrrW}srWÚ__main__)rrrRZunittestZ test.supportrZtest.test_asynciorrTrZ func_testsr ZFunctionalTestCaseMixinr ZTestCaserNZ skipUnlessÚhasattrrWrKr3rrrrÚs   86