
    %
i0                         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d Zd Z	d Z
d	dZ G d dej        j        j                  Zedk    r ej                     dS dS )
    Nc                      t           j        j                            t           j        j                                                  } t           j                            |           S Nwin32comserverutilwrap
CollectionclientDispatch)os    C:\Users\Dell Inspiron 16\Desktop\tws\AgrotaPowerBi\back-agrota-powerbi\mcp-client-agrota\venv\Lib\site-packages\win32com/test/testCollections.pyMakeEmptyEnumr      sA    !!(/"6"A"A"C"CDDA?##A&&&    c                  d   t           j        j                            t           j        j                            g d                    } t           j        j                            t           j        j                            ddd| g                    }t           j                            |          S )NSub1   Sub3   Two   r   )subr   s     r   MakeTestEnumr      s    
/

#
#''(;(;(;<< C 	!!(/"6"A"A1eQPSBT"U"UVVA?##A&&&r   c                    t          t          |                    D ]6} | |          ||         k    sJ d | |          d||                     7t          t          |                    D ]@}|                     |          ||         k    sJ d | |          d||                     Ag }| D ]}|                    |           |d t          |                   |k    s%J d|d t          |                   d|            t          t          |                    D ]}| |         ||         k    s
J d            d S )Nz0Using default method gave the incorrect value - /z-Using Item method gave the incorrect value - z%Result after looping isn't correct - z'Using indexing gave the incorrect value)rangelenItemappend)r   checkicmpss        r   TestEnumAgainstr%   !   s   3u:: 
 
qttuQxTqqttTTaTT   3u:: 
 
vvayyE!H$$$QAAaDDQQU1XQQ %$$$
 C  

1|U|%%%OLc%jjL0AOOeOO &%% 3u:: K KtuQx!JK Kr   c                    | dt           j        v} | st          d           t                      }g d}t	          ||           | st          d           |d         }t	          |g d           |                    |                                dz
             | st          d           |d= |                    d           t	          ||           | st          d	           |                    d
           |                    d
           t	          ||           | st          d           |	                    dd           |
                    dd           t	          ||           	  |             t          d          # t          j        $ r,}|j        t          j        k    sJ d|             Y d }~nd }~ww xY w	 |	                    dd           t          d          # t          j        $ r,}|j        t          j        k    sJ d|             Y d }~nd }~ww xY w	 |                    |                                           t          d          # t          j        $ r,}|j        t          j        k    sJ d|             Y d }~nd }~ww xY w| st          d           t'                      }|D ]}t          d          	 |d         }t          d          # t(          $ r Y nw xY w	 |d         }t          d          # t(          $ r Y nw xY w	  |d          }t          d          # t          j        $ r-}|j        t          j        k    sJ d|             Y d }~d S d }~ww xY w)Nz-vzSimple enum test)r   r   r   zsub-collection testr   r   r   zRemove item testzAdd item testzNew ItemzInsert item testr   z:default method with no args worked when it shouldn't have!z$Expected DISP_E_BADPARAMCOUNT - got fooz%Insert worked when it shouldn't have!z#Expected DISP_E_TYPEMISMATCH - got z%Remove worked when it shouldn't have!zExpected DISP_E_BADINDEX - got zEmpty collection testz!Empty list performed an iterationzEmpty list could be indexedr   )sysargvprintr   r%   RemoveCountAddr    InsertinsertAssertionError	pythoncom	com_errorhresultwinerrorDISP_E_BADPARAMCOUNTDISP_E_TYPEMISMATCHDISP_E_BADINDEXr   
IndexError)quietr   r!   r   excitemobs          r   TestEnumr>   9   s;   }CH$ " !!!AMMEAu %#$$$
A$CC,,,--- HHQWWYY] " !!!aHHQKKKAu oEE*	LLAu " !!!HHQOOO	LLBAu
	H
 
 	
  
 
 
{h;;;;8388 <;;;;;;;


	DEEE 
 
 
{h::::7#77 ;:::::::

	DEEE 
 
 
{h66663c33 76666666
  '%&&&A B B@AAAqT:;;;   qT:;;;   
QqTT:;;; 
 
 
{h66663c33 766666666
s   +F F?"F::F?%G( (H#7"HH#'6I J,"JJK% %
K21K26L 
LLL8 8M4"M//M4c                       e Zd Zd ZdS )TestCasec                 "    t                       d S r   )r>   )selfs    r   testEnumzTestCase.testEnum   s    




r   N)__name__
__module____qualname__rC    r   r   r@   r@      s#            r   r@   __main__r   )r)   unittestr2   win32com.clientr   win32com.server.utilwin32com.test.utilr5   r   r   r%   r>   testr   r@   rD   mainrG   r   r   <module>rO      s    


                  ' ' '' ' 'K K K0]
 ]
 ]
 ]
@    x}!*   
 zHMOOOOO r   