[FIR TEST] Filter some particular tokens during createDebugInfo

This commit is contained in:
Mikhail Glukhikh
2020-11-17 18:52:28 +03:00
parent c602ccb33e
commit e7e162c7eb
4 changed files with 16 additions and 12 deletions
@@ -7,6 +7,7 @@ package org.jetbrains.kotlin.fir
import com.intellij.psi.PsiElement
import junit.framework.TestCase
import org.jetbrains.kotlin.KtNodeTypes
import org.jetbrains.kotlin.checkers.diagnostics.factories.DebugInfoDiagnosticFactory1
import org.jetbrains.kotlin.checkers.utils.TypeOfCall
import org.jetbrains.kotlin.diagnostics.rendering.Renderers
@@ -204,6 +205,9 @@ abstract class AbstractFirDiagnosticsTest : AbstractFirBaseDiagnosticsTest() {
): FirDiagnosticWithParameters1<FirSourceElement, String>? {
val sourceElement = element.source ?: return null
if (sourceElement.kind != FirRealSourceElementKind) return null
// Lambda argument is always (?) duplicated by function literal
// Block expression is always (?) duplicated by single block expression
if (sourceElement.elementType == KtNodeTypes.LAMBDA_ARGUMENT || sourceElement.elementType == KtNodeTypes.BLOCK) return null
val name = name ?: return null
if (diagnosedRangesToDiagnosticNames[sourceElement.startOffset..sourceElement.endOffset]?.contains(name) != true) return null