-
Notifications
You must be signed in to change notification settings - Fork 1.6k
Increase Firebase AI Logic unit test coverage #15126
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
base: main
Are you sure you want to change the base?
Conversation
Using Gemini Code AssistThe 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
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 Limitations & Feedback Gemini Code Assist is currently in preview and 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 to provide feedback. |
/gemini description |
/gemini review |
Hi @paulb777, It looks like you tried to use I'm now processing your request for a code review as indicated by |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Code Review
The pull request introduces new unit tests covering chat functionality, JSON value handling, parts representation, and safety features. Some tests can be improved by avoiding force-unwrapping, using object comparison for JSON encoding, and using XCTExpectFailure
for known test failures.
.requestHandler = try GenerativeModelTestUtil.httpRequestHandler( | ||
forResource: "unary-success-function-call-empty-arguments", | ||
withExtension: "json", | ||
subdirectory: "mock-responses/vertexai" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I just realized that all of the tests in this file are using the vertexai
samples. We'd need to create similar samples for googleai
and check them in.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The stub files are missing, so I'll delete for now since there's nothing different about these tests than the existing vertexai ones.
Thanks for the review. I asked Gemini CLI to address the comments. I couldn't find the mock response files either so I deleted ✦ I have addressed all the review comments:
|
This PR significantly improves the unit test coverage for the FirebaseAI Swift Package Manager target. The new tests were generated with the assistance of the Gemini CLI
and address several key areas that were previously under-tested.
Key Improvements:
Chat
Tests (ChatTests.swift
):GenerativeModel
Tests:Data Model and Utility Tests:
#no-changelog