tests mvc compat
This commit is contained in:
@@ -30,18 +30,19 @@ package org.springframework.binding.validation;
|
||||
public class DefaultSpringMvcValidationFailureMessageCodesFactory extends ValidationFailureMessageCodesFactory {
|
||||
|
||||
public String[] createMessageCodes(ValidationFailure failure, ValidationFailureModelContext modelContext) {
|
||||
String constraintMessageCode = appendFailureMessageCodePrefix().append(failure.getConstraint()).append(
|
||||
codeSeparator()).toString();
|
||||
String constraintMessageCode = appendFailureMessageCodePrefix().append(codeSeparator()).append(
|
||||
failure.getConstraint()).toString();
|
||||
if (failure.getProperty() != null) {
|
||||
String propertyConstraintMessageCode = appendFailureMessageCodePrefix().append(codeSeparator()).append(
|
||||
failure.getConstraint()).append(modelContext.getModel()).append(codeSeparator()).append(
|
||||
failure.getProperty()).append(codeSeparator()).toString();
|
||||
failure.getConstraint()).append(codeSeparator()).append(modelContext.getModel()).append(
|
||||
codeSeparator()).append(failure.getProperty()).toString();
|
||||
String typeConstraintMessageCode = appendFailureMessageCodePrefix().append(codeSeparator()).append(
|
||||
failure.getConstraint()).append(modelContext.getPropertyType().getName()).toString();
|
||||
failure.getConstraint()).append(codeSeparator()).append(modelContext.getPropertyType().getName())
|
||||
.toString();
|
||||
return new String[] { propertyConstraintMessageCode, typeConstraintMessageCode, constraintMessageCode };
|
||||
} else {
|
||||
String objectConstraintMessageCode = appendFailureMessageCodePrefix().append(codeSeparator()).append(
|
||||
failure.getConstraint()).append(modelContext.getModel()).append(codeSeparator()).toString();
|
||||
failure.getConstraint()).append(codeSeparator()).append(modelContext.getModel()).toString();
|
||||
return new String[] { objectConstraintMessageCode, constraintMessageCode };
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,24 @@
|
||||
package org.springframework.binding.validation;
|
||||
|
||||
import junit.framework.TestCase;
|
||||
|
||||
public class DefaultSpringMvcValidationFailureMessageCodesFactoryTests extends TestCase {
|
||||
private DefaultSpringMvcValidationFailureMessageCodesFactory factory = new DefaultSpringMvcValidationFailureMessageCodesFactory();
|
||||
|
||||
public void testCreateGeneralModelFailureMessageCodes() {
|
||||
ValidationFailure failure = new ValidationFailureBuilder().constraint("invalid").build();
|
||||
String[] codes = factory.createMessageCodes(failure, new ValidationFailureModelContext("testBean", null, null,
|
||||
null));
|
||||
assertEquals("validation.invalid.testBean", codes[0]);
|
||||
assertEquals("validation.invalid", codes[1]);
|
||||
}
|
||||
|
||||
public void testCreatePropertyFailureMessageCodes() {
|
||||
ValidationFailure failure = new ValidationFailureBuilder().forProperty("foo").constraint("required").build();
|
||||
String[] codes = factory.createMessageCodes(failure, new ValidationFailureModelContext("testBean", null,
|
||||
String.class, null));
|
||||
assertEquals("validation.required.testBean.foo", codes[0]);
|
||||
assertEquals("validation.required.java.lang.String", codes[1]);
|
||||
assertEquals("validation.required", codes[2]);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,24 @@
|
||||
package org.springframework.binding.validation;
|
||||
|
||||
import junit.framework.TestCase;
|
||||
|
||||
public class ValidationFailureMessageCodesFactoryTests extends TestCase {
|
||||
private ValidationFailureMessageCodesFactory factory = new ValidationFailureMessageCodesFactory();
|
||||
|
||||
public void testCreateGeneralModelFailureMessageCodes() {
|
||||
ValidationFailure failure = new ValidationFailureBuilder().constraint("invalid").build();
|
||||
String[] codes = factory.createMessageCodes(failure, new ValidationFailureModelContext("testBean", null, null,
|
||||
null));
|
||||
assertEquals("validation.testBean.invalid", codes[0]);
|
||||
assertEquals("validation.invalid", codes[1]);
|
||||
}
|
||||
|
||||
public void testCreatePropertyFailureMessageCodes() {
|
||||
ValidationFailure failure = new ValidationFailureBuilder().forProperty("foo").constraint("required").build();
|
||||
String[] codes = factory.createMessageCodes(failure, new ValidationFailureModelContext("testBean", null,
|
||||
String.class, null));
|
||||
assertEquals("validation.testBean.foo.required", codes[0]);
|
||||
assertEquals("validation.java.lang.String.required", codes[1]);
|
||||
assertEquals("validation.required", codes[2]);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user