B YI~d��@s�ddlmZddlZddlmZddlZddlmZddl mZ ddl m Z dZ dZGdd �d ej�ZGd d �d �ZGd d �d ej�Zedkr�ejddd�dS)�)�HistoryN)�requires)�Text)�idleConfza = 7zb = ac@s@eZdZedd��Zdd�Zdd�Zdd�Zd d �Zd d �Z d S)� StoreTestcCst�|_t|j�|_dS)N)�mkText�textr�history)�cls�r �C/opt/alt/python37/lib64/python3.7/idlelib/idle_test/test_history.py� setUpClassszStoreTest.setUpClasscCs|j�dd�g|j_dS)Nz1.0�end)r�deleter )�selfr r r �tearDownszStoreTest.tearDownc Cs`|�|jj|j�|�|jjg�|�|jj�|�|jj�|�|jjt� ddddd��dS)N�mainr�cyclic��bool) ZassertIsr r� assertEqual� assertIsNone�prefix�pointerrrZ GetOption)rr r r � test_inits  zStoreTest.test_initcCs<|j�d�|�|jjg�|j�d�|�|jjg�dS)N�az a )r �storer)rr r r �test_store_short$s  zStoreTest.test_store_shortcCsb|j�t�|�|jjtg�|j�t�|�|jjttg�|j�t�|�|jjttg�dS)N)r r�line1r�line2)rr r r �test_store_dup*s    zStoreTest.test_store_dupcCs<t|j_d|j_|j�t�|�|jj�|�|jj�dS)Nr)rr rrrrr)rr r r �test_store_reset2s  zStoreTest.test_store_resetN) �__name__� __module__� __qualname__� classmethodr rrrr r!r r r r rs  rc@s$eZdZdd�Zdd�Zdd�ZdS)� TextWrappercCst|d�|_d|_dS)N)�masterF)�tkTextr�_bell)rr'r r r �__init__;s zTextWrapper.__init__cCs t|j|�S)N)�getattrr)r�namer r r � __getattr__>szTextWrapper.__getattr__cCs d|_dS)NT)r))rr r r �bell@szTextWrapper.bellN)r"r#r$r*r-r.r r r r r&:sr&c@s�eZdZedd��Zdd�Zedd��Zdd�d d �Zd d �Zd d�Z dd�Z dd�Z dd�Z dd�Z dd�Zdd�Zdd�ZdS)� FetchTestcCs td�t��|_|j��dS)NZgui)r�tkZTk�rootZwithdraw)r r r r r Gs zFetchTest.setUpClasscCsNt|j�|_}|�dd�|�dd�|�dd�t|�|_tt g|j_dS)Nz1.0z>>> �iomarkz1.4�left) r&r1r�insert�mark_setZ mark_gravityrr rr)rrr r r �setUpMs     zFetchTest.setUpcCs|j��|`dS)N)r1Zdestroy)r r r r � tearDownClassUs zFetchTest.tearDownClassF)r.cCsv|j}|�|�|j}||j�dd�|�||jj|�|rDd|j_||j|�||j|�||j�ddd�d�dS)Nr2zend-1cFr4z==r) r �fetchrr�getr)rrZcompare)r�reverse�liner�indexr.rZEqualr r r � fetch_testZs   zFetchTest.fetch_testcCs<d}|j}|dt|d�|dt|d�|d|dddd�dS)N�Trr)r.)r=rr)rr�testr r r �test_fetch_prev_cyclicjs z FetchTest.test_fetch_prev_cycliccCs<d}|j}|dt|d�|dt|d�|d|dddd�dS)Nr>FrrT)r.)r=rr)rrr?r r r �test_fetch_next_cyclicqs z FetchTest.test_fetch_next_cycliccCs:d}|j�d|�|�dt|d�|jd|dddd�dS)Nrr2Tr)r.)rr4r=r)rrr r r �test_fetch_prev_prefixysz FetchTest.test_fetch_prev_prefixcCs:d}|j�d|�|�dt|d�|jd|dddd�dS)Nrr2FrT)r.)rr4r=r)rrr r r �test_fetch_next_prefixsz FetchTest.test_fetch_next_prefixcCsDd}d|j_|j}|dt|d�|dt|d�|dt|ddd�dS)Nr>FTrr)r.)r rr=rr)rrr?r r r �test_fetch_prev_noncyclic�s z#FetchTest.test_fetch_prev_noncycliccCsZd}d|j_|j}|d|dddd�|dt|d�|d|dddd�|d|dddd�dS)Nr>FT)r.r)r rr=r)rrr?r r r �test_fetch_next_noncyclic�sz#FetchTest.test_fetch_next_noncycliccCs4|jjdd�|j�dd�|jdtdddd�dS)NT)r:r4r2)r.)r r8rr5r=r)rr r r �test_fetch_cursor_move�sz FetchTest.test_fetch_cursor_movecCs>|jjdd�|j�dd�|j�dd�|�dtdd�dS)NT)r:r2r4za =r)r r8rrr4r=r)rr r r �test_fetch_edit�szFetchTest.test_fetch_editcCs<|j�d�|�|jjd�|j�d�|�|jjd�dS)Nz dummy eventr)r Z history_prevrrZ history_next)rr r r �test_history_prev_next�s  z FetchTest.test_history_prev_nextN)r"r#r$r%r r6r7r=r@rArBrCrDrErFrGrHr r r r r/Ds   r/�__main__�)� verbosity�exit)Zidlelib.historyrZunittestZ test.supportrZtkinterr0rr(Zidlelib.idle_test.mock_tkrZidlelib.configrrrZTestCaserr&r/r"rr r r r �s     * g