a
    •ax  ã                   @   sb   d Z ddlmZmZ ddlZddlmZ ejdd„ ƒZdd„ Z	d	d
„ Z
dd„ Zedkr^e ¡  dS )z#
Tests for QtAwesome Icon Browser.
é    )ÚQtCoreÚ	QtWidgetsN)ÚIconBrowserc                 C   s   t ƒ }|  |¡ | ¡  |S ©N)r   Z
add_widgetZshow)ÚqtbotÚbrowser© r   ú@lib/python3.9/site-packages/qtawesome/tests/test_icon_browser.pyr      s    
r   c                    s6   ‡ fdd„}t  ¡ }|j |¡ | d¡ | ¡  dS )z0
    Ensure the browser opens without error
    c                      s   ˆ   ¡  d S r   )Úcloser   ©r   r   r	   r
      s    z test_browser_init.<locals>.closeiÐ  N)r   ZQTimerÚtimeoutZconnectZsetSingleShotÚstart)r   r
   Ztimerr   r   r	   Útest_browser_init   s
    
r   c                 C   sš   t j ¡  ¡ }| d¡ | ¡ dks(J ‚|  |jd¡ |  |jt	j
j¡ |j ¡ }|j ¡ }| | dd¡t	jj¡ |  |jt	j
j¡ d| ¡ v s–J ‚dS )z"
    Ensure the copy UX works
    Ú Úgoogler   N)r   ZQApplicationÚinstanceÚ	clipboardZsetTextÚtextÚ	keyClicksÚ	_lineEditÚkeyPressr   ÚQtÚ	Key_EnterÚ	_listViewÚmodelÚselectionModelZsetCurrentIndexÚindexZQItemSelectionModelZClearAndSelectZ
mouseClickZ_copyButtonZ
LeftButton)r   r   r   r   r   r   r   r	   Ú	test_copy"   s    


r   c                 C   sX   |j  ¡  ¡ }|dksJ ‚|  |jd¡ |  |jtjj¡ |j  ¡  ¡ }||ksTJ ‚dS )z$
    Ensure the filter UX works
    r   r   N)	r   r   ZrowCountr   r   r   r   r   r   )r   r   ZinitRowCountZfilteredRowCountr   r   r	   Útest_filter<   s    r   Ú__main__)Ú__doc__Zqtpyr   r   ZpytestZqtawesome.icon_browserr   Zfixturer   r   r   r   Ú__name__Úmainr   r   r   r	   Ú<module>   s   
