-
Notifications
You must be signed in to change notification settings - Fork 40
Minor fixes to unit tests #2825
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 @brfrn169, 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 focuses on making minor but impactful adjustments to existing unit tests. The changes include refactoring a nested test class for better structure or warning suppression, and significantly improving the robustness of an exception assertion by handling the order of suppressed exceptions more gracefully. These updates contribute to the overall stability and maintainability of the test suite.
Highlights
- Test Class Refactoring: In
CoordinatorGroupCommitterTest.java, theCoordinatorGroupCommitKeyManipulatorTestnested class has been refactored by removing itsstaticmodifier and adding a@SuppressWarnings("ClassCanBeStatic")annotation. This change likely addresses a specific compiler warning or enables certain test setup patterns that require the nested class to be non-static. - Improved Exception Assertions: In
ParallelExecutorTest.java, the exception assertion logic forexecuteTaskshas been enhanced. Instead of directly usingassertThatThrownBy, the test now usescatchExceptionand anif/elseblock to assert the primary exception and its suppressed exceptions. This makes the test more robust by accounting for the non-deterministic order in which suppressed exceptions might be returned.
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 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.
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.
Pull Request Overview
This PR makes minor adjustments to unit tests for improved exception handling and JUnit5 compliance.
- Refactored exception capture in
ParallelExecutorTestto usecatchExceptionand assert suppressed exceptions. - Added missing AssertJ imports (
assertThat,catchException). - Updated
CoordinatorGroupCommitterTestnested class to be non-static as required by JUnit5, with a suppression for “ClassCanBeStatic” warnings.
Reviewed Changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated 2 comments.
| File | Description |
|---|---|
| core/src/test/java/com/scalar/db/transaction/consensuscommit/ParallelExecutorTest.java | Refactored test to catch exceptions, assert suppressed exceptions, and added imports. |
| core/src/test/java/com/scalar/db/transaction/consensuscommit/CoordinatorGroupCommitterTest.java | Made nested test class non-static and suppressed “ClassCanBeStatic” warning. |
core/src/test/java/com/scalar/db/transaction/consensuscommit/ParallelExecutorTest.java
Show resolved
Hide resolved
core/src/test/java/com/scalar/db/transaction/consensuscommit/ParallelExecutorTest.java
Outdated
Show resolved
Hide resolved
core/src/test/java/com/scalar/db/transaction/consensuscommit/ParallelExecutorTest.java
Outdated
Show resolved
Hide resolved
core/src/test/java/com/scalar/db/transaction/consensuscommit/CoordinatorGroupCommitterTest.java
Show resolved
Hide resolved
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 includes a fix for a flaky test by handling non-deterministic exception ordering in parallel execution. I've suggested a small improvement to make the assertion more concise using AssertJ's features. Additionally, I've recommended reverting a change that makes a nested test class non-static.
core/src/test/java/com/scalar/db/transaction/consensuscommit/CoordinatorGroupCommitterTest.java
Show resolved
Hide resolved
core/src/test/java/com/scalar/db/transaction/consensuscommit/ParallelExecutorTest.java
Outdated
Show resolved
Hide resolved
843d6e2 to
cfcff7b
Compare
feeblefakie
left a comment
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.
Although I left one question to understand it properly, LGTM! Thank you!
core/src/test/java/com/scalar/db/transaction/consensuscommit/ParallelExecutorTest.java
Show resolved
Hide resolved
komamitsu
left a comment
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.
LGTM! 👍
Torch3333
left a comment
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.
LGTM, thank you!
Description
This PR makes small adjustments to the unit tests.
Related issues and/or PRs
N/A
Changes made
Added inline comments. Please take a look for the details.
Checklist
Additional notes (optional)
N/A
Release notes
N/A