• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 package autotest.tko;
2 
3 import autotest.common.Utils;
4 
5 import com.google.gwt.json.client.JSONObject;
6 
7 import java.util.ArrayList;
8 import java.util.List;
9 
10 class CompositeTestSet extends TestSet {
11     private List<TestSet> testSets = new ArrayList<TestSet>();
12 
add(TestSet tests)13     public void add(TestSet tests) {
14         testSets.add(tests);
15     }
16 
17     @Override
getInitialCondition()18     public JSONObject getInitialCondition() {
19         // we assume the initial condition is the same for all tests
20         assert !testSets.isEmpty();
21         return testSets.get(0).getInitialCondition();
22     }
23 
24     @Override
getPartialSqlCondition()25     public String getPartialSqlCondition() {
26         List<String> conditionParts = new ArrayList<String>();
27         for(TestSet testSet : testSets) {
28             conditionParts.add("(" + testSet.getPartialSqlCondition() + ")");
29         }
30         return Utils.joinStrings(" OR ", conditionParts);
31     }
32 
33     @Override
isSingleTest()34     public boolean isSingleTest() {
35         return testSets.size() == 1 && testSets.get(0).isSingleTest();
36     }
37 
38     @Override
getTestIndex()39     public int getTestIndex() {
40         if (!isSingleTest()) {
41             throw new UnsupportedOperationException();
42         }
43         return testSets.get(0).getTestIndex();
44     }
45 }
46