View Javadoc

1   package junit.extensions;
2   
3   import junit.framework.*;
4   
5   /***
6    * A Decorator that runs a test repeatedly.
7    *
8    */
9   public class RepeatedTest extends  TestDecorator {
10  	private int fTimesRepeat;
11  
12  	public RepeatedTest(Test test, int repeat) {
13  		super(test);
14  		if (repeat < 0)
15  			throw new IllegalArgumentException("Repetition count must be > 0");
16  		fTimesRepeat= repeat;
17  	}
18  	public int countTestCases() {
19  		return super.countTestCases()*fTimesRepeat;
20  	}
21  	public void run(TestResult result) {
22  		for (int i= 0; i < fTimesRepeat; i++) {
23  			if (result.shouldStop())
24  				break;
25  			super.run(result);
26  		}
27  	}
28  	public String toString() {
29  		return super.toString()+"(repeated)";
30  	}
31  }