package com.intellij.openapi.fileEditor; import com.intellij.openapi.components.impl.ComponentManagerImpl; import com.intellij.openapi.fileEditor.ex.FileEditorProviderManager; import com.intellij.openapi.fileEditor.impl.FileEditorManagerImpl; import com.intellij.openapi.fileEditor.impl.FileEditorProviderManagerImpl; import com.intellij.openapi.vfs.LocalFileSystem; import com.intellij.openapi.vfs.VirtualFile; import com.intellij.testFramework.fixtures.LightPlatformCodeInsightFixtureTestCase; import com.intellij.ui.docking.DockManager; /** * @author Dmitry Avdeev * Date: 4/25/13 */ public abstract class FileEditorManagerTestCase extends LightPlatformCodeInsightFixtureTestCase { protected FileEditorManagerImpl myManager; private FileEditorManager myOldManager; public void setUp() throws Exception { super.setUp(); myManager = new FileEditorManagerImpl(getProject(), DockManager.getInstance(getProject())); myOldManager = ((ComponentManagerImpl)getProject()).registerComponentInstance(FileEditorManager.class, myManager); } @Override protected void tearDown() throws Exception { ((ComponentManagerImpl)getProject()).registerComponentInstance(FileEditorManager.class, myOldManager); myManager.closeAllFiles(); ((FileEditorProviderManagerImpl)FileEditorProviderManager.getInstance()).clearSelectedProviders(); super.tearDown(); } @Override protected boolean isWriteActionRequired() { return false; } protected VirtualFile getFile(String path) { return LocalFileSystem.getInstance().refreshAndFindFileByPath(getTestDataPath() + path); } }