
    =h                         S SK r S SKrS SKrS SKr\R                  S:  a  S SKJr  OS SKJr  S SKrS SKJ	r	   " S S\ R                  5      r\S:X  a  \ R                  " 5         gg)    N)   r   )Queue)GoogleSearchc                   *   \ rS rSrS r\R                  " \R                  " S5      S:H  S5      S 5       r	\R                  " \R                  " S5      S:H  S5      S 5       r
\R                  " \R                  " S5      S:H  S5      S	 5       r\R                  " \R                  " S5      S:H  S5      S
 5       r\R                  " \R                  " S5      S:H  S5      S 5       r\R                  " \R                  " S5      S:H  S5      S 5       rSrg)TestExample   c                 D    [         R                  " SS5      [        l        g )NAPI_KEYdemo)osgetenvr   SERP_API_KEY)selfs    eC:\Users\julio\OneDrive\Documentos\Trabajo\Ideas Frescas\venv\Lib\site-packages\tests/test_example.pysetUpTestExample.setUp   s    $&IIi$?!    r
   Nzno api_key providedc                     [        SSS.5      nUR                  5       n[        US   5        US   S   n[        US-   5        UR                  US5      n[        U5        g )NCoffeegoogle_scholar)qenginesearch_metadataid: get search from archivehtml)r   get_jsonprintget_search_archive)r   searchdata	search_idraw_htmls        r   test_get_jsonTestExample.test_get_json   sc    H8HIJ d$%&*+D1	i556--i@hr   DEBUGAPI_KEYc                     [        SSS.5      nUR                  5       S    H  n US   n[        SU-   5        M     g !   [        S5         M,  = f)Ncoffeisch)r   tbmimages_resultsoriginalzlink is found: zlink is not found.)r   r   r   )r   r    image_resultlinks       r   test_search_google_images%TestExample.test_search_google_images,   sY    GF;<"OO-.>?L#J/'$./ @*+s	   >Ac                 &   [        5       n[        SSS.5      nS Hg  n[        SU-   5        X2R                  S'   UR	                  5       nUb  [        SU-   5        MB  [        SUS	   S
   -   5        UR                  U5        Mi     [        S5        [        SS05      nUR                  5       (       d  UR                  5       nUS	   S
   n[        US-   5        UR                  U5      n[        US-   US	   S   -   5        [        R                  " SUS	   S   5      (       a  [        US-   US   S   -   5        O5[        US-   5        UR                  U5        [        R                  " S5        UR                  5       (       d  M  [        S5        g )NzAustin,TexasT)locationasync)amdnvidiaintelzexecute async search: q = r   zoops data is empty for: z"add search to the queue where id: r   r   z4wait until all search statuses are cached or successr3   r   z: status = statuszCached|Successz: search done with q = search_parametersz: requeue search   zall searches completed)r   r   r   params_dictget_dictputemptygetr   rer    timesleep)r   search_queuer    companyr!   r"   search_archiveds          r   
test_asyncTestExample.test_async:   s    w &
  0G
,w6
7$+

S
!"$.89
4t<M7Nt7TT
U


4
  0 	DE wo.$$&&!!#$,-d3) 	77
8#66yA/
	M)O<M,Nx,XX
Y YY'9J)KH)UVV)77/J]:^_b:ccd )001V$JJqM# $$&&& 	&'r   c           	          [        SSSSS.5      nS HW  nUS-  UR                  S'   UR                  5       nUS    H)  n[        [	        US	   US-  -   5      S
-   US   -   5        M+     MY     g )Nr(   nwszqdr:d
   r   r*   tbsnum)r   r9      startnews_resultsposition - title)r   r:   r   r   str)r   r    offsetr!   news_results        r   test_search_google_news#TestExample.test_search_google_newsj   s    	
  F*02+Fw'??$D#N3c+j1FRK?@5H;W^K__`  4 r   c                     [        SSSSS.5      nUR                  5       nSU;   a-  US    H#  n[        [        US   5      S-   US	   -   5        M%     g [        S
5        g )Nr(   shopzp_ord:rvd   rJ   shopping_resultsrP   rQ   rR   zJWARNING: oops shopping_results is missing from search result with tbm=shop)r   r   r   rS   )r   r    r!   shopping_results       r   test_search_google_shopping'TestExample.test_search_google_shoppingx   sp    	
   %#'(:#;c/*56>QXAYYZ $< ^_r   c                    S H  n[        0 5      R                  US5      S   S   n[        SUSSS.5      nUR                  5       nU R                  UR	                  S5      5        US	   S   S
   n[        SU-   S-   U-   5        M     g )N)znew yorkparisberlinr9   r   canonical_namezbest coffee shoprI   )r   r2   rL   rN   errororganic_resultsrR   ztop coffee result for z is: )r   get_locationr   assertIsNoner>   r   )r   cityr2   r    r!   
top_results         r   test_search_by_location#TestExample.test_search_by_location   s    3D#B'44T1=a@AQRH!'$	# F ??$Ddhhw/0/03G<J*X5?*LM 4r    )__name__
__module____qualname____firstlineno__r   unittestskipIfr   r   r$   r/   rE   rV   r]   ri   __static_attributes__rk   r   r   r   r      s)   @ __bii	*d25JK	 L	 __bii/47:OP
 Q
 __bii/47:OP-( Q-(^ __bii/47:OPa Qa __bii/47:OP` Q` __bii/47:OPN QNr   r   __main__)rp   r   r?   sysversion_infoqueuer   r@   serpapir   TestCaser   rl   mainrk   r   r   <module>rz      sd     
 
 v  !
zN(## zNz zMMO r   