1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 package org.apache.myfaces.custom.tree.renderkit.html;
20
21 import javax.el.ValueExpression;
22
23 import junit.framework.Test;
24 import junit.framework.TestSuite;
25
26 import org.apache.myfaces.custom.tree.HtmlTree;
27 import org.apache.myfaces.custom.tree.model.DefaultTreeModel;
28 import org.apache.myfaces.test.AbstractTomahawkViewControllerTestCase;
29 import org.apache.myfaces.test.mock.MockResponseWriter;
30 import org.apache.myfaces.test.utils.HtmlCheckAttributesUtil;
31 import org.apache.myfaces.test.utils.HtmlRenderedAttr;
32
33 public class HtmlTreeRendererTest extends AbstractTomahawkViewControllerTestCase
34 {
35 private HtmlTree tree;
36
37 public HtmlTreeRendererTest(String name)
38 {
39 super(name);
40 }
41
42 public static Test suite() {
43 return new TestSuite(HtmlTreeRendererTest.class);
44 }
45
46 public void setUp() throws Exception
47 {
48 super.setUp();
49 tree = new HtmlTree();
50 facesContext.getApplication().addComponent("org.apache.myfaces.HtmlTreeNode", "org.apache.myfaces.custom.tree.HtmlTreeNode");
51 facesContext.getApplication().addComponent("org.apache.myfaces.HtmlTreeImageCommandLink", "org.apache.myfaces.custom.tree.HtmlTreeImageCommandLink");
52
53 DefaultTreeModel treeModel = new DefaultTreeModel();
54 ValueExpression v = facesContext.getApplication().getExpressionFactory().createValueExpression(facesContext.getELContext(), "#{model}", treeModel.getClass());
55 facesContext.getExternalContext().getRequestMap().put("model", treeModel);
56 tree.setValueExpression("model", v);
57 }
58
59 public void tearDown() throws Exception
60 {
61 super.tearDown();
62 tree = null;
63 }
64
65 public void testHtmlPropertyPassTru() throws Exception
66 {
67 HtmlRenderedAttr[] attrs = HtmlCheckAttributesUtil.generateBasicReadOnlyAttrs();
68
69 MockResponseWriter writer = (MockResponseWriter)facesContext.getResponseWriter();
70 HtmlCheckAttributesUtil.checkRenderedAttributes(
71 tree, facesContext, writer, attrs);
72 if(HtmlCheckAttributesUtil.hasFailedAttrRender(attrs))
73 {
74 fail(HtmlCheckAttributesUtil.constructErrorMessage(attrs, writer.getWriter().toString()));
75 }
76 }
77
78 public void testHtmlPropertyPassTruNotRendered() throws Exception
79 {
80 HtmlRenderedAttr[] attrs = HtmlCheckAttributesUtil.generateAttrsNotRenderedForReadOnly();
81
82 MockResponseWriter writer = (MockResponseWriter)facesContext.getResponseWriter();
83 HtmlCheckAttributesUtil.checkRenderedAttributes(
84 tree, facesContext, writer, attrs);
85 if(HtmlCheckAttributesUtil.hasFailedAttrRender(attrs))
86 {
87 fail(HtmlCheckAttributesUtil.constructErrorMessage(attrs, writer.getWriter().toString()));
88 }
89 }
90 }