Package org.springframework.binding.message

Source Code of org.springframework.binding.message.MessageContextErrorsTests

package org.springframework.binding.message;

import java.util.HashMap;
import java.util.Locale;

import junit.framework.TestCase;

import org.springframework.binding.expression.spel.SpringELExpressionParser;
import org.springframework.context.support.StaticMessageSource;
import org.springframework.expression.spel.standard.SpelExpressionParser;
import org.springframework.validation.DefaultMessageCodesResolver;
import org.springframework.validation.MapBindingResult;

public class MessageContextErrorsTests extends TestCase {

  private DefaultMessageContext context;
  private MessageContextErrors errors;

  @Override
  protected void setUp() throws Exception {
    StaticMessageSource messageSource = new StaticMessageSource();
    messageSource.addMessage("foo", Locale.getDefault(), "bar");
    messageSource.addMessage("bar", Locale.getDefault(), "{0}");

    context = new DefaultMessageContext(messageSource);

    SpringELExpressionParser parser = new SpringELExpressionParser(new SpelExpressionParser());
    DefaultMessageCodesResolver resolver = new DefaultMessageCodesResolver();
    errors = new MessageContextErrors(context, "object", new Object(), parser, resolver, null);
  }

  public void testReject() {
    errors.reject("foo");
    errors.reject("bogus", "baz");
    errors.reject("bar", new Object[] { "boop" }, null);

    Message msg = context.getAllMessages()[0];
    assertEquals(null, msg.getSource());
    assertEquals("bar", msg.getText());
    assertEquals(Severity.ERROR, msg.getSeverity());

    msg = context.getAllMessages()[1];
    assertEquals(null, msg.getSource());
    assertEquals("baz", msg.getText());
    assertEquals(Severity.ERROR, msg.getSeverity());

    msg = context.getAllMessages()[2];
    assertEquals(null, msg.getSource());
    assertEquals("boop", msg.getText());
    assertEquals(Severity.ERROR, msg.getSeverity());
  }

  public void testRejectValue() {
    errors.rejectValue("class", "foo");
    errors.rejectValue("class", "bogus", "baz");
    errors.rejectValue("class", "bar", new Object[] { "boop" }, null);

    Message msg = context.getAllMessages()[0];
    assertEquals("class", msg.getSource());
    assertEquals("bar", msg.getText());
    assertEquals(Severity.ERROR, msg.getSeverity());

    msg = context.getAllMessages()[1];
    assertEquals("class", msg.getSource());
    assertEquals("baz", msg.getText());
    assertEquals(Severity.ERROR, msg.getSeverity());

    msg = context.getAllMessages()[2];
    assertEquals("class", msg.getSource());
    assertEquals("boop", msg.getText());
    assertEquals(Severity.ERROR, msg.getSeverity());
  }

  public void testGlobalError() {
    errors.rejectValue(null, "bar", new Object[] { "boop" }, null);
    Message msg = context.getAllMessages()[0];
    assertEquals("", msg.getSource());
    assertEquals("boop", msg.getText());
    assertEquals(Severity.ERROR, msg.getSeverity());
  }

  public void testAddAllErrors() {
    MapBindingResult result = new MapBindingResult(new HashMap<Object, Object>(), "object");
    result.reject("bar", new Object[] { "boop" }, null);
    result.rejectValue("field", "bar", new Object[] { "boop" }, null);
    errors.addAllErrors(result);

    Message msg = context.getAllMessages()[0];
    assertEquals(null, msg.getSource());
    assertEquals("boop", msg.getText());
    assertEquals(Severity.ERROR, msg.getSeverity());

    msg = context.getAllMessages()[1];
    assertEquals("field", msg.getSource());
    assertEquals("boop", msg.getText());
    assertEquals(Severity.ERROR, msg.getSeverity());
  }

  public void testGetGlobalErrors() {

  }

  public void testGetFieldErrors() {

  }

  public void testGetFieldValue() {

  }

}
TOP

Related Classes of org.springframework.binding.message.MessageContextErrorsTests

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.