[richfaces-planning-issues] [JBoss JIRA] Created: (RFPL-320) rf-demo ftest - patch Wait.until() method to test conditions on the start of the loop

Lukas Fryc (JIRA) jira-events at lists.jboss.org
Tue Jan 5 11:05:30 EST 2010


rf-demo ftest - patch Wait.until() method to test conditions on the start of the loop
-------------------------------------------------------------------------------------

                 Key: RFPL-320
                 URL: https://jira.jboss.org/jira/browse/RFPL-320
             Project: RichFaces Planning
          Issue Type: Feature Request
      Security Level: Public (Everyone can see)
          Components: QA
    Affects Versions: 3.3.3.BETA1
            Reporter: Lukas Fryc
            Assignee: Lukas Fryc
            Priority: Minor
             Fix For: 3.3.3.GA


Originally was: RF-8177

Use following patch after solving related issues - some tests needs to be modifies (mainly widely used abstractTestSource()): 

Index: src/main/java/org/jboss/test/selenium/waiting/Wait.java 
=================================================================== 
--- src/main/java/org/jboss/test/selenium/waiting/Wait.java	(revision 16033) 
+++ src/main/java/org/jboss/test/selenium/waiting/Wait.java	(revision 16037) 
@@ -373,8 +373,28 @@ 
 	 } 
  
 	 /** 
-	 * Stars loop waiting to satisfy condition. 
+	 * <p>Stars loop waiting to satisfy condition.</p> 
 	 * 
+	 * <p>The condition will be tested</p> 
+	 * 
+	 * <ul> 
+	 * <li>on the start,</li> 
+	 * <li>every time interval after last try</li> 
+	 * <li>and also once after timeout when finishes interval since last try before timeout.</li> 
+	 * </ul> 
+	 * 
+	 * <p>Scheme:</p> 
+	 * 
+	 * <p><pre>S ..int.. T ..int.. T ..int1..timeout..int2.. L</pre></p> 
+	 * 
+	 * <p> 
+	 * <div>S - starting try</div> 
+	 * <div>T - try within intervals</div> 
+	 * <div>L - last try after timeout</div> 
+	 * <div>int - one interval</div> 
+	 * <div>int = int1 + int2</div> 
+	 * </p> 
+	 * 
 	 * @param condition 
 	 * what wait for to be satisfied 
 	 */ 
@@ -382,13 +402,17 @@ 
 	 long start = System.currentTimeMillis(); 
 	 long end = start + timeout; 
 	 while (System.currentTimeMillis() < end) { 
+	 if (condition.isTrue()) 
+	 return; 
 	 try { 
 	 Thread.sleep(interval); 
 	 } catch (InterruptedException e) { 
 	 throw new RuntimeException(e); 
 	 } 
-	 if (condition.isTrue()) 
-	 return; 
+	 if (System.currentTimeMillis() >= end) { 
+	 if (condition.isTrue()) 
+	 return; 
+	 } 
 	 } 
 	 fail(); 
 	 }

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: https://jira.jboss.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        


More information about the richfaces-planning-issues mailing list