+
    Bi                         ^ RI t ^ RIt^ RIt^ RIt^ RIt^ RIHt ^ RIHt ]P                  t
 ! R R4      t ! R R]P                  4      t]R8X  d   ]P                  ! 4        R# R# )	    N)support)threading_helperc                   8   a  ] tR t^t o R tR tR tR tRtV t	R# )Timerc                V    \         P                  ! 4       V n        ^ V n        ^ V n        R# )r   N)	threading	Condition_cond_time_stopselfs   &&/usr/lib/python3.14/test/test_sched.py__init__Timer.__init__   s     ((*


    c                    V P                   ;_uu_ 4        V P                  uuR R R 4       #   + '       g   i     R # ; iN)r
   r   r   s   &r   time
Timer.time   s    ZZZ:: ZZZs   ,=	c                   V P                   ;_uu_ 4        WP                  ,          pV P                  V8  d.   V P                  V n        V P                   P                  4        K>  Wn        R R R 4       R #   + '       g   i     R # ; ir   )r
   r   r   waitr   ts   &&r   sleepTimer.sleep   sK    ZZZOA**q.!ZZ


!J ZZZs   AA66B	c                    V P                   ;_uu_ 4        V ;P                  V,          un        V P                   P                  4        R R R 4       R #   + '       g   i     R # ; ir   )r
   r   
notify_allr   s   &&r   advanceTimer.advance"   s4    ZZZJJ!OJJJ!!# ZZZs   4AA$	)r
   r   r   N)
__name__
__module____qualname____firstlineno__r   r   r   r   __static_attributes____classdictcell____classdict__s   @r   r   r      s     

$ $r   r   c                      a  ] tR t^)t o R tR t]P                  ! 4       R 4       tR t	R t
]P                  ! 4       R 4       tR tR tR	 tR
 tR tRtV tR# )TestCasec                   a . oV3R  lp\         P                  ! \        P                  \        P                  4      pR F  pVP	                  V^W34      pK  	  VP                  4        V P                  S. RO4       R# )c                 &   < SP                  V 4      # r   appendxls   &r   <lambda>%TestCase.test_enter.<locals>.<lambda>-       r   N)      ?皙?333333?皙?皙?)r9   r8   r7   r6   r5   sched	schedulerr   r   enterrunassertEqualr   funr<   r0   zr1   s   &    @r   
test_enterTestCase.test_enter+   s]    #OODIItzz:	*A1c40A +56r   c                   a . oV3R  lp\         P                  ! \        P                  \        P                  4      pR F  pVP	                  V^W34      pK  	  VP                  4        V P                  S. RO4       R# )c                 &   < SP                  V 4      # r   r-   r/   s   &r   r2   (TestCase.test_enterabs.<locals>.<lambda>6   r4   r   N皙?{Gz?Q?{Gz?{Gz?)rM   rL   rK   rJ   rI   )r;   r<   r   r   enterabsr>   r?   r@   s   &    @r   test_enterabsTestCase.test_enterabs4   s_    #OODIItzz:	/A""1ad3A 0:;r   c                t   \         P                  ! 4       pVP                  p\        4       p\        P
                  ! VP                  VP                  4      pVP                  ^^VR4       VP                  ^^VR4       \        P                  ! VP                  R7      pVP                  4        VP                  ^4       V P                  VP                  \         R7      ^4       V P#                  VP%                  4       4       R F  pVP                  V^,
          ^W&34      pK   	  VP                  ^4       V P                  VP                  \         R7      ^4       V P                  VP                  \         R7      ^4       V P#                  VP%                  4       4       VP                  ^4       V P                  VP                  \         R7      ^4       V P#                  VP%                  4       4       VP                  ^4       V P                  VP                  \         R7      ^4       V P#                  VP%                  4       4       VP                  R4       \&        P(                  ! V4       V P#                  VP%                  4       4       V P                  VP                  4       ^4       R# )   targettimeout  NrR      )         )queueQueueputr   r;   r<   r   r   r=   r   Threadr>   startr   r?   getTIMEOUT
assertTrueemptyr   join_thread)r   qrA   timerr<   r   r0   rB   s   &       r   test_enter_concurrentTestCase.test_enter_concurrent=   s   KKMeeOOEJJ<	1c4(1c4(IMM2		aw/3	"AAq#t4A aw/3w/3	"aw/3	"aw/3	"d$$Q'	"q)r   c           
       a . oV3R  lp\         P                  ! \        P                  \        P                  4      p. RO. RO3. RO. RO3. RO. RO3. RO. RO3.pV F  w  rEV P	                  WER7      ;_uu_ 4        V F  pVP                  RWaV34       K  	  VP                  4        V P                  SV4       V P                  VP                  4       4       SP                  4        RRR4       K  	  R#   + '       g   i     K  ; i)	c                 &   < SP                  V 4      # r   r-   r/   s   &r   r2   (TestCase.test_priority.<locals>.<lambda>]   r4   r   )
prioritiesexpectedrM   N)rR   r]   rZ   r[   r\   )r\   r[   rZ   r]   rR   )r]   r\   rZ   rR   r[   )rR   r]   rZ   r]   rR   )rR   rR   r]   r]   rZ   )r;   r<   r   r   subTestrN   r>   r?   re   rf   clear)r   rA   r<   casesro   rp   priorityr1   s   &      @r   test_priorityTestCase.test_priority[   s    #OODIItzz:	 o.o.o.o.	
 %* JGG *H&&tXXKH !+  H- 	 12	 HG %*GGGs   <A/C99D
c                B  a	 . o	V	3R  lp\         P                  ! \        P                  \        P                  4      p\        P                  ! 4       pVP	                  VR,           ^VR4      pVP	                  VR,           ^VR4      pVP	                  VR,           ^VR	4      pVP	                  VR,           ^VR
4      pVP	                  VR,           ^VR4      pVP                  V4       VP                  V4       VP                  4        V P                  S	. RO4       R# )c                 &   < SP                  V 4      # r   r-   r/   s   &r   r2   &TestCase.test_cancel.<locals>.<lambda>s   r4   r   rM   rL   rK   rJ   rI   N)rM   )rL   )rK   )rJ   )rI   )rL   rK   rJ   )r;   r<   r   r   rN   cancelr>   r?   )
r   rA   r<   nowevent1event2event3event4event5r1   s
   &        @r   test_cancelTestCase.test_cancelq   s    #OODIItzz:	iik##C$J3@##C$J3@##C$J3@##C$J3@##C$J3@  ./r   c                   \         P                  ! 4       pVP                  p\        4       p\        P
                  ! VP                  VP                  4      pVP                  4       pVP                  V^,           ^VR4      pVP                  V^,           ^VR4      pVP                  V^,           ^VR4      pVP                  V^,           ^VR4      p	VP                  V^,           ^VR	4      p
\        P                  ! VP                  R7      pVP                  4        VP                  ^4       V P                  VP                  \         R7      ^4       V P#                  VP%                  4       4       VP'                  V4       VP'                  V	4       VP                  ^4       V P#                  VP%                  4       4       VP                  ^4       V P                  VP                  \         R7      ^4       V P#                  VP%                  4       4       VP                  ^4       V P                  VP                  \         R7      ^4       V P#                  VP%                  4       4       VP                  R4       \(        P*                  ! V4       V P#                  VP%                  4       4       V P                  VP                  4       ^4       R# )
rR   rS   rU   rW   NrX   )r]   )r[   )r\   rY   )r^   r_   r`   r   r;   r<   r   r   rN   r   ra   r>   rb   r   r?   rc   rd   re   rf   rz   r   rg   )r   rh   rA   ri   r<   r{   r|   r}   r   r   r~   r   s   &           r   test_cancel_concurrentTestCase.test_cancel_concurrent   s   KKMeeOOEJJ<	jjl##C!GQT:##C!GQT:##C!GQT:##C!GQT:##C!GQT:IMM2		aw/3	"  a	"aw/3	"aw/3	"d$$Q'	"q)r   c                R   . p\         P                  ! 4       pVP                  ^^VP                  R4       VP                  ^^VP                  R4      pVP                  ^^VP                  R4       VP	                  V4       VP                  4        V P                  VRR.4       R# )rR   acN)r   )b)r   )r;   r<   rN   r.   rz   r>   r?   )r   eventsr<   r   s   &   r   test_cancel_correct_event"TestCase.test_cancel_correct_event   s    OO%	1a7q!V]]F;1a7#s,r   c                  a . oV3R  lp\         P                  ! \        P                  \        P                  4      pV P	                  VP                  4       4       R F  pVP                  V^W34      pK  	  V P                  VP                  4       4       VP                  4        V P	                  VP                  4       4       R# )c                 &   < SP                  V 4      # r   r-   r/   s   &r   r2   %TestCase.test_empty.<locals>.<lambda>   r4   r   NrH   )	r;   r<   r   r   re   rf   rN   assertFalser>   r@   s   &    @r   
test_emptyTestCase.test_empty   s    #OODIItzz:		)*/A""1ad3A 0*+	)*r   c                  a	 . o	V	3R  lp\         P                  ! \        P                  \        P                  4      p\        P                  ! 4       pVP	                  VR,           ^V4      pVP	                  VR,           ^V4      pVP	                  VR,           ^V4      pVP	                  VR,           ^V4      pVP	                  VR,           ^V4      pV P                  VP                  WVWV.4       R# )c                 &   < SP                  V 4      # r   r-   r/   s   &r   r2   %TestCase.test_queue.<locals>.<lambda>   r4   r   rI   rM   rL   rJ   rK   N)r;   r<   r   r   rN   r?   r^   )
r   rA   r<   r{   e5e1e2e4e3r1   s
   &        @r   
test_queueTestCase.test_queue   s    #OODIItzz:	iikd
As3d
As3d
As3d
As3d
As3 	222*>?r   c           	       a . oV3R  lp\         P                   ! 4       p\        P                  ! \         P                   \         P                  4      pVP	                  V^V4       VP	                  V^VRR7       VP	                  V^VRR7       VP	                  V^VRR^/R7       VP                  4        V P                  SR/ 3R/ 3R/ 3RR^/3.4       R# )c                  ,   < SP                  W34       R # r   r-   )r   r   seqs   *,r   rA   &TestCase.test_args_kwargs.<locals>.fun   s    JJvr   )argumentfoo)r   kwargsN)rR   r]   )r   r    )r   r;   r<   r   rN   r>   assertCountEqual)r   rA   r{   r<   r   s   &   @r   test_args_kwargsTestCase.test_args_kwargs   s    	 iikOODIItzz:	33'33833<33
KcHRLeQZ 	$
 	r   c                   a . oV3R  lp\         P                  ! \        P                  \        P                  4      pR F  pVP	                  V^W34       K  	  VP                  RR7       V P                  S. 4       R# )c                 &   < SP                  V 4      # r   r-   r/   s   &r   r2   0TestCase.test_run_non_blocking.<locals>.<lambda>   r4   r   F)blockingN)
   	            r:   )r   rA   r<   r0   r1   s   &   @r   test_run_non_blockingTestCase.test_run_non_blocking   s_    #OODIItzz:	!AOOAq#t, "u%Br   r   N)r!   r"   r#   r$   rC   rO   r   requires_working_threadingrj   ru   r   r   r   r   r   r   r   r%   r&   r'   s   @r   r*   r*   )   sr     7< 002* 3*:,0 002* 3*>	-	+@&   r   r*   __main__)r^   r;   r   r   unittesttestr   test.supportr   SHORT_TIMEOUTrd   r   r*   r!   mainr   r   r   <module>r      s^          ) 

$ $8u x   u p zMMO r   