[groovy] add test to check that read accessors on all elements in the file don't throw exceptions

This commit is contained in:
Daniil Ovchinnikov
2018-08-03 20:19:54 +03:00
parent 53c9f44281
commit 8c5b96067d
@@ -6,9 +6,12 @@ import com.intellij.psi.PsiFile
import com.intellij.testFramework.fixtures.CodeInsightTestFixture
import com.intellij.testFramework.propertyBased.CheckHighlighterConsistency
import com.intellij.testFramework.propertyBased.MadTestingAction
import com.intellij.testFramework.propertyBased.MadTestingUtil
import groovy.transform.CompileStatic
import org.jetbrains.jetCheck.Generator
import org.jetbrains.jetCheck.PropertyChecker
import org.jetbrains.plugins.groovy.lang.psi.impl.statements.expressions.literals.GrLiteralImpl
import org.jetbrains.plugins.groovy.lang.psi.impl.statements.typedef.enumConstant.GrEnumConstantImpl
import org.jetbrains.plugins.groovy.util.EdtRule
import org.jetbrains.plugins.groovy.util.FixtureRule
import org.jetbrains.plugins.groovy.util.Slow
@@ -47,4 +50,12 @@ class GroovySanityTest {
void 'incremental highlighter update'() {
PropertyChecker.checkScenarios(actionsOnGroovyFiles(CheckHighlighterConsistency.randomEditsWithHighlighterChecks))
}
@Test
void 'psi accessors'() {
PropertyChecker.checkScenarios(actionsOnGroovyFiles(MadTestingUtil.randomEditsWithPsiAccessorChecks {
(it.name == "getReference" || it.name == "getReferences") && it.declaringClass == GrLiteralImpl ||
it.name == "getOrCreateInitializingClass" && it.declaringClass == GrEnumConstantImpl
}))
}
}