Ë
    #´˜j  ã                   ó¨   — d Z ddlmZ ddlZddlmZ ddlmZmZ  G d„ d«      Z	 G d„ d	ej                  «      Zed
k(  r ej                  d¬«       yy)zTest autoexpand, coverage 100%.é    )Ú
AutoExpandN)Úrequires)ÚTextÚTkc                   ó   — e Zd Zd„ Zy)ÚDummyEditwinc                 ó   — || _         y ©N)Útext)Úselfr   s     ú3lib/python3.12/idlelib/idle_test/test_autoexpand.pyÚ__init__zDummyEditwin.__init__   s	   € Øˆ�	ó    N)Ú__name__Ú
__module__Ú__qualname__r   © r   r   r   r   	   s   „ ór   r   c                   óP   — e Zd Zed„ «       Zed„ «       Zd„ Zd„ Zd„ Zd„ Z	d„ Z
d„ Zy	)
ÚAutoExpandTestc                 óÖ   — t        d«       t        «       | _        t        | j                  «      | _        t        t        | j                  «      «      | _        d„ | j                  _        y )NÚguic                   ó   — y r
   r   r   r   r   Ú<lambda>z+AutoExpandTest.setUpClass.<locals>.<lambda>   s   €  tr   )	r   r   Útkr   r   r   r   Úauto_expandÚbell©Úclss    r   Ú
setUpClasszAutoExpandTest.setUpClass   sB   € ä�ŒÜ“ˆŒÜ˜Ÿ™“<ˆŒÜ$¤\°#·(±(Ó%;Ó<ˆŒÙ+ˆ�‰Õr   c                 ó^   — | ` | `t        | d«      r| j                  j	                  «        | `y y )Nr   )r   r   Úhasattrr   Údestroyr   s    r   ÚtearDownClasszAutoExpandTest.tearDownClass'   s-   € àˆH�c�oÜ�3˜ÔØ�F‰F�N‰NÔØ‘ð r   c                 ó<   — | j                   j                  dd«       y )Nú1.0Úend)r   Údelete)r   s    r   ÚtearDownzAutoExpandTest.tearDown.   s   € Ø�	‰	×Ñ˜ Õ&r   c                 ó<  — | j                   }| j                  j                  }| j                  } | |«       d«       |j	                  dd«        | |«       d«       |j	                  dd«        | |«       d«       |j	                  dd«        | |«       d«       |j	                  dd«        | |«       d«       |j	                  dd«        | |«       d	«       |j                  d
d«        | |«       d«       |j                  dd«        | |«       d«       y )NÚ ÚinsertÚtÚhisÚthisÚ Úisz
sample
stringÚstringz3.0r%   r&   )r   r   ÚgetprevwordÚassertEqualr+   r'   )r   r   ÚpreviousÚequals       r   Útest_get_prevwordz AutoExpandTest.test_get_prevword1   sê   € Ø�y‰yˆØ×#Ñ#×/Ñ/ˆØ× Ñ ˆá‰h‹j˜"Ôà�‰�H˜cÔ"Ù‰h‹j˜#Ôà�‰�H˜eÔ$Ù‰h‹j˜&Ô!à�‰�H˜cÔ"Ù‰h‹j˜"Ôà�‰�H˜dÔ#Ù‰h‹j˜$Ôà�‰�HÐ0Ô1Ù‰h‹j˜(Ô#à�‰�E˜8Ô$Ù‰h‹j˜"Ôà�‰�E˜5Ô!Ù‰h‹j˜"Õr   c                 ó¢  — | j                   j                  }| j                   j                  }| j                  }| j                  j                  dd«        || j                   j                  «       g d¢«        |d«        | |«       d«        |d«        | |«       d«        |d«        | |«       d«        |d«        | |«       d«       y )	Nr+   zab ac bx ad ab a)ÚabÚadÚacÚaÚeventr8   r9   r:   r;   )r   r2   Úexpand_word_eventr3   r   r+   Úgetwords)r   r4   Úexpandr5   s       r   Útest_before_onlyzAutoExpandTest.test_before_onlyM   sª   € Ø×#Ñ#×/Ñ/ˆØ×!Ñ!×3Ñ3ˆØ× Ñ ˆà�	‰	×Ñ˜Ð#5Ô6Ùˆd×Ñ×'Ñ'Ó)Ò+BÔCÙˆwŒÙ‰h‹j˜$ÔÙˆwŒÙ‰h‹j˜$ÔÙˆwŒÙ‰h‹j˜$ÔÙˆwŒÙ‰h‹j˜#Õr   c                 óÊ  — | j                   }| j                  j                  }| j                  j                  }| j                  }|j                  dd«       |j                  dd«        || j                  j                  «       g d¢«        |d«        | |«       d«        |d«        | |«       d«        |d«        | |«       d«        |d«        | |«       d	«       y )
Nr+   z a, [ab] ac: () bx"" cd ac= ad yaz1.1)r8   r:   r9   r;   r<   r8   r:   r9   r;   ©r   r   r2   r=   r3   r+   Úmark_setr>   ©r   r   r4   r?   r5   s        r   Útest_after_onlyzAutoExpandTest.test_after_only]   s»   € à�y‰yˆØ×#Ñ#×/Ñ/ˆØ×!Ñ!×3Ñ3ˆØ× Ñ ˆà�‰�HÐ@ÔAØ�‰�h Ô&Ùˆd×Ñ×'Ñ'Ó)Ò+BÔCÙˆwŒÙ‰h‹j˜$ÔÙˆwŒÙ‰h‹j˜$ÔÙˆwŒÙ‰h‹j˜$ÔÙˆwŒÙ‰h‹j˜#Õr   c                 óÂ  — | j                   }| j                  j                  }| j                  j                  }| j                  }|j                  dd«       |j                  dd«       |j                  dd«        || j                  j                  «       g d¢«        |d«        | |«       d«        |d«        | |«       d«        |d«        | |«       d	«       y )
Nr+   z	ab xy yz
z
a ac by acz2.1)r8   r:   r;   r<   r8   r:   r;   rB   rD   s        r   Útest_both_before_afterz%AutoExpandTest.test_both_before_afterp   sµ   € Ø�y‰yˆØ×#Ñ#×/Ñ/ˆØ×!Ñ!×3Ñ3ˆØ× Ñ ˆà�‰�H˜lÔ+Ø�‰�H˜lÔ+à�‰�h Ô&Ùˆd×Ñ×'Ñ'Ó)Ò+<Ô=ÙˆwŒÙ‰h‹j˜$ÔÙˆwŒÙ‰h‹j˜$ÔÙˆwŒÙ‰h‹j˜#Õr   c                 ó.  — | j                   }| j                  j                  }| j                  } || j                  j	                  «       g «        | |d«      d«       |j                  dd«        || j                  j	                  «       g «       |j                  dd«       |j                  dd«        |d«       | j                  j                  }|j                  dd«        |d«       | j                  j                  }| j                  ||«       y )Nr<   Úbreakr+   z
bx cy dz azac xy a ac ad az1.7z1.end)	r   r   r=   r3   r>   r+   rC   ÚstateÚassertNotEqual)r   r   r?   r5   Úinitial_stateÚ	new_states         r   Útest_other_expand_casesz&AutoExpandTest.test_other_expand_cases‚   sä   € Ø�y‰yˆØ×!Ñ!×3Ñ3ˆØ× Ñ ˆñ 	ˆd×Ñ×'Ñ'Ó)¨2Ô.Ù‰f�W‹o˜wÔ'à�‰�H˜lÔ+Ùˆd×Ñ×'Ñ'Ó)¨2Ô.ð 	�‰�HÐ/Ô0Ø�‰�h Ô&ÙˆwŒØ×(Ñ(×.Ñ.ˆØ�‰�h Ô(ÙˆwŒØ×$Ñ$×*Ñ*ˆ	Ø×Ñ˜M¨9Õ5r   N)r   r   r   Úclassmethodr   r#   r(   r6   r@   rE   rG   rN   r   r   r   r   r      sF   „ àñ,ó ð,ð, ñó ðò'òò8ò ò&ó$6r   r   Ú__main__é   )Ú	verbosity)Ú__doc__Úidlelib.autoexpandr   ÚunittestÚtest.supportr   Útkinterr   r   r   ÚTestCaser   r   Úmainr   r   r   Ú<module>rZ      sP   ðÙ !å )Û Ý !ß ÷ñ ô
I6�X×&Ñ&ô I6ðX ˆzÒØ€H‡M�M˜AÖð r   