+
     BiO              
       r   ^ RI Ht ^ RIHt ]! R4       ^ RIt^ RIHt ^ RIHt ^ RIH	t	H
t
HtHtHtHt ^ RI Ht ^ R	IHtHtHt ]P(                  tR
]P,                  ! R4      R]P,                  ! R4      R]P,                  ! R4      R]P,                  ! R4      /tRsRs]R
,          t]R,          t]R,          t]R,          tR tR t ! R R]P@                  4      t! ! R R]P@                  4      t" ! R R]P@                  4      t# ! R R]P@                  4      t$ ! R R]P@                  4      t% ! R R]P@                  4      t& ! R R]P@                  4      t' ! R R ]P@                  4      t( ! R! R"]P@                  4      t) ! R# R$]P@                  4      t*]+R%8X  d   ]PX                  ! ^R&7       R# R# )'    )configdialog)requiresguiN)mock)Func)Tk	StringVarIntVar
BooleanVarDISABLEDNORMAL)config)idleConfchangestracersmain 	highlightkeys
extensionsc                  r    \         \        n        \        4       s\
        P                  ! \        R RR7      sR# )TestT)_utestN)testcfgr   userCfgr   rootr   ConfigDialogdialog     :/usr/lib/python3.14/idlelib/idle_test/test_configdialog.pysetUpModuler"   "   s%    H4D&&tVDAFr    c                      \         \        n        \        P                  ! 4        \        P
                  ! 4        \        P
                  ! 4        \        P                  4        \        P                  4        R ;ss
R # N)usercfgr   r   r   detachclearr   r   update_idletasksdestroyr   r   r    r!   tearDownModuler*   *   sE    HNNMMOMMOLLND6r    c                   ,   a  ] tR t^5t o R tR tRtV tR# )ConfigDialogTestc                    R # r$   r   selfs   &r!   test_deactivate_current_config/ConfigDialogTest.test_deactivate_current_config7       r    c                    R # r$   r   r.   s   &r!   activate_config_changes(ConfigDialogTest.activate_config_changes:   r2   r    r   N)__name__
__module____qualname____firstlineno__r0   r4   __static_attributes____classdictcell____classdict__s   @r!   r,   r,   5   s      r    r,   c                   8   a  ] tR t^>t o R tR tR tR tRtV t	R# )
ButtonTestc                   \         p\        P                  ! 4       ;q!n        \        P                  ! 4       ;q1n        VP
                  R ,          P                  4        VP                  4        VP                  4        V=V=R# )OkN)r   r   Mockapplyr)   buttonsinvokeassert_called_once)r/   drC   r)   s   &   r!   test_click_okButtonTest.test_click_ok@   s\    ))+%"iik))			$   """$Iqwr    c                   \         p\        P                  ! 4       ;q!n        \        P                  ! 4       ;q1P                  n        \        P                  ! 4       ;qAn        VP                  R ,          P                  4        VP                  4        VP                  4        VP                  4        VP                  =V=V=R# )ApplyN)
r   r   rB   deactivate_current_configextpagesave_all_changed_extensionsr4   rD   rE   rF   )r/   rG   
deactivatesave_extactivates   &    r!   test_click_applyButtonTest.test_click_applyI   s    3799;>
0;?99;F998/3yy{:,			'!!#%%'##%##%II1%q'Br    c                   \         p\        4       Vn        ^\        R,          R&   VP                  R,          P                  4        V P                  \        R,          / 4       V P                  VP                  P                  ^4       V=R# )   r   	somethingCancelN)r   r   r)   r   rD   rE   assertEqualcalledr/   rG   s   & r!   test_click_cancelButtonTest.test_click_cancelU   sf    F	'($			(""$"-))1-Ir    c                   \         P                  P                  \         P                  4       \        P
                  P                  \        R \        R7      ;_uu_ 4       p\         P                  R,          P                  4        VP                  R,          VP                  R,          r2RRR4       V P                  XR4       V P                  XR4       V P                  VR4       R#   + '       g   i     LH; i)		view_text)new_callableHelptitlecontentsNzHelp for IDLE preferenceszWhen you clickza different name.
)r   noteselectkeyspager   patchobjectr   r   rD   rE   kwdsrX   assertStartsWithassertEndsWith)r/   viewra   rb   s   &   r!   test_click_helpButtonTest.test_click_help^   s    6??+ZZ|[,0  2 259NN6"))+"ii0$))J2G82 	 ;<h(89H%:;2 2s    AC++C;	r   N)
r6   r7   r8   r9   rH   rR   r[   rl   r:   r;   r<   s   @r!   r?   r?   >   s     
C< <r    r?   c                   p   a  ] tR t^it 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V tR# )FontPageTestc                    \         P                  ;qn        \         P                  P	                  V4       \        4       Vn        VP                  4        R # r$   )r   fontpagepagerc   rd   r   set_samplesupdateclsrr   s   & r!   
setUpClassFontPageTest.setUpClassp   s5     //)x4 6r    c                    V P                   =R # r$   )rr   rs   rv   s   &r!   tearDownClassFontPageTest.tearDownClassw   s    HH r    c                0    \         P                  ! 4        R # r$   r   r'   r.   s   &r!   setUpFontPageTest.setUp{       r    c                   \         P                  ! 4        V P                  pVP                  P	                  R 4       VP
                  P	                  R4       VP                  P	                  R4       ^ VP                  n        VP                  4        V P                  VP                  P                  4       R 4       V P                  VP
                  P                  4       R4       V P                  VP                  P                  4       4       V P                  VP                  P                  ^4       \         P                  ! 4        R# )Fake1TN)r   r&   rr   	font_nameset	font_size	font_boldrs   rY   load_font_cfgassertNotEqualgetassertFalserX   attachrZ   s   & r!   test_load_font_cfgFontPageTest.test_load_font_cfg~   s     	II			 	AKKOO-v6AKKOO-s3*+--q1r    c                ^   V P                   pVP                  P                  4       ^8  d   V P                  R4       VP                  pVP	                  ^ 4       VP                  P                  R4      pVP                  4        VP                  4        VP                  R4       VP                  R4       VP                  R4      pV P                  WC4       V P                  VP                  P                  4       VP                  4       4       VP                  4        VP                  4        VP                  R4       VP                  R4       VP                  R4      pV P                  WS4       V P                  VP                  P                  4       VP                  4       4       R# )   need at least 2 fontsactivez
<Key-Down>z<KeyRelease-Down>z<Key-Up>z<KeyRelease-Up>N)rr   fontlistsizeskipTestrQ   r   focus_forcert   event_generater   assertInr   lowerrX   )r/   rG   r   font	down_fontup_fonts   &     r!   test_fontlist_keyFontPageTest.test_fontlist_key   s5   II::??q MM12::!zz~~h' 	- 34LL*	I,akkoo'):; 	
+ 12,,x('akkoo'9r    c                   V P                   pVP                  P                  4       ^8  d   V P                  R4       VP                  pVP	                  ^ 4       VP                  4        VP                  ^4       VP                  4        VP                  ^4      w  r4rVW5^,          ,          pWF^,          ,          pVP                  RW4R7       VP                  RW4R7       VP                  ^4      pVP                  R4      pV P                  W4       V P                  VP                  P                  4       VP                  4       4       R# )r   r   
<Button-1>xy<ButtonRelease-1>anchorN)rr   r   r   r   rQ   r   seert   bboxr   r   rX   r   r   r   )	r/   rG   r   r   r   dxdyfont1select_fonts	   &        r!   test_fontlist_mouse FontPageTest.test_fontlist_mouse   s    II::??q MM12::! 	Q}}Q'b	1W	1W7 3q>Qll8,,akkoo'7r    c                    V P                   pVP                  P                  P                  ^(4       V P	                  VP
                  P                  4       R4       R# )(   40N)rr   sizelistvariabler   rX   r   r   rZ   s   & r!   test_sizelistFontPageTest.test_sizelist   s>    II	

#*D1r    c                `   V P                   pVP                  P                  R 4       VP                  P	                  4        V P                  VP                  P                  4       4       VP                  P	                  4        V P                  VP                  P                  4       4       R# )FN)rr   r   r   bold_togglerE   
assertTruer   r   rZ   s   & r!   test_bold_toggleFontPageTest.test_bold_toggle   sk    II		)*	*+r    c           	        \         P                  ! \        R R4      p\        V^,          4      pV^,          R8H  pV P                  pVP
                  P                  V4       VP                  P                  V4       ^ VP                  n	        VP                  P                  R4       RRRRVR\        V4      //pV P                  \        V4       V P                  VP                  P                  ^4       \        P                  ! 4        VP
                  P                  R4       RRRRRR\        V4      //pV P                  \        V4       V P                  VP                  P                  ^4       \        P                  ! 4        VP                  P                  V'       * 4       RRRRRR\        V'       * 4      //pV P                  \        V4       V P                  VP                  P                  ^4       R# )	r   EditorWindowboldz	Test Fontr   z	font-sizez	font-bold20N)r   GetFontr   strrr   r   r   r   rs   rY   r   rX   mainpager   r'   )r/   default_fontdefault_sizedefault_boldrG   expecteds   &     r!   test_font_setFontPageTest.test_font_set   s   
  ''fnE<?+#A&0II	%	% 	$"V[%0,%0#l2C%E F 	8,--q1	"V[%0$%0#l2C%E F 	8,--q1	L()"V[%0$%0#,6F2G%I J 	8,--q1r    c                   V P                   pV=VP                  VP                  3p/ / uVn        Vn        VP                  P                  R 4       VP                  P                  R4       VP                  P                  ^4       RR/pVP                  4        T P                  VP                  VP                  u;8H  ;'       d    V8H  Mu 4       Vw  Vn        Vn        \        4       Vn        R# )test5r   N)r   r   r   )
rr   rs   font_samplehighlight_sampler   r   r   r   r   r   )r/   rG   orig_samplesr   s   &   r!   test_set_samplesFontPageTest.test_set_samples   s    IIM}}a&8&88,.)q)			12 	
););GGxGH,8)q)r    r   N)r6   r7   r8   r9   classmethodrw   r{   r   r   r   r   r   r   r   r   r:   r;   r<   s   @r!   ro   ro   i   s[        ! ! ::8.2,"2H r    ro   c                      a  ] tR tR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 tR tR tR tR tR tR tR tR tR tRtV tR# )HighPageTesti  c                   \         P                  ;qn        \         P                  P	                  V4       \        4       Vn        \        4       Vn        \        4       Vn        \        4       Vn	        VP                  4        R # r$   )r   highpagerr   rc   rd   r   set_theme_typepaint_theme_sampleset_highlight_targetset_color_samplert   ru   s   & r!   rw   HighPageTest.setUpClass  sS     //)x4 "f"&&$(F! $r    c                .    V P                   pV=V=V=V=R # r$   )rr   r   r   r   r   )rv   rG   s   & r!   r{   HighPageTest.tearDownClass  s!    HHa2"A$6r    c                X   V P                   p\        P                  ! R R4       F)  p\        P                  R,          P	                  V4       K+  	  \
        P                  ! 4        ^ VP                  n        ^ VP                  n        ^ VP                  n        ^ VP                  n        R# )userr   N)rr   r   GetSectionListr   remove_sectionr   r'   r   rY   r   r   r   r/   rG   sections   &  r!   r   HighPageTest.setUp  s    II  ..v{CG[)88A D"#&'#()%$%!r    c                   \         P                  ! 4        V P                  pV P                  p\        P
                  ! R R7      \        n        VP                  4        V P                  VP                  P                  4       4       V! VP                  P                  4       R 4       V! VP                  P                  4       R4       V! VP                  P                  4       R4       V! VP                   P"                  ^4       V! VP$                  P"                  ^4       V! VP&                  P"                  ^4       \        P(                  ! RRRR4       \        P(                  ! RRRR	4       VP                  4        V! VP                  P                  4       R 4       V! VP                  P                  4       R4       V! VP                   P"                  ^4       V! VP$                  P"                  ^4       V! VP&                  P"                  ^4       \        P
                  ! RR7      \        n        \        P(                  ! R
RRR4       VP                  4        V P+                  VP                  P                  4       4       V! VP                  P                  4       R 4       V! VP                  P                  4       R4       V! VP                   P"                  ^4       V! VP$                  P"                  ^4       V! VP&                  P"                  ^4       \        =\         P,                  ! 4        R# )IDLE Classicreturn_value- no custom themes -r   test1optionvaluetest2option2value2r   Themedefault0Ndisabled)r   r&   rr   rX   r   rB   r   CurrentThemeload_theme_cfgr   theme_sourcer   builtin_namecustom_namecustom_theme_onstater   rY   r   r   	SetOptionr   r   r/   rG   eqs   &  r!   test_load_theme_cfg HighPageTest.test_load_theme_cfg*  sV   II !%		~ F	**,-
1>>0
1== 67
1""$m4
1""A&
1&&*
1!!((!, 	;7C;HE	
1>>0
1==(
1""A&
1&&*
1!!((!, !%		w ?67Is;	++-.
1>>0
1==(
1""A&
1&&*
1!!((!,!r    c                   V P                   pV P                  p\        4       Vn        \        4       Vn        VP
                  P                  4        V! \        R RR//4       V! VP                  P                  ^4       V! VP                  P                  ^ 4       \        P                  ! 4        VP                  P                  R4       VP                  P                  4        V P                  \        R RR//4       V! VP                  P                  ^4       V! VP                  P                  ^4       V=V=R# )r   r   TrueFalseN	!disabled)rX   rr   r   var_changed_builtin_namevar_changed_custom_namebuiltin_theme_onrE   r   rY   r   r'   r   r   r/   r   rG   s   &  r!   test_theme_sourceHighPageTest.test_theme_sourceS  s    II%)V"$(F!	!!#
8g	6234
1%%,,a0
1$$++Q/ 	
/	  "Gi-A#BC
1%%,,a0
1$$++Q/&(Ar    c                V   V P                   pV P                  p. ROp\        P                  ! RRRR4       VP                  P                  VR4       V! \        RRR RR//4       V! VP                  R,          R	4       V! VP                  P                  ^4       \        P                  ! 4        \        P                  ! RRRR4       VP                  P                  VR4       V! \        RRR//4       V! VP                  R,          R	4       V! VP                  P                  ^4       \        P                  ! 4        VP                  P                  VR 4       V! \        RRR RR
//4       V! VP                  R,          R
4       V! VP                  P                  ^4       R# )r   	IDLE DarkIDLE Newr   r   namespamname2textzNew theme, see Helpr   N)r   r  r  )rX   rr   r   r   builtinlistSetMenur   theme_messager   rY   r   r'   r/   r   rG   	item_lists   &   r!   test_builtin_nameHighPageTest.test_builtin_nameh  s_   II=	 	67FF;	i5
8g ' 6 7 	8
1??6"$9:
1&&* 	67FJ?	i5
8g567
1??6"$9:
1&&* 		i8
8gDEF
1??6"B'
1&&*r    c                   V P                   pVP                  P                  . R 4       V P                  R\        4       V P                  VP                  P                  ^ 4       \        P                  ! 4        VP                  P                  . ROR4       V P                  \        RRR//4       V P                  VP                  P                  ^4       R# )r   r   cr  Nabr  )
rr   
customlistr  assertNotInr   rX   r   rY   r   r'   rZ   s   & r!   test_custom_nameHighPageTest.test_custom_name  s    II 	
R!78(+--44a8 		_c2Gfc]#;<--44a8r    c                    V P                   p\        4       Vn        VP                  P	                  R 4       V P                  VP                  P                  ^4       V=R# )greenN)rr   r   on_new_color_setcolorr   rX   rY   rZ   s   & r!   
test_colorHighPageTest.test_color  sG    II!V	G++22A6r    c                    V P                   pV P                  pVP                  P                  . ROR4       V! VP                  P                  4       R4       V! VP                  P                  ^4       R# )r  r  Nr  )rX   rr   
targetlistr  highlight_targetr   r   rY   r  s   &  r!    test_highlight_target_list_mouse-HighPageTest.test_highlight_target_list_mouse  sY    II	_c2
1!!#S)
1!!((!,r    c                  a V P                   pV P                  pVP                  oSP                  4        V3R  lpVP                  P                  4        UUu/ uF  w  rEWTbK	  	  ppp^ pSP                  4        Fp  p V! SP                  VR4      ^ ,          4       V! VP                  P                  4       We,          4       V^,          pV! VP                  P                  V4       Kr  	  R# u uppi   \         d     K  i ; i)c                 H  < SP                  V 4       SP                  4        SP                  V 4      w  rr4W^,          ,          pW$^,          ,          pSP                  R^ ^ R7       SP                  RWR7       SP                  RWR7       SP                  RWR7       R# )r   <Enter>r   <Motion><ButtonPress-1>r   N)r   r(   r   r   )indexr   r   r   r   hss   &    r!   
click_charAHighPageTest.test_highlight_target_text_mouse.<locals>.click_char  s    FF5M!775>LA"qLAqLAi12jA3/1:1Q<r    1.0N)rX   rr   r   r   theme_elementsitems	tag_namestag_nextranger)  r   r   rY   
IndexError)	r/   r   rG   r3  elementtagelemcountr2  s	   &       @r!    test_highlight_target_text_mouse-HighPageTest.test_highlight_target_text_mouse  s    II

	= 231A1A1G1G1IJ1I1IJ <<>C2++C7:;1%%))+TY7
1))00%8 " K  s   C1?A,C77DDc                   V P                   pV P                  pVP                  pVP                  4        VP	                  R 4       VP                  4        VP                  R^ ^ R7       VP                  R^ ^ R7       \        ^4       F+  pVP                  R^ ^ R7       VP                  R^ ^ R7       K-  	  V! VP                  R4      R4       R# )	      ?r.  r   r/  r0  r   selNr   )	rX   rr   r   r   r   r(   r   range
tag_ranges)r/   r   rG   r2  _s   &    r!   "test_highlight_sample_double_click/HighPageTest.test_highlight_sample_double_click  s    II

s
 	)qA.
*Q/qA/1:1Q!<  	2==$r    c                   V P                   pV P                  pVP                  pVP                  4        VP	                  R 4       VP                  4        VP                  R4      w  rErgpVP                  R4       VP                  R4       VP                  RWER7       VP                  RWER7       VP                  RWgR7       VP                  RWgR7       V! VP                  R	4      R4       R
# )rB  r5  z<Leave>r.  r/  r   r0  z<B1-Motion>r   rC  Nr   )	rX   rr   r   r   r   r(   	dlineinfor   rE  )	r/   r   rG   r2  r   r   r   r   offsets	   &        r!   test_highlight_sample_b1_motion,HighPageTest.test_highlight_sample_b1_motion  s    II

s
!||E2bf 	)$
)$
*/
+q6
-24
-:
2==$r    c                   V P                   pV P                  pV=VP                  P	                  R 4       VP                  4        V! VP
                  R,          \        4       V! VP                  R,          \        4       V! VP                  P                  4       R4       VP                  P	                  R4       VP                  4        V! VP
                  R,          \        4       V! VP                  P                  4       R4       V! VP                  R,          \        4       V! VP                  P                  4       R4       \        4       Vn        R# Tr   FNr   selectedr   )rX   rr   r   r   r   r  r   r  r   button_delete_customr   r   r   r  s   &  r!   test_set_theme_type HighPageTest.test_set_theme_type  s    II 	
4 	
1==!6*
1<< (+
1!!'')=9 	
5!	
1==!8,
1""$m4
1<< &)
1!!'')2.6r    c                   V P                   pV P                  p\        P                  P                  p\        4       ;p\        P                  n        \        4       ;qRn        VP                  P                  R 4       VP                  P                  R4       R
Vn
        VP                  P                  4        V! VP                  P                  4       R4       RVP                  P                  VP                   R,          R4      3Vn
        VP                  P                  4        V! VP                  P                  4       R4       RVn
        VP                  P                  R4       VP"                  P                  R4       RVn
        VP                  P                  4        V! VP$                  ^4       V! VP                  P                  4       R4       RVn
        VP                  P                  4        V! VP&                  P                  4       VP                  4       V! VP                  P                  4       R4       VP                  P                  R4       VP"                  P                  R	4       VP                  P                  4        V! VP                  P                  4       R4       V=V\        P                  n        R# )zEditor Breakpointz#ffffffNr   style
background#de0000TzMy New ThemeF)NN))g    k@        rY  rX  )rX   rr   r   colorchooseraskcolorr   get_new_theme_namer)  r   r$  resultbutton_set_colorrE   r   rV  lookupframe_color_setr   rY   r   )r/   r   rG   orig_chooserchoosergntns   &     r!   test_get_colorHighPageTest.test_get_color  s   II#00997;v=,++4&*f,#	23	I &	!!#
177;;=)$ aggnnQ->->w-GVW	!!#
177;;=)$ > 	
I	4  	!!#
4;;
177;;=)$$	!!#
1==,
177;;=)$ 	
I	5!	!!#
177;;=)$ -9!!*r    c                    V P                   pR pVP                  P                  R4       VP                  P                  R4       VP                  P                  R4       VP
                  P                  V4       V P                  VP                  P                  VP                  R,          R4      V4       V P                  VP                  P                  RR4      V4       V P                  \        RRV//4       R	# )
z#3f7caePythonSelected TextTrV  rW  hilite
foregroundzhilite-foregroundN)rr   r   r   r)  fg_bg_toggler$  rX   rV  r_  r`  r   tag_cgetr   )r/   rG   r$  s   &  r!   test_on_new_color_set"HighPageTest.test_on_new_color_set3  s    II	(#	/	4 	E(9(9'(BLQSXY++44X|LeT"%8%$@A	Cr    c                    \         P                  p\        R R7      ;p\         n        V P                  pRVn        V P                  VP                  R4      R4       V\         n        R# )Treturn_selfz	New Themer   N)r   SectionNamer   rr   r]  rX   r\  r/   orig_sectionnamesnrG   s   &   r!   test_get_new_theme_name$HighPageTest.test_get_new_theme_name@  sS    '33(,(>>\%II	--b1;?#3 r    c                0   V P                   p\        4       ;q!n        VP                  P	                  R 4       RVn        VP                  P                  4        V P                  VP
                  \        P                  R,          4       RVn        ^ Vn        V P                  VP
                  \        P                  R,          4       VP                  P                  4        V P                  VP
                  \        P                  R,          4       V=R# )Tr   r   zmy new themeN)rr   r   r\  r   r   r]  button_save_customrE   r  r   r   rY   r   )r/   rG   rc  s   &  r!   test_save_as_new_theme#HighPageTest.test_save_as_new_themeJ  s    II&*f,#	4  	##%h&6&6{&CD %h&6&6{&CD	##%dkk8#3#3K#@A r    c                `   V P                   pV P                  pVP                  P                  R 4       VP                  P                  R4       RpRpV P                  V\        P                  4       VP                  V4       V! \        P                  ! RR4      V.4       V! \        P                  ! RR4      \        P                  ! RV4      4       V! VP                  P                  4       V4       V P                  VP                  P                  4       4       V! VP                  P                  ^4       \         P"                  ! RVRR4       V P                  V\        P                  4       VP                  V4       V! \        P                  ! RR4      W4.4       V P%                  \        P                  ! RV4      \        P                  ! RV4      4       \        P&                  ! RVRR4       V! \        P                  ! RV4      \        P                  ! RV4      4       R	# )
Tr   zmy new custom themezmy second custom themer   r   r   zhit-backgroundyellowN)rX   rr   r   r   r   r  r   r   
create_newr   GetThemeDictr   r   r   r   rY   r   
add_optionr   r   r/   r   rG   	first_new
second_news   &    r!   test_create_new_and_save_new)HighPageTest.test_create_new_and_save_new]  s   II 	
4 	>*)	-
 	H$4$45	Y
8""6;7)E
8  N;  3	5
1==	*++-.
1""A& 	;	3CXNX%5%56	Z 
8""6;7)9PQH11&)D$11&*E	G 	;	3CXN
8  3  4	6r    c                   V P                   pV P                  pV=VP                  P	                  R 4       V! VP
                  P                  4       R4       V! VP                  P                  4       R4       V P                  VP                  4       V! VP                  P                  ^4       VP                  P	                  R4       V! VP
                  P                  4       R4       V! VP                  P                  4       R4       V P                  VP                  4       V! VP                  P                  ^4       \        4       Vn        R# )CursorCommentN)r   rQ  r   rP  r   )rX   rr   r   r)  r   fg_onr   bg_onr   rk  r   rY   r   r  s   &  r!   test_set_highlight_target&HighPageTest.test_set_highlight_target}  s    II" 	
x(
177==?45
177==?M*'
1$$a( 	
y)
177==?M*
177==?B'
1$$a(!%r    c                   V P                   pVP                  pVP                  P                  4        V P	                  VP
                  ^4       VP                  P                  4        V P	                  VP
                  ^4       R# rU   N)rr   r   r  rE   rX   rY   r  )r/   rG   scss   &  r!   test_set_color_sample_binding*HighPageTest.test_set_color_sample_binding  sZ    II  	Q'	Q'r    c                z   V P                   pV=VP                  P                  R 4       VP                  P                  R4       VP                  4        V P                  VP                  P                  VP                  R,          R4      VP                  P                  RR4      4       \        4       Vn        R# )rh  TrV  rW  ri  rj  N)rr   r   r)  r   rk  rX   rV  r_  r`  r   rl  r   rZ   s   & r!   test_set_color_sample"HighPageTest.test_set_color_sample  s    II	/	4 	q009<H""++HlC	E "Vr    c                @   V P                   pV P                  pV=VP                  P                  p\
        P                  pVP                  P                  R 4       VP                  P                  R4       RpVP                  V4       ^ VP                  n        VP                  4        RRRR/pVP                  4        F  w  rxV P                  V! RV4      V4       K   	  V! VP                  P                  ^4       VP                  4        F%  w  rx\        P                   ! RVR	V,           V4       K'  	  VP                  4        VP                  4        F  w  rxV! V! RV4      V4       K  	  V! VP                  P                  ^4       \#        4       Vn        R
# )Tr  z	IDLE Testrj  bluerW  r}  consoler   zconsole-N)rX   rr   r   r   rl  r   GetHighlightr   r   r   r~  r   rY   r7  r   r   r  r   )	r/   r   rr   hs_tagghthemenew_consolekeyr   s	   &        r!   test_paint_theme_sample$HighPageTest.test_paint_theme_sample  sc   yy#&&//"" 	d#k*'($ 	!#V#X0%++-JCy# 6> .
4  ''+ &++-JC{E:c>5I .!%++-JCvi%u- .
4  ''+"&&r    c                T   V P                   pV P                  pVP                  P                  R4       \	        4       ;q2n        \	        4       \        n        \	        4       \        n        Rp\        P                  R,          P                  VRR4       RR/\        V&   Rp\        P                  R,          P                  VRR4       RR/\        V&   VP                  P                  R4       VP                  P                  4        VP                  P!                  V4       R	Vn        VP                  P                  4        V! VP$                  ^4       V! \        V,          RR/4       V! \        P&                  ! R
R4      WE.4       V! \        P                  P$                  ^ 4       V! \        P                  P$                  ^ 4       V! VP(                  P$                  ^ 4       RVn        VP                  P                  4        V! VP$                  ^4       V P+                  V\        4       V! \        P&                  ! R
R4      V.4       V! VP                  P                  4       R4       V! VP                  P-                  4       V4       V! \        P                  P$                  ^4       V! \        P                  P$                  ^4       V! VP(                  P$                  ^4       VP                  P!                  V4       RVn        VP                  P                  4        V! VP$                  ^4       V P+                  V\        4       V! \        P&                  ! R
R4      . 4       V! VP                  P                  4       R4       V! VP                  P-                  4       R4       V! \        P                  P$                  ^4       V! \        P                  P$                  ^4       V! VP(                  P$                  ^4       \        =\        =V=R# )r  z
spam themer   r  r   r   r   zother themer  Fr   Tr   Nr  r   r   )rX   rr   rR  r   r   askyesnor   rL   r4   r   r   r   r   r   rE   r   r   r]  rY   r   r   r  r   )r/   r   rG   yesno
theme_nametheme_name2s   &     r!   test_delete_customHighPageTest.test_delete_custom  s(   II	$$^4!V#
+/6()-&!
%//
FGL (&1#%//VWM!)7 3 	
/	  "	*% 	%%'
5<<
8J(F!34
8""6;7*9RS
6++22A6
6))00!4
1""A& 	%%'
5<<X.
8""6;7+G
1""$b)
1==,
6++22A6
6))00!4
1""A& 	
+&	%%'
5<<X.
8""6;7<
1""$m4
1== 67
6++22A6
6))00!4
1""A&*F,LJr    r   N)r6   r7   r8   r9   r   rw   r{   r   r   r  r  r  r%  r*  r?  rG  rL  rS  rd  rm  rv  rz  r  r  r  r  r  r  r:   r;   r<   s   @r!   r   r     s        7 7

&'RB*+89- D%(%,"*-:^C4!&6@(*(	$)@9 9r    r   c                      a  ] tR tR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 tR tR tRtV tR# )KeysPageTesti  c                    \         P                  ;qn        \         P                  P	                  V4       \        4       Vn        \        4       Vn        R # r$   )r   re   rr   rc   rd   r   set_keys_typeload_keys_listru   s   & r!   rw   KeysPageTest.setUpClass
  s6     //)x4 !V"fr    c                &    V P                   pV=V=R # r$   )rr   r  r  ru   s   & r!   r{   KeysPageTest.tearDownClass  s    xx 3r    c                   V P                   p\        P                  ! R R4       F)  p\        P                  R,          P	                  V4       K+  	  \
        P                  ! 4        ^ VP                  n        ^ VP                  n        R# )r   r   N)
rr   r   r   r   r   r   r'   r  rY   r  r   s   &  r!   r   KeysPageTest.setUp  s`    II  ..vv>GV$33G< ?!""#r    c                   \         P                  ! 4        V P                  pV P                  p\        P
                  ! R R7      \        n        VP                  4        V P                  VP                  P                  4       4       V! VP                  P                  4       R 4       V! VP                  P                  4       R4       V! VP                  P                  4       R4       V! VP                   P"                  ^4       V! VP$                  P"                  ^4       V! VP$                  P&                  R4       \        P(                  ! RRRR4       \        P(                  ! RRRR	4       VP                  4        V! VP                  P                  4       R 4       V! VP                  P                  4       R4       V! VP                   P"                  ^4       V! VP$                  P"                  ^4       V! VP$                  P&                  R4       \        P
                  ! RR7      \        n        \        P
                  ! R
R7      \        n        \        P(                  ! RRRR4       VP                  4        V P-                  VP                  P                  4       4       V! VP                  P                  4       R
4       V! VP                  P                  4       R4       V! VP                   P"                  ^4       V! VP$                  P"                  ^4       V! VP$                  P&                  R4       \        =\        =\         P.                  ! 4        R# )IDLE Classic OSXr   - no custom keys -r   r   r   r   r   r   r   zIDLE Modern Unixr   Keysr   r   Nr   r  )r   )r   r&   rr   rX   r   rB   r   CurrentKeysload_key_cfgr   keyset_sourcer   r   r   custom_keyset_onr   r  rY   r  argsr   default_keysr   r   r   s   &  r!   test_load_key_cfgKeysPageTest.test_load_key_cfg   sg   II  $yy6HI	++-.
1>>!34
1== 45
1##%}5
1??!!1%
1""A&
1  "89 	67Hg>67Ix@	
1>>!34
1==(
1??!!1%
1""A&
1  "89  $yyg> $		7I J669c:	,,./
1>>!34
1==(
1??!!1%
1""A&
1  +. ("7r    c                   V P                   pV P                  p\        4       Vn        \        4       Vn        VP
                  P                  4        V! \        R RR//4       V! VP                  P                  ^4       V! VP                  P                  ^ 4       \        P                  ! 4        VP                  P                  R4       VP                  P                  4        V P                  \        R RR//4       V! VP                  P                  ^4       V! VP                  P                  ^4       V=V=R# )r  r   r   r  Nr  )rX   rr   r   r  r  builtin_keyset_onrE   r   rY   r   r'   r  r   r  s   &  r!   test_keyset_sourceKeysPageTest.test_keyset_sourceJ  s    II%)V"$(F!	""$
8fy&123
1%%,,a0
1$$++Q/ 	
  0	!!#FY,@#AB
1%%,,a0
1$$++Q/&(Ar    c                   V P                   pV P                  p\        P                  R ,          P	                  R4       . ROpVP
                  P                  VR4       V! \        RRRRR//4       V! VP                  R,          R4       V! VP                  P                  ^4       V! VP                  P                  R4       \        P                  ! 4        \        P                  ! R RRR	4       VP
                  P                  VR4       V! \        RRR//4       V! VP                  R,          R4       V! VP                  P                  ^4       V! VP                  P                  R4       \        P                  ! 4        VP
                  P                  VR4       V! \        RRRRR
//4       V! VP                  R,          R
4       V! VP                  P                  ^4       V! VP                  P                  R4       R# )r   r  IDLE Classic Windowsr  IDLE Modern UNIXr  r  r  zNew key set, see HelpzIDLE Classic Unixr   N)r  r  r  )r  r  )rX   rr   r   r   r   r  r  r   keys_messager  rY   r  r   r'   r   r  s   &   r!   r  KeysPageTest.test_builtin_name_  s   II //7)	 	
i);<
8fv'=&(:< = 	>
1>>&!#:;
1""A&
1  "89 	6663FG	i);<
8fw(:;<=
1>>&!#:;
1""A&
1  "89 		i);<
8fv'97BGHI
1>>&!2&
1""A&
1  "89r    c                   V P                   pVP                  P                  . R 4       V P                  R\        4       V P                  VP                  P                  ^ 4       \        P                  ! 4        VP                  P                  . ROR4       V P                  \        RRR//4       V P                  VP                  P                  ^4       R# )r  r  r  r  Nr  )
rr   r  r  r  r   rX   r  rY   r   r'   rZ   s   & r!   r  KeysPageTest.test_custom_name  s    II 	
R!56*))00!4 		_c2FVSM#:;))00!4r    c                   \         P                  ! R RRR4       V P                  pVP                  P	                  R4       VP
                  P                  ^ R4       VP
                  P                  ^ R4       VP
                  P                  ^R4       VP
                  P                  ^ 4       VP
                  P                  ^ 4       VP                  P	                  R4       V P                  \        RRR//4       VP
                  P                  ^4       VP
                  P                  ^4       VP                  P	                  R4       V P                  \        R	RR//4       R
# )r   ZzDummyenabler   zmy custom keysendcopyzz-in	<Key-F11>ZzDummy_cfgBindingsN)r   r   rr   r   r   bindingslistdeleteinsertselection_setselection_anchor
keybindingrX   re   rM   rZ   s   & r!   test_keybindingKeysPageTest.test_keybinding  s   <HfEII	*+	a'	a(	a(	$$Q'	''*	%*V[,AB	D 	
$$Q'	''*	%/&+1FG	Ir    c                   V P                   pV P                  pV=VP                  P	                  R 4       VP                  4        V! VP
                  R,          \        4       V! VP                  R,          \        4       V! VP                  P                  4       R4       VP                  P	                  R4       VP                  4        V! VP
                  R,          \        4       V! VP                  P                  4       R4       V! VP                  R,          \        4       V! VP                  P                  4       R4       \        4       Vn        R# rO  )rX   rr   r  r  r   r  r   r  r   button_delete_custom_keysr   r  r   r  s   &  r!   test_set_keys_typeKeysPageTest.test_set_keys_type  s    IIO 	
D!	
1==!6*
1<< (+
1&&,,.> 	
E"	
1==!8,
1##%}5
1<< &)
1&&,,.3&r    c                   V P                   pV P                  p\        P                  p\	        R R7      ;p\        n        \	        4       ;qRn        VP                  P                  R4       VP                  P                  ^ R4       VP                  P                  ^ R4       VP                  P                  ^ 4       VP                  P                  ^ 4       VP                  P                  R4       VP                  P                  R 4       RVn        VP                  P#                  4        V! VP                  P%                  R4      R4       V! VP                  P%                  4       R4       RVn        RVn        VP                  P#                  4        V! VP&                  ^4       V! VP                  P%                  R4      R4       RVn        VP                  P#                  4        V! VP(                  P%                  4       VP                   4       V! VP                  P%                  R4      R	4       V! VP                  P%                  4       R4       VP                  P                  R
4       ^ Vn        RVn        VP                  P#                  4        V! VP&                  ^ 4       V! VP                  P%                  R4      R4       V! VP                  P%                  4       R4       V=V\        n        R# )Trp  r  zcopy - <Control-Shift-Key-C>zKey-ar   r   r  zMy New Key Setzcopy - <Key-F11>Fz<Key-p>zcopy - <Key-p>Nr  )rX   rr   r   GetKeysWindowr   get_new_keys_namebutton_new_keysr   r  r  r  r  r  r  r   r  r]  rE   r   rY   r   )r/   r   rG   orig_getkeysdialoggkdgnkns   &     r!   test_get_new_keysKeysPageTest.test_get_new_keys  sB   II)77+/D+AAl(%)V+"	/	a'	a!?@	$$Q'	''*	!	D! 
	  "
1>>h')GH
1<<w' !
	  "
4;;
1>>h')GH&	  "
1==,
1>>h');<
1<<{+ 	
E"
	  "
4;;
1>>h')9:
1<<y)%7"r    c                    \         P                  p\        R R7      ;p\         n        V P                  pRVn        V P                  VP                  R4      R4       V\         n        R# )Trp  zNew Keysr   N)r   rr  r   rr   r]  rX   r  rs  s   &   r!   test_get_new_keys_name#KeysPageTest.test_get_new_keys_name  sS    '33(,(>>\%II	,,R0*=#3 r    c                   V P                   p\        4       ;q!n        VP                  P	                  R 4       RVn        VP                  P                  4        RVn        ^ Vn        V P                  VP
                  \        P                  R,          4       VP                  P                  4        V P                  VP
                  \        P                  R,          4       V=R# )Tr   zmy new key setr   N)rr   r   r  r  r   r]  button_save_custom_keysrE   rY   r  r   r   r   )r/   rG   r  s   &  r!   test_save_as_new_key_set%KeysPageTest.test_save_as_new_key_set  s    II%)V+"	D! 	!!((* 'h&6&6v&>?	!!((*dkk8#3#3F#;<r    c                   V P                   pVP                  pVP                  ^ R4       VP                  ^ R4       VP                  ^R4       VP	                  ^ 4       VP                  4        VP                  ^4       VP                  4        VP                  ^4      w  r4rVW5^,          ,          pWF^,          ,          pVP                  R^ ^ R7       VP                  RW4R7       VP                  RW4R7       VP                  RW4R7       V P                  VP                  R	4      R4       V P                  VP                  P                  4       R4       R
# )r   r  r  findr.  r   r/  r   r   r   Nr   )rr   r  r  r  rQ   r   r   rt   r   r   rX   r   r  r   )r/   rG   r  r   r   r   r   s   &      r!   test_on_bindingslist_select(KeysPageTest.test_on_bindingslist_select  s   IINN	E	F	F	

1		a	
vvayb	1W	1W	a1-	q.	0	,7x&1**002B7r    c                T   V P                   pV P                  pVP                  P                  R 4       VP                  P                  R4       RpRpV P                  V\        P                  4       VP                  V4       V! \        P                  ! RR4      V.4       V! \        P                  ! R4      \        P                  ! V4      4       V! VP                  P                  4       V4       V P                  VP                  P                  4       4       V! VP                  P                  ^4       \         P"                  ! RVRR4       V P                  V\        P                  4       VP                  V4       V! \        P                  ! RR4      W4.4       V P%                  \        P                  ! V4      \        P                  ! V4      4       \        P&                  ! RVRR4       V! \        P                  ! V4      \        P                  ! V4      4       R# )	Tr  zmy new custom key setzmy second custom keysetr   r   r  r  N)rX   rr   r  r   r   r  r   r   create_new_key_setr   	GetKeySetr   r   r   r  rY   r   r  r   r   r  s   &    r!   ,test_create_new_key_set_and_save_new_key_set9KeysPageTest.test_create_new_key_set_and_save_new_key_set  s   II 	
D!	12+	.
 	H$4$45	Y'
8""662YK@
845i(	*
1==	*,,./
1??!!1% 	69fkBX%5%56	Z(
8""662Y4KLH..y9$..z:	< 	69fkB
8i((*<*<Z*HIr    c                   V P                   pV P                  p\        4       ;p\        n        V=VP                  pVP                  ^ R4       VP                  ^ R4       VP                  ^R4       RRR.RR.R	R
./Vn	        \        P                  ! RRRR4       RpVP                  R4       V! VP                  ^ R4      V4       V! VP                  R4      R4       V! VP                  4       R4       VP                  ^4       VP                  ^4       VP                  R4       V! VP                  ^ R4      V4       V! VP                  R4      R4       V! VP                  4       R4       VP                  ^4       VP                  ^4       VP                  R4       V! VP                  ^ R4      V4       V! VP                  R4      R4       V! VP                  4       R4       \        4       Vn        \        =R# )r   r  z<<find>>z<<help>>z<<copy>>z<Control-Key-c>z<Control-Key-C>z<<force-open-completions>>z<Control-Key-space>z<<spam>>r  r   zmy keysr  z<Shift-Key-a>,force-open-completions - <Control-Key-space>spam - <Shift-Key-a>r   r   N)z&copy - <Control-Key-c> <Control-Key-C>r  r  r   )rU   )r   )rX   rr   r   r   r  r  r  r  r  r]  r   r  r   curselectionr  r  )r/   r   rG   gksr  r   s   &     r!   test_load_keys_list KeysPageTest.test_load_keys_list7  s   II#'6)h NN	E	J	J #46G"H25J4K ;-1
 	69foF,
 	
#
155E?H%
155?B
1>>R  	
	1	#
155E?H%
155?JK
1>>U# 	
	1	#
155E?H%
155?23
1>>U#6r    c                T   V P                   pV P                  pVP                  P                  R4       \	        4       ;q2n        \	        4       \        n        \	        4       \        n        Rp\        P                  R,          P                  VRR4       RR/\        V&   Rp\        P                  R,          P                  VRR4       RR/\        V&   VP                  P                  R4       VP                  P                  4        VP                  P!                  V4       R	Vn        VP                  P                  4        V! VP$                  ^4       V! \        V,          RR/4       V! \        P&                  ! R
R4      WE.4       V! \        P                  P$                  ^ 4       V! \        P                  P$                  ^ 4       V! VP(                  P$                  ^ 4       RVn        VP                  P                  4        V! VP$                  ^4       V P+                  V\        4       V! \        P&                  ! R
R4      V.4       V! VP                  P                  4       R4       V! VP                  P-                  4       V4       V! \        P                  P$                  ^4       V! \        P                  P$                  ^4       V! VP(                  P$                  ^4       VP                  P!                  V4       RVn        VP                  P                  4        V! VP$                  ^4       V P+                  V\        4       V! \        P&                  ! R
R4      . 4       V! VP                  P                  4       R4       V! VP                  P-                  4       R4       V! \        P                  P$                  ^4       V! \        P                  P$                  ^4       V! VP(                  P$                  ^4       \        =\        =V=R# )r  zspam key setr   r  r   r   r   zother key setr  Fr   Tr  Nr  r   r   )rX   rr   r  r   r   r  r   rL   r4   r   r   r   re   r  rE   r   r   r]  rY   r   r  r  r   )r/   r   rG   r  keyset_namekeyset_name2s   &     r!   test_delete_custom_keys$KeysPageTest.test_delete_custom_keysb  s"   II	##)).9!V#
+/6()-&$ **;H!)6 2& **<I"*G!4 	
  0	!!#	+& 	##**,
5<<
8K 8V"45
8""662[4OP
6++22A6
6))00!4
1??!!1% 	##**,
5<<h/
8""662\NC
1##%r*
1==-
6++22A6
6))00!4
1??!!1% 	
,'	##**,
5<<h/
8""662B7
1##%}5
1== 45
6++22A6
6))00!4
1??!!1%*F,LJr    r   N)r6   r7   r8   r9   r   rw   r{   r   r  r  r  r  r  r  r  r  r  r  r  r  r  r:   r;   r<   s   @r!   r  r    s      % % 4 4$(TB*:@5I*!*.8`4 $8*J>)V9 9r    r  c                   f   a  ] tR tRt o ]R 4       tR tR tR tR t	R t
R tR	 tR
 tR tRtV tR# )WinPageTesti  c                    \         P                  ;qn        \         P                  P	                  V4       VP                  4        R # r$   )r   winpagerr   rc   rd   rt   ru   s   & r!   rw   WinPageTest.setUpClass  s+     ..(x4 r    c                0    \         P                  ! 4        R # r$   r~   r.   s   &r!   r   WinPageTest.setUp  r   r    c                   V P                   pV P                  pVP                  P                  ^4       VP                  P                  ^4       VP
                  P                  ^4       VP                  4        V! VP                  P                  4       ^ 4       V! VP                  P                  4       R4       V! VP
                  P                  4       R4       R# )rU   80r   N)rX   rr   startup_editr   	win_width
win_heightload_windows_cfgr   r  s   &  r!   test_load_windows_cfg!WinPageTest.test_load_windows_cfg  s    II	1			
1>>#
1;;??d#
1<<t$r    c                   V P                   pVP                  P                  4        V P                  \        R RR//4       \
        P                  ! 4        VP                  P                  4        V P                  \        R RR//4       R# )Generalzeditor-on-startupr   r   N)rr   startup_editor_onrE   rX   r   r   r'   startup_shell_onrZ   s   & r!   test_startupWinPageTest.test_startup  sv    II	""$#&93%?@	B	!!##&93%?@	Br    c                   V P                   pVP                  P                  ^ R4       VP                  P                  ^ R4       V P	                  \
        RRR//4       \        P                  ! 4        VP                  P                  ^ R4       VP                  P                  ^ R4       V P	                  \
        RRR//4       R# )r   r  11r   heightwidthN)	rr   win_height_intr  r  rX   r   r   r'   win_width_intrZ   s   & r!   test_editor_sizeWinPageTest.test_editor_size  s    II	5)	4(NXt4D#EF	q%(	q$'NWdO#DEr    c                    V P                   pVP                  P                  ^4       V P                  VP                  P                  4       R4       V P                  \        RRR//4       R# )   6Indentz
num-spacesN)rr   indent_chooserr   rX   indent_spacesr   r   rZ   s   & r!   test_indent_spacesWinPageTest.test_indent_spaces  sV    II	Q,,.4H|S.A#BCr    c                    V P                   P                  P                  4        V P                  \        R RR//4       R# )r   zcursor-blinkr  N)rr   cursor_blink_boolrE   rX   r   r.   s   &r!   test_cursor_blinkWinPageTest.test_cursor_blink  s2    		##**,N^W4M#NOr    c                    V P                   P                  P                  ^ R4       V P                   P                  P                  ^ R4       V P	                  \
        RRR//4       R# )r   r  r  AutoComplete	popupwaitN)rr   auto_wait_intr  r  rX   rM   r.   s   &r!   test_autocomplete_wait"WinPageTest.test_autocomplete_wait  sP    		&&q%0		&&q$/>K3F"GHr    c                   V P                   pV P                  pVP                  R ,          P                  ^ 4       V! \        RRR//4       \
        P                  ! 4        VP                  P                  ^ R4       VP                  P                  ^ R4       V! \        RRR//4       \
        P                  ! 4        VP                  P                  4        V! \        RRR//4       R	# )
menu
ParenMatchrV  openerr  r  zflash-delaybellr  N)rr   rX   paren_style_typerE   rM   r   r'   paren_flash_timer  r  bell_onr   s   &  r!   test_parenmatchWinPageTest.test_parenmatch  s    II	6"))!,
7\GX#678	!!!U+	!!!T*
7\M4#89:			
7\FG#456r    c                    V P                   P                  P                  ^ R4       V P                   P                  P                  ^ R4       V P	                  \
        RRR//4       R# )r   r  r  FormatParagraphz	max-widthN)rr   format_width_intr  r  rX   rM   r.   s   &r!   test_paragraphWinPageTest.test_paragraph  sQ    		""))!U3		""))!T2#4{D6I"JKr    r   N)r6   r7   r8   r9   r   rw   r   r  r  r  r$  r(  r.  r8  r=  r:   r;   r<   s   @r!   r  r    sR       

%BFDPI
7L Lr    r  c                   H   a  ] tR tRt o ]R 4       tR tR tR tR t	Rt
V tR# )	ShedPageTesti  c                    \         P                  ;qn        \         P                  P	                  V4       VP                  4        R # r$   )r   shedpagerr   rc   rd   rt   ru   s   & r!   rw   ShedPageTest.setUpClass  s+     //)x4 r    c                0    \         P                  ! 4        R # r$   r~   r.   s   &r!   r   ShedPageTest.setUp  r   r    c                    V P                   pV P                  pVP                  P                  ^4       VP	                  4        V! VP                  P                  4       ^ 4       R# r  )rX   rr   autosaver   load_shelled_cfgr   r  s   &  r!   test_load_shelled_cfg"ShedPageTest.test_load_shelled_cfg  sG    II	

q	
1::>>Qr    c                    V P                   pVP                  P                  4        V P                  \        R RR//4       VP
                  P                  4        V P                  \        R RR//4       R# )r  rG  r   r   N)rr   save_auto_onrE   rX   r   save_ask_onrZ   s   & r!   test_autosaveShedPageTest.test_autosave  s_    II	I
C/@#AB	I
C/@#ABr    c                    V P                   P                  P                  ^ R4       V P                   P                  P                  ^ R4       V P	                  \
        RRR//4       R# )r   r  r   CodeContextmaxlinesN)rr   context_intr  r  rX   rM   r.   s   &r!   test_contextShedPageTest.test_context  sP    		$$Q.		$$Q,=:s2C"DEr    r   N)r6   r7   r8   r9   r   rw   r   rI  rN  rT  r:   r;   r<   s   @r!   r@  r@    s5       
 CF Fr    r@  c                   0   a  ] tR tRt o ]R 4       tRtV tR# )ExtPageTesti  c                d    \         P                  p\         P                  P                  V4       R # r$   )r   rM   rc   rd   ru   s   & r!   rw   ExtPageTest.setUpClass  s    ~~4 r    r   N)r6   r7   r8   r9   r   rw   r:   r;   r<   s   @r!   rW  rW    s     ! !r    rW  c                   p   a  ] tR tR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V tR# )HelpSourceTesti  c                    \         P                  p\         P                  P                  V4       VP                  ;q n        \        4       ;Vn        Vn        \        4       ;Vn	        Vn
        VP                  4        R # r$   )r   rM   rc   rd   
frame_helpframer   r   set_add_delete_stateupcupdate_help_changesrt   )rv   rr   r^  s   &  r!   rw   HelpSourceTest.setUpClass  sV    ~~4  OO+	157	E.046	E-r    c                    V P                   pV=V=V=V=VP
                  P                  ^ R4       VP                  P                  4        R# )r   r  N)	r^  r   r_  r`  ra  helplistr  user_helplistr'   )rv   r^  s   & r!   r{   HelpSourceTest.tearDownClass'  sE    		Iu1Iu0a'!!#r    c                0    \         P                  ! 4        R # r$   r~   r.   s   &r!   r   HelpSourceTest.setUp/  r   r    c                @   V P                   pV P                  pVP                  P                  R R4       RR.Vn        \
        P                  ! RRRR4       VP                  4        V! VP                  P                  ^ R 4      R4       V! VP                  R	.4       R# )
r  badworser   	HelpFilesr   z	name;fileN)r  )r  filer   )	rX   r^  rd  r  re  r   r   load_helplistr   r/   r   frs   &  r!   test_load_helplist!HelpSourceTest.test_load_helplist2  s    ZZ
5%(!7+6;[A

2;;??1e$i0
2345r    c                >   V P                   pVP                  Vn        VP                  Vn        VP
                  pR pVP                  VR4       VP                  V4       VP                  4        VP                  V4       VP                  4        VP                  V4      w  rErgWF^,          ,          pWW^,          ,          p^ ;VP                  n        VP                  n        VP                  R^ ^ R7       VP                  RWER7       VP                  RWER7       VP                  RWER7       V P                  VP                  R4      R4       V P!                  VP                  P                  4       V P#                  VP                  P                  4       R# )	r  sourcer.  r   r/  r   r   r   N)r^  r_  r   ra  r`  rd  r  rQ   r   r   rt   r   rY   r   rX   r   r   r   )r/   rp  rd  dexr   r   r   r   s   &       r!   test_source_selected#HelpSourceTest.test_source_selected<  sA   ZZ(('';;X&#S}}S)b	1W	1W())	Q!4
a57 3q>h/:&'r    c                   V P                   pV P                  pV=VP                  pVP                  pVP	                  ^ R4       V! 4        V! VP
                  P                  4       R4       V! VP                  P                  4       R4       VP                  ^ R4       V! 4        V! VP
                  P                  4       R4       V! VP                  P                  4       R4       VP                  ^ 4       V! 4        V! VP
                  P                  4       R4       V! VP                  P                  4       R4       \        4       Vn        R# )r   r  rt  Nr   r   )rX   r^  r_  rd  r  button_helplist_editr   button_helplist_remover  r  r   )r/   r   rp  sadhs   &    r!   test_set_add_delete_state(HelpSourceTest.test_set_add_delete_stateT  s   ZZ#%%KK	E
2""((*M:
2$$**,m<	H
2""((*M:
2$$**,m<	
2""((*B/
2$$**,b1"&&r    c                   V P                   p\        P                  p\        R R7      ;p\        n        V P                  pVP
                  P                  ^ R4       VP                  P                  4        ^ ;VP                  n
        VP                  n
        RVn        VP                  4        T P                  \        VP
                  P!                  ^ R4      4      VP                  u;8H  ;'       d    . 8H  Mu 4       V P#                  VP                  P                  4       RVn        VP                  4        RVn        VP                  4        V! VP
                  P!                  ^ R4      R4       V! VP                  RR.4       V! VP                  P                  ^4       V P#                  VP                  P                  4       V\        n        R# )Trp  r  r   Nname1file1r  file2)r  r  )rX   r   
HelpSourcer   r^  rd  r  re  r'   r   rY   r`  r]  helplist_item_addr   listr   r   r/   r   orig_helpsourcer2  rp  s   &    r!   test_helplist_item_add%HelpSourceTest.test_helplist_item_addl  s^    &11'+'==\$ZZ
1e$
 ())	
R[[__Q67((/ /,./ 	0'&	
&	

2;;??1e$&89
202DEF
266==!'"1r    c                n   V P                   p\        P                  p\        R R7      ;p\        n        V P                  pVP
                  P                  ^ R4       VP
                  P                  ^ R4       VP
                  P                  ^ 4       VP
                  P                  ^ 4       VP                  P                  4        VP                  P                  R4       ^ ;VP                  n        VP                  n        RVn        VP#                  4        RVn        VP#                  4        V! VP
                  P%                  ^ R4      R4       V! VP                  R.4       V P'                  VP                  P                  4       RVn        VP#                  4        V! VP
                  P%                  ^ R4      R	4       V! VP                  R.4       T P)                  VP                  P                  VP                  P                  u;8H  ;'       d    ^8H  Mu 4       V\        n        R# )
Trp  r  r  r   Nr  )r  r  )r  )rX   r   r  r   r^  rd  r  r  r  r  re  r'   appendr   rY   r`  r]  helplist_item_editr   r   r   r  s   &    r!   test_helplist_item_edit&HelpSourceTest.test_helplist_item_edit  s   &11'+'==\$ZZ
1e$
1g&
!!!$
$$Q'
 
 23())	
&	

2;;??1e$j1
2012'&	

2;;??1e$j1
2012;;!;<"1r    c                   V P                   pV P                  pVP                  P                  ^ R4       VP                  P	                  ^ R4       VP                  P                  ^ 4       VP                  P                  ^ 4       VP                  P                  4        VP                  P                  R4       ^ ;VP                  n        VP                  n        VP                  4        V! VP                  P                  ^ R4      R4       V! VP                  . 4       T P                  VP                  P                  VP                  P                  u;8H  ;'       d    ^8H  4       R# u 4       R# )r   r  r  Nr  r   )rX   r^  rd  r  r  r  r  re  r'   r  r   rY   r`  helplist_item_remover   r   ro  s   &  r!   test_helplist_item_remove(HelpSourceTest.test_helplist_item_remove  s   ZZ
1e$
1g&
!!!$
$$Q'
 
 23())
!
2;;??1e$b)
2R ;;!;<;<r    c                B   V P                   pV=VP                  P                  4        VP                  P	                  R4       VP                  P	                  R4       VP                  4        V P                  \        R,          RRRR/4       \        4       Vn        R# )	r  rl  r   zname1;file12zname2;file2Nr  r  )r^  ra  re  r'   r  rX   r   r   )r/   rp  s   & r!   test_update_help_changes'HelpSourceTest.test_update_help_changes  s    ZZ"
 
 23
 23
 +.}c=A	C!%r    r   N)r6   r7   r8   r9   r   rw   r{   r   rq  rv  r}  r  r  r  r  r:   r;   r<   s   @r!   r[  r[    sX       $ $6(0)0282<= 
( 
(r    r[  c                   p   a  ] tR tR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V tR# )VarTraceTesti  c                    \         P                  ! 4       V n        \        \        4      V n        \        \        4      V n        R # r$   )r   VarTracer   r
   r   ivr   bvrz   s   &r!   rw   VarTraceTest.setUpClass  s)    "++-D!r    c                    V = V =V =R # r$   )r   r  r  rz   s   &r!   r{   VarTraceTest.tearDownClass  s    Kr    c                H    V P                   P                  4        ^ V n        R# r   N)r   r'   rY   r.   s   &r!   r   VarTraceTest.setUp  s    r    c                8    V ;P                   ^,          un         R# )   NrY   r/   paramss   &*r!   var_changed_increment"VarTraceTest.var_changed_increment  s    rr    c                    R # r$   r   r  s   &*r!   var_changed_boolean VarTraceTest.var_changed_boolean  r2   r    c                    V P                   pVP                  4        V P                  VP                  . 4       V P                  VP                  . 4       R # r$   )r   __init__rX   untracedtracedr/   trs   & r!   	test_initVarTraceTest.test_init  s<    \\
b)B'r    c                   V P                   pVP                  P                  ^ 4       VP                  P                  ^4       VP	                  4        V P                  VP                  . 4       V P                  VP                  . 4       R# r  )r   r  r  r  r'   rX   r  s   & r!   
test_clearVarTraceTest.test_clear  s`    \\
1
		

b)B'r    c                   V P                   p\        4       p\        P                  ! VR 7      ;q1n        VP                  V P                  V P                  4      pV P                  W@P                  4       VP                  V P                  V P                  4      pV P                  WPP                  4       \        \        4      pVP                  VR4      pV P                  Wv4       VP                  4        VP                  VR4       W@P                  3WPP                  3Wb3.pV P                  VP                   . 4       V P                  VP"                  V4       V=R# )r   Nr   r   r   )r   r   r   rB   make_callbackaddr  r  assertIsr  r  r	   r   rF   assert_called_withrX   r  r  )	r/   r  funccbr  r  svsv2r   s	   &        r!   test_addVarTraceTest.test_add  s   \\v $		t <<VVDGGT778b''"VVDGGT556b''"t_ffR67c

b"?@334112J  	B'h/r    c                   V P                   P                  V P                  R4      pV P                  \	        V4      4       V P                  P                  ^*4       V P                  R\        R ,          4       V! 4        V P                  R\        R ,          4       V P                  \        R ,          R,          R,          R4       \        P                  ! 4        R# )r   r   r   42Nr  )r   r  r  r   callabler   r  r   r   rX   r'   )r/   r  s   & r!   test_make_callbackVarTraceTest.test_make_callback  s    \\''1NO%BGFO4
i13H=tDr    c                   V P                   pVP                  V P                  V P                  4      pVP                  V P                  V P
                  4      pW P                  3W0P
                  3.pVP                  4        V P                  VP                  . 4       V P                  VP                  V4       VP                  ^4       V P                  VP                  4       ^4       V P                  V P                  ^4       ^ V n        VP                  4        VP                  ^4       V P                  V P                  ^4       ^ V n        VP                  4        V P                  VP                  . 4       V P                  VP                  V4       VP                  ^4       V P                  V P                  ^ 4       R# r  )r   r  r  r  r  r  r   rX   r  assertCountEqualr  r   r   rY   r&   )r/   r  r  r  r   s   &    r!   test_attach_detachVarTraceTest.test_attach_detach  sP   \\VVDGGT778VVDGGT5563341124 			b)bii2
q	1%b)
 
		
q	b) 
		B'bkk84
q	a(r    r  N)r6   r7   r8   r9   r   rw   r{   r   r  r  r  r  r  r  r  r:   r;   r<   s   @r!   r  r    sX     " "
 ( (((0
) )r    r  __main__)	verbosity)-idlelibr   test.supportr   unittestr   idlelib.idle_test.mock_idler   tkinterr   r	   r
   r   r   r   r   idlelib.configdialogr   r   r   r   r%   IdleUserConfParserr   r   r   r   r   re   rM   r"   r*   TestCaser,   r?   ro   r   r  r  r@  rW  r[  r  r6   r   r   r    r!   <module>r     s  
 ! !    , I I  ; ;
 


F%%b)**2.
F%%b)&++B/	 	6?;6?
,
Bx(( (<"" (<V[8$$ [|y8$$ yxX8$$ XvNL(## NLb!F8$$ !FJ!(## !d(X&& d(Ne)8$$ e)P zMMA r    