+
    Vi                         ^ RI t ^ RIHtHt ^ RIt^ RIHt  ! R R] P                  4      t]	R8X  d   ] P                  ! 4        R# R# )    N)patch	MagicMock)FirecrawlAppc                      a  ] tR t^t o ]! R4      R 4       t]! R4      R 4       t]! R4      R 4       t]! R4      R 4       t]! R4      R 4       t	]! R4      R 4       t
RtV tR	# )
TestTimeoutConversionzrequests.postc                *   \        4       p^Vn        RRRRR//VP                  n        W!n        \	        \
        P                  P                  RR4      R7      pVP                  R	R
R7       VP                  w  rEV P                  VR,          R4       R# )   successTdatamarkdownTest contentTEST_API_KEYdummy-api-key-for-testingapi_keyhttps://example.comi`  timeoutr   g     @P@Nr   status_codejsonreturn_valuer   osenvironget
scrape_url	call_argsassertEqualself	mock_postmock_responseappargskwargss   &&    \/home/ubuntu/hermes-agent/venv/lib/python3.14/site-packages/tests/test_timeout_conversion.py"test_scrape_url_timeout_conversion8TestTimeoutConversion.test_scrape_url_timeout_conversion	   s    !$'!tN+
' "/2::>>.B]#^_,e< **	*D1    c                &   \        4       p^Vn        RRRRR//VP                  n        W!n        \	        \
        P                  P                  RR4      R7      pVP                  R	4       VP                  w  rEV P                  VR
,          R4       R# )r	   r
   Tr   r   r   r   r   r   r   r        A@Nr   r   s   &&    r&   test_scrape_url_default_timeout5TestTimeoutConversion.test_scrape_url_default_timeout   s    !$'!tN+
' "/2::>>.B]#^_,- **	*D1r)   c                
   \        4       p^Vn        W!n        \        \        P
                  P                  RR4      R7      pRR/pRR/pVP                  RWE4       VP                  w  rgV P                  VR,          R	4       R
# )r	   r   r   r   r   0u  Content-Typeapplication/jsonhttps://example.com/apir+   N
r   r   r   r   r   r   r   _post_requestr   r   r    r!   r"   r#   r   headersr$   r%   s   &&      r&   $test_post_request_timeout_conversion:TestTimeoutConversion.test_post_request_timeout_conversion-   sy    !$'!!.2::>>.B]#^_5!!#563TC **	*D1r)   c                   \        4       p^Vn        W!n        \        \        P
                  P                  RR4      R7      pRRRR/pRR	/pVP                  R
WE4       VP                  w  rgV P                  VR,          R4       R# )r	   r   r   r   r   r/   urlr   r0   r1   r2   r+   Nr3   r5   s   &&      r&   !test_post_request_default_timeout7TestTimeoutConversion.test_post_request_default_timeout=   s~    !$'!!.2::>>.B]#^_5%)>?!#563TC **	*D1r)   c                   \        4       p^Vn        RRRRR//VP                  n        W!n        \	        \
        P                  P                  RR4      R7      pVP                  R	R
R7       VP                  w  rEV P                  VR,          R4       VP                  R	^ R7       VP                  w  rEV P                  VR,          R4       R# )r	   r
   Tr   r   r   r   r   r   r   i  r   r   g      @g      @Nr   r   s   &&    r&   test_timeout_edge_cases-TestTimeoutConversion.test_timeout_edge_casesM   s    !$'!tN+
' "/2::>>.B]#^_,d; **	*C0,a8 **	*C0r)   c                   \        4       p^Vn        W!n        \        \        P
                  P                  RR4      R7      pRR/pRR/pVP                  RWE4       VP                  w  rgV P                  VR	,          4       R
# )r	   r   r   r   r:   r   r0   r1   r2   r   N)
r   r   r   r   r   r   r   r4   r   assertIsNoner5   s   &&      r&    test_post_request_no_timeout_key6TestTimeoutConversion.test_post_request_no_timeout_keyc   sx    !$'!!.2::>>.B]#^_,-!#563TC **&+,r)    N)__name__
__module____qualname____firstlineno__r   r'   r,   r7   r;   r>   rB   __static_attributes____classdictcell__)__classdict__s   @r&   r   r      s     
?2 2" ?2 2" ?2 2 ?2 2 ?1 1* ?- -r)   r   __main__)unittestunittest.mockr   r   r   	firecrawlr   TestCaser   rE   mainrD   r)   r&   <module>rR      s>     * 	 "j-H-- j-Z zMMO r)   