Add ability to configure checker tests with directives

This commit is contained in:
Nikolay Krasko
2014-11-25 01:31:14 +03:00
committed by Nikolay Krasko
parent 528c674001
commit 700187cce6
2 changed files with 15 additions and 1 deletions
@@ -59,6 +59,6 @@ public abstract class AbstractJetPsiCheckerTest extends JetLightCodeInsightFixtu
@NotNull
@Override
protected LightProjectDescriptor getProjectDescriptor() {
return JetLightProjectDescriptor.INSTANCE;
return getProjectDescriptorFromTestName();
}
}
@@ -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 {