Clover Coverage Report - KS Contract Documentation Generator 0.0.1-SNAPSHOT
Coverage timestamp: Wed Dec 31 1969 19:00:00 EST
../../../../../../img/srcFileCovDistChart0.png 0% of files have more coverage
20   74   11   5
14   47   0.55   4
4     2.75  
1    
 
  SearchCriteriaValidator       Line # 28 20 0% 11 38 0% 0.0
 
No Tests
 
1    /*
2    * Copyright 2009 The Kuali Foundation
3    *
4    * Licensed under the Educational Community License, Version 2.0 (the "License");
5    * you may not use this file except in compliance with the License.
6    * You may obtain a copy of the License at
7    *
8    * http://www.osedu.org/licenses/ECL-2.0
9    *
10    * Unless required by applicable law or agreed to in writing, software
11    * distributed under the License is distributed on an "AS IS" BASIS,
12    * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13    * See the License for the specific language governing permissions and
14    * limitations under the License.
15    */
16    package org.kuali.student.contract.model.validation;
17   
18    import org.kuali.student.contract.model.SearchCriteria;
19    import org.kuali.student.contract.model.SearchType;
20   
21    import java.util.ArrayList;
22    import java.util.Collection;
23   
24    /**
25    * This validates a single criteriainoary entry
26    * @author nwright
27    */
 
28    public class SearchCriteriaValidator implements ModelValidator {
29   
30    private SearchCriteria criteria;
31    private SearchType searchType;
32   
 
33  0 toggle public SearchCriteriaValidator(SearchCriteria criteria, SearchType searchType) {
34  0 this.criteria = criteria;
35  0 this.searchType = searchType;
36    }
37    private Collection errors;
38   
 
39  0 toggle @Override
40    public Collection<String> validate() {
41  0 errors = new ArrayList();
42  0 basicValidation();
43  0 if (criteria.getParameters() == null) {
44  0 addError("A parameter list is required even if no parameters");
45    }
46  0 return errors;
47    }
48   
 
49  0 toggle private void basicValidation() {
50  0 if (criteria.getKey().equals("")) {
51  0 addError("criteria key is required");
52    }
53  0 if (!criteria.getType().equals("Criteria")) {
54  0 addError("'Type' column in the criteria must be 'Criteria'");
55    }
56  0 if (criteria.getName().equals("")) {
57  0 addError("Name is required");
58    }
59  0 if (criteria.getDescription().equals("")) {
60  0 addError("Description is required");
61    }
62  0 if (!criteria.getDataType().equals("")) {
63  0 addError("Data Type should be blank");
64    }
65    }
66   
 
67  0 toggle private void addError(String msg) {
68  0 String error = "Error in criteria entry: " + searchType.getKey() + "." + criteria.getKey()
69    + ": " + msg;
70  0 if (!errors.contains(error)) {
71  0 errors.add(error);
72    }
73    }
74    }