From 700187cce6316e675d1c56ff588b147f5cc2a1e8 Mon Sep 17 00:00:00 2001 From: Nikolay Krasko Date: Tue, 25 Nov 2014 01:31:14 +0300 Subject: [PATCH] Add ability to configure checker tests with directives --- .../jet/checkers/AbstractJetPsiCheckerTest.java | 2 +- .../plugin/JetLightCodeInsightFixtureTestCase.java | 14 ++++++++++++++ 2 files changed, 15 insertions(+), 1 deletion(-) diff --git a/idea/tests/org/jetbrains/jet/checkers/AbstractJetPsiCheckerTest.java b/idea/tests/org/jetbrains/jet/checkers/AbstractJetPsiCheckerTest.java index 9ebe9bd8a04..a452b9477da 100644 --- a/idea/tests/org/jetbrains/jet/checkers/AbstractJetPsiCheckerTest.java +++ b/idea/tests/org/jetbrains/jet/checkers/AbstractJetPsiCheckerTest.java @@ -59,6 +59,6 @@ public abstract class AbstractJetPsiCheckerTest extends JetLightCodeInsightFixtu @NotNull @Override protected LightProjectDescriptor getProjectDescriptor() { - return JetLightProjectDescriptor.INSTANCE; + return getProjectDescriptorFromTestName(); } } diff --git a/idea/tests/org/jetbrains/jet/plugin/JetLightCodeInsightFixtureTestCase.java b/idea/tests/org/jetbrains/jet/plugin/JetLightCodeInsightFixtureTestCase.java index 7198290e6eb..0a30368e235 100644 --- a/idea/tests/org/jetbrains/jet/plugin/JetLightCodeInsightFixtureTestCase.java +++ b/idea/tests/org/jetbrains/jet/plugin/JetLightCodeInsightFixtureTestCase.java @@ -22,6 +22,7 @@ import com.intellij.openapi.actionSystem.ex.ActionManagerEx; import com.intellij.openapi.editor.ex.EditorEx; import com.intellij.openapi.startup.StartupManager; import com.intellij.openapi.util.io.FileUtil; +import com.intellij.openapi.util.text.StringUtil; import com.intellij.openapi.vfs.newvfs.impl.VfsRootAccess; import com.intellij.psi.FileViewProvider; import com.intellij.psi.PsiManager; @@ -79,6 +80,19 @@ public abstract class JetLightCodeInsightFixtureTestCase extends LightCodeInsigh return getProjectDescriptorFromFileDirective(); } + protected LightProjectDescriptor getProjectDescriptorFromTestName() { + String testName = StringUtil.toLowerCase(getTestName(false)); + + if (testName.endsWith("runtime")) { + return JetWithJdkAndRuntimeLightProjectDescriptor.INSTANCE; + } + else if (testName.endsWith("stdlib")) { + return ProjectDescriptorWithStdlibSources.INSTANCE; + } + + return JetLightProjectDescriptor.INSTANCE; + } + protected LightProjectDescriptor getProjectDescriptorFromFileDirective() { if (!isAllFilesPresentInTest()) { try {