@@ -164,6 +164,33 @@ public void processLlmRequestWithGoogleSearchToolAddsToolToConfig() {
164164 Tool .builder ().googleSearch (GoogleSearch .builder ().build ()).build ());
165165 }
166166
167+ @ Test
168+ public void processLlmRequestWithLatestAliasAddsToolToConfig () {
169+ final GoogleSearchTool googleSearchTool = new GoogleSearchTool ();
170+ LlmRequest .Builder builder =
171+ LlmRequest .builder ().model ("gemini-flash-latest" ).build ().toBuilder ();
172+ Completable result = googleSearchTool .processLlmRequest (builder , null );
173+ result .test ().assertComplete ();
174+ assertThat (builder .build ().config ().get ().tools ().get ())
175+ .contains (Tool .builder ().googleSearch (GoogleSearch .builder ().build ()).build ());
176+ }
177+
178+ @ Test
179+ public void processLlmRequestWithUnsupportedModelReturnsError () {
180+ final GoogleSearchTool googleSearchTool = new GoogleSearchTool ();
181+ LlmRequest .Builder builder = LlmRequest .builder ().model ("text-bison-001" ).build ().toBuilder ();
182+ Completable result = googleSearchTool .processLlmRequest (builder , null );
183+ result .test ().assertError (IllegalArgumentException .class );
184+ }
185+
186+ @ Test
187+ public void processLlmRequest_WithNullModel_ReturnsError () {
188+ final GoogleSearchTool googleSearchTool = new GoogleSearchTool ();
189+ LlmRequest .Builder builder = LlmRequest .builder ().build ().toBuilder ();
190+ Completable result = googleSearchTool .processLlmRequest (builder , null );
191+ result .test ().assertError (IllegalArgumentException .class );
192+ }
193+
167194 @ Test
168195 public void processLlmRequestWithUrlContextToolAddsToolToConfig () {
169196 FunctionDeclaration functionDeclaration =
0 commit comments