[testng] 88/355: Use ITestNGMethod#getInstance instead of #getInstances around Invoker
Eugene Zhukov
eugene-guest at moszumanska.debian.org
Tue Aug 18 10:19:51 UTC 2015
This is an automated email from the git hooks/post-receive script.
eugene-guest pushed a commit to annotated tag OpenBSD
in repository testng.
commit 6293b3b61db2fc41ca5ab936fea07c81cd1cfcf1
Author: Vladislav Rassokhin <vladrassokhin at gmail.com>
Date: Sun Nov 23 00:39:59 2014 +0300
Use ITestNGMethod#getInstance instead of #getInstances around Invoker
---
src/main/java/org/testng/internal/IInvoker.java | 2 +-
src/main/java/org/testng/internal/Invoker.java | 53 ++++++++++------------
.../TestMethodWithDataProviderMethodWorker.java | 32 ++++++-------
.../java/org/testng/internal/TestMethodWorker.java | 8 ++--
4 files changed, 44 insertions(+), 51 deletions(-)
diff --git a/src/main/java/org/testng/internal/IInvoker.java b/src/main/java/org/testng/internal/IInvoker.java
index b3ad180..b4ab9d9 100755
--- a/src/main/java/org/testng/internal/IInvoker.java
+++ b/src/main/java/org/testng/internal/IInvoker.java
@@ -51,7 +51,7 @@ public interface IInvoker {
XmlSuite suite,
Map<String, String> parameters,
ConfigurationGroupMethods groupMethods,
- Object[] instances,
+ Object instance,
ITestContext testContext);
}
diff --git a/src/main/java/org/testng/internal/Invoker.java b/src/main/java/org/testng/internal/Invoker.java
index 6d55292..dc699c0 100644
--- a/src/main/java/org/testng/internal/Invoker.java
+++ b/src/main/java/org/testng/internal/Invoker.java
@@ -171,11 +171,11 @@ public class Invoker implements IInvoker {
IConfigurationAnnotation configurationAnnotation= null;
try {
- Object[] instances= tm.getInstances();
- if (instances == null || instances.length == 0) {
- instances = new Object[] { instance };
+ Object inst = tm.getInstance();
+ if (inst == null) {
+ inst = instance;
}
- Class<?> objectClass= instances[0].getClass();
+ Class<?> objectClass= inst.getClass();
Method method= tm.getMethod();
// Only run the configuration if
@@ -206,7 +206,7 @@ public class Invoker implements IInvoker {
testMethodResult);
testResult.setParameters(parameters);
- Object[] newInstances= (null != instance) ? new Object[] { instance } : instances;
+ Object[] newInstances= new Object[]{ null != instance ? instance: inst };
runConfigurationListeners(testResult, true /* before */);
@@ -625,8 +625,7 @@ public class Invoker implements IInvoker {
}
// pass both paramValues and paramIndex to be thread safe in case parallel=true + dataprovider.
- private ITestResult invokeMethod(Object[] instances,
- int instanceIndex,
+ private ITestResult invokeMethod(Object instance,
final ITestNGMethod tm,
Object[] parameterValues,
int parametersIndex,
@@ -641,7 +640,6 @@ public class Invoker implements IInvoker {
//
// Invoke beforeGroups configurations
//
- Object instance = instances[instanceIndex];
invokeBeforeGroupsConfigurations(testClass, tm, groupMethods, suite, params,
instance);
@@ -881,7 +879,7 @@ public class Invoker implements IInvoker {
* This method is also reponsible for invoking @BeforeGroup, @BeforeMethod, @AfterMethod, @AfterGroup
* if it is the case for the passed in @Test method.
*/
- protected List<ITestResult> invokeTestMethod(Object[] instances,
+ protected List<ITestResult> invokeTestMethod(Object instance,
final ITestNGMethod tm,
Object[] parameterValues,
int parametersIndex,
@@ -897,10 +895,8 @@ public class Invoker implements IInvoker {
// Mark this method with the current thread id
tm.setId(ThreadUtil.currentThreadInfo());
- for(int i= 0; i < instances.length; i++) {
- results.add(invokeMethod(instances, i, tm, parameterValues, parametersIndex, suite, params,
+ results.add(invokeMethod(instance, tm, parameterValues, parametersIndex, suite, params,
testClass, beforeMethods, afterMethods, groupMethods));
- }
return results;
}
@@ -1018,8 +1014,7 @@ public class Invoker implements IInvoker {
return null;
}
- int retryFailed(Object[] instances,
- int instanceIndex,
+ int retryFailed(Object instance,
final ITestNGMethod tm,
XmlSuite suite,
ITestClass testClass,
@@ -1046,7 +1041,7 @@ public class Invoker implements IInvoker {
Object[] parameterValues =
getParametersFromIndex(bag.parameterHolder.parameters, parametersIndex);
- result.add(invokeMethod(instances, instanceIndex, tm, parameterValues,parametersIndex, suite,
+ result.add(invokeMethod(instance, tm, parameterValues,parametersIndex, suite,
allParameters, testClass, beforeMethods, afterMethods, groupMethods));
failureCount = handleInvocationResults(tm, result, failedInstances,
failureCount, expectedExceptionHolder, true, true /* collect results */);
@@ -1102,7 +1097,7 @@ public class Invoker implements IInvoker {
XmlSuite suite,
Map<String, String> testParameters,
ConfigurationGroupMethods groupMethods,
- Object[] instances,
+ Object instance,
ITestContext testContext)
{
// Potential bug here if the test method was declared on a parent class
@@ -1178,14 +1173,14 @@ public class Invoker implements IInvoker {
Map<String, String> allParameterNames = Maps.newHashMap();
ParameterBag bag = createParameters(testMethod,
- parameters, allParameterNames, null, suite, testContext, instances[0],
+ parameters, allParameterNames, null, suite, testContext, instance,
null);
if (bag.hasErrors()) {
failureCount = handleInvocationResults(testMethod,
bag.errorResults, null, failureCount, expectedExceptionHolder, true,
true /* collect results */);
- ITestResult tr = registerSkippedTestResult(testMethod, instances[0], start,
+ ITestResult tr = registerSkippedTestResult(testMethod, instance, start,
bag.errorResults.get(0).getThrowable());
result.add(tr);
continue;
@@ -1205,7 +1200,7 @@ public class Invoker implements IInvoker {
TestMethodWithDataProviderMethodWorker w =
new TestMethodWithDataProviderMethodWorker(this,
testMethod, parametersIndex,
- parameterValues, instances, suite, parameters, testClass,
+ parameterValues, instance, suite, parameters, testClass,
beforeMethods, afterMethods, groupMethods,
expectedExceptionHolder, testContext, m_skipFailedInvocationCounts,
invocationCount, failureCount, m_notifier);
@@ -1228,7 +1223,7 @@ public class Invoker implements IInvoker {
List<ITestResult> tmpResults = Lists.newArrayList();
try {
- tmpResults.addAll(invokeTestMethod(instances,
+ tmpResults.addAll(invokeTestMethod(instance,
testMethod,
parameterValues,
parametersIndex,
@@ -1248,12 +1243,12 @@ public class Invoker implements IInvoker {
if (failedInstances.isEmpty()) {
result.addAll(tmpResults);
} else {
- for (int i = 0; i < failedInstances.size(); i++) {
+ for (Object failedInstance : failedInstances) {
List<ITestResult> retryResults = Lists.newArrayList();
failureCount =
- retryFailed(failedInstances.toArray(),
- i, testMethod, suite, testClass, beforeMethods,
+ retryFailed(failedInstance,
+ testMethod, suite, testClass, beforeMethods,
afterMethods, groupMethods, retryResults,
failureCount, expectedExceptionHolder,
testContext, parameters, parametersIndex);
@@ -1269,7 +1264,7 @@ public class Invoker implements IInvoker {
&& (m_skipFailedInvocationCounts
|| testMethod.skipFailedInvocations())) {
while (invocationCount-- > 0) {
- result.add(registerSkippedTestResult(testMethod, instances[0], start, null));
+ result.add(registerSkippedTestResult(testMethod, instance, start, null));
}
break;
}
@@ -1281,7 +1276,7 @@ public class Invoker implements IInvoker {
catch (Throwable cause) {
ITestResult r =
new TestResult(testMethod.getTestClass(),
- instances[0],
+ instance,
testMethod,
cause,
start,
@@ -1463,8 +1458,7 @@ public class Invoker implements IInvoker {
//
List<ITestResult> resultsToRetry = Lists.newArrayList();
- for (int i = 0; i < result.size(); i++) {
- ITestResult testResult = result.get(i);
+ for (ITestResult testResult : result) {
Throwable ite= testResult.getThrowable();
int status= testResult.getStatus();
@@ -1693,13 +1687,12 @@ public class Invoker implements IInvoker {
private Set<ITestResult> keepSameInstances(ITestNGMethod method, Set<ITestResult> results) {
Set<ITestResult> result = Sets.newHashSet();
for (ITestResult r : results) {
- for (Object o : method.getInstances()) {
+ final Object o = method.getInstance();
// Keep this instance if 1) It's on a different class or 2) It's on the same class
// and on the same instance
Object instance = r.getInstance() != null
- ? r.getInstance() : r.getMethod().getInstances()[0];
+ ? r.getInstance() : r.getMethod().getInstance();
if (r.getTestClass() != method.getTestClass() || instance == o) result.add(r);
- }
}
return result;
}
diff --git a/src/main/java/org/testng/internal/TestMethodWithDataProviderMethodWorker.java b/src/main/java/org/testng/internal/TestMethodWithDataProviderMethodWorker.java
index 8ba02f3..4b4005b 100755
--- a/src/main/java/org/testng/internal/TestMethodWithDataProviderMethodWorker.java
+++ b/src/main/java/org/testng/internal/TestMethodWithDataProviderMethodWorker.java
@@ -15,7 +15,7 @@ public class TestMethodWithDataProviderMethodWorker implements Callable<List<ITe
private ITestNGMethod m_testMethod;
private Object[] m_parameterValues;
- private Object[] m_instances;
+ private Object m_instance;
private XmlSuite m_xmlSuite;
private Map<String, String> m_parameters;
private ITestClass m_testClass;
@@ -35,7 +35,7 @@ public class TestMethodWithDataProviderMethodWorker implements Callable<List<ITe
public TestMethodWithDataProviderMethodWorker(Invoker invoker, ITestNGMethod testMethod,
int parameterIndex,
- Object[] parameterValues, Object[] instances, XmlSuite suite,
+ Object[] parameterValues, Object instance, XmlSuite suite,
Map<String, String> parameters, ITestClass testClass,
ITestNGMethod[] beforeMethods, ITestNGMethod[] afterMethods,
ConfigurationGroupMethods groupMethods, ExpectedExceptionsHolder expectedExceptionHolder,
@@ -45,7 +45,7 @@ public class TestMethodWithDataProviderMethodWorker implements Callable<List<ITe
m_testMethod = testMethod;
m_parameterIndex = parameterIndex;
m_parameterValues = parameterValues;
- m_instances = instances;
+ m_instance = instance;
m_xmlSuite = suite;
m_parameters = parameters;
m_testClass = testClass;
@@ -70,16 +70,16 @@ public class TestMethodWithDataProviderMethodWorker implements Callable<List<ITe
long start = System.currentTimeMillis();
try {
- tmpResults.addAll(m_invoker.invokeTestMethod(m_instances,
- m_testMethod,
- m_parameterValues,
- m_parameterIndex,
- m_xmlSuite,
- m_parameters,
- m_testClass,
- m_beforeMethods,
- m_afterMethods,
- m_groupMethods));
+ tmpResults.addAll(m_invoker.invokeTestMethod(m_instance,
+ m_testMethod,
+ m_parameterValues,
+ m_parameterIndex,
+ m_xmlSuite,
+ m_parameters,
+ m_testClass,
+ m_beforeMethods,
+ m_afterMethods,
+ m_groupMethods));
}
finally {
List<Object> failedInstances = Lists.newArrayList();
@@ -94,8 +94,8 @@ public class TestMethodWithDataProviderMethodWorker implements Callable<List<ITe
List<ITestResult> retryResults = Lists.newArrayList();
m_failureCount =
- m_invoker.retryFailed(failedInstances.toArray(),
- i, m_testMethod, m_xmlSuite, m_testClass, m_beforeMethods,
+ m_invoker.retryFailed(failedInstances.get(i),
+ m_testMethod, m_xmlSuite, m_testClass, m_beforeMethods,
m_afterMethods, m_groupMethods, retryResults,
m_failureCount, m_expectedExceptionHolder,
m_testContext, m_parameters, m_parameterIndex);
@@ -118,7 +118,7 @@ public class TestMethodWithDataProviderMethodWorker implements Callable<List<ITe
while (m_invocationCount-- > 0) {
ITestResult r =
new TestResult(m_testMethod.getTestClass(),
- m_instances[0],
+ m_instance,
m_testMethod,
null,
start,
diff --git a/src/main/java/org/testng/internal/TestMethodWorker.java b/src/main/java/org/testng/internal/TestMethodWorker.java
index d251264..100daf1 100644
--- a/src/main/java/org/testng/internal/TestMethodWorker.java
+++ b/src/main/java/org/testng/internal/TestMethodWorker.java
@@ -108,7 +108,7 @@ public class TestMethodWorker implements IWorker<ITestNGMethod> {
// Invoke test method
try {
- invokeTestMethods(testMethod, testMthdInst.getInstances(), m_testContext);
+ invokeTestMethods(testMethod, testMthdInst.getInstance(), m_testContext);
}
finally {
invokeAfterClassMethods(testClass, testMthdInst);
@@ -116,7 +116,7 @@ public class TestMethodWorker implements IWorker<ITestNGMethod> {
}
}
- protected void invokeTestMethods(ITestNGMethod tm, Object[] instances,
+ protected void invokeTestMethods(ITestNGMethod tm, Object instance,
ITestContext testContext)
{
// Potential bug here: we look up the method index of tm among all
@@ -131,7 +131,7 @@ public class TestMethodWorker implements IWorker<ITestNGMethod> {
m_suite,
m_parameters,
m_groupMethods,
- instances,
+ instance,
testContext);
if (testResults != null) {
@@ -300,4 +300,4 @@ class SingleTestMethodWorker extends TestMethodWorker {
null,
testContext);
}
-}
\ No newline at end of file
+}
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-java/testng.git
More information about the pkg-java-commits
mailing list