• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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 
RepeatedTest(Test test, int repeat)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 	}
countTestCases()18 	public int countTestCases() {
19 		return super.countTestCases()*fTimesRepeat;
20 	}
run(TestResult result)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 	}
toString()28 	public String toString() {
29 		return super.toString()+"(repeated)";
30 	}
31 }
32