Skip to content

test: Introduce AdkWebServerUITest #343

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

vorburger
Copy link
Member

This WORKS (test passes), and will not yet actually reproduce the #302 problem.

This because that is a packaging problem, which this kind of test cannot detect. It still seems valuable to have such a test here though anyway.

A future follow-up contribution on this might add the missing test coverage for the actual packaging problem.

Copy link

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Summary of Changes

Hello @vorburger, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!

This pull request introduces a new integration test suite, AdkWebServerUITest, for the AdkWebServer's user interface. These tests verify basic UI routing and error handling, ensuring that the root path redirects to /dev-ui, and that /dev-ui paths return successfully, while non-existent pages correctly return a 404. The author notes that while this test passes, it does not address a specific packaging problem (#302), but is considered valuable for general UI testing.

Highlights

  • New UI Integration Test: Introduces AdkWebServerUITest.java to verify the behavior of the AdkWebServer's user interface using Spring Boot's MockMvc.
  • Root Path Redirection Test: Adds a test to ensure that accessing the root path (/) correctly redirects to /dev-ui with a 3xx status.
  • Dev UI Path Tests: Includes tests to confirm that both /dev-ui and /dev-ui/ endpoints return an OK (200) status.
  • Non-Existent Page Test: Adds a test case to verify that requests to non-existent UI pages correctly result in a 404 Not Found status.
Using Gemini Code Assist

The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.

Invoking Gemini

You can request assistance from Gemini at any point in your pull request via creating an issue comment (i.e. comment on the pull request page) using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands.

Feature Command Description
Code Review /gemini review Performs a code review for the current pull request in its current state.
Pull Request Summary /gemini summary Provides a summary of the current pull request in its current state.
Comment @gemini-code-assist Responds in comments when explicitly tagged, both in issue comments and review comments.
Help /gemini help Displays a list of available commands.

Customization

To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/ folder in the base of the repository. Detailed instructions can be found here.

Limitations & Feedback

Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here.

You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension.

Footnotes

  1. Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution.

@vorburger
Copy link
Member Author

@Poggecci how about this, in addition to #342 ? More coming up...

Copy link

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request introduces a new integration test class, AdkWebServerUITest, to verify the UI routing behavior of AdkWebServer. The tests are well-structured and cover the basic scenarios. I've provided a suggestion to refactor two similar tests into a single parameterized test to improve code maintainability by reducing duplication.

@vorburger vorburger force-pushed the AdkWebServerTest-UI branch from d027e67 to 15504f4 Compare August 13, 2025 04:50
@vorburger
Copy link
Member Author

/gemini review

Copy link

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request introduces a new integration test class, AdkWebServerUITest, to verify the behavior of the web server's UI endpoints. The tests cover root redirection, successful access to dev UI endpoints, and handling of non-existent pages. My feedback focuses on improving test performance by using a more specific test slice annotation and adhering to standard Java naming conventions for test methods.

This WORKS and will not yet actually reproduce the
google#302 problem.

This because that is a packaging problem, which this
kind of test cannot detect. It still seems valuable to
have such a test here though anyway.

A future follow-up contribution on this might add the
missing test coverage for the actual packaging problem.

Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant