
    ;eg                     v   d Z ddlmZ ddlZddlmZ ddlmZmZ ddlm	Z	 ddlm
Z
 ddlmZ dd	lmZ ej        j        Z e
j        d
           e
j        d
           e
j        d
           e
j        d
          dZdZ G d d          Z G d dej                  Zedk    r ej        d           dS dS )zTest zzdummy, coverage 100%.    )zzdummyN)requires)TkText)mock)config)editor)format )main	highlightkeys
extensionszd
class C1:
    # Class comment.
    def __init__(self, a, b):
        self.a = a
        self.b = b
c                   ,    e Zd Zej        j        Zd ZdS )DummyEditwinc                     || _         || _        || _        t          j        |           | _        t          j                    | j        _        t          j                    | j        _	        d S N)
roottoptextr
   FormatRegionfregionr   Mockundo_block_startundo_block_stop)selfr   r   s      5/usr/lib/python3.11/idlelib/idle_test/test_zzdummy.py__init__zDummyEditwin.__init__    sO    		*400%)Y[[	"$(IKK	!!!    N)__name__
__module____qualname__r	   EditorWindowget_selection_indicesr    r   r   r   r      s/        "/E0 0 0 0 0r   r   c                   j    e Zd Zed             Zed             Zd Zd Zd Zd Z	d Z
d Zd	 Zd
 ZdS )ZZDummyTestc                    t          d           t                      x}| _        |                                 t	          | j                  x}| _        t          ||          | _        t          t          j
        _        d S )Ngui)r   r   r   withdrawr   r   r   r	   testcfgr   idleConfuserCfg)clsr   r   s      r   
setUpClasszZZDummyTest.setUpClass+   s`    $$sxsx..(sx!$--
#*   r   c                    t           t          j        _        | `| `| j                                         | j        j        	                    dd          D ]}| j        
                    |           | j                                         | `d S )Nafterinfo)usercfgr   r,   r-   r	   r   r   update_idletaskstkcallafter_canceldestroy)r.   ids     r   tearDownClasszZZDummyTest.tearDownClass4   s    #* J!!###(+""7F33 	& 	&BH!!"%%%%HHHr   c                    | j         }|                    dt                     |j                                         |j                                         t          j        | j                  x}| _	        dt          j        _
        d S )N1.0
# ignore #)r   insertcode_sampler   
reset_mockr   r   ZzDummyr	   zzztext)r   r   rB   s      r   setUpzZZDummyTest.setUp>   so    yE;'''((***'')))t{333TW ,r   c                 @    | j                             dd           | `d S )Nr<   end)r   deleterB   r   s    r   tearDownzZZDummyTest.tearDownF   s#    	&&&GGGr   c                    t          t          |                    d                              }g }t          d|          D ]F}|                    | d| d          }|                    |                    |                     G|S )NrF      z.0z.end)intfloatindexrangegetappend
startswith)r   r   valueend_lineactuallinetxts          r   
checklineszZZDummyTest.checklinesJ   s    uTZZ..//00 !X&& 	1 	1D((d;;;466CMM#..//0000r   c                     | j         }|                     |j        | j                   |                     |j        | j        j                   d S r   )rB   assertEqualeditwinr	   r   )r   rB   s     r   	test_initzZZDummyTest.test_initU   sF    WT[111$+"233333r   c                    |                      | j        j        d           t          d                             ddd           t
          j                                         |                      | j        j        d           d S )Nr=   r   rA   zz-textspam)rZ   rB   rC   r+   	SetOptionr   rA   reloadrH   s    r   test_reloadzZZDummyTest.test_reloadZ   sm    555''	8VDDD   /////r   c                    | j         }| j        }|j        } || j        j        d           g d}|                     ||j                  } |||           |                    ddd            ||                                d           g d}|                     ||j                  } |||           |j                                         |j	                                         d S )Nr=   )FFFFFFFsel2.04.endbreak)FTTTFFF)
rZ   rB   r   rC   rX   tag_add
z_in_eventr   assert_called_oncer   r   eqrB   r   expectedrU   s         r   test_z_in_eventzZZDummyTest.test_z_in_event`   s    Ww
47=,''' EDDrx00
8VUE7+++
2==??G$$$AAArx00
8V00222//11111r   c                 h   | j         }| j        }|j        } || j        j        d           |                    ddd           |                                 |j                                         |j                                         |	                    ddd           |                    ddd            ||
                                d	           g d
}|                     ||j                  } |||           |j                                         |j                                         d S )Nr=   rc   rd   z5.endr<   rF   z3.0re   rf   )FTFFTFF)rZ   rB   r   rC   rg   rh   r   r@   r   
tag_removez_out_eventrX   ri   rj   s         r   test_z_out_eventzZZDummyTest.test_z_out_eventt   s)   Ww
47=,''' 	UE7+++
((***''))) 	ue,,,UE7+++
2>>W%%%BBBrx00
8V00222//11111r   c                     | j         }|j        }|                    ddd           |                                 |                                 |                     |                    dd          t                     d S )Nrc   r<   zend-1c)rB   r   rg   rh   rp   rZ   rP   r?   )r   rB   r   s      r   test_roundtripzZZDummyTest.test_roundtrip   sm    WwUE8,,,

%22K@@@@@r   N)r    r!   r"   classmethodr/   r:   rD   rI   rX   r\   ra   rm   rq   rs   r%   r   r   r'   r'   )   s        + + [+   [- - -  	 	 	4 4 4
0 0 02 2 2(2 2 2.	A 	A 	A 	A 	Ar   r'   __main__   )	verbosity)__doc__idlelibr   unittesttest.supportr   tkinterr   r   r   r   r	   r
   r,   r-   r3   IdleUserConfParserr+   r?   r   TestCaser'   r    r   r%   r   r   <module>r      s            ! ! ! ! ! !                                 

"%F%b))**2..%F%b))+&+B//	 0 0 0 0 0 0 0 0kA kA kA kA kA(# kA kA kA\ zHMA r   