[FIR] Validate K2 diagnostic messages as a unit-test

This commit is contained in:
Nikolay Lunyak
2023-03-24 08:32:25 +02:00
committed by Space Team
parent 8096e94c88
commit 7545472dd3
5 changed files with 30 additions and 8 deletions
@@ -184,7 +184,5 @@ object FirJsErrorsDefaultMessages : BaseDiagnosticRendererFactory() {
"Exported declaration contains non-consumable identifier '${0}', that can't be represented inside TS definitions and ESM",
CommonRenderers.STRING,
)
map.checkMissingMessages(FirJsErrors)
}
}
@@ -301,7 +301,5 @@ object FirJvmErrorsDefaultMessages : BaseDiagnosticRendererFactory() {
TO_STRING,
TO_STRING,
)
map.checkMissingMessages(FirJvmErrors)
}
}
@@ -73,7 +73,5 @@ object FirNativeErrorsDefaultMessages : BaseDiagnosticRendererFactory() {
map.put(INAPPLICABLE_EXACT_OBJC_NAME, "Exact @ObjCName is only applicable to classes, objects and interfaces")
map.put(MISSING_EXACT_OBJC_NAME, "Exact @ObjCName is required to have an ObjC name")
map.put(NON_LITERAL_OBJC_NAME_ARG, "@ObjCName accepts only literal string and boolean values")
map.checkMissingMessages(FirNativeErrors)
}
}
@@ -2180,8 +2180,6 @@ object FirErrorsDefaultMessages : BaseDiagnosticRendererFactory() {
map.put(ASSIGNED_VALUE_IS_NEVER_READ, "Assigned value is never read")
map.put(VARIABLE_INITIALIZER_IS_REDUNDANT, "Initializer is redundant")
map.put(VARIABLE_NEVER_READ, "Variable is never read")
map.checkMissingMessages(FirErrors)
}
}
@@ -0,0 +1,30 @@
/*
* Copyright 2010-2023 JetBrains s.r.o. and Kotlin Programming Language contributors.
* Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
*/
package org.jetbrains.kotlin.checkers
import org.jetbrains.kotlin.fir.analysis.diagnostics.FirErrors
import org.jetbrains.kotlin.fir.analysis.diagnostics.FirErrorsDefaultMessages
import org.jetbrains.kotlin.fir.analysis.diagnostics.checkMissingMessages
import org.jetbrains.kotlin.fir.analysis.diagnostics.js.FirJsErrors
import org.jetbrains.kotlin.fir.analysis.diagnostics.js.FirJsErrorsDefaultMessages
import org.jetbrains.kotlin.fir.analysis.diagnostics.jvm.FirJvmErrors
import org.jetbrains.kotlin.fir.analysis.diagnostics.jvm.FirJvmErrorsDefaultMessages
import org.jetbrains.kotlin.fir.analysis.diagnostics.native.FirNativeErrors
import org.jetbrains.kotlin.fir.analysis.diagnostics.native.FirNativeErrorsDefaultMessages
import org.jetbrains.kotlin.fir.builder.FirSyntaxErrors
import org.jetbrains.kotlin.fir.builder.FirSyntaxErrorsDefaultMessages
import org.junit.Test
class DefaultMessagesTest {
@Test
fun ensureAllMessagesPresent() {
FirErrorsDefaultMessages.MAP.checkMissingMessages(FirErrors)
FirJvmErrorsDefaultMessages.MAP.checkMissingMessages(FirJvmErrors)
FirJsErrorsDefaultMessages.MAP.checkMissingMessages(FirJsErrors)
FirNativeErrorsDefaultMessages.MAP.checkMissingMessages(FirNativeErrors)
FirSyntaxErrorsDefaultMessages.MAP.checkMissingMessages(FirSyntaxErrors)
}
}