1 package com
.intellij
.execution
.testframework
.sm
;
3 import com
.intellij
.openapi
.module
.Module
;
4 import com
.intellij
.openapi
.module
.ModuleType
;
5 import com
.intellij
.openapi
.project
.Project
;
6 import com
.intellij
.openapi
.projectRoots
.Sdk
;
7 import com
.intellij
.openapi
.roots
.ModifiableRootModel
;
8 import com
.intellij
.psi
.PsiFile
;
9 import com
.intellij
.testFramework
.LightProjectDescriptor
;
10 import com
.intellij
.testFramework
.UsefulTestCase
;
11 import com
.intellij
.testFramework
.fixtures
.CodeInsightTestFixture
;
12 import com
.intellij
.testFramework
.fixtures
.IdeaProjectTestFixture
;
13 import com
.intellij
.testFramework
.fixtures
.IdeaTestFixtureFactory
;
14 import com
.intellij
.testFramework
.fixtures
.TestFixtureBuilder
;
15 import com
.intellij
.testFramework
.fixtures
.impl
.LightTempDirTestFixtureImpl
;
16 import org
.jetbrains
.annotations
.Nullable
;
18 import java
.io
.IOException
;
21 * @author Roman.Chernyatchik
23 public abstract class SMLightFixtureTestCase
extends UsefulTestCase
{
24 protected static final LightProjectDescriptor ourDescriptor
= new LightProjectDescriptor() {
25 public ModuleType
getModuleType() {
26 return ModuleType
.EMPTY
;
33 public void configureModule(Module module
, ModifiableRootModel model
) {
37 protected CodeInsightTestFixture myFixture
;
40 protected void setUp() throws Exception
{
43 final IdeaTestFixtureFactory factory
= IdeaTestFixtureFactory
.getFixtureFactory();
44 final TestFixtureBuilder
<IdeaProjectTestFixture
> fixtureBuilder
=
45 factory
.createLightFixtureBuilder(getProjectDescriptor());
47 final IdeaProjectTestFixture fixture
= fixtureBuilder
.getFixture();
48 final LightTempDirTestFixtureImpl tempDirTestFixture
= new LightTempDirTestFixtureImpl(true);
49 myFixture
= IdeaTestFixtureFactory
.getFixtureFactory().createCodeInsightFixture(fixture
, tempDirTestFixture
);
52 setupFixtureWhenInitialized();
55 protected void setupFixtureWhenInitialized() throws IOException
{
59 protected void tearDown() throws Exception
{
67 protected LightProjectDescriptor
getProjectDescriptor() {
71 protected Project
getProject() {
72 return myFixture
.getProject();
75 protected void createAndAddFile(final String relativePath
, final String text
) throws IOException
{
76 final PsiFile psiFile
= myFixture
.addFileToProject(relativePath
, text
);
77 myFixture
.configureFromExistingVirtualFile(psiFile
.getVirtualFile());