
    q[i(                        U d Z ddlZddlmZ ddlmZ dZ ej                  d ej                  ed	 ej                  d
d                   ej                  dd ej                  ed	 ej                  dBi dddddddej                  j                  dd
dej                  j                  ddddddddd d!d"d#d$d%d&d'd(dd)d*d+i      ,       ej                  d-d. ej                  ed/ ej                  d0d
d1            ,       ej                  d2d. ej                  ed/ ej                  d3d
d1            ,       ej                  d4d. ej                  ed/ ej                  ej                  j                  d
d1            ,       ej                  d5 ej                  ed/ ej                  d6d
d7                   ej                  d8 ej                  ed/ ej                  d9d
d7                   ej                  d: ej                  ed/ ej                  ej                  j                  d
d7                   ej                  d; ej                  ed	 ej                  dddd6d
d<dddd=
                  g	Zeej                     ed><    ej$                  e e       d?e@      Zej,                  j.                  dA        Zy)CzTests for generate_images.    N   )types   )pytest_helperzimagen-4.0-generate-001test_simple_promptRed skateboard   
image/jpeg)number_of_imagesoutput_mime_typemodelpromptconfig)name
parameters#test_all_vertexai_config_parametersznot supported in Gemini API
image_size2Kaspect_ratioz1:1guidance_scaleg      .@safety_filter_levelr   person_generationinclude_safety_attributesTinclude_rai_reasonr   output_compression_qualityP   negative_prompthumanadd_watermarkFseedi9  languageenenhance_promptlabelsimagen_label_keygenerate_images)r   exception_if_mldevr   :test_all_vertexai_config_person_generation_enum_parameterszenum value is not supportedzRobot holding a red skateboard	ALLOW_ALL)r   r   r   <test_all_vertexai_config_person_generation_enum_parameters_2	allow_all<test_all_vertexai_config_person_generation_enum_parameters_3<test_all_vertexai_config_safety_filter_level_enum_parametersBLOCK_LOW_AND_ABOVE)r   r   r   >test_all_vertexai_config_safety_filter_level_enum_parameters_2block_low_and_above>test_all_vertexai_config_safety_filter_level_enum_parameters_3 test_all_mldev_config_parameters
DONT_ALLOW)
r   r   r   r   r   r   r   r   r   r   
test_tablezmodels.generate_images)fileglobals_for_filetest_methodr5   c           
        K   | j                   j                  j                  t        dt	        j
                  dddd             d {   }|j                  d   j                  j                  sJ |j                  d   j                  j                  |j                  d   j                  k(  sJ t        |j                        dk(  sJ |j                  j                  dk(  sJ y 7 w)	Nr   r	   r
   T)r   r   r   r   r   r   zPositive Prompt)aiomodelsr'   IMAGEN_MODEL_LATESTr   GenerateImagesConfiggenerated_imagesimageimage_bytesimageslen!positive_prompt_safety_attributescontent_type)clientresponses     g/mnt/data/GridWatch/venv/lib/python3.12/site-packages/google/genai/tests/models/test_generate_images.pytest_simple_prompt_asyncrH      s     ::$$44'''$(!	 5 	 	( 
	"	"1	%	+	+	7	77	7 "((44			'	'(( 
X&&	'1	,,	,00==	'	s   AC*	C(
BC* )__doc__pytest r   r   r<   TestTableItem_GenerateImagesParametersr=   SafetyFilterLevelBLOCK_MEDIUM_AND_ABOVEPersonGenerationr4   r*   r/   r5   list__annotations__setup__file__globals
pytestmarkmarkasynciorH   rI       rG   <module>r[      s  " !   /   M!2522%#-5--!"!-

  M282522%#-5-- "  $ %*$;$;$R$R	
 "# #("8"8"C"C +/ $( ". ,. !( $     $!" +,=>#
6  MI82522%3-5--"-!"!-
  MK82522%3-5--"-!"!-
  MK82522%3-5--"'"8"8"B"B!"!-
  MK2522%3-5--$9!"!-
  MM2522%3-5--$9!"!-
  MM2522%3-5--$)$;$;$O$O!"!-
  M/2522%#-5--"#$9!"".*.#'!-+-
eE1
D,,- EL !]  	Y(	
  rZ   