
    5P@ix                        d dl mZ d dlmZ d dlmZ d dlmZ d dlm	Z	 d dl
mZ d dlmZ 	 	 	 d	 	 	 	 	 	 	 	 	 dd	Z G d
 dej                         Z G d dej$                        Zedk(  r ej*                          yy)    )annotations)mock)absltest)
exceptions)text)
text_model)modelNc                T    t        j                  | |||d|  did|id|id|ig      S )Noutput_1)promptr	   temperaturecandidate_count
candidates)r   
Completionr   r	   r   r   s       v/home/www/lebenam.kofcorporation.com/venv/lib/python3.12/site-packages/google/generativeai/notebook/text_model_test.py_fake_generatorr      sN     ??' &}%u{#'	
     c                  2    e Zd ZdZ	 	 	 d	 	 	 	 	 	 	 	 	 ddZy)	TestModelz1A TextModel, but with _generate_text stubbed out.Nc                     t        ||||      S )Nr   )r   )selfr   r	   r   r   kwargss         r   _generate_textzTestModel._generate_text3   s     #+	
 	
r   NNN
r   strr	   z
str | Noner   zfloat | Noner   z
int | Nonereturnztext.Completion)__name__
__module____qualname____doc__r    r   r   r   r   0   sE    ;
 !$(&*

 
 "	

 $
 

r   r   c                      e Zd Zd Zd Zy)TextModelTestCasec                x   t               }|j                  d      }| j                  |j                  d   d       | j	                  |j                  d          | j	                  |j                  d          | j	                  |j                  d          t        j                  ddd	
      }|j                  d|      }| j                  |j                  d   d       | j                  |j                  d   d       | j                  |j                  d   d       | j                  |j                  d   d	       y )Nzprompt goes inr   zprompt goes in_1         
model_namegzG?   )r	   r   r   )r   
call_modelassertEqualtext_resultsassertIsNone	model_libModelArguments)r   r	   resultargss       r   test_generate_textz$TextModelTestCase.test_generate_textD   s   !!"23,,Q/1CD&--a01&--a01&--a01''l^_`!!"2D9,,Q/1CD,,Q/>,,Q/6,,Q/3r   c                0   t               }t        j                  j                  |d      5 }t	        j
                  d      t        j                  g|_        |j                  d      }d d d        | j                  j                  d       y # 1 sw Y   &xY w)Nr   z
Over quotazphew it workedr)   )r   r   patchobjectr   ResourceExhaustedDEFAULTside_effectr-   r.   
call_count)r   r	   erroneous_generator_s       r   
test_retryzTextModelTestCase.test_retryT   s    ZZu&67 	3;N,,\:/+
   !12A	3 	,77;	3 	3s   <BBN)r    r!   r"   r5   r?   r$   r   r   r&   r&   C   s    4 <r   r&   __main__r   r   )
__future__r   unittestr   absl.testingr   google.api_corer   google.generativeair   google.generativeai.notebookr    google.generativeai.notebook.libr	   r1   r   	TextModelr   TestCaser&   r    mainr$   r   r   <module>rK      s    #  ! & $ 3 ?
  $"&	   	
 *

$$ 
&<)) <> zHMMO r   