The SonarQube Gosu Plugin supports the following features:
- Code Metrics (Cognitive and Cyclomatic Complexity, Lines of Code, Code Duplications);
- Code Coverage;
- Test Reports;
- Syntax highlighting;
- Suppress Warnings.
The plugin provides that following properties that can configured through project properties:
Property | Description | Default Value |
---|---|---|
sonar.gosu.file.suffixes |
Comma separated list of Gosu file suffixes. | .gs,.gsx |
sonar.gosu.reportPaths |
Comma separated list of JUnit reports paths. | modules/configuration/build/test-results/test/ |
The properties can be used as follows: -Dsonar.jacoco.reportPath=build/jacoco/coverage.exec
.
The plugin supports warning suppressing for the following Gosu types:
class
;enhancement
;enum
;interface
;annotation
;constructor
;function
;field
;property
;
To suppress warnings from Sonarqube Gosu Plugin Rules, use the following syntax @SuppressWarnings("gosu:RULE_KEY")
.
This will suppress any issue found by the specified rule during the code analysis.
Check the table bellow for other warning suppressing configurations:
Suppress Key | Description | Example |
---|---|---|
Rule Key | Suppress warnings for given rule | @SuppressWarnings("gosu:TODOsRule") |
all |
Suppress warnings for all rules | @SuppressWarnings("gosu:all") |
metrics |
Suppress warnings for metrics rules | @SuppressWarnings("gosu:metrics") |
code_smells |
Suppress warnings for code smells rules | @SuppressWarnings("gosu:code_smells") |
vulnerabilities |
Suppress warnings for vulnerabilities rules | @SuppressWarnings("gosu:vulnerabilities") |
bugs |
Suppress warnings for bugs rules | @SuppressWarnings("gosu:bugs") |
A list of all the rules included on the plugin is available here.