[richfaces-svn-commits] JBoss Rich Faces SVN: r380 - trunk/richfaces/menu-components/src/test/java/org/richfaces/component.
richfaces-svn-commits at lists.jboss.org
richfaces-svn-commits at lists.jboss.org
Thu Apr 12 05:33:50 EDT 2007
Author: F.antonov
Date: 2007-04-12 05:33:50 -0400 (Thu, 12 Apr 2007)
New Revision: 380
Modified:
trunk/richfaces/menu-components/src/test/java/org/richfaces/component/MenuItemComponentTest.java
Log:
MenuItem test cases development.
Modified: trunk/richfaces/menu-components/src/test/java/org/richfaces/component/MenuItemComponentTest.java
===================================================================
--- trunk/richfaces/menu-components/src/test/java/org/richfaces/component/MenuItemComponentTest.java 2007-04-12 09:22:43 UTC (rev 379)
+++ trunk/richfaces/menu-components/src/test/java/org/richfaces/component/MenuItemComponentTest.java 2007-04-12 09:33:50 UTC (rev 380)
@@ -31,228 +31,248 @@
import javax.faces.component.html.HtmlForm;
import javax.faces.component.html.HtmlOutputText;
import javax.faces.event.PhaseId;
+import javax.servlet.http.HttpServletResponse;
import org.richfaces.component.html.HtmlMenuItem;
+import com.gargoylesoftware.htmlunit.Page;
import com.gargoylesoftware.htmlunit.html.HtmlPage;
import com.gargoylesoftware.htmlunit.html.HtmlElement;
import com.gargoylesoftware.htmlunit.html.HtmlScript;
+import org.ajax4jsf.framework.resource.InternetResource;
+import org.ajax4jsf.framework.resource.InternetResourceBuilder;
+import org.ajax4jsf.framework.resource.ResourceBuilderImpl;
+import org.ajax4jsf.framework.util.image.ImageInfo;
import org.ajax4jsf.tests.AbstractAjax4JsfTestCase;
import org.ajax4jsf.tests.MockViewRoot;
import org.apache.commons.collections.Buffer;
import org.apache.commons.lang.StringUtils;
-
-
/**
* Unit test for MenuItem Component.
*/
-public class MenuItemComponentTest
- extends AbstractAjax4JsfTestCase
-{
- private static Set javaScripts = new HashSet();
-
- static {
+public class MenuItemComponentTest extends AbstractAjax4JsfTestCase {
+ private static Set javaScripts = new HashSet();
+
+ static {
javaScripts.add("prototype.js");
javaScripts.add("AjaxScript");
javaScripts.add("CommandScript");
- }
-
- private UIMenuItem menuItem;
- private UIForm form;
-
+ }
+
+ private UIMenuItem menuItem;
+
+ private UIForm form;
+
/**
* Create the test case
- *
- * @param testName name of the test case
+ *
+ * @param testName
+ * name of the test case
*/
- public MenuItemComponentTest( String testName )
- {
- super( testName );
+ public MenuItemComponentTest(String testName) {
+ super(testName);
}
-
+
public void setUp() throws Exception {
- super.setUp();
-
- form = new HtmlForm();
+ super.setUp();
+
+ form = new HtmlForm();
form.setId("form");
facesContext.getViewRoot().getChildren().add(form);
- menuItem = (UIMenuItem) application.createComponent(HtmlMenuItem.COMPONENT_TYPE);
- menuItem.setId("menuItem");
- menuItem.setValue("Menu Item");
-
- form.getChildren().add(menuItem);
+ menuItem = (UIMenuItem) application
+ .createComponent(HtmlMenuItem.COMPONENT_TYPE);
+ menuItem.setId("menuItem");
+ menuItem.setValue("Menu Item");
+
+ form.getChildren().add(menuItem);
}
public void tearDown() throws Exception {
- super.tearDown();
- menuItem = null;
- form = null;
+ super.tearDown();
+ menuItem = null;
+ form = null;
}
/**
* MenuItem rendering test.
*/
- public void testMenuItemRender() throws Exception
- {
- menuItem.setMode(MenuComponent.MODE_NONE);
- HtmlPage page = renderView();
+ public void testMenuItemRender() throws Exception {
+ menuItem.setMode(MenuComponent.MODE_NONE);
+ HtmlPage page = renderView();
assertNotNull(page);
- //System.out.println(page.asXml());
- HtmlElement div = page.getHtmlElementById(menuItem.getClientId(facesContext));
+ // System.out.println(page.asXml());
+ HtmlElement div = page.getHtmlElementById(menuItem
+ .getClientId(facesContext));
assertNotNull(div);
assertEquals("div", div.getNodeName());
}
-
+
/**
* MenuItem facet test.
*/
- public void testMenuItemIconFacet() throws Exception
- {
- UIComponent text = createComponent(HtmlOutputText.COMPONENT_TYPE, HtmlOutputText.class.getName(), null, null , null);
- menuItem.getFacets().put("iconDisabled", text);
- HtmlPage page = renderView();
+ public void testMenuItemIconFacet() throws Exception {
+ UIComponent text = createComponent(HtmlOutputText.COMPONENT_TYPE,
+ HtmlOutputText.class.getName(), null, null, null);
+ menuItem.getFacets().put("iconDisabled", text);
+ HtmlPage page = renderView();
assertNotNull(page);
- //System.out.println(page.asXml());
- HtmlElement span = page.getHtmlElementById(menuItem.getClientId(facesContext) + ":icon");
+ // System.out.println(page.asXml());
+ HtmlElement span = page.getHtmlElementById(menuItem
+ .getClientId(facesContext)
+ + ":icon");
assertEquals("span", span.getNodeName());
assertNotNull(span);
}
-
+
/**
* Test for MenuItem disabled component.
*/
- public void testDisabledMenuItem() throws Exception
- {
- menuItem.setDisabled(true);
- menuItem.getAttributes().put("iconDisabled", "menuItemIconDisabled");
- HtmlPage page = renderView();
+ public void testDisabledMenuItem() throws Exception {
+ menuItem.setDisabled(true);
+ menuItem.getAttributes().put("iconDisabled", "menuItemIconDisabled");
+ HtmlPage page = renderView();
assertNotNull(page);
- System.out.println(page.asXml());
-
- HtmlElement span = page.getHtmlElementById(menuItem.getClientId(facesContext) + ":disabled");
+ // System.out.println(page.asXml());
+
+ HtmlElement span = page.getHtmlElementById(menuItem
+ .getClientId(facesContext)
+ + ":disabled");
assertNotNull(span);
- assertEquals("span", span.getNodeName());
+ assertEquals("span", span.getNodeName());
String classAttr = span.getAttributeValue("class");
- assertTrue(classAttr.contains("dr-menu-label dr-menu-label-disabled rich-menu-item-label rich-menu-item-label-disabled"));
-
- span = page.getHtmlElementById(menuItem.getClientId(facesContext) + ":icon");
+ assertTrue(classAttr
+ .contains("dr-menu-label dr-menu-label-disabled rich-menu-item-label rich-menu-item-label-disabled"));
+
+ span = page.getHtmlElementById(menuItem.getClientId(facesContext)
+ + ":icon");
assertNotNull(span);
- assertEquals("span", span.getNodeName());
+ assertEquals("span", span.getNodeName());
classAttr = span.getAttributeValue("class");
- assertTrue(classAttr.contains("dr-menu-icon rich-menu-item-icon dr-menu-icon-disabled rich-menu-item-icon-disabled"));
-
- HtmlElement div = page.getHtmlElementById(menuItem.getClientId(facesContext));
+ assertTrue(classAttr
+ .contains("dr-menu-icon rich-menu-item-icon dr-menu-icon-disabled rich-menu-item-icon-disabled"));
+
+ HtmlElement div = page.getHtmlElementById(menuItem
+ .getClientId(facesContext));
assertNotNull(div);
- assertEquals("div", div.getNodeName());
+ assertEquals("div", div.getNodeName());
classAttr = div.getAttributeValue("class");
- assertTrue(classAttr.contains("dr-menu-item dr-menu-item-disabled rich-menu-item rich-menu-item-disabled"));
+ assertTrue(classAttr
+ .contains("dr-menu-item dr-menu-item-disabled rich-menu-item rich-menu-item-disabled"));
classAttr = div.getAttributeValue("onmouseout");
assertEquals(0, classAttr.length());
classAttr = div.getAttributeValue("onmouseover");
assertEquals(0, classAttr.length());
}
-
+
/**
* Test for enabled MenuItem component in "server" mode.
- */
- public void testEnabledMenuItemServerMode() throws Exception
- {
- assertEquals(false, menuItem.isDisabled());
- menuItem.getAttributes().put("iconClass", "iconClass");
- menuItem.setMode(MenuComponent.MODE_SERVER);
- menuItem.getAttributes().put("target", "target");
- menuItem.getAttributes().put("selectStyle", "menuItemSelectStyle");
- HtmlPage page = renderView();
+ */
+ public void testEnabledMenuItemServerMode() throws Exception {
+ assertEquals(false, menuItem.isDisabled());
+ menuItem.getAttributes().put("iconClass", "iconClass");
+ menuItem.setMode(MenuComponent.MODE_SERVER);
+ menuItem.getAttributes().put("target", "target");
+ menuItem.getAttributes().put("selectStyle", "menuItemSelectStyle");
+ HtmlPage page = renderView();
assertNotNull(page);
- System.out.println(page.asXml());
-
- HtmlElement anchor = page.getHtmlElementById(menuItem.getClientId(facesContext) + ":anchor");
+ // System.out.println(page.asXml());
+
+ HtmlElement anchor = page.getHtmlElementById(menuItem
+ .getClientId(facesContext)
+ + ":anchor");
assertNotNull(anchor);
- assertEquals("a", anchor.getNodeName());
+ assertEquals("a", anchor.getNodeName());
String classAttr = anchor.getAttributeValue("class");
assertTrue(classAttr.contains("dr-menu-label rich-menu-item-label"));
-
- HtmlElement span = page.getHtmlElementById(menuItem.getClientId(facesContext) + ":icon");
+
+ HtmlElement span = page.getHtmlElementById(menuItem
+ .getClientId(facesContext)
+ + ":icon");
assertNotNull(span);
- assertEquals("span", span.getNodeName());
+ assertEquals("span", span.getNodeName());
classAttr = span.getAttributeValue("class");
assertTrue(classAttr.contains("dr-menu-icon rich-menu-item-icon"));
- assertTrue(classAttr.contains((String) menuItem.getAttributes().get("iconClass")));
-
- HtmlElement div = page.getHtmlElementById(menuItem.getClientId(facesContext));
+ assertTrue(classAttr.contains((String) menuItem.getAttributes().get(
+ "iconClass")));
+
+ HtmlElement div = page.getHtmlElementById(menuItem
+ .getClientId(facesContext));
assertNotNull(div);
- assertEquals("div", div.getNodeName());
+ assertEquals("div", div.getNodeName());
classAttr = div.getAttributeValue("class");
- assertTrue(classAttr.contains("dr-menu-item dr-menu-item-enabled rich-menu-item rich-menu-item-enabled"));
+ assertTrue(classAttr
+ .contains("dr-menu-item dr-menu-item-enabled rich-menu-item rich-menu-item-enabled"));
classAttr = div.getAttributeValue("onclick");
assertNotNull(classAttr);
assertTrue(classAttr.length() > 0);
classAttr = div.getAttributeValue("onmouseover");
- assertTrue(classAttr.contains("menuItemSelectStyle"));
+ assertTrue(classAttr.contains("menuItemSelectStyle"));
}
-
+
/**
* Test for enabled MenuItem component in "ajax" mode.
- */
- public void testEnabledMenuItemAJAXMode() throws Exception
- {
- menuItem.setMode(MenuComponent.MODE_AJAX);
- menuItem.getAttributes().put("style", "menuItemStyle");
- HtmlPage page = renderView();
+ */
+ public void testEnabledMenuItemAJAXMode() throws Exception {
+ menuItem.setMode(MenuComponent.MODE_AJAX);
+ menuItem.getAttributes().put("style", "menuItemStyle");
+ HtmlPage page = renderView();
assertNotNull(page);
- //System.out.println(page.asXml());
-
- HtmlElement div = page.getHtmlElementById(menuItem.getClientId(facesContext));
- assertNotNull(div);
+ // System.out.println(page.asXml());
+
+ HtmlElement div = page.getHtmlElementById(menuItem
+ .getClientId(facesContext));
+ assertNotNull(div);
String classAttr = div.getAttributeValue("onclick");
assertTrue(classAttr.contains("AJAX"));
classAttr = div.getAttributeValue("style");
- assertTrue(classAttr.contains("menuItemStyle"));
+ assertTrue(classAttr.contains("menuItemStyle"));
}
-
+
/**
* Test for enabled MenuItem component in "none" mode.
- */
- public void testEnabledMenuItemNoneMode() throws Exception
- {
- menuItem.setMode(MenuComponent.MODE_NONE);
- HtmlPage page = renderView();
+ */
+ public void testEnabledMenuItemNoneMode() throws Exception {
+ menuItem.setMode(MenuComponent.MODE_NONE);
+ HtmlPage page = renderView();
assertNotNull(page);
- //System.out.println(page.asXml());
-
- HtmlElement div = page.getHtmlElementById(menuItem.getClientId(facesContext));
+ // System.out.println(page.asXml());
+
+ HtmlElement div = page.getHtmlElementById(menuItem
+ .getClientId(facesContext));
assertNotNull(div);
String classAttr = div.getAttributeValue("onclick");
assertNotNull(classAttr);
- assertTrue(classAttr.length() > 0);
+ assertTrue(classAttr.length() > 0);
}
-
+
/**
* CSS link test.
- */
+ */
public void testRenderStyle() throws Exception {
HtmlPage page = renderView();
assertNotNull(page);
List links = page.getDocumentElement().getHtmlElementsByTagName("link");
- //Assert.assertEquals(1, links.size());
+ // assertEquals(1, links.size());
assertNotNull(links);
HtmlElement link = (HtmlElement) links.get(0);
- assertTrue(link.getAttributeValue("href").contains("org/richfaces/renderkit/html/css/menucomponents.xcss"));
+ assertTrue(link.getAttributeValue("href").contains(
+ "org/richfaces/renderkit/html/css/menucomponents.xcss"));
}
-
+
/**
* Scripts link test.
- */
+ */
public void testRenderScript() throws Exception {
- HtmlPage page = renderView();
+ HtmlPage page = renderView();
assertNotNull(page);
- System.out.println(page.asXml());
-
- List scripts = page.getDocumentElement().getHtmlElementsByTagName("script");
+ // System.out.println(page.asXml());
+
+ List scripts = page.getDocumentElement().getHtmlElementsByTagName(
+ "script");
for (Iterator it = scripts.iterator(); it.hasNext();) {
HtmlScript item = (HtmlScript) it.next();
String srcAttr = item.getSrcAttribute();
@@ -272,39 +292,62 @@
}
}
}
-
+
/**
* DoDecode method trst. Component in "AJAX" mode. Immediate is true.
- */
+ */
public void testMenuItemDoDecodeAJAXMode() throws Exception {
-
- menuItem.setImmediate(true);
- menuItem.setMode(MenuComponent.MODE_AJAX);
-
- externalContext.getRequestParameterMap().put(menuItem.getClientId(facesContext), "Action");
- menuItem.decode(facesContext);
-
- MockViewRoot mockViewRoot = (MockViewRoot) facesContext.getViewRoot();
- Buffer events = mockViewRoot.getEventsQueue(facesContext, PhaseId.APPLY_REQUEST_VALUES);
- assertNotNull(events);
- assertEquals(1, events.size());
+
+ menuItem.setImmediate(true);
+ menuItem.setMode(MenuComponent.MODE_AJAX);
+
+ externalContext.getRequestParameterMap().put(
+ menuItem.getClientId(facesContext), "Action");
+ menuItem.decode(facesContext);
+
+ MockViewRoot mockViewRoot = (MockViewRoot) facesContext.getViewRoot();
+ Buffer events = mockViewRoot.getEventsQueue(facesContext,
+ PhaseId.APPLY_REQUEST_VALUES);
+ assertNotNull(events);
+ assertEquals(1, events.size());
}
-
+
/**
* DoDecode method trst. Component in "server" mode. Immediate is false.
- */
+ */
public void testMenuItemDoDecodeServerMode() throws Exception {
-
- menuItem.setImmediate(false);
- menuItem.setMode(MenuComponent.MODE_SERVER);
-
- externalContext.getRequestParameterMap().put(menuItem.getClientId(facesContext) + ":hidden", "Action");
- menuItem.decode(facesContext);
-
- MockViewRoot mockViewRoot = (MockViewRoot) facesContext.getViewRoot();
- Buffer events = mockViewRoot.getEventsQueue(facesContext, PhaseId.INVOKE_APPLICATION);
- assertNotNull(events);
- assertEquals(1, events.size());
+
+ menuItem.setImmediate(false);
+ menuItem.setMode(MenuComponent.MODE_SERVER);
+
+ externalContext.getRequestParameterMap().put(
+ menuItem.getClientId(facesContext) + ":hidden", "Action");
+ menuItem.decode(facesContext);
+
+ MockViewRoot mockViewRoot = (MockViewRoot) facesContext.getViewRoot();
+ Buffer events = mockViewRoot.getEventsQueue(facesContext,
+ PhaseId.INVOKE_APPLICATION);
+ assertNotNull(events);
+ assertEquals(1, events.size());
}
-
+
+ /**
+ * Test accessibility of static image resource.
+ */
+ public void testMenuItemDefaultIconImage() throws Exception {
+
+ renderView();
+ InternetResourceBuilder builder = ResourceBuilderImpl.getInstance();
+ String iconImage = "org/richfaces/renderkit/html/images/spacer.gif";
+ InternetResource resource = builder.getResource(iconImage);
+ assertNotNull(resource);
+ String uri = "http:" + resource.getUri(facesContext, null);
+ Page page = webClient.getPage(uri);
+ assertTrue(page.getWebResponse().getStatusCode() == HttpServletResponse.SC_OK);
+ ImageInfo info = new ImageInfo();
+ info.setInput(page.getWebResponse().getContentAsStream());
+ assertTrue(info.check());
+ assertEquals(ImageInfo.FORMAT_GIF, info.getFormat());
+ }
+
}
More information about the richfaces-svn-commits
mailing list