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

Reply via email to