Ë
    ü[;jø  ã                   ó¢   — d Z ddlmZ ddlmZ  G d„ dej                  «      Z G d„ dej                  «      Zedk(  r ej                  «        y	y	)
zTests for the trace module.é    )Ú	testutils)Útracec                   óT   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z	d„ Z
d	„ Zd
„ Zd„ Zd„ Zy)ÚFireTraceTestc                 ó†   — t        j                  d«      }| j                  |«       | j                  |j                  «       y )Né
   )r   Ú	FireTraceÚassertIsNotNoneÚelements©ÚselfÚts     úXG:\00. PROJECTS\API\Inventory\templateJSON\kerjaOCR\Lib\site-packages\fire/trace_test.pyÚtestFireTraceInitializationz)FireTraceTest.testFireTraceInitialization   s0   € Ü�‰˜Ó€AØ×Ñ˜ÔØ×Ñ˜Ÿ™Õ$ó    c                 óØ   — t        j                  d«      }| j                  |j                  «       d«       |j	                  ddd dd«       | j                  |j                  «       d«       y )NÚstartr   Úfinalú
example.pyr   )r   r	   ÚassertEqualÚ	GetResultÚAddAccessedPropertyr   s     r   ÚtestFireTraceGetResultz$FireTraceTest.testFireTraceGetResult   sR   € Ü�‰˜Ó €AØ×Ñ�Q—[‘[“] GÔ,Ø×Ñ˜#˜w¨¨l¸BÔ?Ø×Ñ�Q—[‘[“] CÕ(r   c                 óJ  — t        j                  d«      }| j                  |j                  «       «       |j	                  ddd dd«       | j                  |j                  «       «       |j                  t        d«      dg«       | j                  |j                  «       «       y )Nr   r   r   r   r   úexample errorÚarg)r   r	   ÚassertFalseÚHasErrorr   ÚAddErrorÚ
ValueErrorÚ
assertTruer   s     r   ÚtestFireTraceHasErrorz#FireTraceTest.testFireTraceHasError"   su   € Ü�‰˜Ó €AØ×Ñ�Q—Z‘Z“\Ô"Ø×Ñ˜#˜w¨¨l¸BÔ?Ø×Ñ�Q—Z‘Z“\Ô"Ø‡J�JŒz˜/Ó*¨U¨GÔ4Ø‡O�O�A—J‘J“LÕ!r   c                 ó’   — t        j                  d«      }d}|j                  dd|dd«       | j                  t	        |«      d«       y )Núinitial object©ÚexampleÚargsznew componentÚpropú	sample.pyé   z?1. Initial component
2. Accessed property "prop" (sample.py:12))r   r	   r   r   Ústr©r   r   r'   s      r   ÚtestAddAccessedPropertyz%FireTraceTest.testAddAccessedProperty*   sE   € Ü�‰Ð(Ó)€AØ€DØ×Ñ˜/¨6°4¸ÀbÔIØ×ÑÜˆA‹ØJõLr   c           	      ó´   — t        j                  d«      }d}|j                  dd|dddt         j                  ¬«       | j	                  t        |«      d	«       y )
Nr$   r%   ÚresultÚcellr)   r   F©Úactionz=1. Initial component
2. Called callable "cell" (sample.py:10))r   r	   ÚAddCalledComponentÚCALLED_CALLABLEr   r+   r,   s      r   ÚtestAddCalledCallablez#FireTraceTest.testAddCalledCallable2   sW   € Ü�‰Ð(Ó)€AØ€DØ×Ñ˜ 6¨4°¸bÀ%Ü %× 5Ñ 5ð ô 7à×ÑÜˆA‹ØHõJr   c           	      ó´   — t        j                  d«      }d}|j                  dd|dddt         j                  ¬«       | j	                  t        |«      d	«       y )
Nr$   r%   r/   Úrunr)   r*   Fr1   z;1. Initial component
2. Called routine "run" (sample.py:12))r   r	   r3   ÚCALLED_ROUTINEr   r+   r,   s      r   ÚtestAddCalledRoutinez"FireTraceTest.testAddCalledRoutine;   sW   € Ü�‰Ð(Ó)€AØ€DØ×Ñ˜ 5¨$°¸RÀÜ %× 4Ñ 4ð ô 6à×ÑÜˆA‹ØFõHr   c           	      ó¸   — t        j                  d«      }d}|j                  dd|dddt         j                  ¬«       d	}| j	                  t        |«      |«       y )
Nr$   r%   Ú	ClassnameÚ	classnamer)   r*   Fr1   zE1. Initial component
2. Instantiated class "classname" (sample.py:12))r   r	   r3   ÚINSTANTIATED_CLASSr   r+   )r   r   r'   Útargets       r   ÚtestAddInstantiatedClassz&FireTraceTest.testAddInstantiatedClassD   sZ   € Ü�‰Ð(Ó)€AØ€DØ×ÑØ�[ $¨°R¸Ü×'Ñ'ð ô )ð4€Fà×Ñ”S˜“V˜VÕ$r   c                 ó†   — t        j                  d«      }|j                  d«       | j                  t	        |«      d«       y )Nr$   z%This is the completion script string.z31. Initial component
2. Generated completion script)r   r	   ÚAddCompletionScriptr   r+   r   s     r   ÚtestAddCompletionScriptz%FireTraceTest.testAddCompletionScriptN   s9   € Ü�‰Ð(Ó)€AØ×ÑÐAÔBØ×ÑÜˆA‹Ø>õ@r   c                 ó„   — t        j                  d«      }|j                  «        | j                  t	        |«      d«       y )Nr$   z01. Initial component
2. Entered interactive mode)r   r	   ÚAddInteractiveModer   r+   r   s     r   ÚtestAddInteractiveModez$FireTraceTest.testAddInteractiveModeU   s5   € Ü�‰Ð(Ó)€AØ×ÑÔØ×ÑÜˆA‹Ø;õ=r   c           	      ó¾   — t        j                  d«      }d}|j                  dd|dddt         j                  ¬«       | j	                  |j                  «       d	«       y )
Nr$   r%   r/   r7   r)   r*   Fr1   zexample args©r   r	   r3   r8   r   Ú
GetCommandr,   s      r   ÚtestGetCommandzFireTraceTest.testGetCommand\   sT   € Ü�‰Ð(Ó)€AØ€DØ×Ñ˜ 5¨$°¸RÀÜ %× 4Ñ 4ð ô 6à×Ñ�Q—\‘\“^ ^Õ4r   c           	      ó¾   — t        j                  d«      }d}|j                  dd|dddt         j                  ¬«       | j	                  |j                  «       d	«       y )
Nr$   )r&   z
spaced argr/   r7   r)   r*   Fr1   zexample 'spaced arg'rG   r,   s      r   ÚtestGetCommandWithQuotesz&FireTraceTest.testGetCommandWithQuotesc   sU   € Ü�‰Ð(Ó)€AØ$€DØ×Ñ˜ 5¨$°¸RÀÜ %× 4Ñ 4ð ô 6à×Ñ�Q—\‘\“^Ð%;Õ<r   c           	      ó¾   — t        j                  d«      }d}|j                  dd|dddt         j                  ¬«       | j	                  |j                  «       d	«       y )
Nr$   )z--example=spaced argr/   r7   r)   r*   Fr1   z--example='spaced arg'rG   r,   s      r   ÚtestGetCommandWithFlagQuotesz*FireTraceTest.testGetCommandWithFlagQuotesj   sU   € Ü�‰Ð(Ó)€AØ$€DØ×Ñ˜ 5¨$°¸RÀÜ %× 4Ñ 4ð ô 6à×Ñ�Q—\‘\“^Ð%=Õ>r   N)Ú__name__Ú
__module__Ú__qualname__r   r   r"   r-   r5   r9   r?   rB   rE   rI   rK   rM   © r   r   r   r      sB   „ ò%ò
)ò"òLòJòHò%ò@ò=ò5ò=ó?r   r   c                   ó$   — e Zd Zd„ Zd„ Zd„ Zd„ Zy)ÚFireTraceElementTestc                 óæ   — t        j                  «       }| j                  |j                  «       «       t        j                  t	        d«      ¬«      }| j                  |j                  «       «       y )Nr   )Úerror)r   ÚFireTraceElementr   r   r    r!   ©r   Úels     r   ÚtestFireTraceElementHasErrorz1FireTraceElementTest.testFireTraceElementHasErrort   sK   € Ü	×	Ñ	Ó	!€BØ×Ñ�R—[‘[“]Ô#ä	×	Ñ	¤j°Ó&AÔ	B€BØ‡O�O�B—K‘K“MÕ"r   c                 óh   — t        j                  dd¬«      }| j                  t        |«      d«       y )NÚExamplezFake action)Ú	componentr2   ©r   rV   r   r+   rW   s     r   Ú&testFireTraceElementAsStringNoMetadataz;FireTraceElementTest.testFireTraceElementAsStringNoMetadata{   s.   € Ü	×	Ñ	ØØô
€Bð 	×Ñ”S˜“W˜mÕ,r   c                 ój   — t        j                  ddd¬«      }| j                  t        |«      d«       y )Nr[   úCreated toyÚBeaker)r\   r2   r>   zCreated toy "Beaker"r]   rW   s     r   Ú&testFireTraceElementAsStringWithTargetz;FireTraceElementTest.testFireTraceElementAsStringWithTarget‚   s2   € Ü	×	Ñ	ØØØô
€Bð
 	×Ñ”S˜“WÐ4Õ5r   c                 ón   — t        j                  ddddd¬«      }| j                  t        |«      d«       y )Nr[   r`   ra   z	beaker.pyr   )r\   r2   r>   ÚfilenameÚlinenoz#Created toy "Beaker" (beaker.py:10)r]   rW   s     r   Ú/testFireTraceElementAsStringWithTargetAndLineNozDFireTraceElementTest.testFireTraceElementAsStringWithTargetAndLineNoŠ   s8   € Ü	×	Ñ	ØØØØØô
€Bð 	×Ñ”S˜“WÐCÕDr   N)rN   rO   rP   rY   r^   rb   rf   rQ   r   r   rS   rS   r   s   „ ò#ò-ò6óEr   rS   Ú__main__N)	Ú__doc__Úfirer   r   ÚBaseTestCaser   rS   rN   ÚmainrQ   r   r   Ú<module>rl      sU   ðñ "å Ý ôZ?�I×*Ñ*ô Z?ôz E˜9×1Ñ1ô  EðF ˆzÒØ€)‡.�.Õð r   