Skip to content

Commit c6f63bd

Browse files
committed
Assertions for error codes in case of formatting failures
Issue: SPR-14345
1 parent d1d29cf commit c6f63bd

File tree

1 file changed

+6
-3
lines changed

1 file changed

+6
-3
lines changed

spring-context/src/test/java/org/springframework/validation/DataBinderTests.java

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -227,12 +227,14 @@ public void testBindingWithErrors() throws Exception {
227227

228228
assertTrue("Has age errors", br.hasFieldErrors("age"));
229229
assertTrue("Correct number of age errors", br.getFieldErrorCount("age") == 1);
230+
assertEquals("typeMismatch", binder.getBindingResult().getFieldError("age").getCode());
230231
assertEquals("32x", binder.getBindingResult().getFieldValue("age"));
231232
assertEquals("32x", binder.getBindingResult().getFieldError("age").getRejectedValue());
232233
assertEquals(0, tb.getAge());
233234

234235
assertTrue("Has touchy errors", br.hasFieldErrors("touchy"));
235236
assertTrue("Correct number of touchy errors", br.getFieldErrorCount("touchy") == 1);
237+
assertEquals("methodInvocation", binder.getBindingResult().getFieldError("touchy").getCode());
236238
assertEquals("m.y", binder.getBindingResult().getFieldValue("touchy"));
237239
assertEquals("m.y", binder.getBindingResult().getFieldError("touchy").getRejectedValue());
238240
assertNull(tb.getTouchy());
@@ -316,12 +318,14 @@ public String getAsText() {
316318

317319
assertTrue("Has age errors", br.hasFieldErrors("age"));
318320
assertTrue("Correct number of age errors", br.getFieldErrorCount("age") == 1);
321+
assertEquals("typeMismatch", binder.getBindingResult().getFieldError("age").getCode());
319322
assertEquals("32x", binder.getBindingResult().getFieldValue("age"));
320323
assertEquals("32x", binder.getBindingResult().getFieldError("age").getRejectedValue());
321324
assertEquals(0, tb.getAge());
322325

323326
assertTrue("Has touchy errors", br.hasFieldErrors("touchy"));
324327
assertTrue("Correct number of touchy errors", br.getFieldErrorCount("touchy") == 1);
328+
assertEquals("methodInvocation", binder.getBindingResult().getFieldError("touchy").getCode());
325329
assertEquals("m.y", binder.getBindingResult().getFieldValue("touchy"));
326330
assertEquals("m.y", binder.getBindingResult().getFieldError("touchy").getRejectedValue());
327331
assertNull(tb.getTouchy());
@@ -420,6 +424,7 @@ public String print(String object, Locale locale) {
420424

421425
binder.bind(pvs);
422426
assertTrue(binder.getBindingResult().hasFieldErrors("name"));
427+
assertEquals("typeMismatch", binder.getBindingResult().getFieldError("name").getCode());
423428
assertEquals("test", binder.getBindingResult().getFieldValue("name"));
424429
}
425430

@@ -568,6 +573,7 @@ public void testBindingErrorWithCustomFormatter() {
568573
assertEquals(new Float(0.0), tb.getMyFloat());
569574
assertEquals("1x2", binder.getBindingResult().getFieldValue("myFloat"));
570575
assertTrue(binder.getBindingResult().hasFieldErrors("myFloat"));
576+
assertEquals("typeMismatch", binder.getBindingResult().getFieldError("myFloat").getCode());
571577
}
572578
finally {
573579
LocaleContextHolder.resetLocaleContext();
@@ -882,7 +888,6 @@ public void testCustomEditorForPrimitiveProperty() {
882888
public void setAsText(String text) throws IllegalArgumentException {
883889
setValue(new Integer(99));
884890
}
885-
886891
@Override
887892
public String getAsText() {
888893
return "argh";
@@ -907,7 +912,6 @@ public void testCustomEditorForAllStringProperties() {
907912
public void setAsText(String text) throws IllegalArgumentException {
908913
setValue("prefix" + text);
909914
}
910-
911915
@Override
912916
public String getAsText() {
913917
return ((String) getValue()).substring(6);
@@ -980,7 +984,6 @@ public void testCustomFormatterForPrimitiveProperty() {
980984
public Integer parse(String text, Locale locale) throws ParseException {
981985
return 99;
982986
}
983-
984987
@Override
985988
public String print(Integer object, Locale locale) {
986989
return "argh";

0 commit comments

Comments
 (0)