Conversation
The apigee-llm-proxy-url surefire execution in core/pom.xml is meant to run one ApigeeLlmTest method with APIGEE_PROXY_URL set, so that ApigeeLlm's fallback to that environment variable is tested. It selects the method by name. df73784 replaced that method with three, including build_withoutProxyUrlAndEnvVarSet_readsFromEnvironment for this case, and did not update the execution, which still names build_withoutProxyUrl_readsFromEnvironment. Since then it runs no tests: [INFO] --- surefire:3.5.2:test (apigee-llm-proxy-url) @ google-adk --- [INFO] Tests run: 0, Failures: 0, Errors: 0, Skipped: 0 The new method skips itself unless APIGEE_PROXY_URL is set, and this is the only execution that sets it, so the build has skipped the method since the change. The build still passes because surefire's failIfNoSpecifiedTests check only looks for a matching test class, and ApigeeLlmTest still matches. Point the execution at the new method name.
Contributor
|
Hi @innoprej, thank you for your contribution! We appreciate you taking the time to submit this pull request. Currently this PR is under review by our team and we will keep you posted if any additional information is required. thank you. |
This was referenced Sep 26, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Please ensure you have read the contribution guide before creating a pull request.
Link to Issue or Description of Change
1. Link to an existing issue (if applicable):
feat: Add chat-completions API support to ApigeeLlm), which renamed the test method2. Or, if no issue exists, describe the change:
Problem:
core/pom.xmlhas a surefire execution,apigee-llm-proxy-url, that is meant to run oneApigeeLlmTestmethod withAPIGEE_PROXY_URL=proxy-url, so thatApigeeLlm's fallback to that environment variable is tested. The execution selects the method by name:#1249 replaced that method with
build_withoutProxyUrlAndEnvVarSet_readsFromEnvironment,build_withoutProxyUrlAndEnvVarNotSet_throwsExceptionandbuild_withProxyUrl_usesProvidedUrl, and left the execution pointing at the old name. Since then the execution runs nothing. From the JDK 17 job of thevalidationrun for #1487, which touches neither file (job log):The new
build_withoutProxyUrlAndEnvVarSet_readsFromEnvironmentstarts withassumeNotNull(System.getenv("APIGEE_PROXY_URL")), and this is the only execution that sets the variable. In the same job the method is skipped inapigee-llm(24 run, 1 skipped), and indefault-testandbasicit is skipped along with the rest ofApigeeLlmTest, which needsGOOGLE_API_KEY. So nothing in the build covers the case whereAPIGEE_PROXY_URLsupplies the proxy URL; only the unset case (build_withoutProxyUrlAndEnvVarNotSet_throwsException) runs.The build does not flag this. Surefire's
failIfNoSpecifiedTestscheck, on by default, only fails when no test class matches the pattern, andApigeeLlmTeststill matches.Solution:
Point the execution at the new method name. No other change.
Testing Plan
Unit Tests:
Windows 11, Microsoft OpenJDK 17.0.19, Maven 4.0.0-rc-3 via
mvnw:main./mvnw -pl core test-compile surefire:test@apigee-llm-proxy-urlTests run: 0Tests run: 1:build_withoutProxyUrlAndEnvVarSet_readsFromEnvironmentpasses./mvnw -pl core test -Dmaven.test.failure.ignore=true(so that all six executions run)default-testandbasic: 1883 run, 24 skipped, 1 failure each, the pre-existing Windows path-separator caseLocalSkillSourceTest.testListResources(addressed separately in #1542).vertex-ai-rag-retrieval2,apigee-llm24 (1 skipped),apigee-llm-vertex-ai1,apigee-llm-proxy-url1, all passingManual End-to-End (E2E) Tests:
Run
./mvnw -pl core test-compile surefire:test@apigee-llm-proxy-urland read the execution's summary:Tests run: 0onmain,Tests run: 1with this change.Checklist
Additional context
The execution already starts its own JVM; with this change it also runs one test. For scale, in the same CI job
apigee-llm-vertex-ai, which runs one test the same way, took about 3.3 seconds from start to finish, andapigee-llm-proxy-urltook about 1.4 seconds with no tests.If you would rather have the build catch this kind of drift, surefire's
failIfNoTests(off by default) fails an execution that completes no tests, so setting it on the executions that select tests by name would do that. I left it out to keep this change to one line.Found while running the
coretests on Windows for #1542.