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