
    %
ii                        d dl Z d dlZd dlZd dlZd dlZd dlZd dlZ G d dej                  Z G d dej                  Z	 G d dej                  Z
 G d d	ej                  Zed
k    r ej                     dS dS )    Nc                       e Zd Zd ZdS )TestPyGetStringc                     |                      t          t          j        d           |                      t          t          j        d           |                      t          t          j        dd           d S )Nr      )assertRaises
ValueErrorwin32guiPyGetStringselfs    C:\Users\Dell Inspiron 16\Desktop\tws\AgrotaPowerBi\back-agrota-powerbi\mcp-client-agrota\venv\Lib\site-packages\win32/test/test_win32gui.pytest_get_stringzTestPyGetString.test_get_string   s[    *h&:A>>>*h&:A>>>*h&:AqAAAAA    N)__name__
__module____qualname__r    r   r   r   r      s(        B B B B Br   r   c                   ,    e Zd Zd Zd Zd Zd Zd ZdS )TestPyGetMemoryc                 2   d}t          j         d|          }|                                \  }}t          j        ||          }|                     t          |          t          |                     |                     t          |          |           d S )N    b)arraybuffer_infor	   PyGetMemoryassertEquallenbytesr   	test_datacaddrbuflengots         r   test_obzTestPyGetMemory.test_ob   s    %	KY''}}f"400S3y>>222sY/////r   c                     d}t          j         d|          }|                                \  }}t          j        ||          }|                     |d         d           d S )Nr   r   r   r   r   r	   r   r   r   s         r   test_memory_indexz!TestPyGetMemory.test_memory_index   s[    %	KY''}}f"400Q#####r   c                     d}t          j         d|          }|                                \  }}t          j        ||          }|                     t          |dd                   g d           d S )Nr   r   r      )r   r      )r   r   r	   r   r   listr   s         r   test_memory_slicez!TestPyGetMemory.test_memory_slice&   si    %	KY''}}f"400c!A#h33333r   c                    d}t          j         d|          }|                                \  }}t          j        ||          }|                     |d         d           d|d<   |                     |d         d           d S Nr   r   r   r   r'   r   s         r   test_real_viewzTestPyGetMemory.test_real_view.   s     &	KY''}}f"400Q###!Q#####r   c                     d}t          j         d|          }|                                \  }}t          j        ||          }|                     t
          t          j        |dd           d S r/   )r   r   r	   r   r   	TypeErroroperatorsetitemr   s         r   test_memory_not_writablez(TestPyGetMemory.test_memory_not_writable9   s`    %	KY''}}f"400)X%5sAqAAAAAr   N)r   r   r   r%   r(   r-   r0   r5   r   r   r   r   r      sd        0 0 0$ $ $4 4 4	$ 	$ 	$B B B B Br   r   c                   h    e Zd Zed             Zed             Zed             Zd Zd Zd Z	d Z
dS )	TestEnumWindowsFamilyc                 .    t          j        d           |S )Nr   )win32apiSetLastErrorclshandledatas      r   enum_callback_slez'TestEnumWindowsFamily.enum_callback_sleC   s    a   r   c                     t           N)r   r;   s      r   enum_callback_excz'TestEnumWindowsFamily.enum_callback_excH   s    r   c                     |S rA   r   r;   s      r   enum_callbackz#TestEnumWindowsFamily.enum_callbackL   s    r   c                 b    d| _         t          j        dk    rddi df| _        d S ddi f| _        d S )N)Nr   r   TF)r*   
    r   gq
@)default_data_setsysversion_infotype_data_setr   s    r   setUpzTestEnumWindowsFamily.setUpP   sC     =w&&"$b"h!7D"$b"Dr   c                    t          j        d           dD ]3}|                     t          j        t
          j        | j        |           4dD ]/}|                     t          j        | j        |                     0t          j        d           | j	        D ]/}|                     t          j        | j
        |                     0| j	        D ].}|                     t          t
          j        | j        |           /| j
        | j        fD ]3}| j        D ])}|                     t          t
          j        ||           *4d S )Nr   r   FNr   T)r9   r:   r   
pywintypeserrorr	   EnumWindowsr?   assertIsNonerI   rD   r   rB   rL   r2   r   r>   funcs      r   test_enumwindowsz&TestEnumWindowsFamily.test_enumwindowsW   sz   a    	 	D ("68NPT    $ 	R 	RDh243I4PPQQQQa   ) 	N 	NDh243EtLLMMMM) 	 	DH0$2H$    ')?@ 	O 	OD* O O!!)X-A4NNNNO	O 	Or   c           	      *   t          j        d           | j        D ]0}|                     t	          j        d | j        |                     1| j        D ]0}|                     t	          j        d | j        |                     1t          j        d           | j        D ]/}|                     t          t          j        d | j
        |           0| j        | j        fD ]4}| j        D ]*}|                     t          t          j        d ||           +5d S Nr   )r9   r:   rI   rT   r	   EnumChildWindowsrD   r?   r   r   rB   rL   r2   rU   s      r   test_enumchildwindowsz+TestEnumWindowsFamily.test_enumchildwindowsj   sT   a   ) 	Y 	YDh7d>PRVWWXXXX) 	 	D)$0FMM    	a   ) 	 	D)&    ')?@ 	 	D*  !!x8$d   	 	r   c           	         t          j        d           d }dD ]4}|                     t          j        t
          j        || j        |           5dD ]0}|                     t          j        || j        |                     1t          j        d           | j	        D ]0}|                     t          j        || j
        |                     1| j	        D ]/}|                     t          t
          j        || j        |           0d}|D ]9}| j	        D ]/}|                     t          t
          j        || j        |           0:| j
        | j        fD ]4}| j        D ]*}|                     t          t
          j        d||           +5d S )Nr   rO   rP   )r   N)r9   r:   r   rQ   rR   r	   EnumDesktopWindowsr?   rT   rI   rD   r   rB   rL   r2   )r   desktopr>   desktopsrV   s        r   test_enumdesktopwindowsz-TestEnumWindowsFamily.test_enumdesktopwindows   s   a    	 	D +&    $ 	 	D+GT5KTRR    	a   ) 	 	D+GT5GNN    ) 	 	D+&     	 	G-  !!/*    ')?@ 	Y 	YD* Y Y!!)X-H!TSWXXXXY	Y 	Yr   N)r   r   r   classmethodr?   rB   rD   rM   rW   r[   r`   r   r   r   r7   r7   B   s          [   [   [. . .O O O&  .(Y (Y (Y (Y (Yr   r7   c                       e Zd Zd Zd ZdS )TestWindowPropertiesc                 @    t           j        t           j        f| _        d S rA   )r	   GetClassNameRealGetWindowClassclass_functionsr   s    r   rM   zTestWindowProperties.setUp   s    !' 
r   c                     | j         D ]#}|                     t          j        |d           $t	          j                    }| j         D ] }|                      ||                     !d S rY   )rg   r   rQ   rR   r	   GetDesktopWindow
assertTrue)r   rV   wnds      r   test_classnamez#TestWindowProperties.test_classname   sy    ( 	9 	9Dj.a8888'))( 	' 	'DOODDII&&&&	' 	'r   N)r   r   r   rM   rl   r   r   r   rc   rc      s2        
 
 
' ' ' ' 'r   rc   __main__)r   r3   rJ   unittestrQ   r9   r	   TestCaser   r   r7   rc   r   mainr   r   r   <module>rq      sC     



       B B B B Bh' B B B+B +B +B +B +Bh' +B +B +B\gY gY gY gY gYH- gY gY gYT' ' ' ' '8, ' ' ' zHMOOOOO r   