+
     BiU+                         ^ RI t ^ RIHtHt ^ RIHt ^ RIHtHt ^ RI	t	^ RI
t
^ RIHt ^ RIHt ^ RIHt ^ RIHt  ! R R4      t ! R	 R
] P,                  4      t]R8X  d   ] P2                  ! ^R7       R# R# )    N)Mockpatch)requires)TkText)Func)Eventc                   &   a  ] tR t^t o R tRtV tR# )DummyEditwinc                H    Wn         W n        ^V n        ^V n        RV n        R# )   z>>>N)roottextindentwidthtabwidthprompt_last_line)selfr   r   s   &&&:/usr/lib/python3.14/idlelib/idle_test/test_autocomplete.py__init__DummyEditwin.__init__   s#    		 %    )r   r   r   r   r   N)__name__
__module____qualname____firstlineno__r   __static_attributes____classdictcell____classdict__s   @r   r   r      s     & &r   r   c                      a  ] tR t^t o ]R 4       t]R 4       tR tR tR t	R t
R tR tR	 tR
 tR tR tR t ! R R4      tR tR tR tR tRtV tR# )AutoCompleteTestc                    \        R 4       \        4       V n        V P                  P                  4        \	        V P                  4      V n        \        V P                  V P
                  4      V n        R# )guiN)r   r   r   withdrawr   r   r   editorclss   &r   
setUpClassAutoCompleteTest.setUpClass   sG    4>!#((CHH5
r   c                z    V = V =V P                  P                  4        V P                  P	                  4        V =R # N)r%   r   r   update_idletasksdestroyr&   s   &r   tearDownClassAutoCompleteTest.tearDownClass#   s0    J!!#Hr   c                    V P                   P                  R R4       \        P                  ! V P                  4      V n        R# )1.0endN)r   deleteacAutoCompleter%   autocompleter   s   &r   setUpAutoCompleteTest.setUp*   s+    		&OODKK8r   c                    V P                  V P                  P                  V P                  4       V P                  V P                  P                  V P                  4       R # r+   )assertEqualr6   editwinr%   r   r7   s   &r   	test_initAutoCompleteTest.test_init.   sB    **22DKK@**//;r   c                z    V P                   P                  4       pV P                  V\        P                  4       R # r+   )r6   _make_autocomplete_windowassertIsInstanceacwAutoCompleteWindow)r   testwins   & r   test_make_autocomplete_window.AutoCompleteTest.test_make_autocomplete_window2   s,    ##==?gs'='=>r   c                    V P                   p\        4       ;Vn        pVP                  4        VP                  P                  4        V P                  VP                  4       R # r+   )r6   r   autocompletewindow_remove_autocomplete_windowhide_windowassert_called_onceassertIsNone)r   acpms   &  r   test_remove_autocomplete_window0AutoCompleteTest.test_remove_autocomplete_window6   sL    %)V+'')	((*#001r   c                    V P                   p\        4       pW!n        V P                  VP	                  R 4      R4       V P                  VP
                  ^ ,          \        P                  4       R# )eventbreakN)r6   r   open_completionsr;   force_open_completions_eventargsr4   FORCE)r   rM   open_cs   &  r   !test_force_open_completions_event2AutoCompleteTest.test_force_open_completions_event=   sQ    %99'BGLQ2r   c                b   V P                   pV P                  p\        R R7      pV P                  VP	                  V4      4       V=V P                  P                  RR4       V P                  VP	                  V4      4       V P                  P                  RR4       V P                  P                  RR4       \        4       ;Vn
        p\        R R7      Vn        V! VP	                  V4      R4       VP                  P                  4        RVn
        \        R	R
7      pWRn        V! VP	                  V4      R4       V! VP                   ^ ,          \"        P$                  4       R Vn        V! VP	                  V4      R4       V! VP                   ^ ,          \"        P$                  4       R# )T)mc_stater1   z        """Docstring.
    r2   zre.)return_valuerS   NFresult)r;   r6   r	   rL   autocomplete_eventr\   r   insertr3   r   rH   	is_activecompleterK   r   rT   rV   r4   TABr_   )r   EqualrM   evmockrX   s   &     r   test_autocomplete_event(AutoCompleteTest.test_autocomplete_eventE   sS      D!#0045K 			 =>#0045		& 			&(,.40c$$R('2((*!% U#%c$$R($/fkk!nbff%c$$R('2fkk!nbff%r   c                   V P                   pV P                  pV P                  pVP                  p\	        R R7      pWSP                  n        V! 4        V! VP                  ^ 4       VP                  RR4       V! 4        V! VP                  ^ 4       VP                  RR4       RVn        V! 4        V! VP                  VP                  R4      4       V! VP                  VP                  VP                  \        P                  34       VP                  pV! VR 4       VP                  RR4       RVn        \	        4       pWsP                  n        V! 4        V! VP                  VP                  R4      4       V! VP                  V34       V! VP                  VP                  VP                  \        P$                  34       V! VP                  R4       R# )	after1r^   r1   rera   z re.Nz "./Lib/after2)r;   r   r6   try_open_completions_eventr   aftercalledra   _delayed_completion_id_delayed_completion_indexindexrV   	popupwait_delayed_open_completionsr4   TRY_Ar_   after_cancelTRY_F)r   re   r   rM   trycompletionsro   cb1cancels   &       r   test_try_open_completions_event0AutoCompleteTest.test_try_open_completions_eventd   sx     yy77H% 	ellAE4 ellA 	Hf%%)"c++TZZ-ABejj}}c;;RXXF	H((c8 	Hj) &c++TZZ-ABfkkC6"ejj}}c;;RXXF	Hc(((3r   c                J   V P                   pV P                  p\        4       pW2n        V P                  P                  R R4       RVn        V P                  P                  R4      Vn        VP                  R4       V P                  VP                  4       V! VP                  ^ 4       V P                  P                  R4      Vn        VP                  ^^^\        P                  34       V P                  VP                  ^ ,          ^^^\        P                  34       R# )r1   z"dict.ro   z	insert+1cdummyra   N)r;   r6   r   rT   r   ra   rq   rs   rr   ru   rL   rp   r4   FILESrV   )r   re   rM   rX   s   &   r   test_delayed_open_completions.AutoCompleteTest.test_delayed_open_completions   s      %		) &-"(,		(D%%%g.#445fmmQ )-		(A%%%q!Q&9:Q!Q288)<=r   c                "   V P                   pV P                  pR Vn        \        R R7      pW2P                  n        V P                  P                  RR4       V! VP                  \        P                  4      4       V! VP                  4       R# )ro   r^         ?z	# commentN)
rL   r6   rq   r   r   rw   ra   rT   r4   rd   )r   nonerM   ro   s   &   r   test_oc_cancel_comment'AutoCompleteTest.test_oc_cancel_comment   so       &-"G$ %		k*S!!"&&)*S''(r   c                   V P                   p\        . . 3R 7      pW!n        V P                  P	                  RR4       V P                  VP                  \        P                  4      4       V P                  P	                  RR4       V P                  VP                  \        P                  4      4       V P                  VP                  ^4       R# )r^   r1   objectra   .N)r6   r   fetch_completionsr   ra   rL   rT   r4   rd   r;   rp   )r   rM   fetchs   &  r   test_oc_no_list AutoCompleteTest.test_oc_no_list   s    RG$ %		)#..rvv67		3'#..rvv67q)r   c                   V P                   pV P                  pV P                  P                  R R4       V! VP	                  \
        P                  4      4       V P                  P                  RR4       V! VP	                  \
        P                  4      4       V P                  P                  R R4       V P                  VP	                  \
        P                  4      4       V P                  P                  RR4       V P                  VP	                  \
        P                  4      4       V P                  P                  RR4       R# )r   r   ra   z int().r2   r1   "N)	rL   r6   r   ra   rT   r4   rd   r3   assertFalse)r   r   rM   s   &  r   test_open_completions_none+AutoCompleteTest.test_open_completions_none   s       			c"S!!"&&)*		9-S!!"&&)* 			e$--bff56		$--bff56		&r   c                   D    ] tR t^t]! 4       t]! RR7      t]! 4       tRtR# )AutoCompleteTest.dummy_acwFr^    N)	r   r   r   r   r   r   show_windowrJ   r   r   r   r   	dummy_acwr      s    6%(fr   r   c                ,  a  S P                   p\        R .R R.3R7      pW!n        V 3R lpW1n        S P                  P                  RR4       VP                  \        P                  4       S P                  VP                  S P                  4       S P                  P                  RR4       S P                  P                  RR4       S P                  VP                  \        P                  4      4       S P                  P                  RR4       R# )	tem_temr^   c                  $   < S P                  4       # r+   )r   r7   s   r   make_acw8AutoCompleteTest.test_open_completions.<locals>.make_acw   s    t~~//r   r1   zint.r2   z"tN)r6   r   r   r@   r   ra   rT   r4   rd   rA   rH   r   r3   
assertTrue)r   rM   r   r   s   f   r   test_open_completions&AutoCompleteTest.test_open_completions   s    eWeV_56 %/(0%		'RVV$c44dnnE		& 			%,,RVV45		&r   c                    V P                  R \        P                  4       V P                  R\        P                  4       V P                  R\        P                  4       R# )andcaseNoneN)assertInr4   completion_kwdsassertNotInr7   s   &r   test_completion_kwds%AutoCompleteTest.test_completion_kwds   s@    eR//0fb001!3!34r   c           
        V P                   pVP                  R \        P                  4      w  r#\	        \
        R4      '       d6   \
        P                  \        P                  8w  d   V P                  RV4       VP                  R \        P                  4      w  rEV P                  \        V4      \        V4      4       V P                  \        \        R V4      4      4       V P                  \        \        R V4      4      4       \        P                  ! RRRR./4      ;_uu_ 4        VP                  R \        P                  4      w  rEV P!                  VRR.4       V P#                  R	V4       V P#                  R
V4       V P#                  RV4       VP%                  R4      pV P'                  WV^,           ,          R4       RRR4       \)        4       p\)        4       Vn        \        P                  ! RRV/4      ;_uu_ 4        VP                  R\        P                  4      w  rEV P                  RV4       V P#                  RV4       T P!                  T\-        \/        V4      4       Uu. uF  qR,          R8w  g   K  VNK  	  up4       V P!                  V\-        \/        V4      4      4       RRR4       R p	\        P0                  ! \2        RV	4      ;_uu_ 4        VP                  R \        P4                  4      w  rEV P!                  VRR.4       V P!                  V. RO4       VP                  R\        P4                  4      w  rEV P!                  VRR.4       V P!                  V. RO4       RRR4       R#   + '       g   i     EL; iu upi   + '       g   i     L; i  + '       g   i     R# ; i) __file__r5   c                 $    V P                  R 4      # _
startswithxs   &r   <lambda>9AutoCompleteTest.test_fetch_completions.<locals>.<lambda>       Q\\#->r   c                 $    V P                  R 4      # r   r   r   s   &r   r   r      r   r   __main__.__dict____all__abr   sumnonlocalFalseNfoo_private:N   Nr   c                      V R 8X  d   . RO# . RO# )r   )r   bar.hidden)montypythonr   r   )paths   &r   _listdir9AutoCompleteTest.test_fetch_completions.<locals>._listdir	  s    s{0011r   listdirr   ~r   r   )r   r   r   )r   r   r   )r6   r   r4   ATTRShasattr__main__r   r   
assertLesslenr   allfilteranyr   dictr;   r   rs   assertNotEqualr   r   sorteddirr   osr   )
r   rM   smalllargesr   posrg   ir   s
   &         r   test_fetch_completions'AutoCompleteTest.test_fetch_completions   s    ,,BHH8Z((X->->"++-M^U3 $$R2E
CJ/F#>BCDF#>BCD ZZ+i#s-DEE((RXX6DAQc
+MM*a(MM%#MM*a('''"Ca%'2 F vZZ+eT];;((9DAZ+MM*a(QF3t9,= N,=q2#,= NOQs4y 12 <	2 \\"i22((RXX6DAQ/Q 9:((bhh7DAQ( 34Q >? 325 FEE  !O	 <; 322s?   -BNA)N!5N	N+N!)BN4N	N!!N1	4O	c           	        V P                   pV P                  pV! VP                  R 4      \        4       \	        4       p\
        P                  ! RRV/4      ;_uu_ 4        V! VP                  R4      V4       RRR4       R^
R^/p\
        P                  ! RRV/4      ;_uu_ 4        V! VP                  R4      V4       RRR4       \
        P                  ! R/ 4      ;_uu_ 4        V P                  \        4      ;_uu_ 4        VP                  R4       RRR4       RRR4       R#   + '       g   i     L; i  + '       g   i     L; i  + '       g   i     L@; i  + '       g   i     R# ; i)	intzsys.modulestempfileNr   r   r   d	not_exist)	r6   r;   
get_entityr   r   r   r   assertRaises	NameError)r   rM   re   rg   dis   &    r   test_get_entity AutoCompleteTest.test_get_entity  s      cnnU#S) vZZ
D'9::#..,d3 ; R#ZZ+c2Y77#..%r* 8 ZZ+R00""9--{+ . 10 ;:
 87
 .- 100s<    D*(D=(E#E	E#*D:	=E	E E##E4	)r6   N)r   r   r   r   classmethodr(   r.   r8   r=   rE   rO   rY   rh   r|   r   r   r   r   r   r   r   r   r   r   r   r   s   @r   r!   r!      s     6 6  9<?23&>#4J>(
)*'$ 
'$5
4@l, ,r   r!   r   )	verbosity)unittestunittest.mockr   r   test.supportr   tkinterr   r   r   r   idlelib.autocompleter6   r4   idlelib.autocomplete_wautocomplete_wrB   idlelib.idle_test.mock_idler   idlelib.idle_test.mock_tkr	   r   TestCaser!   r   mainr   r   r   <module>r      s_     % !  	  ! $ , +& &T,x(( T,n zMMA r   