mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
LazyRunConfigurationProducer — junit and company
This commit is contained in:
+6
-4
@@ -5,7 +5,6 @@ import com.intellij.codeInsight.TestFrameworks;
|
||||
import com.intellij.execution.JavaExecutionUtil;
|
||||
import com.intellij.execution.Location;
|
||||
import com.intellij.execution.actions.ConfigurationContext;
|
||||
import com.intellij.execution.configurations.ConfigurationType;
|
||||
import com.intellij.execution.configurations.ConfigurationUtil;
|
||||
import com.intellij.execution.junit.JavaRunConfigurationProducerBase;
|
||||
import com.intellij.openapi.module.Module;
|
||||
@@ -20,11 +19,14 @@ import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
|
||||
public abstract class AbstractApplicationConfigurationProducer<T extends ApplicationConfiguration> extends JavaRunConfigurationProducerBase<T> {
|
||||
public AbstractApplicationConfigurationProducer(@NotNull ConfigurationType configurationType) {
|
||||
super(configurationType);
|
||||
public AbstractApplicationConfigurationProducer() {
|
||||
super();
|
||||
}
|
||||
|
||||
// backward compatibility
|
||||
/**
|
||||
* @deprecated Override {@link #getConfigurationFactory()}.
|
||||
*/
|
||||
@Deprecated
|
||||
public AbstractApplicationConfigurationProducer(@NotNull ApplicationConfigurationType configurationType) {
|
||||
super(configurationType);
|
||||
}
|
||||
|
||||
+8
-17
@@ -1,22 +1,13 @@
|
||||
/*
|
||||
* Copyright 2000-2015 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-2018 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.execution.application;
|
||||
|
||||
import com.intellij.execution.configurations.ConfigurationFactory;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
public class ApplicationConfigurationProducer extends AbstractApplicationConfigurationProducer<ApplicationConfiguration> {
|
||||
public ApplicationConfigurationProducer() {
|
||||
super(ApplicationConfigurationType.getInstance());
|
||||
@NotNull
|
||||
@Override
|
||||
public ConfigurationFactory getConfigurationFactory() {
|
||||
return ApplicationConfigurationType.getInstance().getConfigurationFactories()[0];
|
||||
}
|
||||
}
|
||||
|
||||
+5
-2
@@ -7,6 +7,7 @@ import com.intellij.execution.actions.ConfigurationContext;
|
||||
import com.intellij.execution.actions.ConfigurationFromContext;
|
||||
import com.intellij.execution.application.AbstractApplicationConfigurationProducer;
|
||||
import com.intellij.execution.application.ApplicationConfigurationType;
|
||||
import com.intellij.execution.configurations.ConfigurationFactory;
|
||||
import com.intellij.ide.scratch.ScratchFileType;
|
||||
import com.intellij.lang.java.JavaLanguage;
|
||||
import com.intellij.openapi.util.Comparing;
|
||||
@@ -21,8 +22,10 @@ import org.jetbrains.annotations.NotNull;
|
||||
* @author Eugene Zhuravlev
|
||||
*/
|
||||
public class JavaScratchConfigurationProducer extends AbstractApplicationConfigurationProducer<JavaScratchConfiguration> {
|
||||
public JavaScratchConfigurationProducer() {
|
||||
super(JavaScratchConfigurationType.getInstance());
|
||||
@NotNull
|
||||
@Override
|
||||
public ConfigurationFactory getConfigurationFactory() {
|
||||
return JavaScratchConfigurationType.getInstance();
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
+16
-19
@@ -1,10 +1,9 @@
|
||||
// Copyright 2000-2018 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.execution.scratch;
|
||||
|
||||
import com.intellij.execution.configurations.ConfigurationFactory;
|
||||
import com.intellij.execution.configurations.ConfigurationTypeBase;
|
||||
import com.intellij.execution.configurations.ConfigurationTypeUtil;
|
||||
import com.intellij.execution.configurations.RunConfiguration;
|
||||
import com.intellij.execution.configurations.SimpleConfigurationType;
|
||||
import com.intellij.icons.AllIcons;
|
||||
import com.intellij.openapi.components.BaseState;
|
||||
import com.intellij.openapi.project.Project;
|
||||
@@ -15,27 +14,26 @@ import org.jetbrains.annotations.NotNull;
|
||||
/**
|
||||
* @author Eugene Zhuravlev
|
||||
*/
|
||||
public final class JavaScratchConfigurationType extends ConfigurationTypeBase {
|
||||
public final class JavaScratchConfigurationType extends SimpleConfigurationType {
|
||||
public JavaScratchConfigurationType() {
|
||||
super("Java Scratch", "Java Scratch", "Configuration for java scratch files",
|
||||
NotNullLazyValue.createValue(() -> LayeredIcon.create(AllIcons.RunConfigurations.Application, AllIcons.Actions.Scratch)));
|
||||
addFactory(new ConfigurationFactory(this) {
|
||||
@Override
|
||||
public boolean isApplicable(@NotNull Project project) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
@NotNull
|
||||
@Override
|
||||
public RunConfiguration createTemplateConfiguration(@NotNull Project project) {
|
||||
return new JavaScratchConfiguration("", project, this);
|
||||
}
|
||||
@Override
|
||||
public boolean isApplicable(@NotNull Project project) {
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Class<? extends BaseState> getOptionsClass() {
|
||||
return JavaScratchConfigurationOptions.class;
|
||||
}
|
||||
});
|
||||
@NotNull
|
||||
@Override
|
||||
public RunConfiguration createTemplateConfiguration(@NotNull Project project) {
|
||||
return new JavaScratchConfiguration("", project, this);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Class<? extends BaseState> getOptionsClass() {
|
||||
return JavaScratchConfigurationOptions.class;
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -43,7 +41,6 @@ public final class JavaScratchConfigurationType extends ConfigurationTypeBase {
|
||||
return "reference.dialogs.rundebug.Java Scratch";
|
||||
}
|
||||
|
||||
/** */
|
||||
@NotNull
|
||||
public static JavaScratchConfigurationType getInstance() {
|
||||
return ConfigurationTypeUtil.findConfigurationType(JavaScratchConfigurationType.class);
|
||||
|
||||
+6
-1
@@ -1,5 +1,4 @@
|
||||
// Copyright 2000-2018 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.execution.testframework;
|
||||
|
||||
import com.intellij.execution.JavaTestConfigurationBase;
|
||||
@@ -27,10 +26,16 @@ import java.util.List;
|
||||
public abstract class AbstractInClassConfigurationProducer<T extends JavaTestConfigurationBase> extends AbstractJavaTestConfigurationProducer<T> {
|
||||
private static final Logger LOG = Logger.getInstance(AbstractInClassConfigurationProducer.class);
|
||||
|
||||
/**
|
||||
* @deprecated Override {@link #getConfigurationFactory()}.
|
||||
*/
|
||||
@Deprecated
|
||||
protected AbstractInClassConfigurationProducer(ConfigurationType configurationType) {
|
||||
super(configurationType);
|
||||
}
|
||||
|
||||
protected AbstractInClassConfigurationProducer() {
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onFirstRun(@NotNull final ConfigurationFromContext configuration,
|
||||
|
||||
-5
@@ -4,7 +4,6 @@ package com.intellij.execution.testframework;
|
||||
import com.intellij.codeInsight.TestFrameworks;
|
||||
import com.intellij.execution.*;
|
||||
import com.intellij.execution.actions.ConfigurationContext;
|
||||
import com.intellij.execution.configurations.ConfigurationFactory;
|
||||
import com.intellij.execution.configurations.ConfigurationType;
|
||||
import com.intellij.execution.configurations.ModuleBasedConfiguration;
|
||||
import com.intellij.execution.configurations.RunConfiguration;
|
||||
@@ -34,10 +33,6 @@ import org.jetbrains.annotations.Contract;
|
||||
import java.util.*;
|
||||
|
||||
public abstract class AbstractJavaTestConfigurationProducer<T extends JavaTestConfigurationBase> extends JavaRunConfigurationProducerBase<T> {
|
||||
protected AbstractJavaTestConfigurationProducer(ConfigurationFactory configurationFactory) {
|
||||
super(configurationFactory);
|
||||
}
|
||||
|
||||
/**
|
||||
* @deprecated Override {@link #getConfigurationFactory()}.
|
||||
*/
|
||||
|
||||
+11
-16
@@ -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-2018 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.execution.testframework;
|
||||
|
||||
import com.intellij.execution.JavaTestConfigurationBase;
|
||||
@@ -30,10 +16,19 @@ import java.util.Iterator;
|
||||
import java.util.LinkedHashSet;
|
||||
import java.util.Set;
|
||||
|
||||
public abstract class AbstractPatternBasedConfigurationProducer<T extends JavaTestConfigurationBase> extends AbstractJavaTestConfigurationProducer<T> implements Cloneable{
|
||||
public abstract class AbstractPatternBasedConfigurationProducer<T extends JavaTestConfigurationBase> extends AbstractJavaTestConfigurationProducer<T> implements Cloneable {
|
||||
/**
|
||||
* @deprecated Override {@link #getConfigurationFactory()}.
|
||||
*/
|
||||
@Deprecated
|
||||
public AbstractPatternBasedConfigurationProducer(ConfigurationType configurationType) {
|
||||
super(configurationType);
|
||||
}
|
||||
|
||||
protected AbstractPatternBasedConfigurationProducer() {
|
||||
super();
|
||||
}
|
||||
|
||||
public boolean isConfiguredFromContext(ConfigurationContext context, Set<String> patterns) {
|
||||
final LinkedHashSet<String> classes = new LinkedHashSet<>();
|
||||
final DataContext dataContext = context.getDataContext();
|
||||
|
||||
+10
-16
@@ -1,30 +1,24 @@
|
||||
/*
|
||||
* 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-2018 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.execution.junit;
|
||||
|
||||
import com.intellij.execution.actions.ConfigurationContext;
|
||||
import com.intellij.execution.configurations.ConfigurationFactory;
|
||||
import com.intellij.execution.testframework.AbstractInClassConfigurationProducer;
|
||||
import com.intellij.openapi.util.Ref;
|
||||
import com.intellij.psi.PsiElement;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
//to be deleted in 2018
|
||||
@Deprecated
|
||||
public class TestClassConfigurationProducer extends AbstractInClassConfigurationProducer<JUnitConfiguration> {
|
||||
public TestClassConfigurationProducer() {
|
||||
super(JUnitConfigurationType.getInstance());
|
||||
super();
|
||||
}
|
||||
|
||||
@NotNull
|
||||
@Override
|
||||
public ConfigurationFactory getConfigurationFactory() {
|
||||
return JUnitConfigurationType.getInstance().getConfigurationFactories()[0];
|
||||
}
|
||||
|
||||
@SuppressWarnings("RedundantMethodOverride") // binary compatibility
|
||||
|
||||
+7
-3
@@ -3,6 +3,7 @@ package com.intellij.execution.junit;
|
||||
|
||||
import com.intellij.execution.actions.ConfigurationContext;
|
||||
import com.intellij.execution.actions.ConfigurationFromContext;
|
||||
import com.intellij.execution.configurations.ConfigurationFactory;
|
||||
import com.intellij.execution.testframework.AbstractInClassConfigurationProducer;
|
||||
import com.intellij.openapi.util.Ref;
|
||||
import com.intellij.psi.PsiElement;
|
||||
@@ -38,9 +39,12 @@ public final class TestInClassConfigurationProducer extends JUnitConfigurationPr
|
||||
return myDelegate.isApplicableTestType(type, context);
|
||||
}
|
||||
|
||||
private static class JUnitInClassConfigurationProducerDelegate
|
||||
extends AbstractInClassConfigurationProducer<JUnitConfiguration> {
|
||||
JUnitInClassConfigurationProducerDelegate() {super(JUnitConfigurationType.getInstance());}
|
||||
private static class JUnitInClassConfigurationProducerDelegate extends AbstractInClassConfigurationProducer<JUnitConfiguration> {
|
||||
@NotNull
|
||||
@Override
|
||||
public ConfigurationFactory getConfigurationFactory() {
|
||||
return JUnitConfigurationType.getInstance().getConfigurationFactories()[0];
|
||||
}
|
||||
|
||||
@Override
|
||||
protected boolean isApplicableTestType(String type, ConfigurationContext context) {
|
||||
|
||||
+7
-17
@@ -1,30 +1,20 @@
|
||||
/*
|
||||
* Copyright 2000-2015 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-2018 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.execution.junit;
|
||||
|
||||
import com.intellij.execution.actions.ConfigurationContext;
|
||||
import com.intellij.execution.configurations.ConfigurationFactory;
|
||||
import com.intellij.execution.testframework.AbstractInClassConfigurationProducer;
|
||||
import com.intellij.openapi.util.Ref;
|
||||
import com.intellij.psi.PsiElement;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
//to be delete in 2018
|
||||
@Deprecated
|
||||
public class TestMethodConfigurationProducer extends AbstractInClassConfigurationProducer<JUnitConfiguration> {
|
||||
public TestMethodConfigurationProducer() {
|
||||
super(JUnitConfigurationType.getInstance());
|
||||
@NotNull
|
||||
@Override
|
||||
public ConfigurationFactory getConfigurationFactory() {
|
||||
return JUnitConfigurationType.getInstance().getConfigurationFactories()[0];
|
||||
}
|
||||
|
||||
@SuppressWarnings("RedundantMethodOverride") // binary compatibility
|
||||
|
||||
+6
-4
@@ -3,7 +3,7 @@ package com.theoryinpractice.testng.configuration;
|
||||
|
||||
import com.intellij.execution.actions.ConfigurationContext;
|
||||
import com.intellij.execution.actions.ConfigurationFromContext;
|
||||
import com.intellij.execution.configurations.ConfigurationType;
|
||||
import com.intellij.execution.configurations.ConfigurationFactory;
|
||||
import com.intellij.execution.testframework.AbstractInClassConfigurationProducer;
|
||||
import com.intellij.openapi.util.Ref;
|
||||
import com.intellij.psi.PsiElement;
|
||||
@@ -11,7 +11,7 @@ import com.theoryinpractice.testng.model.TestType;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
public class TestNGInClassConfigurationProducer extends TestNGConfigurationProducer {
|
||||
private final TestNGInClassConfigurationProducerDelegate myDelegate = new TestNGInClassConfigurationProducerDelegate(TestNGConfigurationType.getInstance());
|
||||
private final TestNGInClassConfigurationProducerDelegate myDelegate = new TestNGInClassConfigurationProducerDelegate();
|
||||
|
||||
@Override
|
||||
public void onFirstRun(@NotNull ConfigurationFromContext configuration,
|
||||
@@ -33,8 +33,10 @@ public class TestNGInClassConfigurationProducer extends TestNGConfigurationProdu
|
||||
}
|
||||
|
||||
private static class TestNGInClassConfigurationProducerDelegate extends AbstractInClassConfigurationProducer<TestNGConfiguration> {
|
||||
protected TestNGInClassConfigurationProducerDelegate(ConfigurationType configurationType) {
|
||||
super(configurationType);
|
||||
@NotNull
|
||||
@Override
|
||||
public ConfigurationFactory getConfigurationFactory() {
|
||||
return TestNGConfigurationType.getInstance();
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
Reference in New Issue
Block a user