summaryrefslogtreecommitdiff
path: root/plugins/testng
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/testng')
-rw-r--r--plugins/testng/src/META-INF/plugin.xml1
-rw-r--r--plugins/testng/src/com/theoryinpractice/testng/TestNGReferenceContributor.java28
-rw-r--r--plugins/testng/src/com/theoryinpractice/testng/configuration/SearchingForTestsTask.java3
-rw-r--r--plugins/testng/src/com/theoryinpractice/testng/configuration/TestNGRunnableState.java26
-rw-r--r--plugins/testng/src/com/theoryinpractice/testng/model/TestProxy.java12
-rw-r--r--plugins/testng/src/com/theoryinpractice/testng/ui/actions/RerunFailedTestsAction.java18
6 files changed, 47 insertions, 41 deletions
diff --git a/plugins/testng/src/META-INF/plugin.xml b/plugins/testng/src/META-INF/plugin.xml
index 5fe0fb55b60f..711ace8ad744 100644
--- a/plugins/testng/src/META-INF/plugin.xml
+++ b/plugins/testng/src/META-INF/plugin.xml
@@ -14,6 +14,7 @@
<runConfigurationProducer implementation="com.theoryinpractice.testng.configuration.TestNGSuiteConfigurationProducer"/>
<configurationType implementation="com.theoryinpractice.testng.configuration.TestNGConfigurationType"/>
<psi.referenceContributor language="JAVA" implementation="com.theoryinpractice.testng.TestNGReferenceContributor"/>
+ <psi.referenceContributor language="Groovy" implementation="com.theoryinpractice.testng.TestNGReferenceContributor"/>
<psi.referenceContributor language="XML" implementation="com.theoryinpractice.testng.TestNGSuiteReferenceContributor"/>
<library.dependencyScopeSuggester implementation="com.theoryinpractice.testng.configuration.TestNGDependencyScopeSuggester"/>
diff --git a/plugins/testng/src/com/theoryinpractice/testng/TestNGReferenceContributor.java b/plugins/testng/src/com/theoryinpractice/testng/TestNGReferenceContributor.java
index 6e483fb97c3d..74bb548fcbbf 100644
--- a/plugins/testng/src/com/theoryinpractice/testng/TestNGReferenceContributor.java
+++ b/plugins/testng/src/com/theoryinpractice/testng/TestNGReferenceContributor.java
@@ -50,41 +50,41 @@ import java.util.ArrayList;
import java.util.List;
public class TestNGReferenceContributor extends PsiReferenceContributor {
- private static PsiElementPattern.Capture<PsiLiteralExpression> getElementPattern(String annotation) {
- return PlatformPatterns.psiElement(PsiLiteralExpression.class).and(new FilterPattern(new TestAnnotationFilter(annotation)));
+ private static PsiElementPattern.Capture<PsiLiteral> getElementPattern(String annotation) {
+ return PlatformPatterns.psiElement(PsiLiteral.class).and(new FilterPattern(new TestAnnotationFilter(annotation)));
}
public void registerReferenceProviders(@NotNull PsiReferenceRegistrar registrar) {
registrar.registerReferenceProvider(getElementPattern("dependsOnMethods"), new PsiReferenceProvider() {
@NotNull
public PsiReference[] getReferencesByElement(@NotNull PsiElement element, @NotNull final ProcessingContext context) {
- return new MethodReference[]{new MethodReference((PsiLiteralExpression)element)};
+ return new MethodReference[]{new MethodReference((PsiLiteral)element)};
}
});
registrar.registerReferenceProvider(getElementPattern("dataProvider"), new PsiReferenceProvider() {
@NotNull
public PsiReference[] getReferencesByElement(@NotNull PsiElement element, @NotNull final ProcessingContext context) {
- return new DataProviderReference[]{new DataProviderReference((PsiLiteralExpression)element)};
+ return new DataProviderReference[]{new DataProviderReference((PsiLiteral)element)};
}
});
registrar.registerReferenceProvider(getElementPattern("groups"), new PsiReferenceProvider() {
@NotNull
public PsiReference[] getReferencesByElement(@NotNull PsiElement element, @NotNull final ProcessingContext context) {
- return new GroupReference[]{new GroupReference(element.getProject(), (PsiLiteralExpression)element)};
+ return new GroupReference[]{new GroupReference(element.getProject(), (PsiLiteral)element)};
}
});
registrar.registerReferenceProvider(getElementPattern("dependsOnGroups"), new PsiReferenceProvider() {
@NotNull
public PsiReference[] getReferencesByElement(@NotNull PsiElement element, @NotNull final ProcessingContext context) {
- return new GroupReference[]{new GroupReference(element.getProject(), (PsiLiteralExpression)element)};
+ return new GroupReference[]{new GroupReference(element.getProject(), (PsiLiteral)element)};
}
});
}
- private static class DataProviderReference extends PsiReferenceBase<PsiLiteralExpression> {
+ private static class DataProviderReference extends PsiReferenceBase<PsiLiteral> {
- public DataProviderReference(PsiLiteralExpression element) {
+ public DataProviderReference(PsiLiteral element) {
super(element, false);
}
@@ -156,9 +156,9 @@ public class TestNGReferenceContributor extends PsiReferenceContributor {
}
}
- private static class MethodReference extends PsiReferenceBase<PsiLiteralExpression> {
+ private static class MethodReference extends PsiReferenceBase<PsiLiteral> {
- public MethodReference(PsiLiteralExpression element) {
+ public MethodReference(PsiLiteral element) {
super(element, false);
}
@@ -181,7 +181,7 @@ public class TestNGReferenceContributor extends PsiReferenceContributor {
@Nullable
private PsiClass getDependsClass(String val) {
final String className = StringUtil.getPackageName(val);
- final PsiLiteralExpression element = getElement();
+ final PsiLiteral element = getElement();
return StringUtil.isEmpty(className) ? PsiUtil.getTopLevelClass(element)
: JavaPsiFacade.getInstance(element.getProject()).findClass(className, element.getResolveScope());
}
@@ -213,10 +213,10 @@ public class TestNGReferenceContributor extends PsiReferenceContributor {
}
}
- private static class GroupReference extends PsiReferenceBase<PsiLiteralExpression> {
+ private static class GroupReference extends PsiReferenceBase<PsiLiteral> {
private final Project myProject;
- public GroupReference(Project project, PsiLiteralExpression element) {
+ public GroupReference(Project project, PsiLiteral element) {
super(element, false);
myProject = project;
}
@@ -264,7 +264,7 @@ public class TestNGReferenceContributor extends PsiReferenceContributor {
}
public boolean isClassAcceptable(Class hintClass) {
- return PsiLiteralExpression.class.isAssignableFrom(hintClass);
+ return PsiLiteral.class.isAssignableFrom(hintClass);
}
}
}
diff --git a/plugins/testng/src/com/theoryinpractice/testng/configuration/SearchingForTestsTask.java b/plugins/testng/src/com/theoryinpractice/testng/configuration/SearchingForTestsTask.java
index 2258b16a7a2a..8358fcd253dd 100644
--- a/plugins/testng/src/com/theoryinpractice/testng/configuration/SearchingForTestsTask.java
+++ b/plugins/testng/src/com/theoryinpractice/testng/configuration/SearchingForTestsTask.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2010 JetBrains s.r.o.
+ * Copyright 2000-2014 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.
@@ -646,6 +646,7 @@ public class SearchingForTestsTask extends Task.Backgroundable {
return result;
}
+ @NotNull
private GlobalSearchScope getSearchScope() {
final TestData data = myConfig.getPersistantData();
final Module module = myConfig.getConfigurationModule().getModule();
diff --git a/plugins/testng/src/com/theoryinpractice/testng/configuration/TestNGRunnableState.java b/plugins/testng/src/com/theoryinpractice/testng/configuration/TestNGRunnableState.java
index 0c73ae5f5761..6579990d4184 100644
--- a/plugins/testng/src/com/theoryinpractice/testng/configuration/TestNGRunnableState.java
+++ b/plugins/testng/src/com/theoryinpractice/testng/configuration/TestNGRunnableState.java
@@ -14,12 +14,6 @@
* limitations under the License.
*/
-/*
- * Created by IntelliJ IDEA.
- * User: amrk
- * Date: Jul 2, 2005
- * Time: 12:22:07 AM
- */
package com.theoryinpractice.testng.configuration;
import com.intellij.ExtensionPoints;
@@ -40,7 +34,7 @@ import com.intellij.execution.ui.ConsoleViewContentType;
import com.intellij.execution.util.JavaParametersUtil;
import com.intellij.openapi.diagnostic.Logger;
import com.intellij.openapi.extensions.Extensions;
-import com.intellij.openapi.module.LanguageLevelUtil;
+import com.intellij.openapi.module.EffectiveLanguageLevelUtil;
import com.intellij.openapi.module.Module;
import com.intellij.openapi.progress.ProgressManager;
import com.intellij.openapi.progress.impl.BackgroundableProcessIndicator;
@@ -77,7 +71,6 @@ import org.testng.remote.RemoteArgs;
import org.testng.remote.RemoteTestNG;
import org.testng.remote.strprotocol.SerializedMessageSender;
-import javax.swing.*;
import java.io.File;
import java.io.IOException;
import java.net.InetAddress;
@@ -98,7 +91,7 @@ public class TestNGRunnableState extends JavaCommandLineState {
public TestNGRunnableState(ExecutionEnvironment environment, TestNGConfiguration config) {
super(environment);
- this.runnerSettings = environment.getRunnerSettings();
+ runnerSettings = environment.getRunnerSettings();
this.config = config;
//TODO need to narrow this down a bit
//setModulesToCompile(ModuleManager.getInstance(config.getProject()).getModules());
@@ -120,6 +113,7 @@ public class TestNGRunnableState extends JavaCommandLineState {
}
}
+ @NotNull
@Override
public ExecutionResult execute(@NotNull final Executor executor, @NotNull final ProgramRunner runner) throws ExecutionException {
final boolean smRunner = Registry.is("testng_sm_runner");
@@ -173,6 +167,7 @@ public class TestNGRunnableState extends JavaCommandLineState {
final String text = event.getText();
final ConsoleViewContentType consoleViewType = ConsoleViewContentType.getConsoleViewType(outputType);
final Printable printable = new Printable() {
+ @Override
public void printOn(final Printer printer) {
printer.print(text, consoleViewType);
}
@@ -188,9 +183,9 @@ public class TestNGRunnableState extends JavaCommandLineState {
});
console.attachToProcess(processHandler);
- RerunFailedTestsAction rerunFailedTestsAction = new RerunFailedTestsAction(console);
- rerunFailedTestsAction.init(console.getProperties(), getEnvironment());
+ RerunFailedTestsAction rerunFailedTestsAction = new RerunFailedTestsAction(console, console.getProperties());
rerunFailedTestsAction.setModelProvider(new Getter<TestFrameworkRunningModel>() {
+ @Override
public TestFrameworkRunningModel get() {
return console.getResultsView();
}
@@ -218,8 +213,7 @@ public class TestNGRunnableState extends JavaCommandLineState {
Disposer.register(getEnvironment().getProject(), smtConsoleView);
smtConsoleView.attachToProcess(handler);
- final RerunFailedTestsAction rerunFailedTestsAction = new RerunFailedTestsAction(smtConsoleView);
- rerunFailedTestsAction.init(testConsoleProperties, getEnvironment());
+ final RerunFailedTestsAction rerunFailedTestsAction = new RerunFailedTestsAction(smtConsoleView, testConsoleProperties);
rerunFailedTestsAction.setModelProvider(new Getter<TestFrameworkRunningModel>() {
@Override
public TestFrameworkRunningModel get() {
@@ -264,7 +258,7 @@ public class TestNGRunnableState extends JavaCommandLineState {
Module module = config.getConfigurationModule().getModule();
LanguageLevel effectiveLanguageLevel = module == null
? LanguageLevelProjectExtension.getInstance(project).getLanguageLevel()
- : LanguageLevelUtil.getEffectiveLanguageLevel(module);
+ : EffectiveLanguageLevelUtil.getEffectiveLanguageLevel(module);
final boolean is15 = effectiveLanguageLevel != LanguageLevel.JDK_1_4 && effectiveLanguageLevel != LanguageLevel.JDK_1_3;
LOG.info("Language level is " + effectiveLanguageLevel.toString());
@@ -311,7 +305,7 @@ public class TestNGRunnableState extends JavaCommandLineState {
javaParameters.getProgramParametersList().add(supportSerializationProtocol(config) ? RemoteArgs.PORT : CommandLineArgs.PORT, String.valueOf(port));
- if (data.getOutputDirectory() != null && !"".equals(data.getOutputDirectory())) {
+ if (data.getOutputDirectory() != null && !data.getOutputDirectory().isEmpty()) {
javaParameters.getProgramParametersList().add(CommandLineArgs.OUTPUT_DIRECTORY, data.getOutputDirectory());
}
@@ -379,7 +373,7 @@ public class TestNGRunnableState extends JavaCommandLineState {
try {
hostname = InetAddress.getLocalHost().getHostName();
}
- catch (UnknownHostException e) {
+ catch (UnknownHostException ignored) {
}
params.add("-Xdebug");
params.add("-Xrunjdwp:transport=dt_socket,address=" + hostname + ':' + debugPort + ",suspend=y,server=n");
diff --git a/plugins/testng/src/com/theoryinpractice/testng/model/TestProxy.java b/plugins/testng/src/com/theoryinpractice/testng/model/TestProxy.java
index a7d29ce4de98..b5e24707bba7 100644
--- a/plugins/testng/src/com/theoryinpractice/testng/model/TestProxy.java
+++ b/plugins/testng/src/com/theoryinpractice/testng/model/TestProxy.java
@@ -292,7 +292,7 @@ public class TestProxy extends AbstractTestProxy {
if (myHyperlink == null) {
return null;
}
- return new AssertEqualsDiffViewerProvider() {
+ return new AssertEqualsMultiDiffViewProvider() {
@Override
public void openDiff(Project project) {
myHyperlink.openDiff(project);
@@ -307,6 +307,16 @@ public class TestProxy extends AbstractTestProxy {
public String getActual() {
return myHyperlink.getRight();
}
+
+ @Override
+ public void openMultiDiff(Project project, AssertEqualsDiffChain chain) {
+ myHyperlink.openMultiDiff(project, chain);
+ }
+
+ @Override
+ public String getFilePath() {
+ return myHyperlink.getFilePath();
+ }
};
}
diff --git a/plugins/testng/src/com/theoryinpractice/testng/ui/actions/RerunFailedTestsAction.java b/plugins/testng/src/com/theoryinpractice/testng/ui/actions/RerunFailedTestsAction.java
index 597bb5983876..0c6eea9af3e8 100644
--- a/plugins/testng/src/com/theoryinpractice/testng/ui/actions/RerunFailedTestsAction.java
+++ b/plugins/testng/src/com/theoryinpractice/testng/ui/actions/RerunFailedTestsAction.java
@@ -1,13 +1,14 @@
package com.theoryinpractice.testng.ui.actions;
import com.intellij.execution.CantRunException;
-import com.intellij.execution.ExecutionException;
import com.intellij.execution.Executor;
import com.intellij.execution.Location;
import com.intellij.execution.actions.JavaRerunFailedTestsAction;
import com.intellij.execution.configurations.RunProfileState;
import com.intellij.execution.runners.ExecutionEnvironment;
import com.intellij.execution.testframework.AbstractTestProxy;
+import com.intellij.execution.testframework.SourceScope;
+import com.intellij.execution.testframework.TestConsoleProperties;
import com.intellij.openapi.application.ApplicationManager;
import com.intellij.openapi.module.Module;
import com.intellij.openapi.project.Project;
@@ -30,23 +31,23 @@ import java.net.ServerSocket;
import java.util.*;
public class RerunFailedTestsAction extends JavaRerunFailedTestsAction {
-
- public RerunFailedTestsAction(@NotNull ComponentContainer componentContainer) {
- super(componentContainer);
+ public RerunFailedTestsAction(@NotNull ComponentContainer componentContainer, @NotNull TestConsoleProperties consoleProperties) {
+ super(componentContainer, consoleProperties);
}
@Override
- public MyRunProfile getRunProfile() {
+ protected MyRunProfile getRunProfile(@NotNull ExecutionEnvironment environment) {
final TestNGConfiguration configuration = (TestNGConfiguration)getModel().getProperties().getConfiguration();
final List<AbstractTestProxy> failedTests = getFailedTests(configuration.getProject());
return new MyRunProfile(configuration) {
+ @Override
@NotNull
public Module[] getModules() {
- return Module.EMPTY_ARRAY;
+ return configuration.getModules();
}
- public RunProfileState getState(@NotNull Executor executor, @NotNull ExecutionEnvironment env) throws ExecutionException {
-
+ @Override
+ public RunProfileState getState(@NotNull Executor executor, @NotNull ExecutionEnvironment env) {
return new TestNGRunnableState(env, configuration) {
@Override
protected SearchingForTestsTask createSearchingForTestsTask(ServerSocket serverSocket,
@@ -99,5 +100,4 @@ public class RerunFailedTestsAction extends JavaRerunFailedTestsAction {
}
};
}
-
}