Merge branch '6.1.x'

This commit is contained in:
Brian Clozel
2024-06-05 20:05:50 +02:00
2 changed files with 12 additions and 3 deletions

View File

@@ -417,7 +417,7 @@ public class HandlerMethod extends AnnotatedMethod {
return true; return true;
} }
merged = MergedAnnotations.from(getContainerElementAnnotations(param)); merged = MergedAnnotations.from(getContainerElementAnnotations(param));
if (merged.stream().anyMatch(CONSTRAINT_PREDICATE)) { if (merged.stream().anyMatch(CONSTRAINT_PREDICATE.or(VALID_PREDICATE))) {
return true; return true;
} }
} }

View File

@@ -40,14 +40,14 @@ class HandlerMethodTests {
@Test @Test
void shouldValidateArgsWithConstraintsDirectlyOnClass() { void shouldValidateArgsWithConstraintsDirectlyOnClass() {
Object target = new MyClass(); Object target = new MyClass();
testValidateArgs(target, List.of("addIntValue", "addPersonAndIntValue", "addPersons", "addNames"), true); testValidateArgs(target, List.of("addIntValue", "addPersonAndIntValue", "addPersons", "addPeople", "addNames"), true);
testValidateArgs(target, List.of("addPerson", "getPerson", "getIntValue", "addPersonNotValidated"), false); testValidateArgs(target, List.of("addPerson", "getPerson", "getIntValue", "addPersonNotValidated"), false);
} }
@Test @Test
void shouldValidateArgsWithConstraintsOnInterface() { void shouldValidateArgsWithConstraintsOnInterface() {
Object target = new MyInterfaceImpl(); Object target = new MyInterfaceImpl();
testValidateArgs(target, List.of("addIntValue", "addPersonAndIntValue", "addPersons"), true); testValidateArgs(target, List.of("addIntValue", "addPersonAndIntValue", "addPersons", "addPeople"), true);
testValidateArgs(target, List.of("addPerson", "addPersonNotValidated", "getPerson", "getIntValue"), false); testValidateArgs(target, List.of("addPerson", "addPersonNotValidated", "getPerson", "getIntValue"), false);
} }
@@ -115,6 +115,9 @@ class HandlerMethodTests {
public void addPersons(@Valid List<Person> persons) { public void addPersons(@Valid List<Person> persons) {
} }
public void addPeople(List<@Valid Person> persons) {
}
public void addNames(List<@NotEmpty String> names) { public void addNames(List<@NotEmpty String> names) {
} }
@@ -144,6 +147,8 @@ class HandlerMethodTests {
void addPersons(@Valid List<Person> persons); void addPersons(@Valid List<Person> persons);
void addPeople(List<@Valid Person> persons);
void addPersonNotValidated(Person person); void addPersonNotValidated(Person person);
@Valid @Valid
@@ -173,6 +178,10 @@ class HandlerMethodTests {
public void addPersons(List<Person> persons) { public void addPersons(List<Person> persons) {
} }
@Override
public void addPeople(List<@Valid Person> persons) {
}
@Override @Override
public void addPersonNotValidated(Person person) { public void addPersonNotValidated(Person person) {
} }