View Javadoc

1   /*
2    * Licensed to the Apache Software Foundation (ASF) under one
3    * or more contributor license agreements.  See the NOTICE file
4    * distributed with this work for additional information
5    * regarding copyright ownership.  The ASF licenses this file
6    * to you under the Apache License, Version 2.0 (the
7    * "License"); you may not use this file except in compliance
8    * with the License.  You may obtain a copy of the License at
9    *
10   *   http://www.apache.org/licenses/LICENSE-2.0
11   *
12   * Unless required by applicable law or agreed to in writing,
13   * software distributed under the License is distributed on an
14   * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15   * KIND, either express or implied.  See the License for the
16   * specific language governing permissions and limitations
17   * under the License.
18   */
19  package org.apache.myfaces.custom.tree.renderkit.html;
20  
21  import junit.framework.Test;
22  import junit.framework.TestSuite;
23  
24  import org.apache.myfaces.custom.tree.HtmlTreeImageCommandLink;
25  import org.apache.myfaces.test.AbstractTomahawkViewControllerTestCase;
26  import org.apache.myfaces.test.mock.MockResponseWriter;
27  import org.apache.myfaces.test.utils.HtmlCheckAttributesUtil;
28  import org.apache.myfaces.test.utils.HtmlRenderedAttr;
29  
30  public class HtmlTreeImageCommandLinkRendererTest extends AbstractTomahawkViewControllerTestCase
31  {
32      private HtmlTreeImageCommandLink treeCommandLink;
33      
34      public HtmlTreeImageCommandLinkRendererTest(String name)
35      {
36          super(name);
37      }
38  
39      public static Test suite() {
40          return new TestSuite(HtmlTreeImageCommandLinkRendererTest.class);
41      }
42      
43      public void setUp() throws Exception
44      {
45          super.setUp();
46          treeCommandLink = new HtmlTreeImageCommandLink();
47          facesContext.getApplication().addComponent("org.apache.myfaces.HtmlTreeImageCommandLink", "org.apache.myfaces.custom.tree.HtmlTreeImageCommandLink");        
48      }
49      
50      public void tearDown() throws Exception 
51      {
52          super.tearDown();
53          treeCommandLink = null;
54      }
55      
56      public void testHtmlPropertyPassTru() throws Exception
57      {
58          HtmlRenderedAttr[] attrs = {
59              //_AccesskeyProperty
60              new HtmlRenderedAttr("accesskey"),
61              //_UniversalProperties
62              new HtmlRenderedAttr("dir"), 
63              new HtmlRenderedAttr("lang"), 
64              new HtmlRenderedAttr("title"),
65              //_FocusBlurProperties
66              new HtmlRenderedAttr("onfocus"), 
67              new HtmlRenderedAttr("onblur"),
68              //_EventProperties
69              new HtmlRenderedAttr("onclick", "onclick", "return jsf.util.chain(document.getElementById('j_id0'), event,'onclick', 'return myfaces.oam.submitForm(\\'linkDummyForm\\',\\'j_id0\\');');"), 
70              new HtmlRenderedAttr("ondblclick"), 
71              new HtmlRenderedAttr("onkeydown"), 
72              new HtmlRenderedAttr("onkeypress"),
73              new HtmlRenderedAttr("onkeyup"), 
74              new HtmlRenderedAttr("onmousedown"), 
75              new HtmlRenderedAttr("onmousemove"), 
76              new HtmlRenderedAttr("onmouseout"),
77              new HtmlRenderedAttr("onmouseover"), 
78              new HtmlRenderedAttr("onmouseup"),
79              //_StyleProperties
80              new HtmlRenderedAttr("style"), 
81              new HtmlRenderedAttr("styleClass", "styleClass", "class=\"styleClass\""),
82              //_TabindexProperty
83              new HtmlRenderedAttr("tabindex")
84          };
85          
86          MockResponseWriter writer = (MockResponseWriter)facesContext.getResponseWriter();
87          HtmlCheckAttributesUtil.checkRenderedAttributes(
88                  treeCommandLink, facesContext, writer, attrs);
89          if(HtmlCheckAttributesUtil.hasFailedAttrRender(attrs)) {
90              fail(HtmlCheckAttributesUtil.constructErrorMessage(attrs, writer.getWriter().toString()));
91          }
92      }
93  }