
    z%i                         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ej                        Z G d	 d
ej                        Zedk(  r ej                  d       yy)zTest tree. coverage 56%.    )treeN)requiresgui)Tk	EventTypeSCROLLc                   2    e Zd Zed        Zed        Zd Zy)TreeTestc                 V    t               | _        | j                  j                          y N)r   rootwithdrawclss    O/home/uftp/.pyenv/versions/3.12.0/lib/python3.12/idlelib/idle_test/test_tree.py
setUpClasszTreeTest.setUpClass   s    4    c                 <    | j                   j                          | ` y r   )r   destroyr   s    r   tearDownClasszTreeTest.tearDownClass   s    Hr   c                 .   t        j                  | j                  ddd      }|j                  j	                  ddd       t        j
                  t         j                        }t        j                  |j                  d |      }|j                          y )Nwhiter      )bghighlightthickness	takefocusbothleft)expandfillside)
r   ScrolledCanvasr   framepackFileTreeItemICONDIRTreeNodecanvasr   )selfscitemnodes       r   	test_initzTreeTest.test_init   si      II'a1F
QV&9  .}}RYYd3r   N)__name__
__module____qualname__classmethodr   r   r-    r   r   r
   r
   
   s-       r   r
   c                       e Zd Zd Zy)TestScrollEventc           	           G  fdd      } G 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 ]P  \  }}}}||_        ||_        ||_        t        j                  | |t        |d            }	 j                  |	d       R y )Nc                       e Zd Zd Z fdZy)1TestScrollEvent.test_wheel_event.<locals>._Widgetc                     || _         y r   )expected)widgetr9   s     r   __init__z:TestScrollEvent.test_wheel_event.<locals>._Widget.__init__%   s	    "*r   c                 >    j                  | j                  |       y r   )assertTupleEqualr9   )r:   argsr)   s     r   yviewz7TestScrollEvent.test_wheel_event.<locals>._Widget.yview'   s    %%foot<r   N)r.   r/   r0   r;   r?   )r)   s   r   _Widgetr7   $   s    +=r   r@   c                       e Zd Zy)0TestScrollEvent.test_wheel_event.<locals>._EventN)r.   r/   r0   r2   r   r   _EventrB   *   s    r   rC   x   i      unitsbreak)
r   
MouseWheelButtonPresstypedeltanumr   wheel_eventr   assertEqual)
r)   r@   rC   testseventtyrN   rO   amountress
   `         r   test_wheel_eventz TestScrollEvent.test_wheel_event"   s    	= 	=	 	 &&R4&&b!4''Q3''Q24
 &+ 	+"BsFEJEKEI""5'&&'*JKCS'*	+r   N)r.   r/   r0   rW   r2   r   r   r4   r4       s    +r   r4   __main__   )	verbosity)__doc__idlelibr   unittesttest.supportr   tkinterr   r   r   TestCaser
   r4   r.   mainr2   r   r   <module>rb      s_       !  ) )x   ,+h'' +6 zHMMA r   