-
Notifications
You must be signed in to change notification settings - Fork 24
[IMP] improve test coverage #825
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
Conversation
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.
Summary of Changes
Hello @emjay0921, 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 significantly improves the test coverage for the spp_registry_approval module, specifically focusing on the res.partner model's state management and approval workflows. It introduces a new, comprehensive suite of unit tests to ensure the robustness and correctness of these critical functionalities under various user permissions and scenarios.
Highlights
- New Test Module: A new test module has been introduced under
spp_registry_approval/tests/to house unit tests for thespp_registry_approvalfunctionality. - Comprehensive Unit Tests for
res.partnerApproval: A new test file,test_res_partner.py, has been added, providing extensive unit tests for theres.partnermodel's approval workflow. This includes testing default states, permission-based state transitions (approve, reject, reset to draft), and handling of various user roles. - Edge Case and Utility Testing: The new test suite covers important edge cases such as approving multiple records, handling empty recordsets, verifying the definition of state constants, and confirming the proper use of
sudo()within the approval methods to ensure operations succeed even with restricted user access.
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 or fill out our survey to provide feedback.
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
-
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. ↩
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
This pull request introduces new tests for registry approval functionality. The review focuses on improving test isolation and correctness, particularly in the sudo() usage test. The suggestion includes creating a record rule to properly test the bypass of access restrictions using sudo().
Codecov Report❌ Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## 17.0 #825 +/- ##
==========================================
+ Coverage 77.33% 79.20% +1.87%
==========================================
Files 757 766 +9
Lines 19714 20355 +641
Branches 2383 2392 +9
==========================================
+ Hits 15245 16123 +878
+ Misses 3938 3678 -260
- Partials 531 554 +23 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
|
|
Moved to another PR: #851. I'll close it now. |



Why is this change needed?
Batch 1 for improving tests:
How was the change implemented?
Added tests
New unit tests
Unit tests executed by the author
How to test manually
Related links