ó
_y]c           @   s¬   d  d l  Z  d  d l 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   Z e j j e d d	 d
 e  j f d     Y Z d S(   iÿÿÿÿN(   t   QtCoret   QtGui(   t
   load_qtest(   t   ConsoleWidget(   t   CompletionWidgeti   (   t
   no_displayt   reasons   Doesn't work without a displayt   TestCompletionWidgetc           B   sJ   e  Z e d     Z e d    Z d   Z d   Z d   Z d   Z RS(   c         C   sJ   t  j j   |  _ |  j d k r6 t  j g   |  _ n  |  j j t  d S(   s3    Create the application for the test case.
        N(   R   t   QApplicationt   instancet   _appt   Nonet   setQuitOnLastWindowClosedt   False(   t   cls(    (    sE   lib/python2.7/site-packages/qtconsole/tests/test_completion_widget.pyt
   setUpClass   s    c         C   s   t  j j   d S(   s    Exit the application.
        N(   R   R   t   quit(   R   (    (    sE   lib/python2.7/site-packages/qtconsole/tests/test_completion_widget.pyt   tearDownClass   s    c         C   s   t    |  _ |  j j |  _ d S(   s1    Create the main widgets (ConsoleWidget)
        N(   R   t   consolet   _controlt	   text_edit(   t   self(    (    sE   lib/python2.7/site-packages/qtconsole/tests/test_completion_widget.pyt   setUp"   s    c         C   sH   t  |  j  } | j |  j j   d d d g  |  j | j    d  S(   Nt   item1t   item2t   item3(   R   R   t
   show_itemsR   t
   textCursort
   assertTruet	   isVisible(   R   t   w(    (    sE   lib/python2.7/site-packages/qtconsole/tests/test_completion_widget.pyt   test_droplist_completer_shows(   s    "c         C   sz   t  |  j  } | j |  j j   d d d g  t j | t j j	  t j | t j j
  |  j |  j j   d  d  S(   NR   R   R   (   R   R   R   R   R   t   QTestt   keyClickR    t   Qtt   Key_PageDownt	   Key_Entert   assertEqualt   toPlainText(   R   R   (    (    sE   lib/python2.7/site-packages/qtconsole/tests/test_completion_widget.pyt    test_droplist_completer_keyboard-   s
    "c         C   så   t  j j } t |  j  } | j |  j j   d d d g  t j	 | j
   | d t  j d d  t j | j
   | d t  j d d  t j | j
   | d t  j d d  |  j |  j j   d  |  j | j    d  S(   NR   R   R   t   posi   i   (   R    R"   t
   LeftButtonR   R   R   R   R   R    t
   mouseClickt   viewportt   QPointt   mouseReleaset   mouseDClickR%   R&   t   assertFalseR   (   R   t
   leftButtonR   (    (    sE   lib/python2.7/site-packages/qtconsole/tests/test_completion_widget.pyt!   test_droplist_completer_mousepick4   s    "((((	   t   __name__t
   __module__t   classmethodR   R   R   R   R'   R1   (    (    (    sE   lib/python2.7/site-packages/qtconsole/tests/test_completion_widget.pyR      s   				(   t   unittestt   pytestt   qtconsole.qtR    R   t   qtconsole.qt_loadersR   t   qtconsole.console_widgetR   t   qtconsole.completion_widgetR   t    R   R    t   markt   skipift   TestCaseR   (    (    (    sE   lib/python2.7/site-packages/qtconsole/tests/test_completion_widget.pyt   <module>   s   	