Java tutorial
/* * Copyright (c) 2007 NTT DATA Corporation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package jp.terasoluna.fw.validation.springmodules; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertNull; import static org.junit.Assert.assertSame; import java.util.ArrayList; import java.util.List; import org.apache.commons.validator.Validator; import org.apache.commons.validator.ValidatorResources; import org.junit.Test; import org.springframework.test.util.ReflectionTestUtils; import org.springframework.validation.Errors; /** * {@link jp.terasoluna.fw.validation.springmodules.DefaultValidatorFactoryEx} ? * <p> * <h4>???</h4> FieldChecks????? Spring?Errors???? * <p> * @see jp.terasoluna.fw.validation.springmodules.DefaultValidatorFactoryEx */ public class DefaultValidatorFactoryExTest { /** * testGetValidator01() <br> * <br> * () <br> * C, D <br> * <br> * () beanName:null<br> * () bean:null<br> * () errors:null<br> * <br> * () Validator:Validator<br> * validator.getParameterValue("jp.terasoluna.fw.validation.ValidationErrors")=<br> * SpringValidatorErrors.getErrors()null<br> * validator.getParameterValue("java.lang.Object")=null<br> * validator.getFormName()=null<br> * <br> * ?null?? <br> * @throws Exception ????? */ @Test public void testGetValidator01() throws Exception { // ?? // beanName : null String beanName = null; // bean : null Object bean = null; // errors : null Errors errors = null; DefaultValidatorFactoryEx factory = new DefaultValidatorFactoryEx(); // DefaultValidatorFactory?validatorResources? ValidatorResources resources = new ValidatorResources(); ReflectionTestUtils.setField(factory, "validatorResources", resources); Validator validator = null; // validator = factory.getValidator(beanName, bean, errors); // // errors : null SpringValidationErrors resultErorrs = (SpringValidationErrors) validator .getParameterValue("jp.terasoluna.fw.validation.ValidationErrors"); assertNull(resultErorrs.getErrors()); // bean : null assertNull(validator.getParameterValue("java.lang.Object")); // beanName : null assertNull(validator.getFormName()); } /** * testGetValidator02() <br> * <br> * () <br> * C, D <br> * <br> * () beanName:""<br> * () bean:String("bean")<br> * () errors:?Errors<br> * <br> * () Validator:Validator<br> * validator.getParameterValue ("jp.terasoluna.fw.validation.ValidationErrors")=<br> * SpringValidatorErrors.getErrors()?Errors<br> * validator.getParameterValue("java.lang.Object")=String("bean")<br> * validator.getFormName()=""<br> * <br> * beanName????bean?not null???errors??Errors?? <br> * @throws Exception ????? */ @Test public void testGetValidator02() throws Exception { // ?? // beanName : "" String beanName = ""; // bean : String("bean") Object bean = "bean"; // errors : ?Errors Errors errors = new ErrorsImpl01(); DefaultValidatorFactoryEx factory = new DefaultValidatorFactoryEx(); // DefaultValidatorFactory?validatorResources? ValidatorResources resources = new ValidatorResources(); ReflectionTestUtils.setField(factory, "validatorResources", resources); Validator validator = null; // validator = factory.getValidator(beanName, bean, errors); // // errors : ?? SpringValidationErrors resultErorrs = (SpringValidationErrors) validator .getParameterValue("jp.terasoluna.fw.validation.ValidationErrors"); assertSame(errors, resultErorrs.getErrors()); // bean : new String("bean") assertSame(bean, validator.getParameterValue("java.lang.Object")); // beanName : "" assertEquals(beanName, validator.getFormName()); } /** * testGetValidator03() <br> * <br> * () <br> * C, D <br> * <br> * () beanName:"beanName"<br> * () bean:String("bean")<br> * () errors:?1?Errors<br> * {Object[0]=new Object}<br> * <br> * () Validator:Validator<br> * validator.getParameterValue ("jp.terasoluna.fw.validation.ValidationErrors")=<br> * SpringValidatorErrors.getErrors()<br> * ?1?Errors{Object[0]=new Object}<br> * validator.getParameterValue("java.lang.Object")=String("bean")<br> * validator.getFormName()="beanName"<br> * <br> * beanName????bean?not null???errors??1?Errors?? <br> * @throws Exception ????? */ @Test public void testGetValidator03() throws Exception { // ?? // beanName : "beanName" String beanName = "beanName"; // bean : String("bean") Object bean = "bean"; // errors : ?1?Errors Errors errors = new ErrorsImpl01(); List<Object> list = new ArrayList<Object>(); list.add(0, new Object()); ReflectionTestUtils.setField(errors, "errors", list); DefaultValidatorFactoryEx factory = new DefaultValidatorFactoryEx(); // DefaultValidatorFactory?validatorResources? ValidatorResources resources = new ValidatorResources(); ReflectionTestUtils.setField(factory, "validatorResources", resources); Validator validator = null; // validator = factory.getValidator(beanName, bean, errors); // // errors : ?? SpringValidationErrors resultErorrs = (SpringValidationErrors) validator .getParameterValue("jp.terasoluna.fw.validation.ValidationErrors"); assertSame(errors, resultErorrs.getErrors()); // bean : new String("bean") assertSame(bean, validator.getParameterValue("java.lang.Object")); // beanName : "beanName" assertEquals(beanName, validator.getFormName()); } /** * testGetValidator04() <br> * <br> * () <br> * C, D <br> * <br> * () beanName:"beanName"<br> * () bean:String("bean")<br> * () errors:?3?Errors<br> * {Object[0]=new Object,<br> * Object[1]=new Object,<br> * Object[2]=new Object}<br> * <br> * () Validator:Validator<br> * validator.getParameterValue ("jp.terasoluna.fw.validation.ValidationErrors")=<br> * SpringValidatorErrors.getErrors()?1?Errors<br> * {Object[0]=new Object,Object[1]=new Object,Object[2]=new Object}<br> * validator.getParameterValue("java.lang.Object")=String("bean")<br> * validator.getFormName()="beanName"<br> * <br> * beanName????bean?not null???errors??3?Errors?? <br> * @throws Exception ????? */ @Test public void testGetValidator04() throws Exception { // ?? // beanName : "beanName" String beanName = "beanName"; // bean : String("bean") Object bean = "bean"; // errors : ?3?Errors Errors errors = new ErrorsImpl01(); List<Object> list = new ArrayList<Object>(); list.add(0, new Object()); list.add(1, new Object()); list.add(2, new Object()); ReflectionTestUtils.setField(errors, "errors", list); DefaultValidatorFactoryEx factory = new DefaultValidatorFactoryEx(); // DefaultValidatorFactory?validatorResources? ValidatorResources resources = new ValidatorResources(); ReflectionTestUtils.setField(factory, "validatorResources", resources); Validator validator = null; // validator = factory.getValidator(beanName, bean, errors); // // errors : ?? SpringValidationErrors resultErorrs = (SpringValidationErrors) validator .getParameterValue("jp.terasoluna.fw.validation.ValidationErrors"); assertSame(errors, resultErorrs.getErrors()); // bean : new String("bean") assertSame(bean, validator.getParameterValue("java.lang.Object")); // beanName : "beanName" assertEquals(beanName, validator.getFormName()); } }