§
    ÷¢±j  ã                   óú  — 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mZ d dl	m
Z
 d dlmZ d dlmZmZ de j        v Z G d„ de
j        ¦  «        Z G d	„ d
ej        ¦  «        Z G d„ d¦  «        Z ej        d¦  «        Z G d„ dej        ¦  «        ZdZdZdZej        dej        dej         dej!        dej"        dej#        diZ$d„ Z% G d„ dej&        j        j'        ¦  «        Z(e)dk    r ej*        ¦   «          dS dS )é    N)Úaxscript)Úaxsite)ÚDispatch)ÚconnectÚutilz-vc                   ó   — e Zd Zd„ Zd„ ZdS )ÚMySitec                 óB   — d | _         t          j        j        | g|¢R Ž  d S ©N)Úexception_seenr   ÚAXSiteÚ__init__)ÚselfÚargss     únC:\Users\johnn\AppData\Local\Programs\Python\Python311\Lib\site-packages\win32comext/axscript/test/testHost.pyr   zMySite.__init__   s+   € Ø"ˆÔÝŒÔ˜tÐ+ dÐ+Ð+Ð+Ð+Ð+Ð+ó    c                 ó˜  — |                      ¦   «         x| _        }|                     ¦   «         \  }}}t          sd S t	          d|d         ¦  «         	 |                     ¦   «         }n# t          j        $ r d }Y nw xY w|€d}|dz   d|dz
  z  z   dz   dz   |d         z   }|                     ¦   «         D ]}t	          d|z   ¦  «         Œd S )	Nz >Exception:é   Ú ú
ú ú^é   z  >)	ÚGetExceptionInfor   ÚGetSourcePositionÚverboseÚprintÚGetSourceLineTextÚ	pythoncomÚ	com_errorÚ
splitlines)r   ÚerrorÚexcÚcontextÚlineÚcharÚstÚtexts           r   ÚOnScriptErrorzMySite.OnScriptError   sÿ   € Ø$)×$:Ò$:Ñ$<Ô$<Ð<ˆÔ˜cØ#×5Ò5Ñ7Ô7Ñˆ��tÝð 	ØˆFÝˆn˜c !œfÑ%Ô%Ð%ð	Ø×(Ò(Ñ*Ô*ˆBˆBøÝÔ"ð 	ð 	ð 	ØˆBˆBˆBð	øøøàˆ:ØˆBØ�D‰y˜C 4¨!¡8Ñ,Ñ-°Ñ3°dÑ:¸SÀ¼VÑCˆØ—O’OÑ%Ô%ð 	 ð 	 ˆDÝ�%˜$‘,ÑÔÐÐð	 ð 	 s   ÁA) Á)A=Á<A=N)Ú__name__Ú
__module__Ú__qualname__r   r)   © r   r   r	   r	      s2   € € € € € ð,ð ,ð ,ð ð  ð  ð  ð  r   r	   c                   ó   — e Zd Zd„ ZdS )ÚMyCollectionc                 ó@   — t           j                             | ¦  «        S r   )r   Ú
CollectionÚ_NewEnum©r   s    r   r2   zMyCollection._NewEnum'   s   € ÝŒ×'Ò'¨Ñ-Ô-Ð-r   N)r*   r+   r,   r2   r-   r   r   r/   r/   &   s#   € € € € € ð.ð .ð .ð .ð .r   r/   c                   ó.   — e Zd ZddgZdgZd„ Zd„ Zd„ ZdS )ÚTestÚechoÚfailÚ
collectionc                 óŠ   — t           | _         t          j        t          g d¢¦  «        ¦  «        | _        d| _        d| _        d S )N)r   ÚTwoé   r   r   )r   r   Úwrapr/   r8   ÚlastÚfail_calledr3   s    r   r   zTest.__init__/   s;   € ÝˆŒÝœ)¥L°°°Ñ$?Ô$?Ñ@Ô@ˆŒØˆŒ	ØˆÔÐÐr   c                 ó¨   — d                      d„ |D ¦   «         ¦  «        | _        | j        r&|D ]}t          |d¬¦  «         Œt          ¦   «          d S d S )Nr   c                 ó,   — g | ]}t          |¦  «        ‘ŒS r-   )Ústr)Ú.0Úss     r   ú
<listcomp>zTest.echo.<locals>.<listcomp>8   s   € Ð2Ð2Ð2¨�S ™VœVÐ2Ð2Ð2r   r   ©Úend)Újoinr=   r   r   ©r   r   Úargs      r   r6   z	Test.echo7   sj   € Ø—G’GÐ2Ð2¨TÐ2Ñ2Ô2Ñ3Ô3ˆŒ	ØŒ<ð 	Øð $ð $�Ý�c˜sÐ#Ñ#Ô#Ð#Ð#Ý‰GŒGˆGˆGˆGð	ð 	r   c                 óz   — t          d¦  «         |D ]}t          |d¬¦  «         Œt          ¦   «          d| _        d S )Nz**** fail() called ***r   rE   r   )r   r>   rH   s      r   r7   z	Test.fail>   sM   € ÝÐ&Ñ'Ô'Ð'Øð 	 ð 	 ˆCÝ�#˜3ÐÑÔÐÐÝ‰ŒˆØˆÔÐÐr   N)r*   r+   r,   Ú_public_methods_Ú_public_attrs_r   r6   r7   r-   r   r   r5   r5   +   sS   € € € € € Ø Ð'ÐØ"�^€Nðð ð ðð ð ðð ð ð ð r   r5   z&{8EB72F90-0D44-11d1-9C4B-00AA00125A98}c                   ó&   — e Zd ZegZd„ Zd„ Zd„ ZdS )ÚTestConnectServerc                 ó   — || _         d S r   )Úobject)r   rP   s     r   r   zTestConnectServer.__init__T   s   € ØˆŒˆˆr   c                 ó>   — |                       | j        |f¦  «         d S r   )Ú_BroadcastNotifyÚNotifyDoneIt)r   rI   s     r   Ú	BroadcastzTestConnectServer.BroadcastW   s#   € à×Ò˜dÔ/°#°Ñ8Ô8Ð8Ð8Ð8r   c                 óL   — |                      ddt          j        d|¦  «         d S )Niè  r   r   )ÚInvoker   ÚDISPATCH_METHOD)r   Ú	interfacerI   s      r   rS   zTestConnectServer.NotifyDoneIt[   s'   € Ø×Ò˜˜q¥)Ô";¸QÀÑDÔDÐDÐDÐDr   N)r*   r+   r,   ÚIID_ITestEventsÚ_connect_interfaces_r   rT   rS   r-   r   r   rN   rN   O   sO   € € € € € Ø+Ð,Ððð ð ð9ð 9ð 9ðEð Eð Eð Eð Er   rN   aþ  prop = "Property Value"

sub hello(arg1)
   test.echo arg1
end sub

sub testcollection
   if test.collection.Item(0) <> 1 then
     test.fail("Index 0 was wrong")
   end if
   if test.collection.Item(1) <> "Two" then
     test.fail("Index 1 was wrong")
   end if
   if test.collection.Item(2) <> 3 then
     test.fail("Index 2 was wrong")
   end if
   num = 0
   for each item in test.collection
     num = num + 1
   next
   if num <> 3 then
     test.fail("Collection didn't have 3 items")
   end if
end sub
u  # A unicode Â©omment.
prop = "Property Value"
def hello(arg1):
   test.echo(arg1)

def testcollection():
#   test.collection[1] = "New one"
   got = []
   for item in test.collection:
     got.append(item)
   if got != [1, "Two", 3]:
     test.fail("Didn't get the collection")
   pass
zbad code for everyone!
ÚSCRIPTSTATE_UNINITIALIZEDÚSCRIPTSTATE_INITIALIZEDÚSCRIPTSTATE_STARTEDÚSCRIPTSTATE_CONNECTEDÚSCRIPTSTATE_DISCONNECTEDÚSCRIPTSTATE_CLOSEDc                 ó  — | j         j                             ¦   «         }||k    rht                               |t          |¦  «        ¦  «        }t                               |t          |¦  «        ¦  «        }t          d|› d|› d|› �¦  «        ‚d S )NzWarning - engine z has state z, but expected )ÚengineÚeScriptÚGetScriptStateÚ	state_mapÚgetrA   ÚRuntimeError)rb   ÚnameÚstateÚgotÚgot_nameÚ
state_names         r   Ú_CheckEngineStaterm   —   s‡   € Ø
Œ-Ô
×
.Ò
.Ñ
0Ô
0€CØ
ˆe‚|€|Ý—=’= ¥c¨#¡h¤hÑ/Ô/ˆÝ—]’] 5­#¨e©*¬*Ñ5Ô5ˆ
ÝØV ÐVÐV°ÐVÐVÈ*ÐVÐVñ
ô 
ð 	
ð €|r   c                   ó.   — e Zd Zdd„Zd„ Zd„ Zd„ Zd„ ZdS )ÚEngineTesterNc           	      ó   — t          ¦   «         }dt          j        |¦  «        i}t          |¦  «        }|                     |¦  «        }	 t          ||t          j        ¦  «         |                     |¦  «         | 	                    ¦   «          t          ||t          j
        ¦  «         |                      |j         d¦  «         t          |                     ¦   «         ¦  «        }	 |                     d¦  «         |                      |d u d|›d�¦  «         n‚# t           j        $ rp |€|                      d|j        › �¦  «         ||j        d         vr&|                      d|›d	|j        d         ›�¦  «         Y |                     ¦   «          d }d }d S w xY w|                      |j        d¦  «         |                      t/          |j        ¦  «        d
¦  «         |                     ¦   «          |                      |j         d¦  «         |j                             dd d d ddt          j        ¦  «        }	|                      |	d¦  «         |                     t          j        ¦  «         t          ||t          j        ¦  «         | 	                    ¦   «          t          ||t          j
        ¦  «         |                     t          j        ¦  «         t          ||t          j        ¦  «         |                     t          j        ¦  «         t          ||t          j        ¦  «         |                     t          j        ¦  «         t          ||t          j        ¦  «         |                     t          j        ¦  «         t          ||t          j        ¦  «         |                     t          j        ¦  «         t          ||t          j        ¦  «         |                     ¦   «          d }d }d S # |                     ¦   «          d }d }w xY w)NÚtestz Fail should not have been calledÚGooberz	Expected z, but no exception seenz%Unexpected failure from script code: r   zCould not find z in zProperty Valuez1+1r   ) r5   r   r<   r	   Ú
_AddEnginerm   r   r\   ÚAddCodeÚStartr]   Ú
assertTruer>   r   ÚGetScriptDispatchÚhellor   r    r7   r   ÚCloseÚassertEqualr=   rA   ÚpropÚtestcollectionÚeParseÚParseScriptTextÚSCRIPTTEXT_ISEXPRESSIONÚSetScriptStater^   r_   )
r   Ú
engineNameÚcodeÚexpected_excÚechoerÚmodelÚsiterb   ÚobÚresults
             r   Ú_TestEnginezEngineTester._TestEngine¢   sÏ  € Ý‘”ˆà•D”I˜fÑ%Ô%ð
ˆõ �e‰}Œ}ˆØ—’ Ñ,Ô,ˆð8	Ý˜d JµÔ0PÑQÔQÐQØ�NŠN˜4Ñ Ô Ð Ø�LŠL‰NŒNˆNÝ˜d JµÔ0LÑMÔMÐMØ�OŠO Ô 2Ð2Ð4VÑWÔWÐWå˜&×2Ò2Ñ4Ô4Ñ5Ô5ˆBðØ—’˜Ñ"Ô"Ð"Ø—’Ø  DÐ(ØG ÐGÐGÐGñô ð ð øõ Ô&ð 	ð 	ð 	ØÐ'Ø—I’IØUÀÔ@SÐUÐUñô ð ð   tÔ':¸1Ô'=Ð=Ð=Ø—I’IØX¨,ÐXÐX¸dÔ>QÐRSÔ>TÐXÐXñô ð ð ð> �LŠL‰NŒNˆNØˆFØˆDˆDˆDðU	øøøð ×Ò˜Vœ[¨(Ñ3Ô3Ð3à×Ò�S ¤™\œ\Ð+;Ñ<Ô<Ð<Ø×ÒÑÔÐØ�OŠO Ô 2Ð2Ð4VÑWÔWÐWð ”]×2Ò2Ø�t˜T 4¨¨A­xÔ/Oñô ˆFð ×Ò˜V QÑ'Ô'Ð'à×!Ò!¥(Ô"BÑCÔCÐCÝ˜d JµÔ0PÑQÔQÐQØ�LŠL‰NŒNˆNÝ˜d JµÔ0LÑMÔMÐMð ×!Ò!¥(Ô"BÑCÔCÐCÝ˜d JµÔ0PÑQÔQÐQØ×!Ò!¥(Ô"@ÑAÔAÐAÝ˜d JµÔ0NÑOÔOÐOØ×!Ò!¥(Ô"BÑCÔCÐCÝ˜d JµÔ0PÑQÔQÐQà×!Ò!¥(Ô"@ÑAÔAÐAÝ˜d JµÔ0NÑOÔOÐOØ×!Ò!¥(Ô"CÑDÔDÐDÝ˜d JµÔ0QÑRÔRÐRà�LŠL‰NŒNˆNØˆFØˆDˆDˆDøð �LŠL‰NŒNˆNØˆFØˆDˆKˆKˆKˆKs3   Á
BO3 Ã'1D ÄO3 ÄA#FÅ<O3 ÆFÆIO3 Ï3Pc                 ó<   — |                       dt          ¦  «         d S ©NÚVBScript)r‰   rŒ   r3   s    r   ÚtestVBzEngineTester.testVBã   s   € Ø×Ò˜¥XÑ.Ô.Ð.Ð.Ð.r   c                 ó<   — |                       dt          ¦  «         d S ©NÚPython©r‰   ÚPyScriptr3   s    r   Ú
testPythonzEngineTester.testPythonæ   ó   € Ø×Ò˜¥8Ñ,Ô,Ð,Ð,Ð,r   c                 ó<   — |                       dt          ¦  «         d S r�   r‘   r3   s    r   ÚtestPythonUnicodeErrorz#EngineTester.testPythonUnicodeErroré   r”   r   c                 ó^   — |                       t          j        | j        dt          ¦  «         d S r‹   )ÚassertRaisesr   r    r‰   Ú	ErrScriptr3   s    r   ÚtestVBExceptionszEngineTester.testVBExceptionsì   s(   € Ø×Ò�)Ô-¨tÔ/?ÀÍYÑWÔWÐWÐWÐWr   r   )r*   r+   r,   r‰   r�   r“   r–   rš   r-   r   r   ro   ro   ¡   sj   € € € € € ð?ð ?ð ?ð ?ðB/ð /ð /ð-ð -ð -ð-ð -ð -ðXð Xð Xð Xð Xr   ro   Ú__main__)+ÚsysÚunittestr   Ú
pywintypesÚwin32com.server.policyÚwin32comÚwin32com.test.utilÚwin32com.axscriptr   Úwin32com.axscript.serverr   Úwin32com.client.dynamicr   Úwin32com.serverr   r   Úargvr   r   r	   r1   r/   r5   ÚIIDrY   ÚConnectableServerrN   rŒ   r’   r™   r[   r\   r]   r^   r_   r`   re   rm   rq   ÚTestCasero   r*   Úmainr-   r   r   ú<module>r«      s7  ðØ 
€
€
€
Ø €€€à Ð Ð Ð Ø Ð Ð Ð Ø Ð Ð Ð Ø Ð Ð Ð Ø &Ð &Ð &Ð &Ð &Ð &Ø +Ð +Ð +Ð +Ð +Ð +Ø ,Ð ,Ð ,Ð ,Ð ,Ð ,Ø )Ð )Ð )Ð )Ð )Ð )Ð )Ð )à
�#”(Ð
€ð ð  ð  ð  ð  ˆVŒ]ñ  ô  ð  ð,.ð .ð .ð .ð .�4”?ñ .ô .ð .ð
ð ð ð ð ñ ô ð ðB !�*”.Ð!IÑJÔJ€ðEð Eð Eð Eð E˜Ô1ñ Eô Eð Eð €ð4€ð €	ð
 Ô&Ð(CØÔ$Ð&?ØÔ Ð"7ØÔ"Ð$;ØÔ%Ð'AØÔÐ!5ð€	ð
ð 
ð 
ðLXð LXð LXð LXð LX�8”=Ô%Ô.ñ LXô LXð LXð^ ˆzÒÐØ€H„M�O„O€O€O€Oð Ðr   