mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
Fix for the test framework broken by extensions.
This commit is contained in:
@@ -11,6 +11,7 @@ import com.intellij.openapi.application.ApplicationManager;
|
||||
import com.intellij.openapi.command.CommandProcessor;
|
||||
import com.intellij.openapi.diagnostic.Logger;
|
||||
import com.intellij.openapi.editor.EditorFactory;
|
||||
import com.intellij.openapi.extensions.Extensions;
|
||||
import com.intellij.openapi.fileEditor.FileDocumentManager;
|
||||
import com.intellij.openapi.fileEditor.FileEditorManager;
|
||||
import com.intellij.openapi.module.Module;
|
||||
@@ -86,6 +87,10 @@ public abstract class IdeaTestCase extends TestCase implements DataProvider {
|
||||
protected void initApplication() throws Exception {
|
||||
ourApplication = IdeaTestApplication.getInstance();
|
||||
ourApplication.setDataProvider(this);
|
||||
if (Extensions.getAllAreas().length < 2) {
|
||||
Extensions.registerAreaClass("PROJECT", null);
|
||||
Extensions.registerAreaClass("MODULE", "PROJECT");
|
||||
}
|
||||
}
|
||||
|
||||
protected void setUp() throws Exception {
|
||||
|
||||
@@ -10,6 +10,7 @@ import com.intellij.openapi.actionSystem.DataProvider;
|
||||
import com.intellij.openapi.application.ApplicationManager;
|
||||
import com.intellij.openapi.command.undo.UndoManager;
|
||||
import com.intellij.openapi.editor.EditorFactory;
|
||||
import com.intellij.openapi.extensions.Extensions;
|
||||
import com.intellij.openapi.module.Module;
|
||||
import com.intellij.openapi.module.ModuleManager;
|
||||
import com.intellij.openapi.project.ModuleListener;
|
||||
@@ -85,6 +86,10 @@ public class LightIdeaTestCase extends TestCase implements DataProvider {
|
||||
private void initApplication() throws Exception {
|
||||
ourApplication = IdeaTestApplication.getInstance();
|
||||
ourApplication.setDataProvider(this);
|
||||
if (Extensions.getAllAreas().length < 2) {
|
||||
Extensions.registerAreaClass("PROJECT", null);
|
||||
Extensions.registerAreaClass("MODULE", "PROJECT");
|
||||
}
|
||||
cleanupApplicationCaches();
|
||||
}
|
||||
|
||||
|
||||
@@ -6,8 +6,8 @@ import com.intellij.ide.startup.StartupActionScriptManager;
|
||||
import com.intellij.openapi.application.PathManager;
|
||||
import com.intellij.openapi.application.ex.ApplicationManagerEx;
|
||||
import com.intellij.openapi.diagnostic.Logger;
|
||||
import com.intellij.openapi.util.JDOMUtil;
|
||||
import com.intellij.openapi.extensions.*;
|
||||
import com.intellij.openapi.util.JDOMUtil;
|
||||
import com.intellij.util.ArrayUtil;
|
||||
import com.intellij.util.graph.CachingSemiGraph;
|
||||
import com.intellij.util.graph.DFSTBuilder;
|
||||
@@ -19,8 +19,8 @@ import sun.reflect.Reflection;
|
||||
|
||||
import javax.swing.*;
|
||||
import java.io.File;
|
||||
import java.io.InputStream;
|
||||
import java.io.IOException;
|
||||
import java.io.InputStream;
|
||||
import java.lang.reflect.Field;
|
||||
import java.lang.reflect.InvocationTargetException;
|
||||
import java.lang.reflect.Method;
|
||||
@@ -84,7 +84,10 @@ public class PluginManager {
|
||||
}
|
||||
|
||||
private static void initializePlugins() {
|
||||
if (!shouldLoadPlugins()) return;
|
||||
if (!shouldLoadPlugins()) {
|
||||
ourPlugins = new PluginDescriptor[0];
|
||||
return;
|
||||
}
|
||||
|
||||
configureExtensions();
|
||||
|
||||
|
||||
@@ -367,6 +367,8 @@ public abstract class ComponentManagerImpl extends UserDataHolderBase implements
|
||||
}
|
||||
|
||||
protected void initComponentsFromExtensions(final ExtensionsArea extensionsArea) {
|
||||
if (ApplicationManagerEx.getApplicationEx().isUnitTestMode()) return; // TODO: quick and dirty. To make tests running.
|
||||
|
||||
final ComponentDescriptor[] componentDescriptors =
|
||||
(ComponentDescriptor[])extensionsArea.getExtensionPoint(PluginManager.COMPONENT_EXTENSION_POINT).getExtensions();
|
||||
for (int i = 0; i < componentDescriptors.length; i++) {
|
||||
|
||||
Reference in New Issue
Block a user