|
|
|
@ -1,5 +1,5 @@ |
|
|
|
/* |
|
|
|
/* |
|
|
|
* Copyright 2002-2006 the original author or authors. |
|
|
|
* Copyright 2002-2011 the original author or authors. |
|
|
|
* |
|
|
|
* |
|
|
|
* Licensed under the Apache License, Version 2.0 (the "License"); |
|
|
|
* Licensed under the Apache License, Version 2.0 (the "License"); |
|
|
|
* you may not use this file except in compliance with the License. |
|
|
|
* you may not use this file except in compliance with the License. |
|
|
|
@ -16,7 +16,7 @@ |
|
|
|
|
|
|
|
|
|
|
|
package org.springframework.web.bind; |
|
|
|
package org.springframework.web.bind; |
|
|
|
|
|
|
|
|
|
|
|
import junit.framework.TestCase; |
|
|
|
import org.junit.Test; |
|
|
|
|
|
|
|
|
|
|
|
import org.springframework.beans.TestBean; |
|
|
|
import org.springframework.beans.TestBean; |
|
|
|
import org.springframework.validation.BindException; |
|
|
|
import org.springframework.validation.BindException; |
|
|
|
@ -24,12 +24,15 @@ import org.springframework.validation.Errors; |
|
|
|
import org.springframework.validation.FieldError; |
|
|
|
import org.springframework.validation.FieldError; |
|
|
|
import org.springframework.validation.ObjectError; |
|
|
|
import org.springframework.validation.ObjectError; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
import static org.junit.Assert.*; |
|
|
|
|
|
|
|
|
|
|
|
/** |
|
|
|
/** |
|
|
|
* @author Juergen Hoeller |
|
|
|
* @author Juergen Hoeller |
|
|
|
* @since 02.05.2003 |
|
|
|
* @since 02.05.2003 |
|
|
|
*/ |
|
|
|
*/ |
|
|
|
public class EscapedErrorsTests extends TestCase { |
|
|
|
public class EscapedErrorsTests { |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@Test |
|
|
|
public void testEscapedErrors() { |
|
|
|
public void testEscapedErrors() { |
|
|
|
TestBean tb = new TestBean(); |
|
|
|
TestBean tb = new TestBean(); |
|
|
|
tb.setName("empty &"); |
|
|
|
tb.setName("empty &"); |
|
|
|
@ -47,11 +50,11 @@ public class EscapedErrorsTests extends TestCase { |
|
|
|
assertTrue("Correct global errors flag", errors.hasGlobalErrors()); |
|
|
|
assertTrue("Correct global errors flag", errors.hasGlobalErrors()); |
|
|
|
assertTrue("Correct number of global errors", errors.getGlobalErrorCount() == 1); |
|
|
|
assertTrue("Correct number of global errors", errors.getGlobalErrorCount() == 1); |
|
|
|
ObjectError globalError = errors.getGlobalError(); |
|
|
|
ObjectError globalError = errors.getGlobalError(); |
|
|
|
assertTrue("Global error message escaped", "message: " '".equals(globalError.getDefaultMessage())); |
|
|
|
assertTrue("Global error message escaped", "message: " '".equals(globalError.getDefaultMessage())); |
|
|
|
assertTrue("Global error code not escaped", "GENERAL_ERROR \" '".equals(globalError.getCode())); |
|
|
|
assertTrue("Global error code not escaped", "GENERAL_ERROR \" '".equals(globalError.getCode())); |
|
|
|
ObjectError globalErrorInList = (ObjectError) errors.getGlobalErrors().get(0); |
|
|
|
ObjectError globalErrorInList = errors.getGlobalErrors().get(0); |
|
|
|
assertTrue("Same global error in list", globalError.getDefaultMessage().equals(globalErrorInList.getDefaultMessage())); |
|
|
|
assertTrue("Same global error in list", globalError.getDefaultMessage().equals(globalErrorInList.getDefaultMessage())); |
|
|
|
ObjectError globalErrorInAllList = (ObjectError) errors.getAllErrors().get(3); |
|
|
|
ObjectError globalErrorInAllList = errors.getAllErrors().get(3); |
|
|
|
assertTrue("Same global error in list", globalError.getDefaultMessage().equals(globalErrorInAllList.getDefaultMessage())); |
|
|
|
assertTrue("Same global error in list", globalError.getDefaultMessage().equals(globalErrorInAllList.getDefaultMessage())); |
|
|
|
|
|
|
|
|
|
|
|
assertTrue("Correct field errors flag", errors.hasFieldErrors()); |
|
|
|
assertTrue("Correct field errors flag", errors.hasFieldErrors()); |
|
|
|
@ -60,7 +63,7 @@ public class EscapedErrorsTests extends TestCase { |
|
|
|
FieldError fieldError = errors.getFieldError(); |
|
|
|
FieldError fieldError = errors.getFieldError(); |
|
|
|
assertTrue("Field error code not escaped", "NAME_EMPTY &".equals(fieldError.getCode())); |
|
|
|
assertTrue("Field error code not escaped", "NAME_EMPTY &".equals(fieldError.getCode())); |
|
|
|
assertTrue("Field value escaped", "empty &".equals(errors.getFieldValue("name"))); |
|
|
|
assertTrue("Field value escaped", "empty &".equals(errors.getFieldValue("name"))); |
|
|
|
FieldError fieldErrorInList = (FieldError) errors.getFieldErrors().get(0); |
|
|
|
FieldError fieldErrorInList = errors.getFieldErrors().get(0); |
|
|
|
assertTrue("Same field error in list", fieldError.getDefaultMessage().equals(fieldErrorInList.getDefaultMessage())); |
|
|
|
assertTrue("Same field error in list", fieldError.getDefaultMessage().equals(fieldErrorInList.getDefaultMessage())); |
|
|
|
|
|
|
|
|
|
|
|
assertTrue("Correct name errors flag", errors.hasFieldErrors("name")); |
|
|
|
assertTrue("Correct name errors flag", errors.hasFieldErrors("name")); |
|
|
|
@ -70,7 +73,7 @@ public class EscapedErrorsTests extends TestCase { |
|
|
|
assertTrue("Name error message escaped", "message: &".equals(nameError.getDefaultMessage())); |
|
|
|
assertTrue("Name error message escaped", "message: &".equals(nameError.getDefaultMessage())); |
|
|
|
assertTrue("Name error code not escaped", "NAME_EMPTY &".equals(nameError.getCode())); |
|
|
|
assertTrue("Name error code not escaped", "NAME_EMPTY &".equals(nameError.getCode())); |
|
|
|
assertTrue("Name value escaped", "empty &".equals(errors.getFieldValue("name"))); |
|
|
|
assertTrue("Name value escaped", "empty &".equals(errors.getFieldValue("name"))); |
|
|
|
FieldError nameErrorInList = (FieldError) errors.getFieldErrors("name").get(0); |
|
|
|
FieldError nameErrorInList = errors.getFieldErrors("name").get(0); |
|
|
|
assertTrue("Same name error in list", nameError.getDefaultMessage().equals(nameErrorInList.getDefaultMessage())); |
|
|
|
assertTrue("Same name error in list", nameError.getDefaultMessage().equals(nameErrorInList.getDefaultMessage())); |
|
|
|
|
|
|
|
|
|
|
|
assertTrue("Correct age errors flag", errors.hasFieldErrors("age")); |
|
|
|
assertTrue("Correct age errors flag", errors.hasFieldErrors("age")); |
|
|
|
@ -80,9 +83,9 @@ public class EscapedErrorsTests extends TestCase { |
|
|
|
assertTrue("Age error message escaped", "message: <tag>".equals(ageError.getDefaultMessage())); |
|
|
|
assertTrue("Age error message escaped", "message: <tag>".equals(ageError.getDefaultMessage())); |
|
|
|
assertTrue("Age error code not escaped", "AGE_NOT_SET <tag>".equals(ageError.getCode())); |
|
|
|
assertTrue("Age error code not escaped", "AGE_NOT_SET <tag>".equals(ageError.getCode())); |
|
|
|
assertTrue("Age value not escaped", (new Integer(0)).equals(errors.getFieldValue("age"))); |
|
|
|
assertTrue("Age value not escaped", (new Integer(0)).equals(errors.getFieldValue("age"))); |
|
|
|
FieldError ageErrorInList = (FieldError) errors.getFieldErrors("age").get(0); |
|
|
|
FieldError ageErrorInList = errors.getFieldErrors("age").get(0); |
|
|
|
assertTrue("Same name error in list", ageError.getDefaultMessage().equals(ageErrorInList.getDefaultMessage())); |
|
|
|
assertTrue("Same name error in list", ageError.getDefaultMessage().equals(ageErrorInList.getDefaultMessage())); |
|
|
|
FieldError ageError2 = (FieldError) errors.getFieldErrors("age").get(1); |
|
|
|
FieldError ageError2 = errors.getFieldErrors("age").get(1); |
|
|
|
assertTrue("Age error 2 message escaped", "message: <tag>".equals(ageError2.getDefaultMessage())); |
|
|
|
assertTrue("Age error 2 message escaped", "message: <tag>".equals(ageError2.getDefaultMessage())); |
|
|
|
assertTrue("Age error 2 code not escaped", "AGE_NOT_32 <tag>".equals(ageError2.getCode())); |
|
|
|
assertTrue("Age error 2 code not escaped", "AGE_NOT_32 <tag>".equals(ageError2.getCode())); |
|
|
|
} |
|
|
|
} |
|
|
|
|