
    	h0                         S SK r S SKrS SKrS SKrS SKrS SKrS SKrS rS r	S r
S	S jr " S S\R                  R                  R                  5      r\S:X  a  \R                   " 5         gg)
    Nc                      [         R                  R                  R                  [         R                  R                  R	                  5       5      n [         R
                  R                  U 5      $ Nwin32comserverutilwrap
CollectionclientDispatch)os    pC:\Users\julio\OneDrive\Documentos\Trabajo\Ideas Frescas\venv\Lib\site-packages\win32com/test/testCollections.pyMakeEmptyEnumr      sD    !!(//"6"6"A"A"CDA??##A&&    c                     [         R                  R                  R                  [         R                  R                  R	                  / SQ5      5      n [         R                  R                  R                  [         R                  R                  R	                  SSSU /5      5      n[         R
                  R                  U5      $ )NSub1   Sub3   Two   r   )subr   s     r   MakeTestEnumr      s    
//


#
#''(;<C 	!!(//"6"6"A"A1eQPSBT"UVA??##A&&r   c                     [        [        U5      5       H(  nU " U5      X   :X  a  M   SU " U5      < SX   < 35       e   [        [        U5      5       H1  nU R                  U5      X   :X  a  M   SU " U5      < SX   < 35       e   / nU  H  nUR                  U5        M     US [        U5       U:X  d   SUS [        U5       < SU< 35       e[        [        U5      5       H  nX   X   :X  a  M   S5       e   g )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:tux 	
>qtha|T	
 
 3u:vvayEH$ 	
;AaD81UXLQ	
$  C

1  |U% 
/Lc%j0A/DAeYO% 3u:tuxJ!JJ r   c                 |   U c  S[         R                  ;  n U (       d  [        S5        [        5       n/ SQn[	        X5        U (       d  [        S5        US   n[	        U/ SQ5        UR                  UR                  5       S-
  5        U (       d  [        S5        US	 UR                  S5        [	        X5        U (       d  [        S	5        UR                  S
5        UR                  S
5        [	        X5        U (       d  [        S5        UR                  SS5        UR                  SS5        [	        X5         U" 5         [        S5      e! [        R                   a2  nUR                  [        R                   :X  d
   SU 35       e S nAOS nAff = f UR                  SS5        [        S5      e! [        R                   a2  nUR                  [        R"                  :X  d
   SU 35       e S nAOS nAff = f UR                  UR                  5       5        [        S5      e! [        R                   a2  nUR                  [        R$                  :X  d
   SU 35       e S nAOS nAff = fU (       d  [        S5        ['        5       nU H  n[        S5      e    US   n[        S5      e! [(         a     Of = f US   n[        S5      e! [(         a     Of = f U" S5      n[        S5      e! [        R                   a2  nUR                  [        R$                  :X  d
   SU 35       e S nAg S nAff = f)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   }CHH$ !AEA#$
A$CC,- HHQWWY] !aHHQKAoEE*	LLA !HHQO	LLBA
	H
 	
  
{{h;;; 	
23%8	
;


	DEE 
{{h::: 	
1#7	
:

	DEE 
{{h666 	
-cU3	
6
 %&A@AA qT:;; qT:;; 
qT:;; 
{{h666 	
-cU3	
6
s   ;E F!(FFF4 4G:(G55G:>*H( (I.<(I))I. J0 0
J=<J=K 
KK"K5 5L;	(L66L;c                       \ rS rSrS rSrg)TestCase   c                     [        5         g r   )r>   )selfs    r   testEnumTestCase.testEnum   s    
r    N)__name__
__module____qualname____firstlineno__rD   __static_attributes__rF   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@   rG   mainrF   r   r   <module>rS      sg          ''K0]
@x}}!!** 
 zMMO r   