Skip to content

Commit

Permalink
Don't show the number of issues generating the BindingContext (#5449)
Browse files Browse the repository at this point in the history
  • Loading branch information
BraisGabin committed Oct 20, 2022
1 parent ec6cd40 commit eef1dfa
Show file tree
Hide file tree
Showing 3 changed files with 1 addition and 49 deletions.
Expand Up @@ -18,7 +18,6 @@ internal fun generateBindingContext(
classpath: List<String>,
files: List<KtFile>,
debugPrinter: (() -> String) -> Unit,
warningPrinter: (String) -> Unit,
): BindingContext {
if (classpath.isEmpty()) {
return BindingContext.EMPTY
Expand All @@ -27,7 +26,6 @@ internal fun generateBindingContext(
val messageCollector = DetektMessageCollector(
minSeverity = CompilerMessageSeverity.ERROR,
debugPrinter = debugPrinter,
warningPrinter = warningPrinter,
)

val analyzer = AnalyzerWithCompilerReport(
Expand All @@ -46,15 +44,12 @@ internal fun generateBindingContext(
)
}

messageCollector.printIssuesCountIfAny()

return analyzer.analysisResult.bindingContext
}

internal class DetektMessageCollector(
private val minSeverity: CompilerMessageSeverity,
private val debugPrinter: (() -> String) -> Unit,
private val warningPrinter: (String) -> Unit,
) : MessageCollector by MessageCollector.NONE {
private var messages = 0

Expand All @@ -64,15 +59,6 @@ internal class DetektMessageCollector(
messages++
}
}

fun printIssuesCountIfAny() {
if (messages > 0) {
warningPrinter(
"The BindingContext was created with $messages issues. " +
"Run detekt CLI with --debug or set `detekt { debug = true }` in Gradle to see the error messages."
)
}
}
}

private object DetektMessageRenderer : PlainTextMessageRenderer() {
Expand Down
Expand Up @@ -63,7 +63,7 @@ internal class DefaultLifecycle(
override val settings: ProcessingSettings,
override val parsingStrategy: ParsingStrategy,
override val bindingProvider: (files: List<KtFile>) -> BindingContext =
{ generateBindingContext(settings.environment, settings.classpath, it, settings::debug, settings::info) },
{ generateBindingContext(settings.environment, settings.classpath, it, settings::debug) },
override val processorsProvider: () -> List<FileProcessListener> =
{ FileProcessorLocator(settings).load() },
override val ruleSetsProvider: () -> List<RuleSetProvider> =
Expand Down
Expand Up @@ -14,17 +14,14 @@ import org.junit.jupiter.api.Test
class DetektMessageCollectorSpec {

private lateinit var debugPrinter: (() -> String) -> Unit
private lateinit var warningPrinter: ((String) -> Unit)
private lateinit var subject: DetektMessageCollector

@BeforeEach
fun setupMocksAndSubject() {
debugPrinter = mockk { every { this@mockk.invoke(any()) } returns Unit }
warningPrinter = mockk { every { this@mockk.invoke(any()) } returns Unit }
subject = DetektMessageCollector(
minSeverity = CompilerMessageSeverity.INFO,
debugPrinter = debugPrinter,
warningPrinter = warningPrinter,
)
}

Expand All @@ -41,18 +38,6 @@ class DetektMessageCollectorSpec {
verify { debugPrinter.invoke(capture(slot)) }
assertThat(slot.captured()).isEqualTo("info: message")
}

@Test
fun `adds up to the message count`() {
subject.printIssuesCountIfAny()

verify {
warningPrinter(
"The BindingContext was created with 1 issues. " +
"Run detekt CLI with --debug or set `detekt { debug = true }` in Gradle to see the error messages."
)
}
}
}

@Nested
Expand All @@ -68,18 +53,6 @@ class DetektMessageCollectorSpec {
verify { debugPrinter.invoke(capture(slot)) }
assertThat(slot.captured()).isEqualTo("warning: message")
}

@Test
fun `adds up to the message count`() {
subject.printIssuesCountIfAny()

verify {
warningPrinter(
"The BindingContext was created with 1 issues. " +
"Run detekt CLI with --debug or set `detekt { debug = true }` in Gradle to see the error messages."
)
}
}
}

@Nested
Expand All @@ -93,12 +66,5 @@ class DetektMessageCollectorSpec {
fun `ignores the message`() {
verify { debugPrinter wasNot Called }
}

@Test
fun `doesn't add up to the message count`() {
subject.printIssuesCountIfAny()

verify { warningPrinter wasNot Called }
}
}
}

0 comments on commit eef1dfa

Please sign in to comment.