Skip to content

Commit

Permalink
Add support for -XepIgnoreSuppressionAnnotations
Browse files Browse the repository at this point in the history
  • Loading branch information
tbroyer committed Feb 23, 2019
1 parent 3d72223 commit bc787e5
Show file tree
Hide file tree
Showing 3 changed files with 6 additions and 0 deletions.
1 change: 1 addition & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -326,6 +326,7 @@ import net.ltgt.gradle.errorprone.*
| `allDisabledChecksAsWarnings` | Enables all Error Prone checks, checks that are disabled by default are enabled as warnings. Defaults to `false`.
| `disableWarningsInGeneratedCode` | Disables warnings in classes annotated with `javax.annotation.processing.Generated` or `@javax.annotation.Generated`. Defaults to `false`.
| `ignoreUnknownCheckNames` | Defaults to `false`.
| `ignoreSuppressionAnnotations` | (since Error Prone 2.3.3) Defaults to `false`.
| `compilingTestOnlyCode` | (`isCompilingTestOnlyCode` with Kotlin DSL) Defaults to `false`. (defaults to `true` for the `compileTestJava` task)
| `excludedPaths` | A regular expression pattern (as a string) of file paths to exclude from Error Prone checking. Defaults to `null`.
| `checks` | A map of check name to `CheckSeverity`, to configure which checks are enabled or disabled, and their severity. Defaults to an empty map.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@ open class ErrorProneOptions {
@get:Input var allDisabledChecksAsWarnings: Boolean = false
@get:Input var disableWarningsInGeneratedCode: Boolean = false
@get:Input var ignoreUnknownCheckNames: Boolean = false
@get:Input var ignoreSuppressionAnnotations: Boolean = false
@get:Input var isCompilingTestOnlyCode: Boolean = false
@get:Input @get:Optional var excludedPaths: String? = null
@get:Input var checks: MutableMap<String, CheckSeverity> = linkedMapOf()
Expand Down Expand Up @@ -56,6 +57,7 @@ open class ErrorProneOptions {
"-XepAllDisabledChecksAsWarnings".takeIf { allDisabledChecksAsWarnings },
"-XepDisableWarningsInGeneratedCode".takeIf { disableWarningsInGeneratedCode },
"-XepIgnoreUnknownCheckNames".takeIf { ignoreUnknownCheckNames },
"-XepIgnoreSuppressionAnnotations".takeIf { ignoreSuppressionAnnotations },
"-XepCompilingTestOnlyCode".takeIf { isCompilingTestOnlyCode },
"-XepExcludedPaths:$excludedPaths".takeUnless { excludedPaths.isNullOrEmpty() }
).filterNotNull() +
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@ class ErrorProneOptionsTest {
doTestOptions { allDisabledChecksAsWarnings = true }
doTestOptions { disableWarningsInGeneratedCode = true }
doTestOptions { ignoreUnknownCheckNames = true }
doTestOptions { ignoreSuppressionAnnotations = true }
doTestOptions { isCompilingTestOnlyCode = true }
doTestOptions { excludedPaths = ".*/build/generated/.*" }
doTestOptions { check("ArrayEquals") }
Expand All @@ -34,6 +35,7 @@ class ErrorProneOptionsTest {
allDisabledChecksAsWarnings = true
disableWarningsInGeneratedCode = true
ignoreUnknownCheckNames = true
ignoreSuppressionAnnotations = true
isCompilingTestOnlyCode = true
excludedPaths = ".*/build/generated/.*"
check("BetaApi")
Expand Down Expand Up @@ -139,6 +141,7 @@ class ErrorProneOptionsTest {
assertThat(parsedOptions.isEnableAllChecksAsWarnings).isEqualTo(options.allDisabledChecksAsWarnings)
assertThat(parsedOptions.disableWarningsInGeneratedCode()).isEqualTo(options.disableWarningsInGeneratedCode)
assertThat(parsedOptions.ignoreUnknownChecks()).isEqualTo(options.ignoreUnknownCheckNames)
assertThat(parsedOptions.isIgnoreSuppressionAnnotations).isEqualTo(options.ignoreSuppressionAnnotations)
assertThat(parsedOptions.isTestOnlyTarget).isEqualTo(options.isCompilingTestOnlyCode)
assertThat(parsedOptions.excludedPattern?.pattern()).isEqualTo(options.excludedPaths)
assertThat(parsedOptions.severityMap).containsExactlyEntriesIn(options.checks.mapValues { it.value.toSeverity() })
Expand Down

0 comments on commit bc787e5

Please sign in to comment.