1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 package edu.samplu.travel.krad.test;
17
18 import edu.samplu.common.Failable;
19 import edu.samplu.common.ITUtil;
20 import edu.samplu.common.WebDriverLegacyITBase;
21
22
23
24
25
26
27 public abstract class UIFComponentValidationRegexPatternAbstractSmokeTestBase extends WebDriverLegacyITBase {
28
29
30
31
32 public static final String BOOKMARK_URL = "/kr-krad/uicomponents?viewId=UifCompView_KNS&methodToCall=start&readOnlyFields=field91";
33
34
35 protected void bookmark() {
36 open(ITUtil.getBaseUrlString() + BOOKMARK_URL);
37 }
38
39
40
41
42
43
44 @Override
45 public String getTestUrl() {
46 return ITUtil.PORTAL;
47 }
48
49
50 protected void navigation() throws InterruptedException {
51 waitAndClickKRAD();
52 waitAndClickByXpath(KITCHEN_SINK_XPATH);
53 switchToWindow(KUALI_UIF_COMPONENTS_WINDOW_XPATH);
54 }
55
56 protected void testValidCharacterConstraintNav(Failable failable) throws Exception {
57 navigation();
58 testValidCharacterConstraint();
59 passed();
60 }
61
62 protected void testValidCharacterConstraintBookmark(Failable failable) throws Exception {
63 testValidCharacterConstraint();
64 passed();
65 }
66
67 protected void testValidCharacterConstraint() throws Exception {
68 waitAndClickByXpath("//a[contains(text(),'Validation - Regex')]");
69
70
71 waitAndTypeByName("field50", "123.123");
72 fireEvent("field50", "blur");
73 validateErrorImage(true);
74 clearTextByName("field50");
75 waitAndTypeByXpath("//input[@name='field50']", "1234.4");
76 fireEvent("field50", "blur");
77 validateErrorImage(true);
78 clearTextByName("field50");
79 waitAndTypeByXpath("//input[@name='field50']", "1234.434");
80 fireEvent("field50", "blur");
81 validateErrorImage(true);
82 clearTextByName("field50");
83 waitAndTypeByXpath("//input[@name='field50']", "123.67");
84 fireEvent("field50", "blur");
85 validateErrorImage(false);
86 clearTextByName("field50");
87
88
89 waitAndTypeByXpath("//input[@name='field51']", "127.");
90 fireEvent("field51", "blur");
91 validateErrorImage(true);
92 clearTextByName("field51");
93 waitAndTypeByXpath("//input[@name='field51']", "1234()98");
94 fireEvent("field51", "blur");
95 validateErrorImage(true);
96 clearTextByName("field51");
97 waitAndTypeByXpath("//input[@name='field51']", "-123.67");
98 fireEvent("field51", "blur");
99 validateErrorImage(false);
100 clearTextByName("field51");
101
102
103 waitAndTypeByXpath("//input[@name='field77']", "127.");
104 fireEvent("field77", "blur");
105 validateErrorImage(true);
106 clearTextByName("field77");
107 waitAndTypeByXpath("//input[@name='field77']", "1234.4123");
108 fireEvent("field77", "blur");
109 validateErrorImage(true);
110 clearTextByName("field77");
111 waitAndTypeByXpath("//input[@name='field77']", "123E123");
112 fireEvent("field77", "blur");
113 validateErrorImage(true);
114 clearTextByName("field77");
115 waitAndTypeByXpath("//input[@name='field77']", "-123");
116 fireEvent("field77", "blur");
117 validateErrorImage(false);
118 clearTextByName("field77");
119
120
121 waitAndTypeByXpath("//input[@name='field52']", "1271231234");
122 fireEvent("field52", "blur");
123 validateErrorImage(true);
124 clearTextByName("field52");
125 waitAndTypeByXpath("//input[@name='field52']", "123-123-123");
126 fireEvent("field52", "blur");
127 validateErrorImage(true);
128 clearTextByName("field52");
129 waitAndTypeByXpath("//input[@name='field52']", "12-12-123445");
130 fireEvent("field52", "blur");
131 validateErrorImage(true);
132 clearTextByName("field52");
133 waitAndTypeByXpath("//input[@name='field52']", "1234-12-1234");
134 fireEvent("field52", "blur");
135 validateErrorImage(true);
136 clearTextByName("field52");
137 waitAndTypeByXpath("//input[@name='field52']", "123.123.1234");
138 fireEvent("field52", "blur");
139 validateErrorImage(true);
140 clearTextByName("field52");
141 waitAndTypeByXpath("//input[@name='field52']", "123-123-12345");
142 fireEvent("field52", "blur");
143 validateErrorImage(true);
144 clearTextByName("field52");
145 waitAndTypeByXpath("//input[@name='field52']", "123-123-1234");
146 fireEvent("field52", "blur");
147 validateErrorImage(false);
148 clearTextByName("field52");
149
150
151 waitAndTypeByXpath("//input[@name='field53']", "127");
152 fireEvent("field53", "blur");
153 validateErrorImage(true);
154 clearTextByName("field53");
155 waitAndTypeByXpath("//input[@name='field53']", "TestJava!@#Class");
156 fireEvent("field53", "blur");
157 validateErrorImage(true);
158 clearTextByName("field53");
159 waitAndTypeByXpath("//input[@name='field53']", "Test JavaClass");
160 fireEvent("field53", "blur");
161 validateErrorImage(true);
162 clearTextByName("field53");
163 waitAndTypeByXpath("//input[@name='field53']", "Test JavaClass");
164 fireEvent("field53", "blur");
165 validateErrorImage(true);
166 clearTextByName("field53");
167 waitAndTypeByXpath("//input[@name='field53']", "TestJavaClass");
168 fireEvent("field53", "blur");
169 validateErrorImage(false);
170 clearTextByName("field53");
171
172
173 waitAndTypeByXpath("//input[@name='field54']", "123@123.123");
174 fireEvent("field54", "blur");
175 validateErrorImage(true);
176 clearTextByName("field54");
177 waitAndTypeByXpath("//input[@name='field54']", "email.com@emailServer");
178 fireEvent("field54", "blur");
179 validateErrorImage(true);
180 clearTextByName("field54");
181 waitAndTypeByXpath("//input[@name='field54']", "emailemailServer@.com");
182 fireEvent("field54", "blur");
183 validateErrorImage(true);
184 clearTextByName("field54");
185 waitAndTypeByXpath("//input[@name='field54']", "email@emailServercom");
186 fireEvent("field54", "blur");
187 validateErrorImage(true);
188 clearTextByName("field54");
189 waitAndTypeByXpath("//input[@name='field54']", "email@emailServer.com");
190 fireEvent("field54", "blur");
191 validateErrorImage(false);
192 clearTextByName("field54");
193
194
195 waitAndTypeByXpath("//input[@name='field84']", "www.google.com");
196 fireEvent("field84", "blur");
197 validateErrorImage(true);
198 clearTextByName("field84");
199 waitAndTypeByXpath("//input[@name='field84']", "https:www.google.com");
200 fireEvent("field84", "blur");
201 validateErrorImage(true);
202 clearTextByName("field84");
203 waitAndTypeByXpath("//input[@name='field84']", "ftp://www.google.comsdfa123!#@");
204 fireEvent("field84", "blur");
205 validateErrorImage(true);
206 clearTextByName("field84");
207 waitAndTypeByXpath("//input[@name='field84']", "ftp:/www.google.coms");
208 fireEvent("field84", "blur");
209 validateErrorImage(true);
210 clearTextByName("field84");
211 waitAndTypeByXpath("//input[@name='field84']", "ftp://www.google.com");
212 fireEvent("field84", "blur");
213 validateErrorImage(false);
214 clearTextByName("field84");
215 waitAndTypeByXpath("//input[@name='field84']", "https://www.google.com");
216 fireEvent("field84", "blur");
217 validateErrorImage(false);
218 clearTextByName("field84");
219 waitAndTypeByXpath("//input[@name='field84']", "http://www.google.com");
220 fireEvent("field84", "blur");
221 validateErrorImage(false);
222 clearTextByName("field84");
223
224
225
226 waitAndTypeByXpath("//input[@name='field55']", "12/12/2112 12:12:87 am");
227 fireEvent("field55", "blur");
228 validateErrorImage(true);
229 clearTextByName("field55");
230 waitAndTypeByXpath("//input[@name='field55']", "12-12-2112 12:12 am");
231 fireEvent("field55", "blur");
232 validateErrorImage(true);
233 clearTextByName("field55");
234 waitAndTypeByXpath("//input[@name='field55']", "12-12-2112 12:12");
235 fireEvent("field55", "blur");
236 validateErrorImage(true);
237 clearTextByName("field55");
238 waitAndTypeByXpath("//input[@name='field55']", "12/12/2112 12:12");
239 fireEvent("field55", "blur");
240 validateErrorImage(true);
241 clearTextByName("field55");
242 waitAndTypeByXpath("//input[@name='field55']", "12-12-2112 12:12:78");
243 fireEvent("field55", "blur");
244 validateErrorImage(true);
245 clearTextByName("field55");
246 waitAndTypeByXpath("//input[@name='field55']", "12 Sept");
247 fireEvent("field55", "blur");
248 validateErrorImage(true);
249 clearTextByName("field55");
250 waitAndTypeByXpath("//input[@name='field55']", "Sept 12 12:12");
251 fireEvent("field55", "blur");
252 validateErrorImage(true);
253 clearTextByName("field55");
254 waitAndTypeByXpath("//input[@name='field55']", "221299 12:12:13");
255 fireEvent("field55", "blur");
256 validateErrorImage(true);
257 clearTextByName("field55");
258 waitAndTypeByXpath("//input[@name='field55']", "111222 12:12");
259 fireEvent("field55", "blur");
260 validateErrorImage(true);
261 clearTextByName("field55");
262 waitAndTypeByXpath("//input[@name='field55']", "9/9/2012 12:12 am");
263 fireEvent("field55", "blur");
264 validateErrorImage(true);
265 clearTextByName("field55");
266
267
268 waitAndTypeByXpath("//input[@name='field55']", "09/09/2012 12:12 pm");
269 fireEvent("field55", "blur");
270 validateErrorImage(false);
271 clearTextByName("field55");
272 waitAndTypeByXpath("//input[@name='field55']", "090923");
273 fireEvent("field55", "blur");
274 validateErrorImage(false);
275 clearTextByName("field55");
276 waitAndTypeByXpath("//input[@name='field55']", "Sept 12");
277 fireEvent("field55", "blur");
278 validateErrorImage(false);
279 clearTextByName("field55");
280 waitAndTypeByXpath("//input[@name='field55']", "2034");
281 fireEvent("field55", "blur");
282 validateErrorImage(false);
283 clearTextByName("field55");
284 waitAndTypeByXpath("//input[@name='field55']", "12/12/2012 23:12:59");
285 fireEvent("field55", "blur");
286 validateErrorImage(false);
287 clearTextByName("field55");
288 waitAndTypeByXpath("//input[@name='field55']", "12-12-12 23:12:59");
289 fireEvent("field55", "blur");
290 validateErrorImage(false);
291 clearTextByName("field55");
292 waitAndTypeByXpath("//input[@name='field55']", "121212 23:12:32");
293 fireEvent("field55", "blur");
294 validateErrorImage(false);
295 clearTextByName("field55");
296 waitAndTypeByXpath("//input[@name='field55']", "Sept 12 23:45:50");
297 fireEvent("field55", "blur");
298 validateErrorImage(false);
299 clearTextByName("field55");
300 waitAndTypeByXpath("//input[@name='field55']", "2011 12:23:32");
301 fireEvent("field55", "blur");
302 validateErrorImage(false);
303 clearTextByName("field55");
304
305
306 waitAndTypeByXpath("//input[@name='field75']", "12122012");
307 fireEvent("field75", "blur");
308 validateErrorImage(true);
309 clearTextByName("field75");
310 waitAndTypeByXpath("//input[@name='field75']", "13-12-34");
311 fireEvent("field75", "blur");
312 validateErrorImage(true);
313 clearTextByName("field75");
314 waitAndTypeByXpath("//input[@name='field75']", "12:12:2034");
315 fireEvent("field75", "blur");
316 validateErrorImage(true);
317 clearTextByName("field75");
318 waitAndTypeByXpath("//input[@name='field75']", "12-12-2034");
319 fireEvent("field75", "blur");
320 validateErrorImage(false);
321 clearTextByName("field75");
322
323
324 waitAndTypeByXpath("//input[@name='field82']", "13:00:12");
325 fireEvent("field82", "blur");
326 validateErrorImage(true);
327 clearTextByName("field82");
328 waitAndTypeByXpath("//input[@name='field82']", "09:00:");
329 fireEvent("field82", "blur");
330 validateErrorImage(true);
331 clearTextByName("field82");
332 waitAndTypeByXpath("//input[@name='field82']", "3-00:12");
333 fireEvent("field82", "blur");
334 validateErrorImage(true);
335 clearTextByName("field82");
336 waitAndTypeByXpath("//input[@name='field82']", "3:00:34");
337 fireEvent("field82", "blur");
338 validateErrorImage(false);
339 clearTextByName("field82");
340 waitAndTypeByXpath("//input[@name='field82']", "3:00");
341 fireEvent("field82", "blur");
342 validateErrorImage(false);
343 clearTextByName("field82");
344
345
346 waitAndTypeByXpath("//input[@name='field83']", "24:00:12");
347 fireEvent("field83", "blur");
348 validateErrorImage(true);
349 clearTextByName("field83");
350 waitAndTypeByXpath("//input[@name='field83']", "14:00:");
351 fireEvent("field83", "blur");
352 validateErrorImage(true);
353 clearTextByName("field83");
354 waitAndTypeByXpath("//input[@name='field83']", "13:00:76");
355 fireEvent("field83", "blur");
356 validateErrorImage(true);
357 clearTextByName("field83");
358 waitAndTypeByXpath("//input[@name='field83']", "13:00:23");
359 fireEvent("field83", "blur");
360 validateErrorImage(false);
361 clearTextByName("field83");
362 waitAndTypeByXpath("//input[@name='field83']", "23:00:12");
363 fireEvent("field83", "blur");
364 validateErrorImage(false);
365 clearTextByName("field83");
366
367
368 waitAndTypeByXpath("//input[@name='field56']", "1000-12-12 12:12:12.103");
369 fireEvent("field56", "blur");
370 validateErrorImage(true);
371 clearTextByName("field56");
372 waitAndTypeByXpath("//input[@name='field56']", "2000/12/12 12-12-12.87");
373 fireEvent("field56", "blur");
374 validateErrorImage(true);
375 clearTextByName("field56");
376 waitAndTypeByXpath("//input[@name='field56']", "2000/12/12 12-12-12.87");
377 fireEvent("field56", "blur");
378 validateErrorImage(true);
379 clearTextByName("field56");
380 waitAndTypeByXpath("//input[@name='field56']", "2011-08-12 12:12:12");
381 fireEvent("field56", "blur");
382 validateErrorImage(true);
383 clearTextByName("field56");
384
385
386
387
388
389
390
391
392
393 waitAndTypeByXpath("//input[@name='field56']", "2099-12-12 12:12:12.103");
394 fireEvent("field56", "blur");
395 validateErrorImage(false);
396 clearTextByName("field56");
397
398
399 waitAndTypeByXpath("//input[@name='field57']", "1599");
400 fireEvent("field57", "blur");
401 validateErrorImage(true);
402 clearTextByName("field57");
403 waitAndTypeByXpath("//input[@name='field57']", "2200");
404 fireEvent("field57", "blur");
405 validateErrorImage(true);
406 clearTextByName("field57");
407 waitAndTypeByXpath("//input[@name='field57']", "20000");
408 fireEvent("field57", "blur");
409 validateErrorImage(true);
410 clearTextByName("field57");
411 waitAndTypeByXpath("//input[@name='field57']", "-202");
412 fireEvent("field57", "blur");
413 validateErrorImage(true);
414 clearTextByName("field57");
415 waitAndTypeByXpath("//input[@name='field57']", "2000");
416 fireEvent("field57", "blur");
417 validateErrorImage(false);
418 clearTextByName("field57");
419
420
421 waitAndTypeByXpath("//input[@name='field58']", "0");
422 fireEvent("field58", "blur");
423 validateErrorImage(true);
424 clearTextByName("field58");
425 waitAndTypeByXpath("//input[@name='field58']", "-12");
426 fireEvent("field58", "blur");
427 validateErrorImage(true);
428 clearTextByName("field58");
429 waitAndTypeByXpath("//input[@name='field58']", "100");
430 fireEvent("field58", "blur");
431 validateErrorImage(true);
432 clearTextByName("field58");
433 waitAndTypeByXpath("//input[@name='field58']", "12");
434 fireEvent("field58", "blur");
435 validateErrorImage(false);
436 clearTextByName("field58");
437
438
439 waitAndTypeByXpath("//input[@name='field61']", "123");
440 fireEvent("field61", "blur");
441 validateErrorImage(true);
442 clearTextByName("field61");
443 waitAndTypeByXpath("//input[@name='field61']", "2341 12");
444 fireEvent("field61", "blur");
445 validateErrorImage(true);
446 clearTextByName("field61");
447 waitAndTypeByXpath("//input[@name='field61']", "0-1231");
448 fireEvent("field61", "blur");
449 validateErrorImage(true);
450 clearTextByName("field61");
451 waitAndTypeByXpath("//input[@name='field61']", "12345");
452 fireEvent("field61", "blur");
453 validateErrorImage(false);
454 clearTextByName("field61");
455
456
457 waitAndTypeByXpath("//input[@name='field62']", "123 23 @#");
458 fireEvent("field62", "blur");
459 validateErrorImage(true);
460 clearTextByName("field62");
461 waitAndTypeByXpath("//input[@name='field62']", "-asd123");
462 fireEvent("field62", "blur");
463 validateErrorImage(true);
464 clearTextByName("field62");
465 waitAndTypeByXpath("//input[@name='field62']", "asd/123");
466 fireEvent("field62", "blur");
467 validateErrorImage(true);
468 clearTextByName("field62");
469 waitAndTypeByXpath("//input[@name='field62']", "asd123");
470 fireEvent("field62", "blur");
471 validateErrorImage(false);
472 clearTextByName("field62");
473
474
475 waitAndTypeByXpath("//input[@name='field63']", "123^we");
476 fireEvent("field63", "blur");
477 validateErrorImage(true);
478 clearTextByName("field63");
479 waitAndTypeByXpath("//input[@name='field63']", "-123_asd");
480 fireEvent("field63", "blur");
481 validateErrorImage(true);
482 clearTextByName("field63");
483 waitAndTypeByXpath("//input[@name='field63']", "123 23 @#");
484 fireEvent("field63", "blur");
485 clearTextByName("field63");
486 waitAndTypeByXpath("//input[@name='field63']", "as_de 456/123");
487 fireEvent("field63", "blur");
488 validateErrorImage(false);
489 clearTextByName("field63");
490
491
492 waitAndTypeByXpath("//input[@name='field64']", "123^we");
493 fireEvent("field64", "blur");
494 validateErrorImage(true);
495 clearTextByName("field64");
496 waitAndTypeByXpath("//input[@name='field64']", "asd_pqr");
497 fireEvent("field64", "blur");
498 validateErrorImage(true);
499 clearTextByName("field64");
500 waitAndTypeByXpath("//input[@name='field64']", "asd/def");
501 fireEvent("field64", "blur");
502 validateErrorImage(true);
503 clearTextByName("field64");
504 waitAndTypeByXpath("//input[@name='field64']", "asd ,pqr");
505 fireEvent("field64", "blur");
506 validateErrorImage(false);
507 clearTextByName("field64");
508
509
510 waitAndTypeByXpath("//input[@name='field76']", "123");
511 fireEvent("field76", "blur");
512 validateErrorImage(true);
513 clearTextByName("field76");
514 waitAndTypeByXpath("//input[@name='field76']", "`abcd`");
515 fireEvent("field76", "blur");
516 validateErrorImage(true);
517 clearTextByName("field76");
518 waitAndTypeByXpath("//input[@name='field76']", "|abcd|");
519 fireEvent("field76", "blur");
520 validateErrorImage(true);
521 clearTextByName("field76");
522 waitAndTypeByXpath("//input[@name='field76']", "~abcd~");
523 fireEvent("field76", "blur");
524 validateErrorImage(true);
525 clearTextByName("field76");
526 waitAndTypeByXpath("//input[@name='field76']", " ab_c d_ef ");
527 fireEvent("field76", "blur");
528 validateErrorImage(false);
529 clearTextByName("field76");
530
531
532 waitAndTypeByXpath("//input[@name='field65']", "123 ^we");
533 fireEvent("field65", "blur");
534 validateErrorImage(true);
535 clearTextByName("field65");
536 waitAndTypeByXpath("//input[@name='field65']", "123^we!@#^&*~:");
537 fireEvent("field65", "blur");
538 validateErrorImage(false);
539 clearTextByName("field65");
540
541
542 waitAndTypeByXpath("//input[@name='field66']", "123 ^we");
543 fireEvent("field66", "blur");
544 validateErrorImage(true);
545 clearTextByName("field66");
546 waitAndTypeByXpath("//input[@name='field66']", "123_^we");
547 fireEvent("field66", "blur");
548 validateErrorImage(true);
549 clearTextByName("field66");
550 waitAndTypeByXpath("//input[@name='field66']", "abc ABC");
551 fireEvent("field66", "blur");
552 validateErrorImage(true);
553 clearTextByName("field66");
554 waitAndTypeByXpath("//input[@name='field66']", "aAbBcC");
555 fireEvent("field66", "blur");
556 validateErrorImage(false);
557 clearTextByName("field66");
558
559
560 waitAndTypeByXpath("//input[@name='field67']", "123 ^we");
561 fireEvent("field67", "blur");
562 validateErrorImage(true);
563 clearTextByName("field67");
564 waitAndTypeByXpath("//input[@name='field67']", "123/10");
565 fireEvent("field67", "blur");
566 validateErrorImage(true);
567 clearTextByName("field67");
568 waitAndTypeByXpath("//input[@name='field67']", "(123.00)");
569 fireEvent("field67", "blur");
570 validateErrorImage(true);
571 clearTextByName("field67");
572 waitAndTypeByXpath("//input[@name='field67']", "(12-3)");
573 fireEvent("field67", "blur");
574 validateErrorImage(false);
575 clearTextByName("field67");
576
577
578 waitAndTypeByXpath("//input[@name='field68']", "123.123");
579 fireEvent("field68", "blur");
580 validateErrorImage(true);
581 clearTextByName("field68");
582 waitAndTypeByXpath("//input[@name='field68']", "a.b");
583 fireEvent("field68", "blur");
584 validateErrorImage(true);
585 clearTextByName("field68");
586 waitAndTypeByXpath("//input[@name='field68']", "123 qwe");
587 fireEvent("field68", "blur");
588 validateErrorImage(true);
589 clearTextByName("field68");
590 waitAndTypeByXpath("//input[@name='field68']", "5.a");
591 fireEvent("field68", "blur");
592 validateErrorImage(true);
593 clearTextByName("field68");
594 waitAndTypeByXpath("//input[@name='field68']", "a.0,b.4");
595 fireEvent("field68", "blur");
596 validateErrorImage(true);
597 clearTextByName("field68");
598 waitAndTypeByXpath("//input[@name='field68']", "a.0");
599 fireEvent("field68", "blur");
600 validateErrorImage(false);
601 clearTextByName("field68");
602 passed();
603 }
604
605
606 }