|
26 | 26 | import jakarta.validation.ConstraintViolationException;
|
27 | 27 | import jakarta.validation.Valid;
|
28 | 28 | import jakarta.validation.Validation;
|
| 29 | +import jakarta.validation.Validator; |
29 | 30 | import jakarta.validation.constraints.Max;
|
30 | 31 | import jakarta.validation.constraints.NotBlank;
|
31 | 32 | import jakarta.validation.constraints.NotNull;
|
@@ -56,54 +57,54 @@ void shouldFailWithNullValidator() {
|
56 | 57 |
|
57 | 58 | @Test
|
58 | 59 | void shouldIgnoreMethodsWithoutAnnotations() {
|
59 |
| - BiConsumer<Object, Object[]> validator = createValidator(MyBean.class, "notValidatedMethod"); |
60 |
| - assertThat(validator).isNull(); |
| 60 | + assertThat(validateFunction(MyBean.class, "notValidatedMethod")).isNull(); |
61 | 61 | }
|
62 | 62 |
|
63 | 63 | @Test
|
64 | 64 | void shouldRaiseValidationErrorForAnnotatedParams() {
|
65 | 65 | MyBean bean = new MyBean();
|
66 | 66 |
|
67 |
| - BiConsumer<Object, Object[]> validator1 = createValidator(MyBean.class, "myValidMethod"); |
| 67 | + BiConsumer<Object, Object[]> validator1 = validateFunction(MyBean.class, "myValidMethod"); |
68 | 68 | assertViolation(() -> validator1.accept(bean, new Object[] {null, 2}), "myValidMethod.arg0");
|
69 | 69 | assertViolation(() -> validator1.accept(bean, new Object[] {"test", 12}), "myValidMethod.arg1");
|
70 | 70 |
|
71 |
| - BiConsumer<Object, Object[]> validator2 = createValidator(MyBean.class, "myValidatedParameterMethod"); |
| 71 | + BiConsumer<Object, Object[]> validator2 = validateFunction(MyBean.class, "myValidatedParameterMethod"); |
72 | 72 | assertViolation(() -> validator2.accept(bean, new Object[] {new ConstrainedInput(100)}), "integerValue");
|
73 | 73 |
|
74 |
| - BiConsumer<Object, Object[]> validator3 = createValidator(MyBean.class, "myValidArgumentValue"); |
| 74 | + BiConsumer<Object, Object[]> validator3 = validateFunction(MyBean.class, "myValidArgumentValue"); |
75 | 75 | assertViolation(() -> validator3.accept(bean, new Object[] {ArgumentValue.ofNullable("")}), "myValidArgumentValue.arg0");
|
76 | 76 | }
|
77 | 77 |
|
78 | 78 | @Test
|
79 | 79 | void shouldRaiseValidationErrorForAnnotatedParamsWithGroups() {
|
80 | 80 | MyValidationGroupsBean bean = new MyValidationGroupsBean();
|
81 | 81 |
|
82 |
| - BiConsumer<Object, Object[]> validator1 = createValidator(MyValidationGroupsBean.class, "myValidMethodWithGroup"); |
| 82 | + BiConsumer<Object, Object[]> validator1 = validateFunction(MyValidationGroupsBean.class, "myValidMethodWithGroup"); |
83 | 83 | assertViolation(() -> validator1.accept(bean, new Object[] {null}), "myValidMethodWithGroup.arg0");
|
84 | 84 |
|
85 |
| - BiConsumer<Object, Object[]> validator2 = createValidator(MyValidationGroupsBean.class, "myValidMethodWithGroupOnType"); |
| 85 | + BiConsumer<Object, Object[]> validator2 = validateFunction(MyValidationGroupsBean.class, "myValidMethodWithGroupOnType"); |
86 | 86 | assertViolation(() -> validator2.accept(bean, new Object[] {null}), "myValidMethodWithGroupOnType.arg0");
|
87 | 87 | }
|
88 | 88 |
|
89 | 89 | @Test
|
90 | 90 | void shouldRecognizeMethodsThatRequireValidation() {
|
91 |
| - BiConsumer<Object, Object[]> validator1 = createValidator(RequiresValidationBean.class, "processConstrainedValue"); |
| 91 | + BiConsumer<Object, Object[]> validator1 = validateFunction(RequiresValidationBean.class, "processConstrainedValue"); |
92 | 92 | assertThat(validator1).isNotNull();
|
93 | 93 |
|
94 |
| - BiConsumer<Object, Object[]> validator2 = createValidator(RequiresValidationBean.class, "processValidInput"); |
| 94 | + BiConsumer<Object, Object[]> validator2 = validateFunction(RequiresValidationBean.class, "processValidInput"); |
95 | 95 | assertThat(validator2).isNotNull();
|
96 | 96 |
|
97 |
| - BiConsumer<Object, Object[]> validator3 = createValidator(RequiresValidationBean.class, "processValidatedInput"); |
| 97 | + BiConsumer<Object, Object[]> validator3 = validateFunction(RequiresValidationBean.class, "processValidatedInput"); |
98 | 98 | assertThat(validator3).isNotNull();
|
99 | 99 |
|
100 |
| - BiConsumer<Object, Object[]> validator4 = createValidator(RequiresValidationBean.class, "processValue"); |
| 100 | + BiConsumer<Object, Object[]> validator4 = validateFunction(RequiresValidationBean.class, "processValue"); |
101 | 101 | assertThat(validator4).isNull();
|
102 | 102 | }
|
103 | 103 |
|
104 |
| - private BiConsumer<Object, Object[]> createValidator(Class<?> handlerType, String methodName) { |
105 |
| - return ValidationHelper.create(Validation.buildDefaultValidatorFactory().getValidator()) |
106 |
| - .getValidationHelperFor(findHandlerMethod(handlerType, methodName)); |
| 104 | + private BiConsumer<Object, Object[]> validateFunction(Class<?> handlerType, String methodName) { |
| 105 | + Validator validator = Validation.buildDefaultValidatorFactory().getValidator(); |
| 106 | + ValidationHelper helper = ValidationHelper.create(validator); |
| 107 | + return helper.getValidationHelperFor(findHandlerMethod(handlerType, methodName)); |
107 | 108 | }
|
108 | 109 |
|
109 | 110 | private HandlerMethod findHandlerMethod(Class<?> handlerType, String methodName) {
|
|
0 commit comments