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.faces.el.ValueBinding;
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.utils.HtmlCheckAttributesUtil;
30 import org.apache.myfaces.test.utils.HtmlRenderedAttr;
31 import org.apache.shale.test.mock.MockResponseWriter;
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 ValueBinding vb = facesContext.getApplication().createValueBinding("#{model}");
55 facesContext.getExternalContext().getRequestMap().put("model", treeModel);
56 tree.setValueBinding("model", vb);
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
70
71 MockResponseWriter writer = (MockResponseWriter)facesContext.getResponseWriter();
72 HtmlCheckAttributesUtil.checkRenderedAttributes(
73 tree, facesContext, writer, attrs);
74 if(HtmlCheckAttributesUtil.hasFailedAttrRender(attrs))
75 {
76 fail(HtmlCheckAttributesUtil.constructErrorMessage(attrs, writer.getWriter().toString()));
77 }
78 }
79
80 public void testHtmlPropertyPassTruNotRendered() throws Exception
81 {
82 HtmlRenderedAttr[] attrs = HtmlCheckAttributesUtil.generateAttrsNotRenderedForReadOnly();
83
84 MockResponseWriter writer = (MockResponseWriter)facesContext.getResponseWriter();
85 HtmlCheckAttributesUtil.checkRenderedAttributes(
86 tree, facesContext, writer, attrs);
87 if(HtmlCheckAttributesUtil.hasFailedAttrRender(attrs))
88 {
89 fail(HtmlCheckAttributesUtil.constructErrorMessage(attrs, writer.getWriter().toString()));
90 }
91 }
92 }