Author: jjamrich
Date: 2012-01-20 09:20:39 -0500 (Fri, 20 Jan 2012)
New Revision: 23168
Modified:
modules/tests/metamer/branches/contextMenu/ftest-source/src/main/java/org/richfaces/tests/metamer/ftest/richContextMenu/TestRichContextMenu.java
Log:
RFPL-10197: add new tests and fix contextMenu locator
Modified:
modules/tests/metamer/branches/contextMenu/ftest-source/src/main/java/org/richfaces/tests/metamer/ftest/richContextMenu/TestRichContextMenu.java
===================================================================
---
modules/tests/metamer/branches/contextMenu/ftest-source/src/main/java/org/richfaces/tests/metamer/ftest/richContextMenu/TestRichContextMenu.java 2012-01-20
14:20:26 UTC (rev 23167)
+++
modules/tests/metamer/branches/contextMenu/ftest-source/src/main/java/org/richfaces/tests/metamer/ftest/richContextMenu/TestRichContextMenu.java 2012-01-20
14:20:39 UTC (rev 23168)
@@ -22,14 +22,12 @@
package org.richfaces.tests.metamer.ftest.richContextMenu;
import static org.jboss.test.selenium.guard.request.RequestTypeGuardFactory.guardHttp;
+import static
org.jboss.test.selenium.guard.request.RequestTypeGuardFactory.guardNoRequest;
+import static org.jboss.test.selenium.guard.request.RequestTypeGuardFactory.guardXhr;
import static org.jboss.test.selenium.locator.LocatorFactory.jq;
import static org.jboss.test.selenium.utils.URLUtils.buildUrl;
import static
org.richfaces.tests.metamer.ftest.attributes.AttributeList.contextMenuAttributes;
-import static
org.richfaces.tests.metamer.ftest.richContextMenu.ContextMenuAttributes.attachTo;
-import static
org.richfaces.tests.metamer.ftest.richContextMenu.ContextMenuAttributes.dir;
-import static
org.richfaces.tests.metamer.ftest.richContextMenu.ContextMenuAttributes.disabled;
-import static
org.richfaces.tests.metamer.ftest.richContextMenu.ContextMenuAttributes.hideDelay;
-import static
org.richfaces.tests.metamer.ftest.richContextMenu.ContextMenuAttributes.showEvent;
+import static org.richfaces.tests.metamer.ftest.richContextMenu.ContextMenuAttributes.*;
import static org.testng.Assert.assertFalse;
import static org.testng.Assert.assertTrue;
@@ -38,9 +36,12 @@
import org.jboss.test.selenium.dom.Event;
import org.jboss.test.selenium.geometry.Point;
import org.jboss.test.selenium.locator.Attribute;
+import org.jboss.test.selenium.locator.AttributeLocator;
import org.jboss.test.selenium.locator.ElementLocator;
import org.jboss.test.selenium.locator.JQueryLocator;
+import org.jboss.test.selenium.locator.LocatorFactory;
import org.jboss.test.selenium.waiting.EventFiredCondition;
+import org.jboss.test.selenium.waiting.selenium.SeleniumCondition;
import org.richfaces.tests.metamer.ftest.AbstractMetamerTest;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -60,7 +61,7 @@
private String menuElemId = "panelClick";
private JQueryLocator menuElem = menuElemFormat.format(menuElemId);
// contextMenu elem is always present (and selenium consider it as displayed and
visible as well)
- private JQueryLocator contextMenu = jq("div[id$=:ctxmenu]");
+ private JQueryLocator contextMenu = jq("div[id$=:ctxMenu]");
private JQueryLocator ctxMenuItemFormat = jq("div.rf-ctx-itm:eq({0})");
// content display is triggered by action
@@ -160,14 +161,33 @@
}
- // @Test
- public void testLang() {
-
+ @Test
+ public void testLang() {
+ String langVal = "cs";
+ contextMenuAttributes.set(lang, langVal);
+ //clickOnTarget(menuElem);
+
waitModel.until(attributeEquals.locator(contextMenu.getAttribute(Attribute.LANG)).text(langVal));
}
- // @Test
+ @Test
public void testMode() {
-
+
+ contextMenuAttributes.set(showEvent, "click");
+ Point position = selenium.getElementPosition(menuElem);
+
+ // ajax
+ contextMenuAttributes.set(mode, "ajax");
+ selenium.clickAt(menuElem, position.minus(new Point(0, 70)));
+ guardXhr(selenium).click(ctxMenuItemFormat.format("0"));
+
+ // client
+ contextMenuAttributes.set(mode, "client");
+ guardNoRequest(selenium).clickAt(menuElem, position.minus(new Point(0, 70)));
+
+ // server
+ contextMenuAttributes.set(mode, "server");
+ guardHttp(selenium).clickAt(menuElem, position.minus(new Point(0, 70)));
+
}
@Test
@@ -190,9 +210,22 @@
}
- // @Test
+ @Test
public void testOnhide() {
+ contextMenuAttributes.set(hideDelay, "20");
+ // contextMenuAttributes.set(showEvent, "click");
+ String value = "metamerEvents += \"hide\"";
+ ElementLocator<?> eventInput = pjq("input[id$=onhideInput]");
+
+ guardHttp(selenium).type(eventInput, value);
+ clickOnTarget(menuElem);
+ clickOnTarget(menuElem);
+ // selenium.clickAt(menuElem, new Point(-10, -100));
+
+ waitGui.failWith("Attribute onhide does not work correctly").until(
+ new EventFiredCondition(new Event("hide")));
+
}
@Test
Show replies by date