01: /*
02: * Copyright 2005-2006 the original author or authors.
03: *
04: * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except
05: * in compliance with the License. You may obtain a copy of the License at
06: *
07: * http://www.apache.org/licenses/LICENSE-2.0
08: *
09: * Unless required by applicable law or agreed to in writing, software distributed under the License
10: * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
11: * or implied. See the License for the specific language governing permissions and limitations under
12: * the License.
13: */
14:
15: package org.strecks.form.controller;
16:
17: import org.apache.struts.action.ActionErrors;
18: import org.apache.struts.action.ActionMessage;
19: import org.strecks.form.impl.ObjectValidatorForm;
20: import org.strecks.validator.internal.ValidationAnnotationReader;
21: import org.testng.annotations.Configuration;
22: import org.testng.annotations.Test;
23:
24: /**
25: * @author Phil Zoio
26: */
27: public class TestObjectValidator {
28:
29: private ObjectValidatorForm form;
30: private DelegatingForm delegator;
31:
32: @Configuration(beforeTestMethod=true)
33: public void setUp() {
34: form = new ObjectValidatorForm();
35: delegator = FormTestUtils.getDelegatingForm(form);
36: }
37:
38: @Test
39: public void testNullIntegerValidation() {
40: ActionErrors errors = delegator.validate(null, null);
41: ActionMessage element = (ActionMessage) errors.get(
42: "requiredInteger").next();
43: assert element != null;
44: }
45:
46: @Test
47: public void testFormValidation() {
48: form.setRequiredInteger(1);
49: assert null == delegator.validate(null, null);
50: }
51:
52: //@Test(expectedExceptions=ApplicationConfigurationException.class)
53: public void testBadlyTypedValidator() {
54: ValidationAnnotationReader reader = new ValidationAnnotationReader();
55: reader.readValidationHandlers(new BadlyTypedValidatorForm(),
56: null);
57: }
58:
59: }
|