org.terasoluna.gfw.web.message.MessagesPanelTagTest.java Source code

Java tutorial

Introduction

Here is the source code for org.terasoluna.gfw.web.message.MessagesPanelTagTest.java

Source

/*
 * Copyright (C) 2013-2016 terasoluna.org
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *     http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND,
 * either express or implied. See the License for the specific language
 * governing permissions and limitations under the License.
 */
package org.terasoluna.gfw.web.message;

import static org.hamcrest.CoreMatchers.is;
import static org.hamcrest.CoreMatchers.notNullValue;
import static org.junit.Assert.assertThat;
import static org.mockito.Matchers.anyObject;
import static org.mockito.Matchers.eq;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.when;

import java.io.StringWriter;
import java.util.Arrays;
import java.util.Date;
import java.util.Locale;

import javax.servlet.jsp.JspTagException;
import javax.servlet.jsp.tagext.TagSupport;

import org.junit.Before;
import org.junit.Test;
import org.springframework.mock.web.MockHttpServletRequest;
import org.springframework.mock.web.MockHttpServletResponse;
import org.springframework.mock.web.MockPageContext;
import org.springframework.mock.web.MockServletContext;
import org.springframework.web.context.WebApplicationContext;
import org.springframework.web.servlet.tags.form.TagWriter;
import org.terasoluna.gfw.common.message.ResultMessage;
import org.terasoluna.gfw.common.message.ResultMessages;
import org.terasoluna.gfw.web.message.MessagesPanelTag;

/**
 * Test class for MessagesPanelTag.
 */
public class MessagesPanelTagTest {
    protected StringWriter writer;

    protected WebApplicationContext wac;

    /**
     * mock instance of servlet jsp pageContext.
     */
    protected MockPageContext pageContext;

    /**
     * mock instance of http servlet requset.
     */
    protected MockHttpServletRequest request;

    /**
     * instance of test target.
     */
    protected MessagesPanelTag tag;

    /**
     * create mock PageContext.
     */
    protected MockPageContext createPageContext() {
        MockServletContext sc = new MockServletContext();
        wac = mock(WebApplicationContext.class);
        when(wac.getMessage(eq("hello.world"), eq(new Object[] {}), (Locale) anyObject()))
                .thenReturn("hello world!");
        when(wac.getMessage(eq("foo.bar"), eq(new Object[] { 1, 2 }), (Locale) anyObject()))
                .thenReturn("foo1 and bar2");

        when(wac.getServletContext()).thenReturn(sc);
        request = new MockHttpServletRequest(sc);
        MockHttpServletResponse response = new MockHttpServletResponse();
        sc.setAttribute(WebApplicationContext.ROOT_WEB_APPLICATION_CONTEXT_ATTRIBUTE, wac);
        return new MockPageContext(sc, request, response);
    }

    /**
     * setup all test case.
     */
    @SuppressWarnings("serial")
    @Before
    public void setUp() throws Exception {
        this.writer = new StringWriter();
        this.pageContext = createPageContext();
        this.tag = new MessagesPanelTag() {
            @Override
            TagWriter createTagWriter() {
                return new TagWriter(writer);
            }
        };
        tag.setPageContext(pageContext);
    }

    @Test
    public void testCreateTagWriter() {
        MessagesPanelTag tag = new MessagesPanelTag();
        tag.setPageContext(pageContext);
        assertThat(tag.createTagWriter(), is(notNullValue()));
    }

    /**
     * Set default messages attribute name & ResultMessages.fromText().<br>
     * check textMessasge in messagesPanelTag.
     */
    @Test
    public void test01() throws Exception {
        request.setAttribute(ResultMessages.DEFAULT_MESSAGES_ATTRIBUTE_NAME,
                ResultMessages.error().add(ResultMessage.fromText("hello world!")));
        int ret = tag.doStartTag();
        String expected = "<div class=\"alert alert-error\"><ul><li>hello world!</li></ul></div>";
        assertThat(getOutput(), is(expected));
        assertThat(ret, is(TagSupport.EVAL_BODY_INCLUDE));
    }

    /**
     * Set default messages attribute name & ResultMessages set property key.<br>
     * check property key to textMessasge in messagesPanelTag.
     */
    @Test
    public void test02() throws Exception {
        request.setAttribute(ResultMessages.DEFAULT_MESSAGES_ATTRIBUTE_NAME,
                ResultMessages.error().add("hello.world"));
        int ret = tag.doStartTag();
        // System.out.println(getOutput()
        // .replaceAll(Pattern.quote("\""), "\\\\\""));
        String expected = "<div class=\"alert alert-error\"><ul><li>hello world!</li></ul></div>";
        assertThat(getOutput(), is(expected));
        assertThat(ret, is(TagSupport.EVAL_BODY_INCLUDE));
    }

    /**
     * Set default messages attribute name & String message.<br>
     * check textMessasge in messagesPanelTag.
     */
    @Test
    public void test03() throws Exception {
        request.setAttribute(ResultMessages.DEFAULT_MESSAGES_ATTRIBUTE_NAME, "hello world!");
        int ret = tag.doStartTag();
        String expected = "<div class=\"alert\"><ul><li>hello world!</li></ul></div>";
        assertThat(getOutput(), is(expected));
        assertThat(ret, is(TagSupport.EVAL_BODY_INCLUDE));
    }

    /**
     * Set default messages attribute name & ResultMessage.fromText("String message").<br>
     * check textMessasge in messagesPanelTag.
     */
    @Test
    public void test04() throws Exception {
        request.setAttribute(ResultMessages.DEFAULT_MESSAGES_ATTRIBUTE_NAME,
                ResultMessage.fromText("hello world!"));
        int ret = tag.doStartTag();
        String expected = "<div class=\"alert\"><ul><li>hello world!</li></ul></div>";
        assertThat(getOutput(), is(expected));
        assertThat(ret, is(TagSupport.EVAL_BODY_INCLUDE));
    }

    /**
     * Set default messages attribute name & ResultMessage.fromCode("property key").<br>
     * check property key to textMessasge in messagesPanelTag.
     */
    @Test
    public void test05() throws Exception {
        request.setAttribute(ResultMessages.DEFAULT_MESSAGES_ATTRIBUTE_NAME, ResultMessage.fromCode("hello.world"));
        int ret = tag.doStartTag();
        String expected = "<div class=\"alert\"><ul><li>hello world!</li></ul></div>";
        assertThat(getOutput(), is(expected));
        assertThat(ret, is(TagSupport.EVAL_BODY_INCLUDE));
    }

    /**
     * Set default messages attribute name & null.<br>
     * check empty in messagesPanelTag and normal end.
     */
    @Test
    public void test06() throws Exception {
        request.setAttribute(ResultMessages.DEFAULT_MESSAGES_ATTRIBUTE_NAME, null);
        int ret = tag.doStartTag();
        String expected = "";
        assertThat(getOutput(), is(expected));
        assertThat(ret, is(TagSupport.EVAL_BODY_INCLUDE));
    }

    /**
     * Set default messages attribute name & Two String Array.<br>
     * check two textMessages in messagesPanelTag.
     */
    @Test
    public void test07() throws Exception {
        request.setAttribute(ResultMessages.DEFAULT_MESSAGES_ATTRIBUTE_NAME, new String[] { "hello", "world" });
        int ret = tag.doStartTag();
        String expected = "<div class=\"alert\"><ul><li>hello</li><li>world</li></ul></div>";
        assertThat(getOutput(), is(expected));
        assertThat(ret, is(TagSupport.EVAL_BODY_INCLUDE));
    }

    /**
     * Set default messages attribute name & Arrays.<br>
     * check two textMessages in messagesPanelTag.
     */
    @Test
    public void test08() throws Exception {
        request.setAttribute(ResultMessages.DEFAULT_MESSAGES_ATTRIBUTE_NAME, Arrays.asList("hello", "world"));
        int ret = tag.doStartTag();
        String expected = "<div class=\"alert\"><ul><li>hello</li><li>world</li></ul></div>";
        assertThat(getOutput(), is(expected));
        assertThat(ret, is(TagSupport.EVAL_BODY_INCLUDE));
    }

    /**
     * Set default messages attribute name & Add ResultMessages twice by fromText().<br>
     * check two textMessages in messagesPanelTag.
     */
    @Test
    public void test09() throws Exception {
        request.setAttribute(ResultMessages.DEFAULT_MESSAGES_ATTRIBUTE_NAME,
                ResultMessages.warn().add(ResultMessage.fromText("hello")).add(ResultMessage.fromText("world")));
        int ret = tag.doStartTag();
        String expected = "<div class=\"alert alert-warn\"><ul><li>hello</li><li>world</li></ul></div>";
        assertThat(getOutput(), is(expected));
        assertThat(ret, is(TagSupport.EVAL_BODY_INCLUDE));
    }

    /**
     * Set default messages attribute name & Add ResultMessages twice by property key.<br>
     * check two messages property key to textMessage in messagesPanelTag.
     */
    @Test
    public void test10() throws Exception {
        request.setAttribute(ResultMessages.DEFAULT_MESSAGES_ATTRIBUTE_NAME,
                ResultMessages.success().add("hello.world").add("foo.bar", 1, 2));
        int ret = tag.doStartTag();
        String expected = "<div class=\"alert alert-success\"><ul><li>hello world!</li><li>foo1 and bar2</li></ul></div>";
        assertThat(getOutput(), is(expected));
        assertThat(ret, is(TagSupport.EVAL_BODY_INCLUDE));
    }

    /**
     * Set default messages attribute name & Date type.<br>
     * check date to textMessage in messagesPanelTag.
     */
    @Test
    public void test11() throws Exception {
        Date now = new Date();
        request.setAttribute(ResultMessages.DEFAULT_MESSAGES_ATTRIBUTE_NAME, now);
        int ret = tag.doStartTag();
        String expected = "<div class=\"alert\"><ul><li>" + now + "</li></ul></div>";
        assertThat(getOutput(), is(expected));
        assertThat(ret, is(TagSupport.EVAL_BODY_INCLUDE));
    }

    /**
     * Set default messages attribute name & Use ResultMessages & change PanelElement,OuterElement and InnerElement.<br>
     * check change PanelElement,OuterElement and PanelElement in messagesPanelTag.
     */
    @Test
    public void test12() throws Exception {
        request.setAttribute(ResultMessages.DEFAULT_MESSAGES_ATTRIBUTE_NAME,
                ResultMessages.info().add(ResultMessage.fromText("hello!")).add(ResultMessage.fromText("foo")));
        tag.setPanelElement("p");
        tag.setOuterElement("");
        tag.setInnerElement("span");
        int ret = tag.doStartTag();
        String expected = "<p class=\"alert alert-info\"><span>hello!</span><span>foo</span></p>";
        assertThat(getOutput(), is(expected));
        assertThat(ret, is(TagSupport.EVAL_BODY_INCLUDE));
    }

    /**
     * Set default messages attribute name & Use Arrays & change PanelClassName is empty.<br>
     * check no CSS class setting in messagesPanelTag.
     */
    @Test
    public void test13() throws Exception {
        request.setAttribute(ResultMessages.DEFAULT_MESSAGES_ATTRIBUTE_NAME, Arrays.asList("foo", "bar"));
        tag.setPanelClassName("");
        int ret = tag.doStartTag();
        String expected = "<div><ul><li>foo</li><li>bar</li></ul></div>";
        assertThat(getOutput(), is(expected));
        assertThat(ret, is(TagSupport.EVAL_BODY_INCLUDE));
    }

    /**
     * Set default messages attribute name & Use ResultMessages & change PanelClassName is empty.<br>
     * check CSS class is PanelTypeClassPrefix and ResultMessages.type in messagesPanelTag.
     */
    @Test
    public void test14() throws Exception {
        request.setAttribute(ResultMessages.DEFAULT_MESSAGES_ATTRIBUTE_NAME,
                ResultMessages.info().add(ResultMessage.fromText("foo")).add(ResultMessage.fromText("bar")));
        tag.setPanelClassName("");
        int ret = tag.doStartTag();
        String expected = "<div class=\"alert-info\"><ul><li>foo</li><li>bar</li></ul></div>";
        assertThat(getOutput(), is(expected));
        assertThat(ret, is(TagSupport.EVAL_BODY_INCLUDE));
    }

    /**
     * Set default messages attribute name & Use ResultMessages & Change PanelClassName and PanelTypeClassPrefix is empty.<br>
     * check CSS class is ResultMessages.type in messagesPanelTag.
     */
    @Test
    public void test15() throws Exception {
        request.setAttribute(ResultMessages.DEFAULT_MESSAGES_ATTRIBUTE_NAME,
                ResultMessages.info().add(ResultMessage.fromText("foo")).add(ResultMessage.fromText("bar")));
        tag.setPanelClassName("");
        tag.setPanelTypeClassPrefix("");
        int ret = tag.doStartTag();
        String expected = "<div class=\"info\"><ul><li>foo</li><li>bar</li></ul></div>";
        assertThat(getOutput(), is(expected));
        assertThat(ret, is(TagSupport.EVAL_BODY_INCLUDE));
    }

    /**
     * Set default messages attribute name & Use ResultMessages & Change PanelClassName and PanelTypeClassPrefix is empty.<br>
     * check CSS class is ResultMessages.type in messagesPanelTag.
     */
    @Test
    public void test16() throws Exception {
        request.setAttribute(ResultMessages.DEFAULT_MESSAGES_ATTRIBUTE_NAME,
                ResultMessages.info().add(ResultMessage.fromText("foo")).add(ResultMessage.fromText("bar")));
        tag.setPanelClassName("");
        tag.setPanelTypeClassPrefix("");
        int ret = tag.doStartTag();
        String expected = "<div class=\"info\"><ul><li>foo</li><li>bar</li></ul></div>";
        assertThat(getOutput(), is(expected));
        assertThat(ret, is(TagSupport.EVAL_BODY_INCLUDE));
    }

    /**
     * Set default messages attribute name & Use ResultMessages & Change PanelClassName, PanelTypeClassPrefix and MessagesType
     * is empty.<br>
     * check no CSS class in messagesPanelTag.
     */
    @Test
    public void test21() throws Exception {
        request.setAttribute(ResultMessages.DEFAULT_MESSAGES_ATTRIBUTE_NAME,
                ResultMessages.info().add(ResultMessage.fromText("foo")).add(ResultMessage.fromText("bar")));
        tag.setPanelClassName("");
        tag.setPanelTypeClassPrefix("");
        tag.setMessagesType("");
        int ret = tag.doStartTag();
        String expected = "<div><ul><li>foo</li><li>bar</li></ul></div>";
        assertThat(getOutput(), is(expected));
        assertThat(ret, is(TagSupport.EVAL_BODY_INCLUDE));
    }

    /**
     * Set default messages attribute name & Use ResultMessages & change OuterElement and InnerElement is empty.<br>
     * check no OuterElement and PanelElement in messagesPanelTag.
     */
    @Test
    public void test17() throws Exception {
        request.setAttribute(ResultMessages.DEFAULT_MESSAGES_ATTRIBUTE_NAME,
                ResultMessages.info().add(ResultMessage.fromText("foo")));
        tag.setOuterElement("");
        tag.setInnerElement("");
        int ret = tag.doStartTag();
        String expected = "<div class=\"alert alert-info\">foo</div>";
        assertThat(getOutput(), is(expected));
        assertThat(ret, is(TagSupport.EVAL_BODY_INCLUDE));
    }

    /**
     * Set default messages attribute name & Use ResultMessages & change PanelElement,OuterElement and InnerElement is empty.<br>
     * check JspTagException.
     */
    @Test(expected = JspTagException.class)
    public void test28() throws Exception {
        request.setAttribute(ResultMessages.DEFAULT_MESSAGES_ATTRIBUTE_NAME,
                ResultMessages.info().add(ResultMessage.fromText("foo")));
        tag.setPanelElement("");
        tag.setOuterElement("");
        tag.setInnerElement("");
        tag.doStartTag();
    }

    /**
     * Set default messages attribute name & Use Arrays & change PanelClassName is empty.<br>
     * check no CSS class in messagesPanelTag.
     */
    @Test
    public void test18() throws Exception {
        request.setAttribute(ResultMessages.DEFAULT_MESSAGES_ATTRIBUTE_NAME, Arrays.asList("foo", null));
        tag.setPanelClassName("");
        int ret = tag.doStartTag();
        String expected = "<div><ul><li>foo</li></ul></div>";
        assertThat(getOutput(), is(expected));
        assertThat(ret, is(TagSupport.EVAL_BODY_INCLUDE));
    }

    /**
     * Set attribute name & Use ResultMessages.<br>
     * check messagesPanelTag can get set Attribute name.
     */
    @Test
    public void test19() throws Exception {
        request.setAttribute("result", ResultMessages.error().add(ResultMessage.fromText("hello world!")));
        tag.setMessagesAttributeName("result");
        int ret = tag.doStartTag();
        String expected = "<div class=\"alert alert-error\"><ul><li>hello world!</li></ul></div>";
        assertThat(getOutput(), is(expected));
        assertThat(ret, is(TagSupport.EVAL_BODY_INCLUDE));
    }

    /**
     * Set default messages attribute name & Use int array.<br>
     * check int to two textMessage in messagesPanelTag.
     */
    @Test
    public void test20() throws Exception {
        request.setAttribute(ResultMessages.DEFAULT_MESSAGES_ATTRIBUTE_NAME, new int[] { 1, 2 });
        tag.setPanelClassName("");
        int ret = tag.doStartTag();
        String expected = "<div><ul><li>1</li><li>2</li></ul></div>";
        assertThat(getOutput(), is(expected));
        assertThat(ret, is(TagSupport.EVAL_BODY_INCLUDE));
    }

    /**
     * Set default messages attribute name & set MessagesType is empty.<br>
     * check PanelTypeClassPrefix + MessagesType is empty in messagesPanelTag.
     */
    @Test
    public void test22() throws Exception {
        request.setAttribute(ResultMessages.DEFAULT_MESSAGES_ATTRIBUTE_NAME, "hello world!");
        tag.setMessagesType("");
        int ret = tag.doStartTag();
        String expected = "<div class=\"alert\"><ul><li>hello world!</li></ul></div>";
        assertThat(getOutput(), is(expected));
        assertThat(ret, is(TagSupport.EVAL_BODY_INCLUDE));
    }

    /**
     * Set default messages attribute name & set MessagesType is empty.<br>
     * check PanelTypeClassPrefix + MessagesType is empty in messagesPanelTag.
     */
    @Test
    public void test23() throws Exception {
        request.setAttribute(ResultMessages.DEFAULT_MESSAGES_ATTRIBUTE_NAME, "hello world!");
        tag.setMessagesType("error");
        int ret = tag.doStartTag();
        String expected = "<div class=\"alert alert-error\"><ul><li>hello world!</li></ul></div>";
        assertThat(getOutput(), is(expected));
        assertThat(ret, is(TagSupport.EVAL_BODY_INCLUDE));
    }

    /**
     * Set default messages attribute name & Use textMessage & set PanelClassName and PanelTypeClassPrefix is empty &
     * MessagesType is "error".<br>
     * check CSS class is error in messagesPanelTag.
     */
    @Test
    public void test24() throws Exception {
        request.setAttribute(ResultMessages.DEFAULT_MESSAGES_ATTRIBUTE_NAME, "hello world!");
        tag.setPanelClassName("");
        tag.setPanelTypeClassPrefix("");
        tag.setMessagesType("error");
        int ret = tag.doStartTag();
        String expected = "<div class=\"error\"><ul><li>hello world!</li></ul></div>";
        assertThat(getOutput(), is(expected));
        assertThat(ret, is(TagSupport.EVAL_BODY_INCLUDE));
    }

    /**
     * Set default messages attribute name & Use arrays & set MessagesType is empty.<br>
     * check PanelTypeClassPrefix + MessagesType is empty and array messages in messagesPanelTag.
     */
    @Test
    public void test25() throws Exception {
        request.setAttribute(ResultMessages.DEFAULT_MESSAGES_ATTRIBUTE_NAME, Arrays.asList("foo", "bar"));
        tag.setMessagesType("");
        int ret = tag.doStartTag();
        String expected = "<div class=\"alert\"><ul><li>foo</li><li>bar</li></ul></div>";
        assertThat(getOutput(), is(expected));
        assertThat(ret, is(TagSupport.EVAL_BODY_INCLUDE));
    }

    /**
     * Set default messages attribute name & Use arrays & set MessagesType is "error".<br>
     * check use default CSS class by set MessagesType in messagesPanelTag.
     */
    @Test
    public void test26() throws Exception {
        request.setAttribute(ResultMessages.DEFAULT_MESSAGES_ATTRIBUTE_NAME, Arrays.asList("foo", "bar"));
        tag.setMessagesType("error");
        int ret = tag.doStartTag();
        String expected = "<div class=\"alert alert-error\"><ul><li>foo</li><li>bar</li></ul></div>";
        assertThat(getOutput(), is(expected));
        assertThat(ret, is(TagSupport.EVAL_BODY_INCLUDE));
    }

    /**
     * Set default messages attribute name & Use Array & set PanelClassName and PanelTypeClassPrefix is empty & MessagesType is
     * "error".<br>
     * check CSS class is error in messagesPanelTag.
     */
    @Test
    public void test27() throws Exception {
        request.setAttribute(ResultMessages.DEFAULT_MESSAGES_ATTRIBUTE_NAME, Arrays.asList("foo", "bar"));
        tag.setPanelClassName("");
        tag.setPanelTypeClassPrefix("");
        tag.setMessagesType("error");
        int ret = tag.doStartTag();
        String expected = "<div class=\"error\"><ul><li>foo</li><li>bar</li></ul></div>";
        assertThat(getOutput(), is(expected));
        assertThat(ret, is(TagSupport.EVAL_BODY_INCLUDE));
    }

    /**
     * Set default messages attribute name & ResultMessages.fromText().<br>
     * check that message text gets escaped if htmlEscapingEnabled is set to true.
     */
    @Test
    public void test29() throws Exception {
        request.setAttribute(ResultMessages.DEFAULT_MESSAGES_ATTRIBUTE_NAME,
                ResultMessages.error().add(ResultMessage.fromText("<div>")));
        tag.setDisableHtmlEscape("true");
        int ret = tag.doStartTag();
        String expected = "<div class=\"alert alert-error\"><ul><li><div></li></ul></div>";
        assertThat(getOutput(), is(expected));
        assertThat(ret, is(TagSupport.EVAL_BODY_INCLUDE));
    }

    /**
     * Set default messages attribute name & ResultMessages.fromText().<br>
     * check that message text is not escaped if htmlEscapingEnabled is set to false.
     */
    @Test
    public void test30() throws Exception {
        request.setAttribute(ResultMessages.DEFAULT_MESSAGES_ATTRIBUTE_NAME,
                ResultMessages.error().add(ResultMessage.fromText("<div>")));
        tag.setDisableHtmlEscape("false");
        int ret = tag.doStartTag();
        String expected = "<div class=\"alert alert-error\"><ul><li>&lt;div&gt;</li></ul></div>";
        assertThat(getOutput(), is(expected));
        assertThat(ret, is(TagSupport.EVAL_BODY_INCLUDE));
    }

    /**
     * Set default messages attribute name & ResultMessages.fromText().<br>
     * check that message text gets escaped if htmlEscapingEnabled is set to null.
     */
    @Test
    public void test31() throws Exception {
        request.setAttribute(ResultMessages.DEFAULT_MESSAGES_ATTRIBUTE_NAME,
                ResultMessages.error().add(ResultMessage.fromText("<div>")));
        tag.setDisableHtmlEscape(null);
        int ret = tag.doStartTag();
        String expected = "<div class=\"alert alert-error\"><ul><li>&lt;div&gt;</li></ul></div>";
        assertThat(getOutput(), is(expected));
        assertThat(ret, is(TagSupport.EVAL_BODY_INCLUDE));
    }

    /**
     * Set default messages attribute name & ResultMessages.fromText().<br>
     * check that message text gets escaped if htmlEscapingEnabled is set to empty string.
     */
    @Test
    public void test32() throws Exception {
        request.setAttribute(ResultMessages.DEFAULT_MESSAGES_ATTRIBUTE_NAME,
                ResultMessages.error().add(ResultMessage.fromText("<div>")));
        tag.setDisableHtmlEscape("");
        int ret = tag.doStartTag();
        String expected = "<div class=\"alert alert-error\"><ul><li>&lt;div&gt;</li></ul></div>";
        assertThat(getOutput(), is(expected));
        assertThat(ret, is(TagSupport.EVAL_BODY_INCLUDE));
    }

    /**
     * Set default messages attribute name & ResultMessages.fromText().<br>
     * check that JspTagException occurs if htmlEscapingEnabled is set to unexpected String.
     */
    @Test(expected = JspTagException.class)
    public void test33() throws Exception {
        request.setAttribute(ResultMessages.DEFAULT_MESSAGES_ATTRIBUTE_NAME,
                ResultMessages.error().add(ResultMessage.fromText("<div>")));
        tag.setDisableHtmlEscape("aaaa");
        tag.doStartTag();
    }

    protected String getOutput() {
        return this.writer.toString();
    }
}