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.behavior;
20
21 import javax.faces.component.UIComponent;
22 import javax.faces.component.behavior.AjaxBehavior;
23 import javax.faces.component.behavior.ClientBehaviorHolder;
24 import javax.faces.component.html.HtmlBody;
25
26 import org.apache.myfaces.shared.renderkit.ClientBehaviorEvents;
27 import org.apache.myfaces.shared.renderkit.html.HTML;
28 import org.junit.Assert;
29
30
31
32
33
34 public class HtmlBodyClientBehaviorRendererTest extends AbstractClientBehaviorTestCase
35 {
36 private HtmlRenderedClientEventAttr[] attrs = null;
37
38 @Override
39 public void setUp() throws Exception
40 {
41 super.setUp();
42 attrs = (HtmlRenderedClientEventAttr[])
43 org.apache.myfaces.shared.util.ArrayUtils.concat(
44 HtmlClientEventAttributesUtil.generateClientBehaviorEventAttrs(),
45 new HtmlRenderedClientEventAttr[]{
46 new HtmlRenderedClientEventAttr(HTML.ONLOAD_ATTR, ClientBehaviorEvents.LOAD),
47 new HtmlRenderedClientEventAttr(HTML.ONUNLOAD_ATTR, ClientBehaviorEvents.UNLOAD)
48 });
49 }
50
51 @Override
52 public void tearDown() throws Exception
53 {
54 super.tearDown();
55 attrs = null;
56 }
57
58 @Override
59 protected UIComponent createComponentToTest()
60 {
61 return new HtmlBody();
62 }
63
64 @Override
65 protected HtmlRenderedClientEventAttr[] getClientBehaviorHtmlRenderedAttributes()
66 {
67 return attrs;
68 }
69
70
71
72
73
74 public void testClientBehaviorHolderRendersIdAndName()
75 {
76 HtmlRenderedClientEventAttr[] attrs = getClientBehaviorHtmlRenderedAttributes();
77
78 for (int i = 0; i < attrs.length; i++)
79 {
80 UIComponent component = createComponentToTest();
81 ClientBehaviorHolder clientBehaviorHolder = (ClientBehaviorHolder) component;
82 clientBehaviorHolder.addClientBehavior(attrs[i].getClientEvent(), new AjaxBehavior());
83 try
84 {
85 component.encodeAll(facesContext);
86 String output = outputWriter.toString();
87 Assert.assertTrue(output.matches(".+ id=\".+\".+"));
88 outputWriter.reset();
89 }
90 catch (Exception e)
91 {
92 Assert.fail(e.getMessage());
93 }
94 }
95 }
96
97 }