AbstractDataRetrievalHelper(
     GenomicDataSourceConfiguration genomicSource,
     DataService dataService,
     SearchService searchService,
     CaIntegrator2Dao dao,
     ArrayDataService arrayDataService) {
   this.genomicSource = genomicSource;
   this.dataService = dataService;
   this.searchService = searchService;
   this.dao = dao;
   this.arrayDataService = arrayDataService;
   this.centralTendencyCalculator =
       new CentralTendencyCalculator(
           genomicSource.getTechnicalReplicatesCentralTendency(),
           genomicSource.isUseHighVarianceCalculation(),
           genomicSource.getHighVarianceThreshold(),
           genomicSource.getHighVarianceCalculationType());
 }
  @Test
  public void testValidateForControlMapping() {
    StudyConfiguration studyConfiguration = new StudyConfiguration();
    action.setStudyConfiguration(studyConfiguration);

    action.validate();
    assertTrue(action.hasErrors());
    action.clearErrorsAndMessages();
    action.setControlSampleSetName("ControlSampleSet1");
    action.validate();
    assertTrue(action.hasErrors());
    action.clearErrorsAndMessages();
    action.setControlSampleFile(TestDataFiles.REMBRANDT_CONTROL_SAMPLES_FILE);
    action.validate();
    assertFalse(action.hasFieldErrors());
    action.clearErrorsAndMessages();
    SampleSet controlSampleSet = new SampleSet();
    controlSampleSet.setName("ControlSampleSet1");
    GenomicDataSourceConfiguration genomicSource = new GenomicDataSourceConfiguration();
    studyConfiguration.getGenomicDataSources().add(genomicSource);
    genomicSource.getControlSampleSetCollection().add(controlSampleSet);
    action.validate();
    assertTrue(action.hasFieldErrors());
  }