+
    Bi                         ^ RI t ^ RIt^ RIt^ RIHt ^ RIHtHt ]P                  ! RR7       Rt
 ! R R4      t ! R	 R
]P                  4      t]R8X  d   ]P                  ! 4        R# R# )    N)threading_helper)patchThreadingMockT)moduleg?c                   ,   a  ] tR t^t o R tR tRtV tR# )	Somethingc                    R # N selfs   &D/usr/lib/python3.14/test/test_unittest/testmock/testthreadingmock.pymethod_1Something.method_1           c                    R # r
   r   r   s   &r   method_2Something.method_2   r   r   r   N)__name__
__module____qualname____firstlineno__r   r   __static_attributes____classdictcell____classdict__s   @r   r   r      s      r   r   c                      a  ] tR t^t o R tR tR tR^ /R ltR tR t	R t
R	 tR
 tR tR tR tR tR tR tR tR tR tR tR tR tR tR tR tRtV tR# )TestThreadingMockc               `    \         P                  ! VP                  R 4      4       V! V/ VB  R# delayN)timesleeppop)r   funcargskwargss   ""*,r   _call_after_delay#TestThreadingMock._call_after_delay   s$    

6::g&'dfr   c                P    \         P                  P                  ^R7      V n        R# )   )max_workersN)
concurrentfuturesThreadPoolExecutor	_executorr   s   &r   setUpTestThreadingMock.setUp   s    #++>>1>Mr   c                :    V P                   P                  4        R # r
   )r1   shutdownr   s   &r   tearDownTestThreadingMock.tearDown   s    !r   r"   c              d    V P                   P                  ! V P                  V.VO5/ VBR V/B  R# r!   )r1   submitr)   )r   r&   r"   r'   r(   s   ""$*,r   	run_asyncTestThreadingMock.run_async!   s7    ""D	
+/	
39	
AF	
r   c                    \        V/ VB # r
   )r   )r   r'   r(   s   &*,r   
_make_mockTestThreadingMock._make_mock&   s    d-f--r   c           	        V P                  \        R 7      p\        \         R2V4      ;_uu_ 4       pV! 4       pV P	                  VP
                  \        4       V P	                  VP                  4       P                  4       \        4       V P                  \        4      ;_uu_ 4        VP                   RRR4       RRR4       R#   + '       g   i     L; i  + '       g   i     R# ; ispec
.SomethingN)r=   r   r   r   assertIsInstancer   r   r   assertRaisesAttributeErrortest)r   waitable_mockm	somethings   &   r   	test_specTestThreadingMock.test_spec)   s    Y7hZz*M::aI!!)"4"4mD!!)"4"4"6"?"?"A=Q"">22 3 ;: 32 ;::s$   A7C)C	6CCCC,	c                   V P                  4       p\        \         R 2V4      ;_uu_ 4        \        4       p^.VP                  n        V P                  VP	                  4       ^4       RRR4       R#   + '       g   i     R# ; irC   N)r=   r   r   r   r   side_effectassertEqualr   rH   rJ   s   &  r   test_side_effect"TestThreadingMock.test_side_effect5   sa    )hZz*M::!I./SI*Y//115	 ;:::s   =A33B	c                N   V P                  4       p\        \         R 2V4      ;_uu_ 4        \        4       pV P	                  VP
                  \        4       V P	                  VP                  4       P                  4       \        4       RRR4       R#   + '       g   i     R# ; irN   )r=   r   r   r   rD   r   r   r   rQ   s   &  r   test_instance_check%TestThreadingMock.test_instance_check>   sp    )hZz*M::!I!!)"4"4mD!!)"4"4"6"?"?"A=Q	 ;:::s   ABB$	c                f    V P                  4       pV P                  VP                  \        4       R # r
   )r=   rD   childr   r   rH   s   & r   ,test_dynamic_child_mocks_are_threading_mocks>TestThreadingMock.test_dynamic_child_mocks_are_threading_mocksG   s$    )m11=Ar   c                ~   V P                  4       pV P                  VP                  R 4       V P                  ^R7      pV P                  VP                  ^4       V P                  ^R7      pV P                  VP                  ^4       V P                  VP                  P                  R 4       V P                  VP                  P                  ^4       V P                  VP                  P                  ^4       V P                  VP                  4       P                  4       P                  P                  ^4       R # )Ntimeout)r=   assertIs_mock_wait_timeoutrP   rX   really__mul__complex)r   mock1mock2mock3s   &   r   (test_dynamic_child_mocks_inherit_timeout:TestThreadingMock.test_dynamic_child_mocks_inherit_timeoutK   s    !e..5*1115*1115ekk44d;77;77;//199LLaPr   c                    V P                  4       pR Vn        R Vn        RVn        V! R4       VP	                  4        VP                  R4       R# )myevent	mytimeoutworksN)r=   _eventeventr^   wait_until_calledwait_until_any_call_withrY   s   & r   test_no_name_clash$TestThreadingMock.test_no_name_clashY   sH    )(' +g'')..w7r   c                
   V P                  \        R 7      p\        \         R2V4      ;_uu_ 4        \        4       pVP	                  4        VP                  P                  4        RRR4       R#   + '       g   i     R# ; ir@   )r=   r   r   r   r   ro   rQ   s   &  r   
test_patchTestThreadingMock.test_patchb   sZ    Y7hZz*M::!I 002 ;:::s   5A11B	c                    V P                  \        R 7      pVP                  4        VP                  P                  4        VP                  P	                  4        VP                  P                  4        R# )rA   N)r=   r   r   ro   rp   assert_calledrY   s   & r    test_wait_already_called_success2TestThreadingMock.test_wait_already_called_successj   sT    Y7 002779,,.r   c                    V P                  \        R 7      pV P                  VP                  \        R7       VP                  P                  4        R# )rA   r"   N)r=   r   r:   r   VERY_SHORT_TIMEOUTro   rY   s   & r   test_wait_until_called_success0TestThreadingMock.test_wait_until_called_successq   s;    Y7}--5GH002r   c                    V P                  \        R 7      pV P                  \        4      ;_uu_ 4        VP                  P                  \        R7       RRR4       R#   + '       g   i     R# ; i)rA   r]   N)r=   r   rE   AssertionErrorr   ro   r|   rY   s   & r   %test_wait_until_called_method_timeout7TestThreadingMock.test_wait_until_called_method_timeoutv   sJ    Y7~..""44=O4P /...s   !AA0	c                    V P                  \        \        R 7      pV P                  \        4      ;_uu_ 4        VP
                  P                  4        RRR4       R#   + '       g   i     R# ; i))rB   r^   N)r=   r   r|   rE   r   r   ro   rY   s   & r   'test_wait_until_called_instance_timeout9TestThreadingMock.test_wait_until_called_instance_timeout{   sG    Y@RS~..""446 /...s   AA/	c           	     v   \         P                  ! \        R 4      ;_uu_ 4        \        \        n        V P                  \        R7      pV P                  \        4      ;_uu_ 4        VP                  P                  4        RRR4       RRR4       R#   + '       g   i     L; i  + '       g   i     R# ; i)DEFAULT_TIMEOUTrA   N)r   objectr   r|   r   r=   r   rE   r   r   ro   rY   s   & r   %test_wait_until_called_global_timeout7TestThreadingMock.test_wait_until_called_global_timeout   sq    \\-):;;,>M) OOO;M"">22&&88: 3 <; 32 <;;s$   AB''B	B'B$B''B8	c                t    V P                  4       pV P                  V\        R 7       VP                  4        R# )r{   N)r=   r:   r|   rp   rY   s   & r   %test_wait_until_any_call_with_success7TestThreadingMock.test_wait_until_any_call_with_success   s+    )},>?..0r   c                    V P                  \        R 7      pV P                  \        4      ;_uu_ 4        VP	                  4        RRR4       R#   + '       g   i     R# ; ir]   N)r=   r|   rE   r   rp   rY   s   & r   .test_wait_until_any_call_with_instance_timeout@TestThreadingMock.test_wait_until_any_call_with_instance_timeout   s?    0BC~..224 /...s   AA 	c           	     V   \         P                  ! \        R 4      ;_uu_ 4        \        \        n        V P                  4       pV P                  \        4      ;_uu_ 4        VP                  4        RRR4       RRR4       R#   + '       g   i     L; i  + '       g   i     R# ; i)r   N)	r   r   r   r|   r   r=   rE   r   rp   rY   s   & r   'test_wait_until_any_call_global_timeout9TestThreadingMock.test_wait_until_any_call_global_timeout   sg    \\-):;;,>M) OO-M"">22668 3 <; 32 <;;s#   =B!B	2BBBB(	c                   V P                  \        R 7      pVP                  ^^^4       VP                  P                  ^^^4       V P	                  \
        4      ;_uu_ 4        VP                  P                  ^^^4       RRR4       V P	                  \
        4      ;_uu_ 4        VP                  P                  4        RRR4       R#   + '       g   i     LR; i  + '       g   i     R# ; ir   r=   r|   r   rp   rE   r   rY   s   & r   #test_wait_until_any_call_positional5TestThreadingMock.test_wait_until_any_call_positional   s    0BCq!Q'771a@~.."";;Aq!D /~.."";;= /. /....   $C'CC	C0	c                   V P                  \        R 7      pVP                  ^^R7       VP                  P                  ^^R7       V P	                  \
        4      ;_uu_ 4        VP                  P                  ^^R7       RRR4       V P	                  \
        4      ;_uu_ 4        VP                  P                  4        RRR4       R#   + '       g   i     LR; i  + '       g   i     R# ; i)r]   )abNr   rY   s   & r   test_wait_until_any_call_kw-TestThreadingMock.test_wait_until_any_call_kw   s    0BCa(77!q7A~.."";;a1;E /~.."";;= /. /....r   c                    V P                  4       p\        V4       VP                  P                  4        VP                  P	                  4        R # r
   )r=   str__str__ro   rw   rY   s   & r   test_magic_methods_success,TestThreadingMock.test_magic_methods_success   s:    )M//1++-r   c                z   V P                  \        R 7      pV P                  \        4      ;_uu_ 4        VP	                  4        RRR4       V P                  \        4      ;_uu_ 4        VP                  4        RRR4       V! 4        VP	                  4        VP                  4        VP                  4        VP                  4        V P                  \        4      ;_uu_ 4        VP	                  4        RRR4       V P                  \        4      ;_uu_ 4        VP                  4        RRR4       V! 4        VP	                  4        VP                  4        VP                  4        R#   + '       g   i     EL3; i  + '       g   i     EL; i  + '       g   i     L; i  + '       g   i     L; ir   )r=   r|   rE   r   ro   rp   assert_called_once
reset_mock)r   rI   s   & r   test_reset_mock_resets_wait-TestThreadingMock.test_reset_mock_resets_wait   s   OO$6O7~..! /~..&&( /			""$		~..! /~..&&( /			""$	% /..... /...s/   E/*F'FF*/F 	F	F'	*F:	)r1   N)r   r   r   r   r)   r2   r6   r:   r=   rK   rR   rU   rZ   rg   rq   rt   rx   r}   r   r   r   r   r   r   r   r   r   r   r   r   r   s   @r   r   r      s     N"
a 

.
6RBQ83/3
Q
7
;1
5
9>>. r   r   __main__)r#   unittestconcurrent.futuresr.   test.supportr   unittest.mockr   r   requires_working_threadingr|   r   TestCaser   r   mainr   r   r   <module>r      sa       ) .  + +4 8  o)) od zMMO r   