
   G;                       	 d dl mZ d dlZd dlmZ d dlZd dlmZ d dl	mZ
 d dlmZ dZdZ G d d	ej                  Z G d
 d          Z G d dej                  Zedk    r ej        dd           dS dS )    )HistoryN)requires)Text)idleConfza = 7zb = ac                   D    e Zd Z	 ed             Zd Zd Zd Zd Zd Z	dS )	StoreTestc                 ^    t                      | _        t          | j                  | _        d S N)mkTexttextr   historyclss    l/nix/store/c6yb989sl77467xxwhylnkph1pqyi47p-python3-3.11.15/lib/python3.11/idlelib/idle_test/test_history.py
setUpClasszStoreTest.setUpClass   s"    88ch''    c                 T    | j                             dd           g | j        _        d S )N1.0end)r   deleter   selfs    r   tearDownzStoreTest.tearDown   s*    	&&&!r   c           
      x   |                      | j        j        | j                   |                     | j        j        g            |                     | j        j                   |                     | j        j                   |                     | j        j        t          j	        ddddd                     d S )Nmainr   cyclic   bool)
assertIsr   r   assertEqualassertIsNoneprefixpointerr   r   	GetOptionr   s    r   	test_initzStoreTest.test_init   s    dl'333-r222$,-...$,.///,"69xFKK	M 	M 	M 	M 	Mr   c                     | j                             d           |                     | j         j         g            | j                             d           |                     | j         j         g            d S )Naz  a  )r   storer    r   s    r   test_store_shortzStoreTest.test_store_short$   sj    3-r2227###-r22222r   c                    | j                             t                     |                     | j         j         t          g           | j                             t                     |                     | j         j         t          t          g           | j                             t                     |                     | j         j         t          t          g           d S r
   )r   r(   line1r    line2r   s    r   test_store_dupzStoreTest.test_store_dup*   s    5!!!-w7775!!!-u~>>>5!!!-u~>>>>>r   c                     t           | j        _        d| j        _        | j                            t
                     |                     | j        j                   |                     | j        j                   d S )Nr   )r+   r   r"   r#   r(   r,   r!   r   s    r   test_store_resetzStoreTest.test_store_reset2   sd    # 5!!!$,-...$,./////r   N)
__name__
__module____qualname__classmethodr   r   r%   r)   r-   r/    r   r   r   r      s~        A( ( [(" " "M M M3 3 3? ? ?0 0 0 0 0r   r   c                        e Zd Zd Zd Zd ZdS )TextWrapperc                 >    t          |          | _        d| _        d S )N)masterF)tkTextr   _bell)r   r8   s     r   __init__zTextWrapper.__init__;   s    &)))	


r   c                 ,    t          | j        |          S r
   )getattrr   )r   names     r   __getattr__zTextWrapper.__getattr__>   s    ty$'''r   c                     d| _         d S )NT)r:   r   s    r   bellzTextWrapper.bell@   s    


r   N)r0   r1   r2   r;   r?   rA   r4   r   r   r6   r6   :   sA          ( ( (    r   r6   c                       e Zd Z	 ed             Zd Zed             ZdddZd Zd Z	d	 Z
d
 Zd Zd Zd Zd Zd ZdS )	FetchTestc                     t          d           t          j                    | _        | j                                         d S )Ngui)r   tkTkrootwithdrawr   s    r   r   zFetchTest.setUpClassG   s4    577r   c                    t          | j                  x| _        }|                    dd           |                    dd           |                    dd           t          |          | _        t          t          g| j        _        d S )Nr   z>>> iomarkz1.4left)
r6   rH   r   insertmark_setmark_gravityr   r   r+   r,   )r   r   s     r   setUpzFetchTest.setUpM   sw    &ty111	DE6"""h&&&(F+++t}} %u~r   c                 <    | j                                          | ` d S r
   )rH   destroyr   s    r   tearDownClasszFetchTest.tearDownClassU   s    HHHr   FrA   c                d   | j         } |j        |           | j        } || j                            dd          |            || j        j        |           |rd| j        _         ||j        |            ||j        |            || j                            ddd          d           d S )NrK   zend-1cFrM   z==r   )	r   fetchr    r   getr:   r"   r#   compare)r   reverseliner"   indexrA   r   Equals           r   
fetch_testzFetchTest.fetch_testZ   s     ,g dimmHh//666diot$$$ 	$#DIOgnf%%%gou%%%di$991=====r   c                     d}| j         } |dt          |d            |dt          |d            |d|d d d           d S )N Tr   r   rT   )r]   r,   r+   r   r"   tests      r   test_fetch_prev_cyclicz FetchTest.test_fetch_prev_cyclicj   s[    T5&!$$$T5&!$$$T64D111111r   c                     d}| j         } |dt          |d            |dt          |d            |d|d d d           d S )Nr_   Fr   r   TrT   )r]   r+   r,   r`   s      r   test_fetch_next_cyclicz FetchTest.test_fetch_next_cyclicq   s[    UE61%%%UE61%%%UFD$T222222r   c                     d}| j                             d|           |                     dt          |d           |                     d|d d d           d S )Nr'   rK   Tr   rT   r   rM   r]   r+   r   r"   s     r   test_fetch_prev_prefixz FetchTest.test_fetch_prev_prefixy   sY    	6***eVQ///fdDt<<<<<r   c                     d}| j                             d|           |                     dt          |d           |                     d|d d d           d S )Nr'   rK   Fr   TrT   rf   rg   s     r   test_fetch_next_prefixz FetchTest.test_fetch_next_prefix   sY    	6***ufa000vtT=====r   c                     d}d| j         _        | j        } |dt          |d            |dt          |d            |dt          |dd           d S )Nr_   FTr   r   rT   )r   r   r]   r,   r+   r`   s      r   test_fetch_prev_noncyclicz#FetchTest.test_fetch_prev_noncyclic   se    #T5&!$$$T5&!$$$T5&!$//////r   c                     d}d| j         _        | j        } |d|d d d            |dt          |d            |d|d d d            |d|d d d           d S )Nr_   FTrT   r   )r   r   r]   r,   r`   s      r   test_fetch_next_noncyclicz#FetchTest.test_fetch_next_noncyclic   s    #UFD$T2222T5&!$$$UFD$T2222UFD$T222222r   c                     | j                             d           | j                            dd           |                     dt
          d d d           d S )NTrY   rM   rK   rT   )r   rV   r   rN   r]   r,   r   s    r   test_fetch_cursor_movez FetchTest.test_fetch_cursor_move   sU    4(((	8X...eT4d;;;;;r   c                     | j                             d           | j                            dd           | j                            dd           |                     dt          dd           d S )NTrp   rK   rM   za =r   )r   rV   r   r   rM   r]   r+   r   s    r   test_fetch_editzFetchTest.test_fetch_edit   si    4(((	8...	5)))eUA.....r   c                     | j                             d           |                     | j         j        d           | j                             d           |                     | j         j        d            d S )Nzdummy eventr   )r   history_prevr    r#   history_nextr   s    r   test_history_prev_nextz FetchTest.test_history_prev_next   sj    !!-000-q111!!-000-t44444r   N)r0   r1   r2   r3   r   rP   rS   r]   rb   rd   rh   rj   rl   rn   rq   rs   rw   r4   r   r   rC   rC   D   s         [
. . .   [ @E > > > > > 2 2 23 3 3= = => > >0 0 03 3 3< < </ / /5 5 5 5 5r   rC   __main__   )	verbosityexit)idlelib.historyr   unittesttest.supportr   tkinterrF   r   r9   idlelib.idle_test.mock_tkr   idlelib.configr   r+   r,   TestCaser   r6   rC   r0   r   r4   r   r   <module>r      s?    # # # # # #  ! ! ! ! ! !     " " " " " " 4 4 4 4 4 4 # # # # # #'0 '0 '0 '0 '0! '0 '0 '0T       d5 d5 d5 d5 d5! d5 d5 d5N zHMAA&&&&&& r   