mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
avoid direct usage of ComponentManager.getExtensionArea() and Extensions.getRootArea() in tests
GitOrigin-RevId: def07ebd1908e9374bc97412a57a3e0e8b1da16b
This commit is contained in:
committed by
intellij-monorepo-bot
parent
bc5ab3ab70
commit
f0ecabf47e
@@ -7,12 +7,12 @@ import com.intellij.codeInsight.generation.OverrideImplementUtil
|
||||
import com.intellij.codeInsight.generation.OverrideImplementsAnnotationsHandler
|
||||
import com.intellij.idea.ActionsBundle
|
||||
import com.intellij.openapi.actionSystem.Presentation
|
||||
import com.intellij.openapi.application.ApplicationManager
|
||||
import com.intellij.openapi.command.CommandProcessor
|
||||
import com.intellij.openapi.extensions.Extensions
|
||||
import com.intellij.openapi.project.Project
|
||||
import com.intellij.psi.PsiClass
|
||||
import com.intellij.psi.util.PsiTreeUtil
|
||||
import com.intellij.testFramework.PlatformTestUtil
|
||||
import com.intellij.testFramework.ServiceContainerUtil
|
||||
import com.intellij.testFramework.fixtures.LightJavaCodeInsightFixtureTestCase
|
||||
|
||||
/**
|
||||
@@ -273,7 +273,7 @@ class Test implements A {
|
||||
void testCustomOverrideImplementsHandler() throws Exception {
|
||||
myFixture.addClass """package a; public @interface A { String value();}"""
|
||||
|
||||
PlatformTestUtil.registerExtension(Extensions.getRootArea(), OverrideImplementsAnnotationsHandler.EP_NAME, new OverrideImplementsAnnotationsHandler() {
|
||||
ServiceContainerUtil.registerExtension(ApplicationManager.application, OverrideImplementsAnnotationsHandler.EP_NAME, new OverrideImplementsAnnotationsHandler() {
|
||||
@Override
|
||||
String[] getAnnotations(Project project) {
|
||||
return ["a.A"]
|
||||
|
||||
+4
-18
@@ -1,18 +1,4 @@
|
||||
/*
|
||||
* Copyright 2000-2017 JetBrains s.r.o.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
// Copyright 2000-2019 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
|
||||
package com.intellij.java.codeInsight.daemon.quickFix;
|
||||
|
||||
import com.intellij.codeInsight.daemon.quickFix.LightQuickFixParameterizedTestCase;
|
||||
@@ -20,8 +6,8 @@ import com.intellij.codeInspection.LocalInspectionTool;
|
||||
import com.intellij.codeInspection.bulkOperation.BulkMethodInfo;
|
||||
import com.intellij.codeInspection.bulkOperation.BulkMethodInfoProvider;
|
||||
import com.intellij.codeInspection.bulkOperation.UseBulkOperationInspection;
|
||||
import com.intellij.openapi.extensions.Extensions;
|
||||
import com.intellij.testFramework.PlatformTestUtil;
|
||||
import com.intellij.openapi.application.ApplicationManager;
|
||||
import com.intellij.testFramework.ServiceContainerUtil;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
import java.util.stream.Stream;
|
||||
@@ -50,7 +36,7 @@ public class UseBulkOperationInspectionTest extends LightQuickFixParameterizedTe
|
||||
@Override
|
||||
protected void setUp() throws Exception {
|
||||
super.setUp();
|
||||
PlatformTestUtil.registerExtension(Extensions.getRootArea(), BulkMethodInfoProvider.KEY, TEST_PROVIDER, getTestRootDisposable());
|
||||
ServiceContainerUtil.registerExtension(ApplicationManager.getApplication(), BulkMethodInfoProvider.KEY, TEST_PROVIDER, getTestRootDisposable());
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
+3
-3
@@ -5,11 +5,11 @@ package com.intellij.java.codeInspection;
|
||||
import com.intellij.JavaTestUtil;
|
||||
import com.intellij.codeInsight.daemon.ImplicitUsageProvider;
|
||||
import com.intellij.codeInspection.nullable.NotNullFieldNotInitializedInspection;
|
||||
import com.intellij.openapi.extensions.Extensions;
|
||||
import com.intellij.openapi.application.ApplicationManager;
|
||||
import com.intellij.psi.PsiElement;
|
||||
import com.intellij.psi.PsiField;
|
||||
import com.intellij.testFramework.LightProjectDescriptor;
|
||||
import com.intellij.testFramework.PlatformTestUtil;
|
||||
import com.intellij.testFramework.ServiceContainerUtil;
|
||||
import com.intellij.testFramework.fixtures.LightJavaCodeInsightFixtureTestCase;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
@@ -26,7 +26,7 @@ public class NotNullFieldNotInitializedInspectionTest extends LightJavaCodeInsig
|
||||
doTest();
|
||||
}
|
||||
public void testImplicit() {
|
||||
PlatformTestUtil.registerExtension(Extensions.getRootArea(), ImplicitUsageProvider.EP_NAME, new ImplicitUsageProvider() {
|
||||
ServiceContainerUtil.registerExtension(ApplicationManager.getApplication(), ImplicitUsageProvider.EP_NAME, new ImplicitUsageProvider() {
|
||||
@Override
|
||||
public boolean isImplicitUsage(@NotNull PsiElement element) {
|
||||
return false;
|
||||
|
||||
+5
-19
@@ -1,18 +1,4 @@
|
||||
/*
|
||||
* Copyright 2000-2017 JetBrains s.r.o.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
// Copyright 2000-2019 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
|
||||
package com.intellij.java.codeInspection;
|
||||
|
||||
import com.intellij.JavaTestUtil;
|
||||
@@ -22,13 +8,13 @@ import com.intellij.codeInspection.InspectionsBundle;
|
||||
import com.intellij.codeInspection.reference.EntryPoint;
|
||||
import com.intellij.codeInspection.reference.RefElement;
|
||||
import com.intellij.codeInspection.unusedReturnValue.UnusedReturnValue;
|
||||
import com.intellij.openapi.application.ApplicationManager;
|
||||
import com.intellij.openapi.extensions.ExtensionPointName;
|
||||
import com.intellij.openapi.extensions.Extensions;
|
||||
import com.intellij.openapi.util.InvalidDataException;
|
||||
import com.intellij.openapi.util.WriteExternalException;
|
||||
import com.intellij.psi.PsiElement;
|
||||
import com.intellij.psi.PsiMethod;
|
||||
import com.intellij.testFramework.PlatformTestUtil;
|
||||
import com.intellij.testFramework.ServiceContainerUtil;
|
||||
import com.intellij.testFramework.fixtures.LightJavaCodeInsightFixtureTestCase;
|
||||
import org.jdom.Element;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
@@ -41,7 +27,7 @@ public class UnusedReturnValueQuickFixTest extends LightJavaCodeInsightFixtureTe
|
||||
@Override
|
||||
protected void setUp() throws Exception {
|
||||
super.setUp();
|
||||
PlatformTestUtil.registerExtension(Extensions.getRootArea(), ImplicitUsageProvider.EP_NAME, new ImplicitUsageProvider() {
|
||||
ServiceContainerUtil.registerExtension(ApplicationManager.getApplication(), ImplicitUsageProvider.EP_NAME, new ImplicitUsageProvider() {
|
||||
@Override
|
||||
public boolean isImplicitUsage(@NotNull PsiElement element) {
|
||||
return false;
|
||||
@@ -57,7 +43,7 @@ public class UnusedReturnValueQuickFixTest extends LightJavaCodeInsightFixtureTe
|
||||
return false;
|
||||
}
|
||||
}, getTestRootDisposable());
|
||||
PlatformTestUtil.registerExtension(Extensions.getRootArea(), ExtensionPointName.create(ToolExtensionPoints.DEAD_CODE_TOOL), new EntryPoint() {
|
||||
ServiceContainerUtil.registerExtension(ApplicationManager.getApplication(), ExtensionPointName.create(ToolExtensionPoints.DEAD_CODE_TOOL), new EntryPoint() {
|
||||
@Override
|
||||
public void readExternal(Element element) throws InvalidDataException { }
|
||||
|
||||
|
||||
+3
-3
@@ -6,8 +6,8 @@ import com.intellij.ToolExtensionPoints;
|
||||
import com.intellij.codeInspection.reference.RefElement;
|
||||
import com.intellij.codeInspection.visibility.EntryPointWithVisibilityLevel;
|
||||
import com.intellij.codeInspection.visibility.VisibilityInspection;
|
||||
import com.intellij.openapi.application.ApplicationManager;
|
||||
import com.intellij.openapi.extensions.ExtensionPointName;
|
||||
import com.intellij.openapi.extensions.Extensions;
|
||||
import com.intellij.openapi.util.InvalidDataException;
|
||||
import com.intellij.openapi.util.WriteExternalException;
|
||||
import com.intellij.psi.PsiClass;
|
||||
@@ -16,7 +16,7 @@ import com.intellij.psi.PsiMember;
|
||||
import com.intellij.psi.PsiMethod;
|
||||
import com.intellij.psi.util.PsiUtil;
|
||||
import com.intellij.testFramework.JavaInspectionTestCase;
|
||||
import com.intellij.testFramework.PlatformTestUtil;
|
||||
import com.intellij.testFramework.ServiceContainerUtil;
|
||||
import org.jdom.Element;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
@@ -169,7 +169,7 @@ public class VisibilityInspectionTest extends JavaInspectionTestCase {
|
||||
}
|
||||
|
||||
public void testEntryPointWithPredefinedVisibility() {
|
||||
PlatformTestUtil.registerExtension(Extensions.getRootArea(), ExtensionPointName.create(ToolExtensionPoints.DEAD_CODE_TOOL), new EntryPointWithVisibilityLevel() {
|
||||
ServiceContainerUtil.registerExtension(ApplicationManager.getApplication(), ExtensionPointName.create(ToolExtensionPoints.DEAD_CODE_TOOL), new EntryPointWithVisibilityLevel() {
|
||||
@Override
|
||||
public void readExternal(Element element) throws InvalidDataException {}
|
||||
|
||||
|
||||
+3
-3
@@ -5,8 +5,8 @@ import com.intellij.ide.fileTemplates.*
|
||||
import com.intellij.ide.fileTemplates.impl.CustomFileTemplate
|
||||
import com.intellij.ide.fileTemplates.impl.FTManager
|
||||
import com.intellij.openapi.Disposable
|
||||
import com.intellij.openapi.application.ApplicationManager
|
||||
import com.intellij.openapi.application.ex.PathManagerEx
|
||||
import com.intellij.openapi.extensions.Extensions
|
||||
import com.intellij.openapi.roots.ModuleRootManager
|
||||
import com.intellij.openapi.util.io.FileUtil
|
||||
import com.intellij.openapi.util.text.StringUtil
|
||||
@@ -17,8 +17,8 @@ import com.intellij.psi.PsiClass
|
||||
import com.intellij.psi.PsiDirectory
|
||||
import com.intellij.psi.PsiManager
|
||||
import com.intellij.testFramework.JavaProjectTestCase
|
||||
import com.intellij.testFramework.PlatformTestUtil
|
||||
import com.intellij.testFramework.PsiTestUtil
|
||||
import com.intellij.testFramework.ServiceContainerUtil
|
||||
import com.intellij.util.io.PathKt
|
||||
import com.intellij.util.properties.EncodingAwareProperties
|
||||
|
||||
@@ -159,7 +159,7 @@ class FileTemplatesTest extends JavaProjectTestCase {
|
||||
|
||||
void testFileNameTrimming() {
|
||||
CreateFromTemplateHandler handler = new DefaultCreateFromTemplateHandler()
|
||||
PlatformTestUtil.registerExtension(Extensions.getRootArea(), CreateFromTemplateHandler.EP_NAME, handler, getTestRootDisposable())
|
||||
ServiceContainerUtil.registerExtension(ApplicationManager.getApplication(), CreateFromTemplateHandler.EP_NAME, handler, getTestRootDisposable())
|
||||
FileTemplate template = FileTemplateManager.getInstance(getProject()).addTemplate(name, "txt")
|
||||
disposeOnTearDown({ FileTemplateManager.getInstance(getProject()).removeTemplate(template) } as Disposable)
|
||||
template.setText('${FILE_NAME}')
|
||||
|
||||
+1
-2
@@ -25,7 +25,6 @@ import com.intellij.openapi.editor.impl.DocumentMarkupModel;
|
||||
import com.intellij.openapi.editor.markup.MarkupModel;
|
||||
import com.intellij.openapi.editor.markup.RangeHighlighter;
|
||||
import com.intellij.openapi.extensions.ExtensionPoint;
|
||||
import com.intellij.openapi.extensions.Extensions;
|
||||
import com.intellij.openapi.project.Project;
|
||||
import com.intellij.openapi.util.Disposer;
|
||||
import com.intellij.openapi.util.Pair;
|
||||
@@ -540,7 +539,7 @@ public class ConsoleViewImplTest extends LightPlatformTestCase {
|
||||
}
|
||||
|
||||
public void testSubsequentFoldsAreCombined() {
|
||||
PlatformTestUtil.registerExtension(Extensions.getRootArea(), ConsoleFolding.EP_NAME, new ConsoleFolding() {
|
||||
ServiceContainerUtil.registerExtension(ApplicationManager.getApplication(), ConsoleFolding.EP_NAME, new ConsoleFolding() {
|
||||
@Override
|
||||
public boolean shouldFoldLine(@NotNull Project project, @NotNull String line) {
|
||||
return line.contains("FOO");
|
||||
|
||||
+3
-4
@@ -5,11 +5,10 @@ import com.intellij.ide.plugins.PluginManagerCore;
|
||||
import com.intellij.ide.util.TipAndTrickBean;
|
||||
import com.intellij.ide.util.TipUIUtil;
|
||||
import com.intellij.openapi.application.ApplicationManager;
|
||||
import com.intellij.openapi.extensions.Extensions;
|
||||
import com.intellij.openapi.extensions.PluginId;
|
||||
import com.intellij.openapi.util.registry.Registry;
|
||||
import com.intellij.testFramework.LightPlatformTestCase;
|
||||
import com.intellij.testFramework.PlatformTestUtil;
|
||||
import com.intellij.testFramework.ServiceContainerUtil;
|
||||
import org.jdom.Element;
|
||||
|
||||
public class ProductivityFeaturesTest extends LightPlatformTestCase {
|
||||
@@ -23,12 +22,12 @@ public class ProductivityFeaturesTest extends LightPlatformTestCase {
|
||||
((ProductivityFeaturesRegistryImpl)myRegistry).prepareForTest();
|
||||
myTracker = FeatureUsageTracker.getInstance();
|
||||
|
||||
PlatformTestUtil.registerExtension(Extensions.getRootArea(), ProductivityFeaturesProvider.EP_NAME, new TestProductivityFeatureProvider(), getTestRootDisposable());
|
||||
ServiceContainerUtil.registerExtension(ApplicationManager.getApplication(), ProductivityFeaturesProvider.EP_NAME, new TestProductivityFeatureProvider(), getTestRootDisposable());
|
||||
|
||||
TipAndTrickBean tip = new TipAndTrickBean();
|
||||
tip.fileName = "TestTip.html";
|
||||
tip.setPluginDescriptor(PluginManagerCore.getPlugin(PluginId.getId(PluginManagerCore.CORE_PLUGIN_ID)));
|
||||
PlatformTestUtil.registerExtension(Extensions.getRootArea(), TipAndTrickBean.EP_NAME, tip, getTestRootDisposable());
|
||||
ServiceContainerUtil.registerExtension(ApplicationManager.getApplication(), TipAndTrickBean.EP_NAME, tip, getTestRootDisposable());
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
+3
-4
@@ -6,8 +6,8 @@ import com.intellij.internal.statistic.eventLog.FeatureUsageData
|
||||
import com.intellij.internal.statistic.eventLog.validator.ValidationResultType
|
||||
import com.intellij.internal.statistic.eventLog.validator.rules.EventContext
|
||||
import com.intellij.internal.statistic.eventLog.validator.rules.impl.CustomWhiteListRule
|
||||
import com.intellij.openapi.extensions.Extensions
|
||||
import com.intellij.testFramework.PlatformTestUtil
|
||||
import com.intellij.openapi.application.ApplicationManager
|
||||
import com.intellij.testFramework.registerExtension
|
||||
import junit.framework.TestCase
|
||||
import org.junit.Test
|
||||
|
||||
@@ -21,8 +21,7 @@ class ProductivityValidatorTest : ProductivityFeaturesTest() {
|
||||
|
||||
override fun setUp() {
|
||||
super.setUp()
|
||||
PlatformTestUtil.registerExtension(
|
||||
Extensions.getRootArea(),
|
||||
ApplicationManager.getApplication().registerExtension(
|
||||
ProductivityFeaturesProvider.EP_NAME, TestProductivityFeatureProvider(),
|
||||
testRootDisposable
|
||||
)
|
||||
|
||||
@@ -9,7 +9,7 @@ import com.intellij.openapi.extensions.impl.ExtensionsAreaImpl
|
||||
import com.intellij.openapi.util.Disposer
|
||||
import com.intellij.openapi.util.JDOMUtil
|
||||
import com.intellij.testFramework.LightPlatformTestCase
|
||||
import com.intellij.testFramework.PlatformTestUtil
|
||||
import com.intellij.testFramework.ServiceContainerUtil
|
||||
import groovy.transform.CompileStatic
|
||||
|
||||
@CompileStatic
|
||||
@@ -27,7 +27,7 @@ class LanguageExtensionOrderTest extends LightPlatformTestCase {
|
||||
}
|
||||
|
||||
private void registerMetaLanguage() {
|
||||
PlatformTestUtil.registerExtension myArea, MetaLanguage.EP_NAME, MyMetaLanguage.INSTANCE, testRootDisposable
|
||||
ServiceContainerUtil.registerExtension(ApplicationManager.getApplication(), MetaLanguage.EP_NAME, MyMetaLanguage.INSTANCE, testRootDisposable)
|
||||
}
|
||||
|
||||
private void registerLanguageEP() {
|
||||
|
||||
+3
-2
@@ -28,6 +28,7 @@ import com.intellij.openapi.vfs.WritingAccessProvider;
|
||||
import com.intellij.testFramework.EditorTestUtil;
|
||||
import com.intellij.testFramework.PlatformTestUtil;
|
||||
import com.intellij.testFramework.PsiTestUtil;
|
||||
import com.intellij.testFramework.ServiceContainerUtil;
|
||||
import com.intellij.ui.EditorNotifications;
|
||||
import com.intellij.ui.EditorNotificationsImpl;
|
||||
import com.intellij.util.NullableFunction;
|
||||
@@ -317,7 +318,7 @@ public class NonProjectFileAccessTest extends HeavyFileEditorManagerTestCase {
|
||||
|
||||
private Set<VirtualFile> registerWriteAccessProvider(final VirtualFile... filesToDeny) {
|
||||
final Set<VirtualFile> requested = new LinkedHashSet<>();
|
||||
PlatformTestUtil.registerExtension(getProject().getExtensionArea(), WritingAccessProvider.EP_NAME, new WritingAccessProvider() {
|
||||
ServiceContainerUtil.registerExtension(getProject(), WritingAccessProvider.EP_NAME, new WritingAccessProvider() {
|
||||
@NotNull
|
||||
@Override
|
||||
public Collection<VirtualFile> requestWriting(@NotNull Collection<? extends VirtualFile> files) {
|
||||
@@ -331,7 +332,7 @@ public class NonProjectFileAccessTest extends HeavyFileEditorManagerTestCase {
|
||||
}
|
||||
|
||||
private void registerAccessCheckExtension(Collection<VirtualFile> filesToAllow, Collection<VirtualFile> filesToDeny) {
|
||||
PlatformTestUtil.registerExtension(getProject().getExtensionArea(), NonProjectFileWritingAccessExtension.EP_NAME,
|
||||
ServiceContainerUtil.registerExtension(getProject(), NonProjectFileWritingAccessExtension.EP_NAME,
|
||||
new NonProjectFileWritingAccessExtension() {
|
||||
@Override
|
||||
public boolean isWritable(@NotNull VirtualFile file) {
|
||||
|
||||
@@ -1,16 +1,21 @@
|
||||
This document is a more like a draft, that will be finally moved to [IntelliJ Platform SDK](https://www.jetbrains.org/intellij/sdk/docs/welcome.html)
|
||||
This document is a more like a draft, that will be finally moved to [IntelliJ Platform SDK](https://www.jetbrains.org/intellij/sdk/docs/welcome.html)
|
||||
|
||||
## Light Service
|
||||
## Service
|
||||
|
||||
[Service](http://www.jetbrains.org/intellij/sdk/docs/basics/plugin_structure/plugin_services.html) that is not going to be overridden. No need to register it in a `plugin.xml`.
|
||||
Please see [Service](https://www.jetbrains.org/intellij/sdk/docs/basics/plugin_structure/plugin_services.html).
|
||||
|
||||
To replace (mock) service in tests, use [ServiceContainerUtil](https://github.com/JetBrains/intellij-community/blob/master/platform/testFramework/src/com/intellij/testFramework/ServiceContainerUtil.kt).
|
||||
|
||||
### Light Service
|
||||
|
||||
Service that is not going to be overridden. No need to register it in a `plugin.xml`.
|
||||
|
||||
To register: annotate class using [@Service](https://github.com/JetBrains/intellij-community/blob/master/platform/core-api/src/com/intellij/openapi/components/Service.java) annotation. If service is written in Java and not Kotlin, mark class as `final`.
|
||||
|
||||
Restrictions:
|
||||
|
||||
* not available for constructor injection (but in any case constructor injection is deprecated, because service should be requested only on demand).
|
||||
* constructor injection is not supported (since it is deprecated), but project level service can define constructor that accepts `Project`, and module level `Module`.
|
||||
* if service it is a [PersistentStateComponent](http://www.jetbrains.org/intellij/sdk/docs/basics/persisting_state_of_components.html), roaming must be disabled (`roamingType` is set to `RoamingType.DISABLED`).
|
||||
* if service it is a [PersistentStateComponent](https://www.jetbrains.org/intellij/sdk/docs/basics/persisting_state_of_components.html), roaming must be disabled (`roamingType` is set to `RoamingType.DISABLED`).
|
||||
* service class must be `final`.
|
||||
|
||||
## Preloading Activity
|
||||
|
||||
@@ -57,7 +57,7 @@ public abstract class PlatformLiteFixture extends UsefulTestCase {
|
||||
public <T> void registerExtension(@NotNull ExtensionsArea area, @NotNull ExtensionPointName<T> name, @NotNull T extension) {
|
||||
//noinspection unchecked
|
||||
registerExtensionPoint(area, name, (Class<T>)extension.getClass());
|
||||
PlatformTestUtil.registerExtension(area, name, extension, getTestRootDisposable());
|
||||
area.<T>getExtensionPoint(name.getName()).registerExtension(extension, getTestRootDisposable());
|
||||
}
|
||||
|
||||
protected <T> void registerExtensionPoint(@NotNull ExtensionPointName<T> extensionPointName, @NotNull Class<T> aClass) {
|
||||
|
||||
@@ -25,7 +25,7 @@ import com.intellij.openapi.application.ModalityState;
|
||||
import com.intellij.openapi.application.impl.ApplicationImpl;
|
||||
import com.intellij.openapi.application.impl.LaterInvocator;
|
||||
import com.intellij.openapi.editor.Document;
|
||||
import com.intellij.openapi.extensions.*;
|
||||
import com.intellij.openapi.extensions.ProjectExtensionPointName;
|
||||
import com.intellij.openapi.extensions.impl.ExtensionPointImpl;
|
||||
import com.intellij.openapi.fileEditor.FileDocumentManager;
|
||||
import com.intellij.openapi.fileEditor.impl.LoadTextUtil;
|
||||
@@ -141,21 +141,6 @@ public class PlatformTestUtil {
|
||||
((ExtensionPointImpl<T>)pointName.getPoint(project)).maskAll(newExtensions, parentDisposable, true);
|
||||
}
|
||||
|
||||
/**
|
||||
* @deprecated Use {@link ExtensionPointName#getPoint(AreaInstance)} and {@link ExtensionPoint#registerExtension(Object, Disposable)}.
|
||||
*/
|
||||
@Deprecated
|
||||
public static <T> void registerExtension(@NotNull ExtensionPointName<T> name, @NotNull T t, @NotNull Disposable parentDisposable) {
|
||||
registerExtension(Extensions.getRootArea(), name, t, parentDisposable);
|
||||
}
|
||||
|
||||
public static <T> void registerExtension(@NotNull ExtensionsArea area,
|
||||
@NotNull BaseExtensionPointName name,
|
||||
@NotNull T t,
|
||||
@NotNull Disposable parentDisposable) {
|
||||
area.<T>getExtensionPoint(name.getName()).registerExtension(t, parentDisposable);
|
||||
}
|
||||
|
||||
@Nullable
|
||||
public static String toString(@Nullable Object node, @Nullable Queryable.PrintInfo printInfo) {
|
||||
if (node instanceof AbstractTreeNode) {
|
||||
|
||||
@@ -4,13 +4,22 @@ package com.intellij.testFramework
|
||||
|
||||
import com.intellij.openapi.Disposable
|
||||
import com.intellij.openapi.components.ComponentManager
|
||||
import com.intellij.openapi.extensions.BaseExtensionPointName
|
||||
import com.intellij.openapi.extensions.DefaultPluginDescriptor
|
||||
import com.intellij.serviceContainer.PlatformComponentManagerImpl
|
||||
import org.jetbrains.annotations.TestOnly
|
||||
|
||||
@TestOnly
|
||||
fun <T : Any> ComponentManager.registerServiceInstance(serviceInterface: Class<T>, instance: T) {
|
||||
(this as PlatformComponentManagerImpl).registerServiceInstance(serviceInterface, instance, DefaultPluginDescriptor("test"))
|
||||
}
|
||||
|
||||
@TestOnly
|
||||
fun <T : Any> ComponentManager.replaceService(serviceInterface: Class<T>, instance: T, parentDisposable: Disposable) {
|
||||
(this as PlatformComponentManagerImpl).replaceServiceInstance(serviceInterface, instance, parentDisposable)
|
||||
}
|
||||
|
||||
@TestOnly
|
||||
fun <T> ComponentManager.registerExtension(name: BaseExtensionPointName, instance: T, parentDisposable: Disposable) {
|
||||
extensionArea.getExtensionPoint<T>(name.name).registerExtension(instance, parentDisposable)
|
||||
}
|
||||
+9
-23
@@ -1,31 +1,17 @@
|
||||
/*
|
||||
* Copyright 2000-2016 JetBrains s.r.o.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
// Copyright 2000-2019 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
|
||||
package com.intellij.codeInspection.visibility;
|
||||
|
||||
import com.intellij.ToolExtensionPoints;
|
||||
import com.intellij.codeInsight.daemon.ImplicitUsageProvider;
|
||||
import com.intellij.codeInspection.LocalInspectionTool;
|
||||
import com.intellij.codeInspection.reference.RefElement;
|
||||
import com.intellij.openapi.application.ApplicationManager;
|
||||
import com.intellij.openapi.extensions.ExtensionPointName;
|
||||
import com.intellij.openapi.extensions.Extensions;
|
||||
import com.intellij.openapi.util.InvalidDataException;
|
||||
import com.intellij.openapi.util.WriteExternalException;
|
||||
import com.intellij.psi.*;
|
||||
import com.intellij.psi.util.PsiUtil;
|
||||
import com.intellij.testFramework.PlatformTestUtil;
|
||||
import com.intellij.testFramework.ServiceContainerUtil;
|
||||
import com.siyeh.ig.LightJavaInspectionTestCase;
|
||||
import org.intellij.lang.annotations.Language;
|
||||
import org.jdom.Element;
|
||||
@@ -161,7 +147,7 @@ public class AccessCanBeTightenedInspectionTest extends LightJavaInspectionTestC
|
||||
myFixture.configureByFiles("y/C.java","x/Sub.java");
|
||||
myFixture.checkHighlighting();
|
||||
}
|
||||
|
||||
|
||||
public void testQualifiedAccessFromSubclassSamePackage() {
|
||||
myFixture.allowTreeAccessForAllFiles();
|
||||
addJavaFile("x/Sub.java", "package x; " +
|
||||
@@ -336,7 +322,7 @@ public class AccessCanBeTightenedInspectionTest extends LightJavaInspectionTestC
|
||||
"public class MyTest {\n" +
|
||||
" <warning descr=\"Access can be protected\">public</warning> void foo() {}\n" +
|
||||
"}");
|
||||
PlatformTestUtil.registerExtension(Extensions.getRootArea(), ExtensionPointName.create(ToolExtensionPoints.DEAD_CODE_TOOL), new EntryPointWithVisibilityLevel() {
|
||||
ServiceContainerUtil.registerExtension(ApplicationManager.getApplication(), ExtensionPointName.create(ToolExtensionPoints.DEAD_CODE_TOOL), new EntryPointWithVisibilityLevel() {
|
||||
@Override
|
||||
public void readExternal(Element element) throws InvalidDataException {}
|
||||
|
||||
@@ -392,7 +378,7 @@ public class AccessCanBeTightenedInspectionTest extends LightJavaInspectionTestC
|
||||
" <warning descr=\"Access can be protected\">public</warning> void foo() {}\n" +
|
||||
" {foo();}\n" +
|
||||
"}");
|
||||
PlatformTestUtil.registerExtension(Extensions.getRootArea(), ExtensionPointName.create(ToolExtensionPoints.DEAD_CODE_TOOL), new EntryPointWithVisibilityLevel() {
|
||||
ServiceContainerUtil.registerExtension(ApplicationManager.getApplication(), ExtensionPointName.create(ToolExtensionPoints.DEAD_CODE_TOOL), new EntryPointWithVisibilityLevel() {
|
||||
@Override
|
||||
public void readExternal(Element element) throws InvalidDataException {}
|
||||
|
||||
@@ -445,10 +431,10 @@ public class AccessCanBeTightenedInspectionTest extends LightJavaInspectionTestC
|
||||
public void testSuggestPackagePrivateForImplicitWrittenFields() {
|
||||
addJavaFile("x/MyTest.java", "package x;\n" +
|
||||
"public class MyTest {\n" +
|
||||
" String foo;\n" +
|
||||
" {System.out.println(foo);}" +
|
||||
" String foo;\n" +
|
||||
" {System.out.println(foo);}" +
|
||||
"}");
|
||||
PlatformTestUtil.registerExtension(Extensions.getRootArea(), ImplicitUsageProvider.EP_NAME, new ImplicitUsageProvider() {
|
||||
ServiceContainerUtil.registerExtension(ApplicationManager.getApplication(), ImplicitUsageProvider.EP_NAME, new ImplicitUsageProvider() {
|
||||
@Override
|
||||
public boolean isImplicitUsage(@NotNull PsiElement element) {
|
||||
return false;
|
||||
|
||||
+3
-2
@@ -4,11 +4,12 @@ package com.siyeh.ig.bugs;
|
||||
import com.intellij.ToolExtensionPoints;
|
||||
import com.intellij.codeInsight.daemon.ImplicitUsageProvider;
|
||||
import com.intellij.codeInspection.InspectionProfileEntry;
|
||||
import com.intellij.openapi.application.ApplicationManager;
|
||||
import com.intellij.openapi.extensions.Extensions;
|
||||
import com.intellij.psi.PsiElement;
|
||||
import com.intellij.psi.PsiField;
|
||||
import com.intellij.testFramework.LightProjectDescriptor;
|
||||
import com.intellij.testFramework.PlatformTestUtil;
|
||||
import com.intellij.testFramework.ServiceContainerUtil;
|
||||
import com.siyeh.ig.LightJavaInspectionTestCase;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
@@ -34,7 +35,7 @@ public class MismatchedCollectionQueryUpdateInspectionTest extends LightJavaInsp
|
||||
@Override
|
||||
protected void setUp() throws Exception {
|
||||
super.setUp();
|
||||
PlatformTestUtil.registerExtension(Extensions.getRootArea(), ImplicitUsageProvider.EP_NAME, TEST_PROVIDER, myFixture.getTestRootDisposable());
|
||||
ServiceContainerUtil.registerExtension(ApplicationManager.getApplication(), ImplicitUsageProvider.EP_NAME, TEST_PROVIDER, myFixture.getTestRootDisposable());
|
||||
Extensions.getRootArea().getExtensionPoint(ToolExtensionPoints.DEAD_CODE_TOOL).getExtensions();
|
||||
}
|
||||
|
||||
|
||||
@@ -1,13 +1,11 @@
|
||||
/*
|
||||
* Copyright 2000-2017 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
|
||||
*/
|
||||
// Copyright 2000-2019 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
|
||||
package com.siyeh.ig.resources;
|
||||
|
||||
import com.intellij.codeInspection.resources.ImplicitResourceCloser;
|
||||
import com.intellij.codeInspection.LocalInspectionTool;
|
||||
import com.intellij.openapi.extensions.Extensions;
|
||||
import com.intellij.codeInspection.resources.ImplicitResourceCloser;
|
||||
import com.intellij.openapi.application.ApplicationManager;
|
||||
import com.intellij.psi.PsiVariable;
|
||||
import com.intellij.testFramework.PlatformTestUtil;
|
||||
import com.intellij.testFramework.ServiceContainerUtil;
|
||||
import com.siyeh.ig.LightJavaInspectionTestCase;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
@@ -33,13 +31,11 @@ public class ImplicitCloserTest extends LightJavaInspectionTestCase {
|
||||
@Override
|
||||
protected void setUp() throws Exception {
|
||||
super.setUp();
|
||||
PlatformTestUtil.registerExtension(Extensions.getRootArea(), ImplicitResourceCloser.EP_NAME, NAME_RESOURCE_CLOSER, getTestRootDisposable());
|
||||
ServiceContainerUtil.registerExtension(ApplicationManager.getApplication(), ImplicitResourceCloser.EP_NAME, NAME_RESOURCE_CLOSER, getTestRootDisposable());
|
||||
}
|
||||
|
||||
@Override
|
||||
protected LocalInspectionTool getInspection() {
|
||||
return new AutoCloseableResourceInspection();
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -1,26 +1,12 @@
|
||||
/*
|
||||
* Copyright 2000-2016 JetBrains s.r.o.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
// Copyright 2000-2019 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
|
||||
package com.jetbrains.python.quickFixes;
|
||||
|
||||
import com.intellij.lang.injection.InjectedLanguageManager;
|
||||
import com.intellij.lang.injection.MultiHostInjector;
|
||||
import com.intellij.lang.injection.MultiHostRegistrar;
|
||||
import com.intellij.openapi.Disposable;
|
||||
import com.intellij.openapi.application.ApplicationManager;
|
||||
import com.intellij.openapi.editor.Editor;
|
||||
import com.intellij.openapi.extensions.Extensions;
|
||||
import com.intellij.openapi.project.Project;
|
||||
import com.intellij.openapi.util.Disposer;
|
||||
import com.intellij.openapi.util.TextRange;
|
||||
@@ -29,7 +15,7 @@ import com.intellij.psi.PsiLanguageInjectionHost;
|
||||
import com.intellij.psi.codeStyle.SuggestedNameInfo;
|
||||
import com.intellij.refactoring.rename.NameSuggestionProvider;
|
||||
import com.intellij.refactoring.rename.PreferrableNameSuggestionProvider;
|
||||
import com.intellij.testFramework.PlatformTestUtil;
|
||||
import com.intellij.testFramework.ServiceContainerUtil;
|
||||
import com.intellij.testFramework.TestDataPath;
|
||||
import com.intellij.util.containers.ContainerUtil;
|
||||
import com.jetbrains.python.PyBundle;
|
||||
@@ -65,8 +51,7 @@ public class PyRenameElementQuickFixTest extends PyQuickFixTestCase {
|
||||
* @see PyRenameElementQuickFixTest.RENAME_RESULT_BY_RENAME_HANDLER
|
||||
*/
|
||||
public static void registerTestNameSuggestionProvider(Disposable disposable) {
|
||||
PlatformTestUtil.registerExtension(
|
||||
Extensions.getRootArea(), NameSuggestionProvider.EP_NAME, createTestNameSuggestionProvider(), disposable);
|
||||
ServiceContainerUtil.registerExtension(ApplicationManager.getApplication(), NameSuggestionProvider.EP_NAME, createTestNameSuggestionProvider(), disposable);
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -1,28 +1,13 @@
|
||||
/*
|
||||
* Copyright 2000-2016 JetBrains s.r.o.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
// Copyright 2000-2019 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
|
||||
package com.intellij.util.xml;
|
||||
|
||||
import com.intellij.openapi.application.ApplicationManager;
|
||||
import com.intellij.openapi.extensions.Extensions;
|
||||
import com.intellij.openapi.util.Ref;
|
||||
import com.intellij.openapi.util.text.StringUtil;
|
||||
import com.intellij.psi.util.PsiTreeUtil;
|
||||
import com.intellij.psi.xml.XmlFile;
|
||||
import com.intellij.psi.xml.XmlTag;
|
||||
import com.intellij.testFramework.PlatformTestUtil;
|
||||
import com.intellij.testFramework.ServiceContainerUtil;
|
||||
import com.intellij.testFramework.Timings;
|
||||
import com.intellij.util.ConcurrencyUtil;
|
||||
import com.intellij.util.containers.ContainerUtil;
|
||||
@@ -41,12 +26,11 @@ import java.util.concurrent.CountDownLatch;
|
||||
* @author peter
|
||||
*/
|
||||
public class DomConcurrencyStressTest extends DomTestCase {
|
||||
|
||||
private void registerExtender(final Class elementClass, final Class extenderClass) {
|
||||
final DomExtenderEP extenderEP = new DomExtenderEP();
|
||||
extenderEP.domClassName = elementClass.getName();
|
||||
extenderEP.extenderClassName = extenderClass.getName();
|
||||
PlatformTestUtil.registerExtension(Extensions.getRootArea(), DomExtenderEP.EP_NAME, extenderEP, getTestRootDisposable());
|
||||
ServiceContainerUtil.registerExtension(ApplicationManager.getApplication(), DomExtenderEP.EP_NAME, extenderEP, getTestRootDisposable());
|
||||
}
|
||||
|
||||
private static void runThreads(int threadCount, final Runnable runnable) throws Throwable {
|
||||
|
||||
@@ -1,23 +1,9 @@
|
||||
/*
|
||||
* Copyright 2000-2016 JetBrains s.r.o.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
// Copyright 2000-2019 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
|
||||
package com.intellij.util.xml;
|
||||
|
||||
import com.intellij.openapi.extensions.Extensions;
|
||||
import com.intellij.openapi.application.ApplicationManager;
|
||||
import com.intellij.openapi.util.Key;
|
||||
import com.intellij.testFramework.PlatformTestUtil;
|
||||
import com.intellij.testFramework.ServiceContainerUtil;
|
||||
import com.intellij.util.ParameterizedTypeImpl;
|
||||
import com.intellij.util.ReflectionUtil;
|
||||
import com.intellij.util.xml.impl.DomTestCase;
|
||||
@@ -190,7 +176,7 @@ public class DomExtensionsTest extends DomTestCase {
|
||||
final DomExtenderEP extenderEP = new DomExtenderEP();
|
||||
extenderEP.domClassName = domClass.getName();
|
||||
extenderEP.extenderClassName = extenderClass.getName();
|
||||
PlatformTestUtil.registerExtension(Extensions.getRootArea(), DomExtenderEP.EP_NAME, extenderEP, getTestRootDisposable());
|
||||
ServiceContainerUtil.registerExtension(ApplicationManager.getApplication(), DomExtenderEP.EP_NAME, extenderEP, getTestRootDisposable());
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -1,21 +1,7 @@
|
||||
/*
|
||||
* Copyright 2000-2016 JetBrains s.r.o.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
// Copyright 2000-2019 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
|
||||
package com.intellij.util.xml.stubs;
|
||||
|
||||
import com.intellij.openapi.extensions.Extensions;
|
||||
import com.intellij.openapi.application.ApplicationManager;
|
||||
import com.intellij.openapi.vfs.VirtualFile;
|
||||
import com.intellij.psi.PsiFile;
|
||||
import com.intellij.psi.impl.PsiManagerEx;
|
||||
@@ -25,7 +11,7 @@ import com.intellij.psi.stubs.Stub;
|
||||
import com.intellij.psi.stubs.StubTreeLoader;
|
||||
import com.intellij.psi.xml.XmlFile;
|
||||
import com.intellij.psi.xml.XmlTag;
|
||||
import com.intellij.testFramework.PlatformTestUtil;
|
||||
import com.intellij.testFramework.ServiceContainerUtil;
|
||||
import com.intellij.util.containers.ContainerUtil;
|
||||
import com.intellij.util.ref.GCWatcher;
|
||||
import com.intellij.util.xml.DomFileElement;
|
||||
@@ -86,7 +72,7 @@ public class DomStubBuilderTest extends DomStubTest {
|
||||
DomExtenderEP ep = new DomExtenderEP();
|
||||
ep.domClassName = Bar.class.getName();
|
||||
ep.extenderClassName = TestExtender.class.getName();
|
||||
PlatformTestUtil.registerExtension(Extensions.getRootArea(), DomExtenderEP.EP_NAME, ep, myFixture.getTestRootDisposable());
|
||||
ServiceContainerUtil.registerExtension(ApplicationManager.getApplication(), DomExtenderEP.EP_NAME, ep, myFixture.getTestRootDisposable());
|
||||
|
||||
doBuilderTest("extender.xml", "File:foo\n" +
|
||||
" Element:foo\n" +
|
||||
|
||||
Reference in New Issue
Block a user