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 ce6799e0f32785dac3a8971948977842478f54c3 Author: Vladislav Rassokhin <[email protected]> Date: Sun Nov 16 08:26:56 2014 +0300 Make test for TESTNG-387 work --- src/test/java/test/testng387/FailedDPTest.java | 43 +++----------------------- src/test/java/test/testng387/TestNG387.java | 38 +++++++++++++++++++++++ src/test/resources/testng.xml | 1 + 3 files changed, 43 insertions(+), 39 deletions(-) diff --git a/src/test/java/test/testng387/FailedDPTest.java b/src/test/java/test/testng387/FailedDPTest.java index 317d3bc..72cd496 100644 --- a/src/test/java/test/testng387/FailedDPTest.java +++ b/src/test/java/test/testng387/FailedDPTest.java @@ -1,16 +1,12 @@ package test.testng387; -import org.testng.Assert; -import org.testng.ITestContext; -import org.testng.ITestNGMethod; -import org.testng.annotations.AfterClass; -import org.testng.annotations.DataProvider; -import org.testng.annotations.Test; - import java.util.ArrayList; import java.util.Iterator; import java.util.List; +import org.testng.annotations.DataProvider; +import org.testng.annotations.Test; + /** * test for http://jira.opensymphony.com/browse/TESTNG-387 * The invocation-numbers logic in failed.xml is wrong for dataprovider and parallel=true @@ -22,7 +18,7 @@ import java.util.List; public class FailedDPTest { // prime numbers < 10 - private List<Integer> primes = new ArrayList<Integer>(); + static List<Integer> primes = new ArrayList<Integer>(); public FailedDPTest(){ primes.add(2); primes.add(3); @@ -54,35 +50,4 @@ public class FailedDPTest { } } - /** - * validates that the failed invoc number are the correct ones, ie the prime numbers. - * @param ctx - */ - @AfterClass(alwaysRun=true) - public void check(ITestContext ctx){ - ITestNGMethod testMethod = getMethod(ctx, "isNotPrime"); - - List<Integer> failed = testMethod.getFailedInvocationNumbers(); - if (failed.size() != primes.size()){ - throw new Error(); - } - for (Integer num : primes) { - Assert.assertTrue(failed.contains(num),num+" should be present to be retried.It is not."); - } - } - - - - private ITestNGMethod getMethod(ITestContext ctx, String methodName) { - - ITestNGMethod method = null; - for (int i = 0; i < ctx.getAllTestMethods().length; i++) { - method = ctx.getAllTestMethods()[i]; - if (method.getMethodName().equals(methodName)) { - return method; - } - } - throw new RuntimeException("test case creation bug."); - } - } diff --git a/src/test/java/test/testng387/TestNG387.java b/src/test/java/test/testng387/TestNG387.java new file mode 100644 index 0000000..f0130c3 --- /dev/null +++ b/src/test/java/test/testng387/TestNG387.java @@ -0,0 +1,38 @@ +package test.testng387; + +import java.util.Collections; +import java.util.List; + +import org.testng.Assert; +import org.testng.ITestContext; +import org.testng.ITestNGMethod; +import org.testng.TestListenerAdapter; +import org.testng.TestNG; +import org.testng.annotations.Test; +import test.SimpleBaseTest; + +public class TestNG387 extends SimpleBaseTest { + @Test + public void testInvocationCounterIsCorrectForMethodWithDataProvider() throws Exception { + final TestNG tng = create(FailedDPTest.class); + tng.setThreadCount(1); + tng.setParallel("false"); + tng.setPreserveOrder(true); + final TestListenerAdapter tla = new TestListenerAdapter(); + tng.addListener(tla); + tng.run(); + + final List<ITestContext> contexts = tla.getTestContexts(); + Assert.assertNotNull(contexts); + Assert.assertEquals(contexts.size(), 1); + final ITestContext context = contexts.iterator().next(); + Assert.assertNotNull(context); + final ITestNGMethod[] methods = context.getAllTestMethods(); + Assert.assertNotNull(methods.length); + Assert.assertEquals(methods.length, 1); + + List<Integer> failed = methods[0].getFailedInvocationNumbers(); + Collections.sort(failed); // Is that correct? Shouldn't be already sorted by Invoker (like DataProvider parameters) + Assert.assertEquals(failed, FailedDPTest.primes, "FailedInvocationNumbers mismatch"); + } +} diff --git a/src/test/resources/testng.xml b/src/test/resources/testng.xml index ca8b566..7877140 100644 --- a/src/test/resources/testng.xml +++ b/src/test/resources/testng.xml @@ -121,6 +121,7 @@ <class name="test.testng234.PolymorphicFailureTest" /> <class name="test.reports.FailedReporterTest" /> <class name="test.reports.ReporterLogTest" /> + <class name="test.testng387.TestNG387"/> </classes> </test> -- Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-java/testng.git _______________________________________________ pkg-java-commits mailing list [email protected] http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/pkg-java-commits

