@@ -4439,6 +4439,49 @@ async def test_run_adk_user_simulation_missing_columns(
44394439 with pytest .raises (ValueError , match = "User simulation requires" ):
44404440 await _evals_common ._run_adk_user_simulation (row , mock_agent )
44414441
4442+ @mock .patch ("vertexai._genai._evals_common.ADK_SessionInput" ) # fmt: skip
4443+ @mock .patch ("vertexai._genai._evals_common.EvaluationGenerator" ) # fmt: skip
4444+ @mock .patch ("vertexai._genai._evals_common.LlmBackedUserSimulator" ) # fmt: skip
4445+ @mock .patch ("vertexai._genai._evals_common.ConversationScenario" ) # fmt: skip
4446+ @mock .patch ("vertexai._genai._evals_common.LlmBackedUserSimulatorConfig" ) # fmt: skip
4447+ @pytest .mark .asyncio
4448+ async def test_run_adk_user_simulation_missing_session_inputs (
4449+ self ,
4450+ mock_config_cls ,
4451+ mock_scenario_cls ,
4452+ mock_simulator_cls ,
4453+ mock_generator_cls ,
4454+ mock_session_input_cls ,
4455+ ):
4456+ row = pd .Series (
4457+ {
4458+ "starting_prompt" : "start" ,
4459+ "conversation_plan" : "plan" ,
4460+ }
4461+ )
4462+ mock_agent = mock .Mock ()
4463+ mock_invocation = mock .Mock ()
4464+ mock_invocation .user_content .model_dump .return_value = {"text" : "user msg" }
4465+ mock_invocation .final_response .model_dump .return_value = {"text" : "agent msg" }
4466+ mock_invocation .intermediate_data = None
4467+ mock_invocation .creation_timestamp = 12345
4468+ mock_invocation .invocation_id = "turn1"
4469+
4470+ mock_generator_cls ._generate_inferences_from_root_agent = mock .AsyncMock (
4471+ return_value = [mock_invocation ]
4472+ )
4473+
4474+ await _evals_common ._run_adk_user_simulation (row , mock_agent )
4475+
4476+ mock_scenario_cls .assert_called_once_with (
4477+ starting_prompt = "start" , conversation_plan = "plan"
4478+ )
4479+ mock_session_input_cls .assert_called_once_with (
4480+ app_name = "user_simulation_app" ,
4481+ user_id = "user_simulation_default_user" ,
4482+ state = {},
4483+ )
4484+
44424485
44434486@pytest .mark .usefixtures ("google_auth_mock" )
44444487class TestLLMMetricHandlerPayload :
0 commit comments