LocalValidatorFactoryBean properly supports unwrap at ValidatorFactory level
Also documents limitation for Bean Validation 2.0's getClockProvider() method. Issue: SPR-15561 Issue: SPR-13482
This commit is contained in:
@@ -27,6 +27,7 @@ import javax.validation.ConstraintValidator;
|
||||
import javax.validation.ConstraintValidatorContext;
|
||||
import javax.validation.Payload;
|
||||
import javax.validation.Validation;
|
||||
import javax.validation.Validator;
|
||||
import javax.validation.constraints.Pattern;
|
||||
import javax.validation.constraints.Size;
|
||||
|
||||
@@ -51,8 +52,9 @@ import static org.junit.Assert.*;
|
||||
*/
|
||||
public class SpringValidatorAdapterTests {
|
||||
|
||||
private final SpringValidatorAdapter validatorAdapter = new SpringValidatorAdapter(
|
||||
Validation.buildDefaultValidatorFactory().getValidator());
|
||||
private final Validator nativeValidator = Validation.buildDefaultValidatorFactory().getValidator();
|
||||
|
||||
private final SpringValidatorAdapter validatorAdapter = new SpringValidatorAdapter(nativeValidator);
|
||||
|
||||
private final StaticMessageSource messageSource = new StaticMessageSource();
|
||||
|
||||
@@ -66,6 +68,12 @@ public class SpringValidatorAdapterTests {
|
||||
}
|
||||
|
||||
|
||||
@Test
|
||||
public void testUnwrap() {
|
||||
Validator nativeValidator = validatorAdapter.unwrap(Validator.class);
|
||||
assertSame(this.nativeValidator, nativeValidator);
|
||||
}
|
||||
|
||||
@Test // SPR-13406
|
||||
public void testNoStringArgumentValue() {
|
||||
TestBean testBean = new TestBean();
|
||||
|
||||
@@ -33,9 +33,12 @@ import javax.validation.ConstraintValidatorContext;
|
||||
import javax.validation.ConstraintViolation;
|
||||
import javax.validation.Payload;
|
||||
import javax.validation.Valid;
|
||||
import javax.validation.Validator;
|
||||
import javax.validation.ValidatorFactory;
|
||||
import javax.validation.constraints.NotNull;
|
||||
|
||||
import org.hibernate.validator.HibernateValidator;
|
||||
import org.hibernate.validator.HibernateValidatorFactory;
|
||||
import org.junit.Test;
|
||||
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
@@ -75,6 +78,12 @@ public class ValidatorFactoryTests {
|
||||
fail("Invalid constraint violation with path '" + path + "'");
|
||||
}
|
||||
}
|
||||
|
||||
Validator nativeValidator = validator.unwrap(Validator.class);
|
||||
assertTrue(nativeValidator.getClass().getName().startsWith("org.hibernate"));
|
||||
assertTrue(validator.unwrap(ValidatorFactory.class) instanceof HibernateValidatorFactory);
|
||||
assertTrue(validator.unwrap(HibernateValidatorFactory.class) instanceof HibernateValidatorFactory);
|
||||
|
||||
validator.destroy();
|
||||
}
|
||||
|
||||
@@ -96,6 +105,12 @@ public class ValidatorFactoryTests {
|
||||
fail("Invalid constraint violation with path '" + path + "'");
|
||||
}
|
||||
}
|
||||
|
||||
Validator nativeValidator = validator.unwrap(Validator.class);
|
||||
assertTrue(nativeValidator.getClass().getName().startsWith("org.hibernate"));
|
||||
assertTrue(validator.unwrap(ValidatorFactory.class) instanceof HibernateValidatorFactory);
|
||||
assertTrue(validator.unwrap(HibernateValidatorFactory.class) instanceof HibernateValidatorFactory);
|
||||
|
||||
validator.destroy();
|
||||
}
|
||||
|
||||
@@ -465,7 +480,7 @@ public class ValidatorFactoryTests {
|
||||
|
||||
String message() default "Should not be X";
|
||||
|
||||
Class<?>[] groups() default { };
|
||||
Class<?>[] groups() default {};
|
||||
|
||||
Class<? extends Payload>[] payload() default {};
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user