1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 package org.apache.myfaces.custom.ajaxchildcombobox;
20
21 import java.util.Map;
22
23 import javax.el.MethodExpression;
24
25 import junit.framework.Test;
26 import junit.framework.TestSuite;
27
28 import org.apache.myfaces.component.html.ext.HtmlSelectOneMenu;
29 import org.apache.myfaces.test.AbstractTomahawkViewControllerTestCase;
30 import org.apache.myfaces.test.utils.HtmlCheckAttributesUtil;
31 import org.apache.myfaces.test.utils.HtmlRenderedAttr;
32 import org.apache.shale.test.mock.MockResponseWriter;
33
34 public class HtmlAjaxChildComboBoxRendererTest extends AbstractTomahawkViewControllerTestCase
35 {
36 private MockResponseWriter writer;
37 private AjaxChildComboBox childComboBox;
38
39 public HtmlAjaxChildComboBoxRendererTest(String name)
40 {
41 super(name);
42 }
43
44 public static Test suite() {
45 return new TestSuite(HtmlAjaxChildComboBoxRendererTest.class);
46 }
47
48 public void setUp() throws Exception {
49 super.setUp();
50 writer = (MockResponseWriter)facesContext.getResponseWriter();
51 childComboBox = new AjaxChildComboBox();
52
53 HtmlSelectOneMenu parentMenu = new HtmlSelectOneMenu();
54 parentMenu.setId("parentCombo");
55 childComboBox.setParentComboBox("parentCombo");
56 childComboBox.setParent(parentMenu);
57 MethodExpression mExp = facesContext.getApplication().getExpressionFactory().createMethodExpression(
58 facesContext.getELContext(), "#{someBean.getItems}", Map.class, null);
59 childComboBox.setAjaxSelectItemsMethod(mExp);
60 }
61
62 public void tearDown() {
63 writer = null;
64 childComboBox = null;
65 }
66
67 public void testHtmlPropertyPassTru() throws Exception
68 {
69 HtmlRenderedAttr[] attrs = HtmlCheckAttributesUtil.generateBasicAttrs();
70
71 HtmlCheckAttributesUtil.checkRenderedAttributes(
72 childComboBox, facesContext, writer, attrs);
73 if(HtmlCheckAttributesUtil.hasFailedAttrRender(attrs))
74 {
75 fail(HtmlCheckAttributesUtil.constructErrorMessage(attrs, writer.getWriter().toString()));
76 }
77 }
78 }