
    /hhe                         S SK Jr  S SKrS SKJr  S SKJr   " S S\R                  5      r " S S\R                  5      r	 " S	 S
\R                  5      r
\S:X  a  \R                  " SS9  gg)    )pyshellN)requires)Tkc                        \ rS rSrS rS rSrg)FunctionTest
   c           
      "   U R                   nS Hk  u  p#nSnUS-  nU R                  X&S9   U=(       d    Sn[        R                  " XR5      nU" [	        U5      U5        U" XvU-    SU SU 35        S S S 5        Mm     g ! , (       d  f       M  = f)N))    r
   )finame   =<   r   )filebarShellz
 RESTART:  )assertEqualsubTestr   restart_linelen)selfeqr   mulextrawidthr   lines           G/opt/python-3.13.8/usr/lib/python3.13/idlelib/idle_test/test_pyshell.pytest_restart_line_wide#FunctionTest.test_restart_line_wide   s     CDuE)C41w++E83t9e$4I;jau=>	 21 !D 21s   AA??
B	c                 *   Su  pUS-
  X"S-   4 HB  nU R                  US9   U R                  [        R                  " US5      U5        S S S 5        MD     U R                  [        R                  " US-   S5      US-   5        g ! , (       d  f       M  = f)N)z= RESTART: Shell      )r   r
      z =)r   r   r   r   )r   expecttaglenr   s       r   test_restart_line_narrow%FunctionTest.test_restart_line_narrow   s    /Qhq1EE*  !5!5eR!@&I +* 2 	--fQh;VD[I +*s   (B
B	 N)__name__
__module____qualname____firstlineno__r   r'   __static_attributes__r)       r   r   r   
   s    	?Jr/   r   c                   :    \ rS rSr\S 5       r\S 5       rS rSrg)PyShellFileListTest    c                 l    [        S5        [        5       U l        U R                  R                  5         g )Ngui)r   r   rootwithdrawclss    r   
setUpClassPyShellFileListTest.setUpClass"   s"    4r/   c                 <    U R                   R                  5         U ? g N)r5   destroyr7   s    r   tearDownClass!PyShellFileListTest.tearDownClass(   s    
 	Hr/   c                     [         R                  " U R                  5      nU R                  UR                  [         R
                  5        U R                  UR                   5        g r<   )r   PyShellFileListr5   r   EditorWindowPyShellEditorWindowassertIsNone)r   psfls     r   	test_initPyShellFileListTest.test_init0   sD    &&tyy1**G,G,GH$,,'r/   r)   N)	r*   r+   r,   r-   classmethodr9   r>   rF   r.   r)   r/   r   r1   r1       s-     
  (r/   r1   c                   |    \ rS rSr\R
                  R                  rS rS r	S r
S rS rS rS rS	 rS
 rS rSrg)4PyShellRemoveLastNewlineAndSurroundingWhitespaceTest?   c                 \    U R                  SU R                  R                  SU5      5        g Nr
   r   regexpsubr   texts     r   all_removed@PyShellRemoveLastNewlineAndSurroundingWhitespaceTest.all_removedB   s!    T[[__R67r/   c                 Z    U R                  XR                  R                  SU5      5        g rM   rN   rQ   s     r   none_removedAPyShellRemoveLastNewlineAndSurroundingWhitespaceTest.none_removedE   s    {{r489r/   c                 Z    U R                  X R                  R                  SU5      5        g rM   rN   )r   rR   expecteds      r   check_resultAPyShellRemoveLastNewlineAndSurroundingWhitespaceTest.check_resultH   s    ;;??2t#<=r/   c                 &    U R                  S5        g rM   rS   r   s    r   
test_empty?PyShellRemoveLastNewlineAndSurroundingWhitespaceTest.test_emptyK   s    r/   c                 &    U R                  S5        g )N
r]   r^   s    r   test_newlineAPyShellRemoveLastNewlineAndSurroundingWhitespaceTest.test_newlineN   s    r/   c                    U R                  S5        U R                  S5        U R                  S5        U R                  S5        U R                  S5        U R                  S5        U R                  S5        U R                  S5        U R                  S	5        U R                  S
5        U R                  S5        U R                  S5        g )Nr   z  z   z                    	z		z			z																				z	 z 	z 	 	 z	 	 	r]   r^   s    r   test_whitespace_no_newlineOPyShellRemoveLastNewlineAndSurroundingWhitespaceTest.test_whitespace_no_newlineQ   s    " "##$r/   c                 $   U R                  S5        U R                  S5        U R                  S5        U R                  S5        U R                  S5        U R                  S5        U R                  S5        U R                  S5        U R                  S	5        U R                  S
5        U R                  S5        U R                  S5        U R                  S5        U R                  S5        U R                  S5        U R                  S5        g )N 
	
z 	
z	 
z
 z
	z
 	z
	 z 
 z	
 z 
	z	
	z	 	 	
z 	 	 
z
	 	 	z
 	 	 r]   r^   s    r   test_newline_with_whitespaceQPyShellRemoveLastNewlineAndSurroundingWhitespaceTest.test_newline_with_whitespace_   s     !! !! !!"&%&%r/   c                    U R                  SS5        U R                  SS5        U R                  SS5        U R                  SS5        U R                  SS5        U R                  S	S
5        U R                  SS
5        U R                  SS
5        U R                  SS5        U R                  SS5        U R                  SS5        U R                  S	S
5        U R                  SS5        g )Nz

rb   z




z



z




	z



















z


















z



















 z 
 
 rj   z 

 z 

z	

rk   z

 z

	z	
	
	)rZ   r^   s    r   test_multiple_newlinesKPyShellRemoveLastNewlineAndSurroundingWhitespaceTest.test_multiple_newlinesq   s    &$'(H-/84)Y//95)U+(E*'5)(F+'4((D))U+,/r/   c                 B   U R                  S5        U R                  SS5        U R                  SS5        U R                  SS5        U R                  SS5        U R                  S5        U R                  SS5        U R                  S5        U R                  S	S5        g )
Naza
za
 za 
 za 
	-z-
.z.
rV   rZ   r^   s    r   test_non_whitespaceHPyShellRemoveLastNewlineAndSurroundingWhitespaceTest.test_non_whitespace   s    #%%&#&'3'(C(#%%#%%r/   c                     U R                  S5        U R                  S5        U R                  SS5        U R                  S5        U R                  SS5        g )Nz
z
z 
z
 ru   r^   s    r   test_unsupported_whitespacePPyShellRemoveLastNewlineAndSurroundingWhitespaceTest.test_unsupported_whitespace   sL    $&!&$''"'4(r/   r)   N)r*   r+   r,   r-   r   PyShell_last_newline_rerO   rS   rV   rZ   r_   rc   rg   rl   ro   rv   rz   r.   r)   r/   r   rJ   rJ   ?   sC    __--F8:>%&$0	&)r/   rJ   __main__r$   )	verbosity)idlelibr   unittesttest.supportr   tkinterr   TestCaser   r1   rJ   r*   mainr)   r/   r   <module>r      si      ! J8$$ J,((++ (>Q)8;L;L Q)h zMMA r/   