
    0hh                        S SK r S SKrS SKrS SKrS SKrS SKrS SKJr  \R                  " SS9  \R                  " \R                  SS S:H  S5       " S S	\R                  5      5       rS
 r\S:X  a  \R                  " 5         gg)    N)supportT)module   winz can't easily test on this systemc                   &   \ rS rSr " S S5      r " S S5      rS r\R                  " \	R                  R                  S5      S5      S	 5       rS
 r\R                  " 5       S 5       r\R                  " \R"                  S5      S 5       rS rSrg)SelectTestCase   c                       \ rS rSrSrg)SelectTestCase.Nope    N)__name__
__module____qualname____firstlineno____static_attributes__r       9/opt/python-3.13.8/usr/lib/python3.13/test/test_select.pyNoper      s    r   r   c                       \ rS rSrS rSrg)SelectTestCase.Almost   c                     g)Nfilenor   selfs    r   r   SelectTestCase.Almost.fileno   s    r   r   Nr   r   r   r   r   r   r   r   r   Almostr      s    	r   r   c                    U R                  [        [        R                  SSS5        U R                  [        [        R                  U R                  5       // / 5        U R                  [        [        R                  U R	                  5       // / 5        U R                  [        [        R                  / / / S5        U R                  [
        [        R                  / / / S5        g )N      r   znot a number)assertRaises	TypeErrorselectr   r   
ValueErrorr   s    r   test_error_conditions$SelectTestCase.test_error_conditions   s    )V]]Aq!<)V]]TYY[M2rJ)V]]T[[]ORL)V]]BBO*fmmRRDr   freebsdz*skip because of a FreeBSD bug: kern/155606c                 r   [        [        S5       nUR                  5       nUR                  5          [        R                  " U// / S5        U R                  S5        S S S 5        g ! [         a4  nU R                  UR                  [        R                  5         S nANBS nAff = f! , (       d  f       g = f)Nrbr   zexception not raised)
open__file__r   closer&   failOSErrorassertEqualerrnoEBADF)r   fpfderrs       r   
test_errnoSelectTestCase.test_errno   s     (D!RBHHJ2rdBA. 		01 "!
  9  EKK889 "!s4   !B(A'B('
B%1*B B( B%%B((
B6c                     [         R                   " / / / S5      u  pnU R                  X5        U R                  X5        U R                  X#5        g )Nr!   )r&   assertIsNot)r   rwxs       r   test_returned_list_identity*SelectTestCase.test_returned_list_identity+   sD    --BA.ar   c                    [         R                  " S5      n[        R                  SSU/n[        R
                  " U[        R                  S9 nUR                  nS H  n[        R                  (       a  [        SU 35        [        R                  " U// / U5      u  pgnU R                  U/ 5        U R                  U/ 5        U(       d  Mp  Xd/:X  ad  UR                  5       n	[        R                  (       a  [        [        U	5      5        U	(       d"  [        R                  (       a  [        S5          OM  U R                  SXgU5        M     S S S 5        g ! , (       d  f       g = f)	Nz
            import time
            for i in range(10):
                print("testing...", flush=True)
                time.sleep(0.050)
        z-Iz-c)stdout)r   r!   r"            NNNNNNNNNNz
timeout = EOFz'Unexpected return values from select():)textwrapdedentsys
executable
subprocessPopenPIPErB   r   verboseprintr&   r2   readlinereprr0   )
r   codecmdprocpipetimeoutrfdwfdxfdlines
             r   test_selectSelectTestCase.test_select2   s       ~~tT40c*//:d;;D;??Jwi01 &tfb"g F#  b)  b)&===?Dd4j)"??!%L		CC)# < ;::s   D E
E%z-Emscripten cannot select a fd multiple times.c                    ^ / m " U4S jS5      nU" 5       /S-  TS S & U R                  [        R                  " / T/ 5      / TS S / 45        g )Nc                   "   > \ rS rSrU 4S jrSrg)-SelectTestCase.test_select_mutated.<locals>.FW   c                 F   > TS	 [         R                  R                  5       $ )Nr#   )rI   
__stdout__r   )r   as    r   r   4SelectTestCase.test_select_mutated.<locals>.F.filenoX   s    bE~~,,..r   r   Nr   )rc   s   r   Fr_   W   s    / /r   re   
      )r2   r&   )r   re   rc   s     @r   test_select_mutated"SelectTestCase.test_select_mutatedR   sP     	/ 	/ urz!r1b1B"1r?Cr   c                     [         R                  " U [        [        R                  " 5       5      5        [        [        S5      (       a4  [         R                  " U [        [        R                  " 5       5      5        g g )Ndevpoll)r   check_disallow_instantiationtyper&   pollhasattrrk   r   s    r   test_disallow_instantiation*SelectTestCase.test_disallow_instantiation^   sK    ,,T43FG69%%00tFNN<L7MN &r   r   N)r   r   r   r   r   r   r(   unittestskipIfrI   platform
startswithr8   r?   r   requires_forkr[   is_emscriptenrh   rp   r   r   r   r   r   r      s      E __S\\,,Y7AC	2C	2 ) )> __NDDOr   r   c                  .    [         R                  " 5         g )N)r   reap_childrenr   r   r   tearDownModulerz   d   s    r   __main__)r3   r&   rK   rI   rG   rr   testr   requires_working_socketrs   rt   TestCaser   rz   r   mainr   r   r   <module>r      s       
      t ,	#,,r"E)35UOX&& UO5UOn zMMO r   