o
    JAf                     @   s   d Z ddlmZ ddlZddlmZ ed ddlmZmZm	Z	 G dd dej
ZG d	d
 d
ej
Zedkr>ejdd dS dS )zTest tree. coverage 56%.    )treeN)requiresZgui)Tk	EventTypeSCROLLc                   @   s,   e Zd Zedd Zedd Zdd ZdS )TreeTestc                 C   s   t  | _| j  d S N)r   rootZwithdrawcls r   2/usr/lib/python3.10/idlelib/idle_test/test_tree.py
setUpClass   s   zTreeTest.setUpClassc                 C   s   | j   | ` d S r   )r	   Zdestroyr
   r   r   r   tearDownClass   s   
zTreeTest.tearDownClassc                 C   sN   t j| jdddd}|jjdddd t t j}t |jd |}|	  d S )NZwhiter      )bgZhighlightthicknessZ	takefocusZbothleft)expandfillZside)
r   ZScrolledCanvasr	   framepackZFileTreeItemZICONDIRZTreeNodeZcanvasr   )selfZscitemZnoder   r   r   	test_init   s   
zTreeTest.test_initN)__name__
__module____qualname__classmethodr   r   r   r   r   r   r   r   
   s    

r   c                   @   s   e Zd Zdd ZdS )TestScrollEventc           
         s   G  fddd}G dd d}t jdddft jddd	ft jdd
dft jdd	d	ff}| }|D ]\}}}}||_||_||_t||t|d}	 	|	d q/d S )Nc                       s    e Zd Zdd Z fddZdS )z1TestScrollEvent.test_wheel_event.<locals>._Widgetc                 W   s
   || _ d S r   )expected)widgetr   r   r   r   __init__%   s   
z:TestScrollEvent.test_wheel_event.<locals>._Widget.__init__c                    s     | j| d S r   )ZassertTupleEqualr   )r    argsr   r   r   yview'   s   z7TestScrollEvent.test_wheel_event.<locals>._Widget.yviewN)r   r   r   r!   r$   r   r#   r   r   _Widget$   s    r%   c                   @   s   e Zd ZdS )z0TestScrollEvent.test_wheel_event.<locals>._EventN)r   r   r   r   r   r   r   _Event*   s    r&   x   i      Zunitsbreak)
r   Z
MouseWheelZButtonPresstypedeltanumr   Zwheel_eventr   ZassertEqual)
r   r%   r&   Ztestseventtyr.   r/   amountresr   r#   r   test_wheel_event"   s   z TestScrollEvent.test_wheel_eventN)r   r   r   r4   r   r   r   r   r       s    r   __main__   )	verbosity)__doc__Zidlelibr   ZunittestZtest.supportr   tkinterr   r   r   ZTestCaser   r   r   mainr   r   r   r   <module>   s    