
    /hh	                         S SK Jr  S SKrS SKJr  S SKJr  S SKJr  S SK J	r	  S SK
Jr  S SKJrJr   " S	 S
\R                  5      rS r " S S\R                  5      r\S:X  a  \R(                  " SS9  gg)    )iomenuN)requires)Tk)EditorWindow)util)Func)opendetect_encodingc                   @    \ rS rSr\S 5       r\S 5       rS rS rSr	g)IOBindingTest   c                     [        S5        [        5       U l        U R                  R                  5         [	        U R                  S9U l        [        R                  " U R
                  5      U l        g )Ngui)root)	r   r   r   withdrawr   editwinr   	IOBindingio)clss    F/opt/python-3.13.8/usr/lib/python3.13/idlelib/idle_test/test_iomenu.py
setUpClassIOBindingTest.setUpClass   sH    4"1!!#++.    c                 l   U R                   R                  5         U R                  R                  5         U ?U R                  R                  5         U R                  R                  R                  SS5       H  nU R                  R                  U5        M      U R                  R                  5         U ?g )Nafterinfo)
r   closer   _closer   update_idletaskstkcallafter_canceldestroy)r   ids     r   tearDownClassIOBindingTest.tearDownClass   sz    K!!#((++""7F3BHH!!"% 4Hr   c                 d    U R                  U R                  R                  U R                  5        g )N)assertIsr   r   selfs    r   	test_initIOBindingTest.test_init'   s    dggoot||4r   c                    U R                   nU R                  nUR                  nUR                  R                  nS U R                  l        Sn[        US9U R                  l        U" U" 5       U5        U R                  ?U R                  ?UR                  SS5        U" U" 5       SUR                  -   5        U" UR                  SS5      S5        U" U" 5       SUR                  -   5        g )Nz>>> if 1)resultg      ?az1.0zend-1cza
)assertEqualr   fixnewlinesr   textinterpr   get_prompt_textinserteol_conventionget)r*   eqr   fixr2   	shelltexts         r   test_fixnewlines_end"IOBindingTest.test_fixnewlines_end*   s    WWnnzz #	'+9'=$
35)LL!=C
35#b'''(
488E8$e,
35#b'''(r    N)
__name__
__module____qualname____firstlineno__classmethodr   r%   r+   r;   __static_attributes__r=   r   r   r   r      s2    / /  5)r   r   c                 ^   ^  [        U 4S j[        R                  R                   5       5      $ )Nc              3   :   >#    U  H  nS T 3US   ;   v   M     g7f)*   Nr=   ).0filetype_tuple	extensions     r   	<genexpr>*_extension_in_filetypes.<locals>.<genexpr>>   s(      8N I;>!,,8s   )anyr   r   	filetypesrJ   s   `r   _extension_in_filetypesrP   =   s)     $..88  r   c                   &    \ rS rSrS rS rS rSrg)FiletypesTestD   c                     [         R                   H5  nU R                  US9   U R                  [	        U5      5        S S S 5        M7     g ! , (       d  f       MI  = f)NrO   )r   py_extensionssubTest
assertTruerP   )r*   rJ   s     r   test_python_source_files&FiletypesTest.test_python_source_filesE   sC    ++I	2+I6 32 ,22s   A
A	c                 8    U R                  [        S5      5        g )Nz.txtrW   rP   r)   s    r   test_text_filesFiletypesTest.test_text_filesL   s    /78r   c                 8    U R                  [        S5      5        g )N r[   r)   s    r   test_all_filesFiletypesTest.test_all_filesO   s    /34r   r=   N)r>   r?   r@   rA   rX   r\   r`   rC   r=   r   r   rR   rR   D   s    95r   rR   __main__   )	verbosity)idlelibr   unittesttest.supportr   tkinterr   idlelib.editorr   r   idlelib.idle_test.mock_idler   tokenizer	   r
   TestCaser   rP   rR   r>   mainr=   r   r   <module>rn      sf      !  '  ,
 +()H%% ()V5H%% 5 zMMA r   