1 package org.onap.aai.sparky;
8 import com.openpojo.reflection.PojoClass;
9 import com.openpojo.reflection.filters.FilterChain;
10 import com.openpojo.reflection.impl.PojoClassFactory;
11 import com.openpojo.validation.Validator;
12 import com.openpojo.validation.ValidatorBuilder;
13 import com.openpojo.validation.rule.impl.GetterMustExistRule;
14 import com.openpojo.validation.rule.impl.SetterMustExistRule;
15 import com.openpojo.validation.test.impl.GetterTester;
16 import com.openpojo.validation.test.impl.SetterTester;
18 public class SparkyPojoTest {
19 //The package to be tested
20 private String packageName = "org.onap.aai.sparky";
21 private List<PojoClass> pojoClasses;
24 public void validateAnalytics() {
26 String packageName = "org.onap.aai.sparky.analytics";
27 List<PojoClass> analyticsPojoClasses;
29 FilterChain filterChainByClassNameForAnalytics = new FilterChain(new FilterByContainsClassName("AveragingRingBuffer"),
30 new FilterByContainsClassName("AbstractStatistics"), new FilterByContainsClassName("HistogramSampler"),
31 new FilterByContainsClassName("Test"));
32 analyticsPojoClasses = PojoClassFactory.getPojoClassesRecursively(packageName,filterChainByClassNameForAnalytics);
33 validateAll(analyticsPojoClasses);
38 public void validateAAIConfig() {
40 String packageName = "org.onap.aai.sparky.dal.aai.config";
41 List<PojoClass> aaiConfigPojoClasses;
42 // activeinventory config mught come back
43 FilterChain filterChainByClassNameForConfig = new FilterChain(new FilterByContainsClassName("ActiveInventoryConfig"),
44 new FilterByContainsClassName("Test"));
45 aaiConfigPojoClasses = PojoClassFactory.getPojoClassesRecursively(packageName,filterChainByClassNameForConfig);
46 validateAll(aaiConfigPojoClasses);
54 public void validateElasticSearch(){
56 String packageName = "org.onap.aai.sparky.dal.elasticsearch";
57 List<PojoClass> elasticSearchPojoClasses;
59 FilterChain filterChainByClassNameForElasticSearch = new FilterChain(new FilterByContainsClassName("ElasticSearchEntityStatistics"),
60 new FilterByContainsClassName("Test"));
61 elasticSearchPojoClasses = PojoClassFactory.getPojoClassesRecursively(packageName,filterChainByClassNameForElasticSearch);
62 validateAll(elasticSearchPojoClasses);
69 public void validateElasticSearchEntity(){
71 String packageName = "org.onap.aai.sparky.dal.elasticsearch.entity";
72 List<PojoClass> elasticSearchConfigPojoClasses;
74 //FilterChain filterChainByClassNameForElasticSearchConfig = new FilterChain(new FilterByContainsClassName("ElasticSearchEntityStatistics"),
75 // new FilterByContainsClassName("Test"));
76 elasticSearchConfigPojoClasses = PojoClassFactory.getPojoClassesRecursively(packageName,null);
77 validateAll(elasticSearchConfigPojoClasses);
83 public void validateRest(){
85 String packageName = "org.onap.aai.sparky.dal.rest";
86 List<PojoClass> restPojoClasses;
88 FilterChain filterChainByClassNameForRest = new FilterChain(new FilterByContainsClassName("RestfulDataAccessor"),
89 new FilterByContainsClassName("Test"),new FilterByContainsClassName("RestOperationalStatistics"),
90 new FilterByContainsClassName("RestClientBuilder"));
91 restPojoClasses = PojoClassFactory.getPojoClassesRecursively(packageName,filterChainByClassNameForRest);
92 validateAll(restPojoClasses);
97 public void validateSASEntity(){
99 String packageName = "org.onap.aai.sparky.dal.sas.entity";
100 List<PojoClass> sasEntityPojoClasses;
102 sasEntityPojoClasses = PojoClassFactory.getPojoClassesRecursively(packageName,null);
103 validateAll(sasEntityPojoClasses);
109 public void validateSecurity(){
111 String packageName = "org.onap.aai.sparky.security";
112 List<PojoClass> securityPojoClasses;
114 FilterChain filterChainByClassNameForSecurity = new FilterChain(new FilterByContainsClassName("SecurityContextFactoryImpl"),
115 new FilterByContainsClassName("Test"), new FilterByContainsClassName("UserManager"),
116 new FilterByContainsClassName("RolesConfig"),new FilterByContainsClassName("PortalAuthenticationConfig"));
117 securityPojoClasses = PojoClassFactory.getPojoClassesRecursively(packageName,filterChainByClassNameForSecurity);
118 validateAll(securityPojoClasses);
123 public void validateSecurityPortal(){
125 String packageName = "org.onap.aai.sparky.security.portal";
126 List<PojoClass> securityPortalPojoClasses;
128 FilterChain filterChainByClassNameForSecurityPortal = new FilterChain(new FilterByContainsClassName("Test"),
129 new FilterByContainsClassName("UserManager"),new FilterByContainsClassName("RolesConfig"),
130 new FilterByContainsClassName("PortalAuthenticationConfig"));
131 securityPortalPojoClasses = PojoClassFactory.getPojoClassesRecursively(packageName,filterChainByClassNameForSecurityPortal);
132 validateAll(securityPortalPojoClasses);
137 public void validateSynchronizer(){
139 String packageName = "org.onap.aai.sparky.synchronizer";
140 List<PojoClass> synchronizerPojoClasses;
142 FilterChain filterChainByClassNameForSynchronizer = new FilterChain(new FilterByContainsClassName("Test"),
143 new FilterByContainsClassName("AggregationSynchronizer"),new FilterByContainsClassName("SearchableEntitySynchronizer"),
144 new FilterByContainsClassName("AutosuggestionSynchronizer"),new FilterByContainsClassName("CrossEntityReferenceSynchronizer"),
145 new FilterByContainsClassName("SyncController"),new FilterByContainsClassName("SyncHelper"),
146 new FilterByContainsClassName("TransactionRateController"),new FilterByContainsClassName("AggregationSuggestionSynchronizer"),
147 new FilterByContainsClassName("AbstractEntitySynchronizer"));
148 synchronizerPojoClasses = PojoClassFactory.getPojoClassesRecursively(packageName,filterChainByClassNameForSynchronizer);
149 validateAll(synchronizerPojoClasses);
153 public void validateUtil(){
155 String packageName = "org.onap.aai.sparky.util";
156 List<PojoClass> utilPojoClasses;
158 FilterChain filterChainByClassNameForUtil = new FilterChain(new FilterByContainsClassName("KeystoreBuilder"),
159 new FilterByContainsClassName("Test"),new FilterByContainsClassName("HttpServletHelper"),new FilterByContainsClassName("NodeUtils"),
160 new FilterByContainsClassName("CaptureLoggerAppender"),new FilterByContainsClassName("ElasticEntitySummarizer"),
161 new FilterByContainsClassName("ElasticGarbageInjector"),new FilterByContainsClassName("SuggestionsPermutation"),
162 new FilterByContainsClassName("savingTrustManager"));
163 utilPojoClasses = PojoClassFactory.getPojoClassesRecursively(packageName,filterChainByClassNameForUtil);
164 validateAll(utilPojoClasses);
168 public void validateViewAndInspect(){
170 String packageName = "org.onap.aai.sparky.viewandinspect";
171 List<PojoClass> viewAndInspectPojoClasses;
173 FilterChain filterChainByClassNameForViewAndInspect = new FilterChain(new FilterByContainsClassName("Test"),
174 new FilterByContainsClassName("PerformSelfLinkDetermination"),new FilterByContainsClassName("PerformNodeSelfLinkProcessingTask"),
175 new FilterByContainsClassName("ActiveInventoryNode"),new FilterByContainsClassName("NodeProcessingTransaction"),
176 new FilterByContainsClassName("VisualizationServlet"),new FilterByContainsClassName("VisualizationService"),
177 new FilterByContainsClassName("VisualizationContext"));
178 viewAndInspectPojoClasses = PojoClassFactory.getPojoClassesRecursively(packageName,filterChainByClassNameForViewAndInspect);
179 validateAll(viewAndInspectPojoClasses);
182 public void validateAll(List<PojoClass> pojoClasses){
184 Validator validator = ValidatorBuilder.create()
185 .with(new SetterMustExistRule(),
186 new GetterMustExistRule())
187 .with(new SetterTester(),
190 validator.validate(pojoClasses);