QG_;A2&SSKrSSKrSSKrSSKrSSKrSSKrSSKJr SSKJ r SSK J r \ "S5r \R"\"\S5S5"SS \R55r"S S \R5r\S :Xa\R&"5 gg) N)support)threading_helper) import_moduletermiosopenptyzneed os.openpty()c\rSrSrSrSrSrSrSrSr Sr S r S r S r S rS rSrSrSr\R("\R,S:HS5S5rSrSrSrSrSrg) TestFunctionsc`[R"5uUlUlUR [R UR5 UR [URSSS95UlUR [R"SSS95nUR5Ul g)Nwbr) buffering)moder ) osr master_fdfd addCleanupclose enterContextopenstreamtempfile TemporaryFilefilenobad_fd)selftmps 8/opt/alt/python313/lib64/python3.13/test/test_termios.pysetUpTestFunctions.setUpsu"$**, $..1''TWWda(HI  6 6DA NOjjl cUR[R5nU"U6 SSS5 URWRR SU5 g!,(df  N8=f)Nr) assertRaisesrerror assertEqual exceptionargs)rerrnocallabler&cms rassertRaisesTermiosError&TestFunctions.assertRaisesTermiosErrorsJ   w}} - dO. **1-u5. -s A A&c[RUR5nURU[5 UR [ U5S5 [S5HnURX[5 M Uup4pVpxn URU [5 UR [ U 5[R5 [U 5Hup*U[R-S:Xa@U[R:XdU[R:XaURU [5 M\URU [5 UR [ U 5S5 M UR [RUR5U5 g)Nr)r tcgetattrrassertIsInstancelistr$lenrangeintNCCS enumerateICANONVMINVTIMEbytesr) rattrsiiflagoflagcflaglflagispeedospeedccxs rtest_tcgetattrTestFunctions.test_tcgetattrs!!$''* eT* UQ'qA  ! !%(C 09>6eFB b$' R',,/bMDA'A-gll"a7==&8%%a-%%a/  Q+ " **4;;7?r cUR[R[RUR 5 UR [[RS5 UR [[RSS-5 UR [[R[55 UR [[R5 gN) r*r'ENOTTYrr0rr" ValueError OverflowError TypeErrorobjectrs rtest_tcgetattr_errors#TestFunctions.test_tcgetattr_errors/s %%ellG4E4Et{{S *g&7&7< -):):AtGD )W%6%6A )W%6%67r c[RUR5n[RUR[RU5 [RUR[R U5 [RUR[R U5 [RUR[RU5 gN)rr0r tcsetattrTCSANOW TCSADRAIN TCSAFLUSHr)rr<s rtest_tcsetattrTestFunctions.test_tcsetattr6s!!$''*$''7??E:$''7#4#4e<$''7#4#4e<$++w>r c  [RUR5nUR[[R UR[R [U55 UR[[R UR[R USS5 UR[[R UR[R US/-5 [S5HnUSSnSS-X2'UR[[R UR[R U5 [5X2'UR[[R UR[R U5 M UR[[R UR[R USSUSSS/-5 UR[[R UR[R USSUSS/-/-5 [[US55GH;nUSSnUSSSUS'SS-USU'UR[[R UR[R U5 [5USU'UR[[R UR[R U5 SUSU'UR[[R UR[R U5 SUSU'UR[[R UR[R U5 GM> UR[[R UR[R [55 UR[[R UR[R 5 UR[R[R URSU5 UR[[R URSS-U5 UR[[R UR[5U5 UR[R[R UR [R U5 UR["[R S[R U5 UR[[R SS-[R U5 UR[[R [5[R U5 UR[[R UR[R 5 g) NrJrr.rKrLr s)rr0rr"rPrWrXtupler4rOrQr3r*r'EINVALrMrrN)rr<r=attrs2s rtest_tcsetattr_errors#TestFunctions.test_tcsetattr_errors=s !!$''* )W%6%6RWX]R^_ )W%6%6RWX[Y[R\] )W%6%6RW[\Z]R]^qA1XF4FI   mW->->Z` aFI   i):):DGGW__V\ ]  )W%6%6RWX[Y[R\`efh`ijmkm`n_oRop )W%6%6RWX[Y[R\`efh`imrls`s_tRtus59~&A1XFAF2JtGF2JqM   mW->->Z` a"HF2JqM   i):):DGGW__V\ ]F2JqM   i):):DGGW__V\ ]#F2JqM   i):):DGGW__V\ ]' )W%6%6RXRZ[ )W%6%6Q %%ellG4E4EtwwPRTYZ -):):DGGQWeT )W%6%65Q %%ellG4E4Et{{T[TcTcejk *g&7&7W__eT -):):AtGW__V[\ )W%6%6'//SXY )W%6%6Qr cl[RURS5 [RURS5 g![Ra\nURS[ R :Xa5[RRS5(aURS5 eSnAff=f)Nr/r)freebsdnetbsdzQtermios.tcsendbreak() is not supported with pseudo-terminals (?) on this platform) r tcsendbreakrr#r&r'rMsysplatform startswithskipTestr)rexcs rtest_tcsendbreakTestFunctions.test_tcsendbreak`s     + DKK+ }} xx{ell*s||/F/FG\/]/] KL   s AB3AB..B3cUR[[RURSS-5 UR[ [RURS5 UR[ [RUR[ 55 UR[R[RURS5 UR[[RSS5 UR[[RSS-S5 UR[ [R[ 5S5 UR[ [RUR5 g)NrKrLgrrJ) r"rOrrgrrPrQr*r'rMrrNrRs rtest_tcsendbreak_errors%TestFunctions.test_tcsendbreak_errorsjs -)<)r cURnURn[RS;n[R "US5 UR [R"US5S5 U(a%[RU[R5 O$[RU[R5 UR [R"US5S5 U(a%[RU[R5 O$[RU[R5 [R "US5 UR [R"US5S5 g)N)linuxandroidsabcdefrKsabscdsABCDEF) rrrhrirwriter$readrrzr|r{)rwfdrfdinbufs r"test_tcflush_clear_input_or_output0TestFunctions.test_tcflush_clear_input_or_outputsggnn 44 i  a%0  OOC!1!1 2 OOC!1!1 2 a%0  OOC!1!1 2 OOC!1!1 2 i  d+Y7r ct[RUR[R5 [RUR[R5 [RUR[R 5 [RUR[R 5 grV)rtcflowrTCOOFFTCOONTCIOFFTCIONrRs r test_tcflowTestFunctions.test_tcflowsZtww/tww .tww/tww .r cUR[R[RUR S5 UR [[RUR SS-5 UR [[RUR [55 UR[R[RUR[R5 UR [[RS[R5 UR [[RSS-[R5 UR [[R[5[R5 UR [[RUR 5 grI)r*r'r`rrrr"rOrPrQrMrrrNrRs rtest_tcflow_errors TestFunctions.test_tcflow_errorss %%ellGNNDGGRP -!T'J )W^^TWWfhG %%ellGNNDKKQXQ^Q^_ *gnnb'--H -D'--P )W^^VXw}}M )W^^TWW=r rzonly works on Linuxc^^^^TRmTRn[R"5m[R"5mUUUU4Sjn[R "[R "US9/5 TR[R"US5S5 [RT[R5 TR5 TRTRS5S5 [RT[R 5 TR#TR[$R&5S5 TR[R"US5S 5 SSS5 g!TR5 f=f![RT[R 5 f=f!,(df  g=f) Nc>[R"TS5 TRTR[R 55 [R"TS5 TR 5 g)Nabcdef)rr assertTruewaitr SHORT_TIMEOUTset)rrwrite_finishedwrite_suspendedsrwriterCTestFunctions.test_tcflow_suspend_and_resume_output..writersH HHS& ! OOO001F1FG H HHS& !    r )targetrg?zoutput was not suspendedzoutput was not resumedrr)rr threadingEventr start_threadsThreadr$rrrrrr assertFalserrrrr)rrrrrrs` @@@r%test_tcflow_suspend_and_resume_output3TestFunctions.test_tcflow_suspend_and_resume_outputs>ggnn#//+"* ! !  + +Y-=-=V-L,M N   RWWS!_f 5 3*NN37#'')  !4!4S!9!;=sGMM2 OON//0E0EF4 6   RWWS$/ 8O N $'')sGMM2O Ns79(F9#$E;1F8A:F9;F  F&F66F99 Gcf[RUR5nURU[5 UR [ U5S5 URUS[5 URUS[5 UR [RUR5U5 g)NrKrr/) r tcgetwinsizerr1r_r$r3r5rrsizes rtest_tcgetwinsizeTestFunctions.test_tcgetwinsizes##DGG, dE* TA& d1gs+ d1gs+ --dkk:DAr cUR[R[RUR 5 UR [[RS5 UR [[RSS-5 UR [[R[55 UR [[R5 grI) r*r'rMrrrr"rNrOrPrQrRs rtest_tcgetwinsize_errors&TestFunctions.test_tcgetwinsize_errorss %%ellG4H4H$++V *g&:&:B? -)=)=q$wG )W%9%968D )W%9%9:r c[RUR5n[RURU5 [RUR[ U55 [RUR U5 grV)rrr tcsetwinsizer2rrs rtest_tcsetwinsizeTestFunctions.test_tcsetwinsizesV##DGG,TWWd+TWWd4j1T[[$/r c "[RUR5nUR[[R URUSS5 UR[[R URUS-5 UR[[R UR[ 55 UR[[R URUSSS-45 UR[[R URUS[US545 UR[[R URUS[ 545 UR[[R URSS-US45 UR[[R UR[US5US45 UR[[R UR[ 5US45 UR[R[R URU5 UR[[R SU5 UR[[R SS-U5 UR[[R [ 5U5 UR[[R UR5 g)NrJ)rrrKrLr/)rrrr"rPrrQrOfloatr*r'rMrrNrs rtest_tcsetwinsize_errors&TestFunctions.test_tcsetwinsize_errorss###DGG, )W%9%9477D"IN )W%9%9477D4KP )W%9%9477FHM -)=)=twwaRSUYRYHZ[ )W%9%9477T!WeTXYZT[nD]^ )W%9%9477T!WfhDWX -)=)=twwDRVWXRYHZ[ )W%9%9477U4PQ7^UYZ[U\D]^ )W%9%9477VXtTUwDWX %%ellG4H4H$++W[\ *g&:&:BE -)=)=q$wM )W%9%968TJ )W%9%9477Cr )rrrrN)__name__ __module__ __qualname____firstlineno__rr*rFrSr[rbrmrprtrwr~rrrrunittest skipUnlessrhrirrrrr__static_attributes__r rr r s#6 @$8?!RF,C%64 ?82/ >02GH9I96B;0 Dr r c \rSrSrSrSrSrg) TestModulecUR[R[5 UR[R[5 UR[R [5 UR[R [5 UR[R[5 UR[R[5 UR[R[5 UR[R[5 UR[R[5 UR[R[5 UR[R[5 UR[R[5 UR[R[5 UR[R [5 UR[R"[5 UR%[R[R"5 UR%[R [R"5 grV)r1rB0r5B38400rXrYrZr{r|r}rrrrr:r9r6 assertLessrRs rtest_constantsTestModule.test_constantssd gjj#. gnnc2 goos3 g//5 g//5 g..4 g..4 g//5 gnnc2 gmmS1 gnnc2 gmmS1 gmmS1 gllC0 gllC0  w||4  gll3r cUR[[R[55 UR [[R[ 55 grV)r issubclassrr# ExceptionrOSErrorrRs rtest_exceptionTestModule.test_exceptions2  7==)<= GMM7;rs )4  " WR+-@AhDH%%hDBhDV=""=2 z MMOr