
    _j                         S SK r S SKJrJr  S SKrS SKJr   " S S\ R                  5      r\	S:X  a  \ R                  " 5         gg)    N)patch	MagicMock)FirecrawlAppc                       \ rS rSr\" S5      S 5       r\" S5      S 5       r\" S5      S 5       r\" S5      S 5       r\" S5      S 5       r	\" S5      S 5       r
S	rg
)TestTimeoutConversion   zrequests.postc                    [        5       nSUl        SSS0S.UR                  l        X!l        [	        [
        R                  R                  SS5      S9nUR                  S	S
S9  UR                  u  pEU R                  US   S5        g )N   TmarkdownTest contentsuccessdataTEST_API_KEYdummy-api-key-for-testingapi_keyhttps://example.comi`  timeoutr   g     @P@r   status_codejsonreturn_valuer   osenvironget
scrape_url	call_argsassertEqualself	mock_postmock_responseappargskwargss         R/home/rurouni/.local/lib/python3.13/site-packages/tests/test_timeout_conversion.py"test_scrape_url_timeout_conversion8TestTimeoutConversion.test_scrape_url_timeout_conversion	   s    !$'!N+
' "/2::>>.B]#^_,e< **	*D1    c                    [        5       nSUl        SSS0S.UR                  l        X!l        [	        [
        R                  R                  SS5      S9nUR                  S	5        UR                  u  pEU R                  US
   S5        g )Nr
   Tr   r   r   r   r   r   r   r        A@r   r!   s         r(   test_scrape_url_default_timeout5TestTimeoutConversion.test_scrape_url_default_timeout   s    !$'!N+
' "/2::>>.B]#^_,- **	*D1r+   c                     [        5       nSUl        X!l        [        [        R
                  R                  SS5      S9nSS0nSS0nUR                  S	XE5        UR                  u  pgU R                  US   S
5        g )Nr
   r   r   r   r   0u  Content-Typeapplication/jsonhttps://example.com/apir-   
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                     [        5       nSUl        X!l        [        [        R
                  R                  SS5      S9nSSS.nSS	0nUR                  S
XE5        UR                  u  pgU R                  US   S5        g )Nr
   r   r   r   r1   r   )r   urlr2   r3   r4   r   r-   r5   r7   s           r(   !test_post_request_default_timeout7TestTimeoutConversion.test_post_request_default_timeout=   sz    !$'!!.2::>>.B]#^_ )>?!#563TC **	*D1r+   c                 x   [        5       nSUl        SSS0S.UR                  l        X!l        [	        [
        R                  R                  SS5      S9nUR                  S	S
S9  UR                  u  pEU R                  US   S5        UR                  S	SS9  UR                  u  pEU R                  US   S5        g )Nr
   Tr   r   r   r   r   r   r   i  r   r   g      @r   g      @r   r!   s         r(   test_timeout_edge_cases-TestTimeoutConversion.test_timeout_edge_casesM   s    !$'!N+
' "/2::>>.B]#^_,d; **	*C0,a8 **	*C0r+   c                     [        5       nSUl        X!l        [        [        R
                  R                  SS5      S9nSS0nSS0nUR                  S	XE5        UR                  u  pgU R                  US
   5        g )Nr
   r   r   r   r<   r   r2   r3   r4   r   )
r   r   r   r   r   r   r   r6   r   assertIsNoner7   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.   r9   r=   r@   rD   __static_attributes__rF   r+   r(   r   r      s    
?2 2" ?2 2" ?2 2 ?2 2 ?1 1* ?- -r+   r   __main__)unittestunittest.mockr   r   r   	firecrawlr   TestCaser   rG   mainrF   r+   r(   <module>rR      s>     * 	 "j-H-- j-Z zMMO r+   