1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 package org.apache.myfaces.renderkit.html;
20
21 import java.io.IOException;
22 import java.io.StringWriter;
23
24 import javax.faces.component.html.HtmlInputText;
25 import javax.faces.component.html.HtmlOutputText;
26
27 import junit.framework.Test;
28 import junit.framework.TestSuite;
29
30 import org.apache.myfaces.test.utils.HtmlCheckAttributesUtil;
31 import org.apache.myfaces.test.utils.HtmlRenderedAttr;
32 import org.apache.shale.test.base.AbstractJsfTestCase;
33 import org.apache.shale.test.mock.MockRenderKitFactory;
34 import org.apache.shale.test.mock.MockResponseWriter;
35
36
37
38
39
40 public class HtmlTextRendererTest extends AbstractJsfTestCase
41 {
42
43 public static Test suite()
44 {
45 return new TestSuite(HtmlTextRendererTest.class);
46 }
47
48 private MockResponseWriter writer ;
49 private HtmlOutputText outputText;
50 private HtmlInputText inputText;
51
52 public HtmlTextRendererTest(String name)
53 {
54 super(name);
55 }
56
57 public void setUp()
58 {
59 super.setUp();
60
61 outputText = new HtmlOutputText();
62 inputText = new HtmlInputText();
63
64 writer = new MockResponseWriter(new StringWriter(), null, null);
65 facesContext.setResponseWriter(writer);
66
67 facesContext.getViewRoot().setRenderKitId(MockRenderKitFactory.HTML_BASIC_RENDER_KIT);
68 facesContext.getRenderKit().addRenderer(
69 outputText.getFamily(),
70 outputText.getRendererType(),
71 new HtmlTextRenderer());
72 facesContext.getRenderKit().addRenderer(
73 inputText.getFamily(),
74 inputText.getRendererType(),
75 new HtmlTextRenderer());
76 }
77
78 public void tearDown()
79 {
80 super.tearDown();
81 outputText = null;
82 inputText = null;
83 writer = null;
84 }
85
86 public void testStyleClassAttr() throws IOException
87 {
88 outputText.setValue("Output");
89 outputText.setStyleClass("myStyleClass");
90
91 outputText.encodeEnd(facesContext);
92 facesContext.renderResponse();
93
94 String output = writer.getWriter().toString();
95
96 assertEquals("<span class=\"myStyleClass\">Output</span>", output);
97 assertNotSame("Output", output);
98 }
99
100 public void testHtmlPropertyPassTru() throws Exception
101 {
102 HtmlRenderedAttr[] attrs = HtmlCheckAttributesUtil.generateBasicAttrs();
103
104
105 HtmlCheckAttributesUtil.checkRenderedAttributes(
106 inputText, facesContext, writer, attrs);
107 if(HtmlCheckAttributesUtil.hasFailedAttrRender(attrs)) {
108 fail(HtmlCheckAttributesUtil.constructErrorMessage(attrs, writer.getWriter().toString()));
109 }
110 }
111 }