+
    {jj
  c                       ^ RI t^ RIHu Ht ^ RIt^ RIt^ RIt^ RI	H
t
Ht ^ RIHtHtHt  ! R R]
4      t ! R R]P"                  4      t]R8X  d   ]P(                  ! 4        R# R# )	    N)BaseHTTPRequestHandlerThreadingHTTPServer)EngineClientEngineConnectionErrorEngineResponseErrorc                   8   a  ] tR t^	t o R tR tR tR tRtV t	R# )FakeEngineHandlerc                    V P                   R 8X  d   V P                  ^RRRR/4       R# V P                  RRR/4       R# )	z/api/healthstatusokservicezfake-engineN  error	not_found)path	send_json)selfs   &WC:\Users\User\Documents\New project\scresyns-tritroia-platform\tests\test_engine_sdk.pydo_GETFakeEngineHandler.do_GET
   s;    99%NN34M JKsWk23    c                B   V P                   R 8w  d   V P                  RRR/4       R# \        V P                  P	                  RR4      4      p\
        P                  ! V P                  P                  V4      4      pV P                  ^RRR	R
RRVR,          RR//4       R# )z/api/generater   r   r   NContent-Length0r
   createdassetid
asset-testprompt	imageHashz	hash-test)	r   r   intheadersgetjsonloadsrfileread)r   lengthpayloads   &  r   do_POSTFakeEngineHandler.do_POST   s    99'NN3+ 67T\\%%&6<=**TZZ__V45sXy',gh'<
  	r   c                4   \         P                  ! V4      P                  R 4      pV P                  V4       V P	                  RR4       V P	                  R\        \        V4      4      4       V P                  4        V P                  P                  V4       R# )zutf-8zContent-Typezapplication/jsonr   N)
r#   dumpsencodesend_responsesend_headerstrlenend_headerswfilewrite)r   r
   r(   bodys   &&& r   r   FakeEngineHandler.send_json   sq    zz'"))'26");<)3s4y>:

r   c                    R # N )r   _argss   &*r   log_messageFakeEngineHandler.log_message$   s    r   r9   N)
__name__
__module____qualname____firstlineno__r   r)   r   r;   __static_attributes____classdictcell____classdict__s   @r   r   r   	   s     4
 r   r   c                   X   a  ] tR t^(t o ]R 4       t]R 4       tR tR tR t	R t
RtV tR# )	EngineSdkTestsc                   \        R\        4      V n        \        P                  ! V P                  P
                  RR7      V n        V P                  P                  4        RV P                  P                   2V n	        R# )	127.0.0.1T)targetdaemonzhttp://127.0.0.1:N)rH   r   )
r   r   server	threadingThreadserve_foreverthreadstartserver_portbase_urlclss   &r   
setUpClassEngineSdkTests.setUpClass)   sY    ()9;LM
%%SZZ-E-EdS


*3::+A+A*BCr   c                n    V P                   P                  4        V P                  P                  4        R # r8   )rK   shutdownrO   joinrS   s   &r   tearDownClassEngineSdkTests.tearDownClass0   s     



r   c                    \        V P                  4      pV P                  VP                  4       R ,          R4       V P	                  VP                  4       R,          4       R# )r
   r   	connectedN)r   rR   assertEqualhealth
assertTruer
   r   clients   & r   test_health_and_status%EngineSdkTests.test_health_and_status5   sB    dmm,2D945r   c                    \        V P                  4      pVP                  R R.R7      pV P                  VR,          R,          R4       V P                  VR,          R,          R 4       R# )zuma identidade visualz#00ffaa)colorsr   r   r   r   N)r   rR   generater^   )r   rb   results   &  r    test_generate_preserves_contract/EngineSdkTests.test_generate_preserves_contract:   sX    dmm,!8)M.=24KLr   c                    \        R RR7      pV P                  \        4      ;_uu_ 4        VP                  4        RRR4       R#   + '       g   i     R# ; i)http://127.0.0.1:1皙?timeoutN)r   assertRaisesr   r_   ra   s   & r   ,test_invalid_generation_response_is_rejected;EngineSdkTests.test_invalid_generation_response_is_rejected@   s9    2C@455MMO 6555s   AA	c                    \        R RR7      pVP                  4       pV P                  VR,          4       V P                  RV4       R# )rl   rm   rn   r]   r   N)r   r
   assertFalseassertIn)r   rb   r
   s   &  r   'test_status_is_safe_when_engine_is_down6EngineSdkTests.test_status_is_safe_when_engine_is_downE   s;    2C@,-gv&r   r9   N)r=   r>   r?   r@   classmethodrU   rZ   rc   ri   rq   rv   rA   rB   rC   s   @r   rF   rF   (   sG     D D  6
M
' 'r   rF   __main__)builtins@py_builtins_pytest.assertion.rewrite	assertionrewrite
@pytest_arr#   rL   unittesthttp.serverr   r   
engine_sdkr   r   r   r   TestCaserF   r=   mainr9   r   r   <module>r      sS         C O O. >!'X&& !'H zMMO r   