protected List<JobDefinition> addDependenciesForSeeding(List<JobDefinition> jobs){
  List<JobDefinition> list=new ArrayList<JobDefinition>(jobs.size());
  for (int i=0; i < jobs.size(); i++) {
    JobDefinition job=jobs.get(i);
    Set<String> inputs=calculateInputClasses(job);
    Set<String> parents=calculateAncestors(job);
    list.add(job.getByAddingDependencies(inputs,parents));
  }
  return list;
}

protected List < JobDefinition > addDependenciesForSeeding ( List < JobDefinition > jobs ) { List < JobDefinition > list = new ArrayList < JobDefinition > ( jobs . size ( ) ) ; for ( int i = 0 ; i < jobs . size ( ) ; i ++ ) { JobDefinition job = jobs . get ( i ) ; Set < String > inputs = calculateInputClasses ( job ) ; Set < String > parents = calculateAncestors ( job ) ; list . add ( job . getByAddingDependencies ( inputs , parents ) ) ; } return list ; }
for each input job , identify all the others jobs we want to generate test cases first . the scheduler will use this information to first try to generate the test cases for the " dependency " jobs . < p > there can be different strategies to define a dependency : - ancestor , non - interface classes - classes used as input objects - subtypes of classes used as input objects
