mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
sm runner: suggest to fix configuration if no tests were found
This commit is contained in:
@@ -21,7 +21,10 @@ import com.intellij.execution.process.OSProcessHandler;
|
||||
import com.intellij.execution.process.ProcessAdapter;
|
||||
import com.intellij.execution.process.ProcessEvent;
|
||||
import com.intellij.execution.runners.ExecutionEnvironment;
|
||||
import com.intellij.execution.testframework.*;
|
||||
import com.intellij.execution.testframework.JavaTestLocationProvider;
|
||||
import com.intellij.execution.testframework.SearchForTestsTask;
|
||||
import com.intellij.execution.testframework.TestConsoleProperties;
|
||||
import com.intellij.execution.testframework.TestFrameworkRunningModel;
|
||||
import com.intellij.execution.testframework.actions.AbstractRerunFailedTestsAction;
|
||||
import com.intellij.execution.testframework.sm.SMTestRunnerConnectionUtil;
|
||||
import com.intellij.execution.testframework.sm.runner.SMTRunnerConsoleProperties;
|
||||
@@ -114,13 +117,7 @@ public abstract class JavaTestFrameworkRunnableState<T extends ModuleBasedConfig
|
||||
public void processTerminated(ProcessEvent event) {
|
||||
Runnable runnable = new Runnable() {
|
||||
public void run() {
|
||||
final AbstractTestProxy viewerRoot = viewer.getRoot();
|
||||
if (viewer.hasTestSuites() ||
|
||||
!ResetConfigurationModuleAdapter.tryWithAnotherModule(getConfiguration(), testConsoleProperties.isDebug())) {
|
||||
TestsUIUtil.notifyByBalloon(testConsoleProperties.getProject(), viewer.hasTestSuites(), viewerRoot, testConsoleProperties, null);
|
||||
}
|
||||
|
||||
viewerRoot.flush();
|
||||
viewer.getRoot().flush();
|
||||
deleteTempFiles();
|
||||
clear();
|
||||
}
|
||||
|
||||
+14
-3
@@ -22,16 +22,17 @@ package com.intellij.execution.testframework;
|
||||
|
||||
import com.intellij.debugger.DebuggerManagerEx;
|
||||
import com.intellij.debugger.impl.DebuggerSession;
|
||||
import com.intellij.execution.CommonJavaRunConfigurationParameters;
|
||||
import com.intellij.execution.Executor;
|
||||
import com.intellij.execution.configurations.JavaRunConfigurationModule;
|
||||
import com.intellij.execution.configurations.ModuleBasedConfiguration;
|
||||
import com.intellij.execution.configurations.RunConfiguration;
|
||||
import com.intellij.execution.testframework.sm.runner.SMTRunnerConsoleProperties;
|
||||
import com.intellij.openapi.project.Project;
|
||||
import com.intellij.util.config.Storage;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
|
||||
import java.util.Collection;
|
||||
|
||||
public abstract class JavaAwareTestConsoleProperties extends SMTRunnerConsoleProperties {
|
||||
public abstract class JavaAwareTestConsoleProperties<T extends ModuleBasedConfiguration<JavaRunConfigurationModule> & CommonJavaRunConfigurationParameters> extends SMTRunnerConsoleProperties {
|
||||
public JavaAwareTestConsoleProperties(final String testFrameworkName, RunConfiguration configuration, Executor executor) {
|
||||
super(configuration, testFrameworkName, executor, false);
|
||||
}
|
||||
@@ -42,6 +43,16 @@ public abstract class JavaAwareTestConsoleProperties extends SMTRunnerConsolePro
|
||||
return debuggerSession != null && debuggerSession.isPaused();
|
||||
}
|
||||
|
||||
@Override
|
||||
public T getConfiguration() {
|
||||
return (T)super.getConfiguration();
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean fixEmptySuite() {
|
||||
return ResetConfigurationModuleAdapter.tryWithAnotherModule(getConfiguration(), isDebug());
|
||||
}
|
||||
|
||||
@Nullable
|
||||
public DebuggerSession getDebugSession() {
|
||||
final DebuggerManagerEx debuggerManager = DebuggerManagerEx.getInstanceEx(getProject());
|
||||
|
||||
+4
@@ -161,4 +161,8 @@ public class SMTRunnerConsoleProperties extends TestConsoleProperties implements
|
||||
|
||||
return new OpenFileDescriptor(project, file, offset);
|
||||
}
|
||||
|
||||
public boolean fixEmptySuite() {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
+4
@@ -19,6 +19,7 @@ import com.intellij.execution.testframework.TestConsoleProperties;
|
||||
import com.intellij.execution.testframework.TestStatusListener;
|
||||
import com.intellij.execution.testframework.TestsUIUtil;
|
||||
import com.intellij.execution.testframework.sm.SMTestsRunnerBundle;
|
||||
import com.intellij.execution.testframework.sm.runner.SMTRunnerConsoleProperties;
|
||||
import com.intellij.execution.testframework.sm.runner.SMTRunnerEventsAdapter;
|
||||
import com.intellij.execution.testframework.sm.runner.SMTestProxy;
|
||||
import com.intellij.execution.testframework.sm.runner.states.TestStateInfo;
|
||||
@@ -83,6 +84,9 @@ public class SMTRunnerNotificationsHandler extends SMTRunnerEventsAdapter {
|
||||
type = MessageType.ERROR;
|
||||
break;
|
||||
} else if (testsRoot.isEmptySuite()) {
|
||||
if (myConsoleProperties instanceof SMTRunnerConsoleProperties && ((SMTRunnerConsoleProperties)myConsoleProperties).fixEmptySuite()) {
|
||||
return;
|
||||
}
|
||||
msg = SMTestsRunnerBundle.message("sm.test.runner.ui.tests.tree.presentation.labels.empty.test.suite");
|
||||
type = MessageType.WARNING;
|
||||
break;
|
||||
|
||||
+1
-1
@@ -27,7 +27,7 @@ import org.jetbrains.annotations.NotNull;
|
||||
|
||||
import javax.swing.*;
|
||||
|
||||
public class JUnitConsoleProperties extends JavaAwareTestConsoleProperties {
|
||||
public class JUnitConsoleProperties extends JavaAwareTestConsoleProperties<JUnitConfiguration> {
|
||||
|
||||
private final JUnitConfiguration myConfiguration;
|
||||
|
||||
|
||||
@@ -24,7 +24,7 @@ import com.theoryinpractice.testng.configuration.TestNGConfiguration;
|
||||
|
||||
import javax.swing.*;
|
||||
|
||||
public class TestNGConsoleProperties extends JavaAwareTestConsoleProperties {
|
||||
public class TestNGConsoleProperties extends JavaAwareTestConsoleProperties<TestNGConfiguration> {
|
||||
private final TestNGConfiguration myConfiguration;
|
||||
|
||||
public TestNGConsoleProperties(TestNGConfiguration config, Executor executor)
|
||||
|
||||
@@ -23,14 +23,11 @@
|
||||
package com.theoryinpractice.testng.ui;
|
||||
|
||||
import com.intellij.codeInsight.AnnotationUtil;
|
||||
import com.intellij.execution.ExecutionBundle;
|
||||
import com.intellij.execution.runners.ExecutionEnvironment;
|
||||
import com.intellij.execution.testframework.*;
|
||||
import com.intellij.execution.testframework.actions.ScrollToTestSourceAction;
|
||||
import com.intellij.execution.testframework.ui.TestResultsPanel;
|
||||
import com.intellij.execution.testframework.ui.TestsProgressAnimator;
|
||||
import com.intellij.icons.AllIcons;
|
||||
import com.intellij.openapi.actionSystem.DefaultActionGroup;
|
||||
import com.intellij.openapi.application.ApplicationManager;
|
||||
import com.intellij.openapi.progress.util.ColorProgressBar;
|
||||
import com.intellij.openapi.project.Project;
|
||||
@@ -44,7 +41,6 @@ import com.intellij.ui.DoubleClickListener;
|
||||
import com.intellij.ui.ScrollPaneFactory;
|
||||
import com.intellij.ui.table.TableView;
|
||||
import com.intellij.util.OpenSourceUtil;
|
||||
import com.intellij.util.config.ToggleBooleanProperty;
|
||||
import com.theoryinpractice.testng.configuration.TestNGConfiguration;
|
||||
import com.theoryinpractice.testng.model.*;
|
||||
import com.theoryinpractice.testng.util.TestNGUtil;
|
||||
|
||||
Reference in New Issue
Block a user