Skip to content

PLUGINAPI-189 Add test coverage#292

Merged
OrlovAlexander85 merged 1 commit into
masterfrom
task/orlov/PLUGINAPI-189
May 11, 2026
Merged

PLUGINAPI-189 Add test coverage#292
OrlovAlexander85 merged 1 commit into
masterfrom
task/orlov/PLUGINAPI-189

Conversation

@OrlovAlexander85
Copy link
Copy Markdown
Contributor

For SonarSourcers:

Check before making the PR ready for review

  • Create a JIRA ticket if the API is impacted
  • Prefix the commit message with the ticket number
  • Document the change in CHANGELOG.md
  • When adding a new API:
    • Explain in the JavaDoc the purpose of the new API
    • Add a @since X.Y in the JavaDoc
  • When deprecating an API:
    • Annotate the deprecated element with @Deprecated
    • Add a @deprecated since X.Y in the JavaDoc
    • Document the replacement in the JavaDoc (if any)
  • When dropping an API:
  • Make sure the tests adhere to the convention:
    • All test method names should use snake_case, for example: test_validate_input. It can also start with the methodName
  • Make sure checks are green: build passes, Quality Gate is green
  • Merge after getting approval by at least one member of the guild
    • If no review is made within 3 days, gently ping the reviewers
    • The guild member reviewing the code can explicitly request someone else (typically another guild member representing another team) to check the impact on the specific product
    • In some cases, the guild may deem it necessary that multiple or even all members approve a PR. This is more likely in complex changes or changes directly impacting all teams using the API.

For external contributors:

Please be aware that we are not actively looking for feature contributions. The truth is that it's extremely difficult for someone outside SonarSource to comply with our roadmap and expectations. Therefore, we typically only accept minor cosmetic changes and typo fixes. If you would like to see a new feature, please create a new thread in the forum "Suggest new features".

With that in mind, if you would like to submit a code contribution, make sure that you adhere to the following guidelines and all tests are passing:

Please explain your motives to contribute this change: what problem you are trying to fix, what improvement you are trying to make
Use the following formatting style: SonarSource/sonar-developer-toolset
Provide a unit test for any code you changed
If there is a JIRA ticket available, please make your commits and pull request start with the ticket ID (PLUGINAPI-XXXX)

Please note that opening the PR will notify all the squad members. Please make sure you keep it in DRAFT and mark it ready, when all the checks are green.

We will try to give you feedback on your contribution as quickly as possible.

Thank You! The SonarSource Team

@OrlovAlexander85 OrlovAlexander85 requested a review from a team as a code owner May 7, 2026 15:44
@hashicorp-vault-sonar-prod
Copy link
Copy Markdown

hashicorp-vault-sonar-prod Bot commented May 7, 2026

PLUGINAPI-189

@sonar-review-alpha
Copy link
Copy Markdown

sonar-review-alpha Bot commented May 7, 2026

Summary

This PR adds test coverage for the SeverityValues class by introducing a new test class SeverityValuesTest. The tests validate conversion methods between different severity enum types:

  • fromRuleSeverity conversion: Tests mapping from org.sonar.api.rule.Severity to SeverityValues for all supported values (INFO, MINOR→LOW, MAJOR→MEDIUM, CRITICAL→HIGH, BLOCKER)
  • Error handling: Verifies that unknown rule severity values throw IllegalArgumentException with a descriptive message
  • fromImpactSeverity conversion: Tests mapping from org.sonar.api.issue.impact.Severity to SeverityValues for all supported values

The test methods follow the snake_case naming convention and use AssertJ for clear, readable assertions.

What reviewers should know

Scope: Test-only change, no production code modified.

Key areas to review:

  • Test completeness: All enum values are tested in both conversion methods (5 severity levels each)
  • Error path: Unknown value handling is validated with exception assertion
  • Naming convention: Test methods use test_ prefix with snake_case, matching project standards

Note: The tests cover the asymmetric mapping between rule severity (INFO/MINOR/MAJOR/CRITICAL/BLOCKER) and impact severity (INFO/LOW/MEDIUM/HIGH/BLOCKER) where MINOR→LOW and MAJOR→MEDIUM. Both directions are tested with their respective enum types.


  • Generate Walkthrough
  • Generate Diagram

🗣️ Give feedback

sonar-review-alpha[bot]

This comment was marked as outdated.

@OrlovAlexander85 OrlovAlexander85 force-pushed the task/orlov/PLUGINAPI-189 branch from 5986c23 to 4c50a85 Compare May 11, 2026 07:25
Copy link
Copy Markdown

@sonar-review-alpha sonar-review-alpha Bot left a comment

Choose a reason for hiding this comment

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

LGTM! ✅

Solid addition. The tests correctly exercise the full mapping tables for both fromRuleSeverity and fromImpactSeverity, cover the error path for the string-based method, and follow the project's snake_case test naming convention. No issues found.

🗣️ Give feedback

@sonarqube-next
Copy link
Copy Markdown

@OrlovAlexander85 OrlovAlexander85 merged commit d87f4f5 into master May 11, 2026
6 checks passed
@OrlovAlexander85 OrlovAlexander85 deleted the task/orlov/PLUGINAPI-189 branch May 11, 2026 08:34
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants