[jboss-svn-commits] JBoss Common SVN: r4352 - in arquillian/trunk: protocols/local/src/main/java/org/jboss/arquillian/protocol/local and 2 other directories.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Wed May 5 08:31:20 EDT 2010


Author: aslak
Date: 2010-05-05 08:31:18 -0400 (Wed, 05 May 2010)
New Revision: 4352

Modified:
   arquillian/trunk/impl-base/src/main/java/org/jboss/arquillian/impl/handler/TestEventExecuter.java
   arquillian/trunk/protocols/local/src/main/java/org/jboss/arquillian/protocol/local/LocalMethodExecutor.java
   arquillian/trunk/spi/src/main/java/org/jboss/arquillian/spi/TestResult.java
   arquillian/trunk/testng/src/main/java/org/jboss/arquillian/testng/Arquillian.java
Log:
ARQ-105 Added start/end time to TestResult. This is the actual test execution time, excluded deployment / protocols etc


Modified: arquillian/trunk/impl-base/src/main/java/org/jboss/arquillian/impl/handler/TestEventExecuter.java
===================================================================
--- arquillian/trunk/impl-base/src/main/java/org/jboss/arquillian/impl/handler/TestEventExecuter.java	2010-05-05 12:23:53 UTC (rev 4351)
+++ arquillian/trunk/impl-base/src/main/java/org/jboss/arquillian/impl/handler/TestEventExecuter.java	2010-05-05 12:31:18 UTC (rev 4352)
@@ -49,6 +49,7 @@
          result.setStatus(Status.FAILED);
          result.setThrowable(e);
       }
+      result.setEnd(System.currentTimeMillis());
       context.add(TestResult.class, result);
    }
 }

Modified: arquillian/trunk/protocols/local/src/main/java/org/jboss/arquillian/protocol/local/LocalMethodExecutor.java
===================================================================
--- arquillian/trunk/protocols/local/src/main/java/org/jboss/arquillian/protocol/local/LocalMethodExecutor.java	2010-05-05 12:23:53 UTC (rev 4351)
+++ arquillian/trunk/protocols/local/src/main/java/org/jboss/arquillian/protocol/local/LocalMethodExecutor.java	2010-05-05 12:31:18 UTC (rev 4352)
@@ -29,7 +29,9 @@
  */
 public class LocalMethodExecutor implements ContainerMethodExecutor
 {
-
+   /* (non-Javadoc)
+    * @see org.jboss.arquillian.spi.ContainerMethodExecutor#invoke(org.jboss.arquillian.spi.TestMethodExecutor)
+    */
    public TestResult invoke(TestMethodExecutor testMethodExecutor)
    {
       TestResult result = new TestResult();
@@ -43,6 +45,7 @@
          result.setStatus(Status.FAILED);
          result.setThrowable(e);
       }
+      result.setEnd(System.currentTimeMillis());
       return result;
    }
 }
\ No newline at end of file

Modified: arquillian/trunk/spi/src/main/java/org/jboss/arquillian/spi/TestResult.java
===================================================================
--- arquillian/trunk/spi/src/main/java/org/jboss/arquillian/spi/TestResult.java	2010-05-05 12:23:53 UTC (rev 4351)
+++ arquillian/trunk/spi/src/main/java/org/jboss/arquillian/spi/TestResult.java	2010-05-05 12:31:18 UTC (rev 4352)
@@ -54,15 +54,23 @@
    private Status status;
    private Throwable throwable;
 
+   private long start;
+   private long end;
+   
    /**
-    * Create a empty result. 
+    * Create a empty result.<br/> 
+    * <br/>
+    * Start time is set to Current Milliseconds.
     */
    public TestResult()
    {
+      this(null);
    }
    
    /**
-    * Create a new TestResult.
+    * Create a new TestResult.<br/>
+    * <br/>
+    * Start time is set to Current Milliseconds.
     * 
     * @param status The result status.
     */
@@ -72,7 +80,9 @@
    }
    
    /**
-    * Create a new TestResult.
+    * Create a new TestResult.<br/>
+    * <br/>
+    * Start time is set to Current Milliseconds.
     * 
     * @param status The result status.
     * @param throwable thrown exception if any
@@ -81,6 +91,8 @@
    {
       this.status = status;
       this.throwable = throwable;
+      
+      this.start = System.currentTimeMillis();
    }
 
    /**
@@ -109,4 +121,44 @@
    {
       this.throwable = throwable;
    }
+   
+   /**
+    * Set the start time of the test.
+    * 
+    * @param start Start time in milliseconds
+    */
+   public void setStart(long start)
+   {
+      this.start = start;
+   }
+   
+   /**
+    * Get the start time.
+    * 
+    * @return Start time in milliseconds
+    */
+   public long getStart()
+   {
+      return start;
+   }
+   
+   /**
+    * Set the end time of the test.
+    * 
+    * @param End time in milliseconds
+    */
+   public void setEnd(long end)
+   {
+      this.end = end;
+   }
+   
+   /**
+    * Get the end time.
+    * 
+    * @return End time in milliseconds
+    */
+   public long getEnd()
+   {
+      return end;
+   }
 }
\ No newline at end of file

Modified: arquillian/trunk/testng/src/main/java/org/jboss/arquillian/testng/Arquillian.java
===================================================================
--- arquillian/trunk/testng/src/main/java/org/jboss/arquillian/testng/Arquillian.java	2010-05-05 12:23:53 UTC (rev 4351)
+++ arquillian/trunk/testng/src/main/java/org/jboss/arquillian/testng/Arquillian.java	2010-05-05 12:31:18 UTC (rev 4352)
@@ -139,6 +139,9 @@
          {
             testResult.setThrowable(result.getThrowable());
          }
+
+         // calculate test end time. this is overwritten in the testng invoker.. 
+         testResult.setEndMillis( (result.getStart() - result.getEnd()) + testResult.getStartMillis());
       } 
       catch (Exception e)
       {



More information about the jboss-svn-commits mailing list