Author: thomas.heute(a)jboss.com
Date: 2008-10-27 12:46:16 -0400 (Mon, 27 Oct 2008)
New Revision: 12187
Modified:
tags/JBoss_Portal_2_7_0/core-admin/src/main/org/jboss/portal/core/admin/ui/coordination/AliasBindingManagerBean.java
tags/JBoss_Portal_2_7_0/core-admin/src/main/org/jboss/portal/core/admin/ui/coordination/CoordinationManagerBean.java
tags/JBoss_Portal_2_7_0/core-admin/src/main/org/jboss/portal/core/admin/ui/coordination/EventWiringManagerBean.java
tags/JBoss_Portal_2_7_0/core-admin/src/main/org/jboss/portal/core/admin/ui/coordination/ParameterBindingManagerBean.java
tags/JBoss_Portal_2_7_0/core-admin/src/resources/portal-admin-war/jsf/editCoordination.xhtml
tags/JBoss_Portal_2_7_0/testsuite/ui-tests/selenium-rc-server/user-extensions.js
tags/JBoss_Portal_2_7_0/testsuite/ui-tests/src/org/jboss/portal/test/selenium/DashboardTestCase.java
tags/JBoss_Portal_2_7_0/testsuite/ui-tests/src/org/jboss/portal/test/selenium/IdentityAdminTestCase.java
tags/JBoss_Portal_2_7_0/testsuite/ui-tests/src/org/jboss/portal/test/selenium/portal/DashboardsTestCase.java
Log:
- identity admin testcase fix
- dashboardtestcase fixed, extensions added
- JBPORTAL-2213: fix support for fallback handling of coordination i.e. implicit handling
at page level but with some explicit elements.
Modified:
tags/JBoss_Portal_2_7_0/core-admin/src/main/org/jboss/portal/core/admin/ui/coordination/AliasBindingManagerBean.java
===================================================================
---
tags/JBoss_Portal_2_7_0/core-admin/src/main/org/jboss/portal/core/admin/ui/coordination/AliasBindingManagerBean.java 2008-10-27
16:40:24 UTC (rev 12186)
+++
tags/JBoss_Portal_2_7_0/core-admin/src/main/org/jboss/portal/core/admin/ui/coordination/AliasBindingManagerBean.java 2008-10-27
16:46:16 UTC (rev 12187)
@@ -83,7 +83,7 @@
this.originalQNames = originalQNames;
}
- public void loadInfoFrom(Page page)
+ public boolean loadInfoFrom(Page page)
{
Collection<? extends AliasBindingInfo> bindings =
managerBean.getCoordinationService().getAliasBindings(page);
if (!bindings.isEmpty())
@@ -93,16 +93,18 @@
{
displayAliasBindings.put(binding.getName(), new
DisplayAliasBinding(binding));
}
+ return true;
}
else
{
displayAliasBindings = Collections.emptyMap();
+ return false;
}
}
public List<DisplayAliasBinding> getDisplayAliasBindings()
{
- if (displayAliasBindings == null)
+ if (displayAliasBindings == null || displayAliasBindings.isEmpty())
{
return Collections.emptyList();
}
Modified:
tags/JBoss_Portal_2_7_0/core-admin/src/main/org/jboss/portal/core/admin/ui/coordination/CoordinationManagerBean.java
===================================================================
---
tags/JBoss_Portal_2_7_0/core-admin/src/main/org/jboss/portal/core/admin/ui/coordination/CoordinationManagerBean.java 2008-10-27
16:40:24 UTC (rev 12186)
+++
tags/JBoss_Portal_2_7_0/core-admin/src/main/org/jboss/portal/core/admin/ui/coordination/CoordinationManagerBean.java 2008-10-27
16:46:16 UTC (rev 12187)
@@ -69,23 +69,23 @@
private enum CoordinationType
{
wiring()
- {
- String localizationKey()
- {
- return "COORDINATION_WIRING";
- }},
+ {
+ String localizationKey()
+ {
+ return "COORDINATION_WIRING";
+ }},
parameter()
- {
- String localizationKey()
- {
- return "COORDINATION_PARAMETER";
- }},
+ {
+ String localizationKey()
+ {
+ return "COORDINATION_PARAMETER";
+ }},
alias()
- {
- String localizationKey()
- {
- return "COORDINATION_ALIAS";
- }};
+ {
+ String localizationKey()
+ {
+ return "COORDINATION_ALIAS";
+ }};
private CoordinationBean bean;
@@ -125,7 +125,13 @@
this.managerBean = managerBean;
}
- public abstract void loadInfoFrom(Page page);
+ /**
+ * Loads the specific coordination information from the specified page data.
+ *
+ * @param page the page from which coordination information is to be loaded
+ * @return <code>true</code> if specific information existed and was
loaded, <code>false</code> otherwise
+ */
+ public abstract boolean loadInfoFrom(Page page);
public abstract String delete(String name) throws IllegalCoordinationException;
@@ -286,18 +292,11 @@
Page selectedPage = getSelectedPage();
- boolean explicitEventsUsed = isExplicitEventsUsed();
- boolean explicitParametersUsed = isExplicitParametersUsed();
-
+ // always load information since we might be in a fallback situation i.e.
explicit handling is disabled
+ // for the page but some explicit elements are still defined (possible in XML)
aliasManager.loadInfoFrom(selectedPage);
- if (explicitEventsUsed)
- {
- eventManager.loadInfoFrom(selectedPage);
- }
- if (explicitParametersUsed)
- {
- parameterManager.loadInfoFrom(selectedPage);
- }
+ boolean explicitEventsUsed = eventManager.loadInfoFrom(selectedPage);
+ boolean explicitParametersUsed = parameterManager.loadInfoFrom(selectedPage);
Collection<PortalObject> children =
selectedPage.getChildren(PortalObject.WINDOW_MASK);
if (!children.isEmpty())
Modified:
tags/JBoss_Portal_2_7_0/core-admin/src/main/org/jboss/portal/core/admin/ui/coordination/EventWiringManagerBean.java
===================================================================
---
tags/JBoss_Portal_2_7_0/core-admin/src/main/org/jboss/portal/core/admin/ui/coordination/EventWiringManagerBean.java 2008-10-27
16:40:24 UTC (rev 12186)
+++
tags/JBoss_Portal_2_7_0/core-admin/src/main/org/jboss/portal/core/admin/ui/coordination/EventWiringManagerBean.java 2008-10-27
16:46:16 UTC (rev 12187)
@@ -37,12 +37,12 @@
import java.util.Collection;
import java.util.Collections;
import java.util.HashMap;
+import java.util.HashSet;
import java.util.LinkedList;
import java.util.List;
import java.util.Map;
import java.util.SortedSet;
import java.util.TreeSet;
-import java.util.HashSet;
/**
* @author <a href="mailto:chris.laprun@jboss.com">Chris
Laprun</a>
@@ -69,7 +69,7 @@
super(managerBean);
}
- public void loadInfoFrom(Page page)
+ public boolean loadInfoFrom(Page page)
{
Collection<EventWiringInfo> wiringInfos =
managerBean.getCoordinationService().getEventWirings(page);
if (!wiringInfos.isEmpty())
@@ -79,10 +79,13 @@
{
displayEventWirings.put(ewInfo.getName(), new DisplayEventWiring(ewInfo));
}
+
+ return true;
}
else
{
displayEventWirings = Collections.emptyMap();
+ return false;
}
}
@@ -122,7 +125,7 @@
public Collection<DisplayEventWiring> getDisplayEventWirings()
{
- if (displayEventWirings == null)
+ if (displayEventWirings == null || displayEventWirings.isEmpty())
{
return Collections.emptyList();
}
Modified:
tags/JBoss_Portal_2_7_0/core-admin/src/main/org/jboss/portal/core/admin/ui/coordination/ParameterBindingManagerBean.java
===================================================================
---
tags/JBoss_Portal_2_7_0/core-admin/src/main/org/jboss/portal/core/admin/ui/coordination/ParameterBindingManagerBean.java 2008-10-27
16:40:24 UTC (rev 12186)
+++
tags/JBoss_Portal_2_7_0/core-admin/src/main/org/jboss/portal/core/admin/ui/coordination/ParameterBindingManagerBean.java 2008-10-27
16:46:16 UTC (rev 12187)
@@ -119,7 +119,7 @@
public Collection<DisplayParameterBinding> getDisplayParameterBindings()
{
- if (displayParameterBindings == null)
+ if (displayParameterBindings == null || displayParameterBindings.isEmpty())
{
return Collections.emptyList();
}
@@ -135,7 +135,7 @@
availableParameterWindowPairs = new HashMap<Window,
WindowSelectItemGroup>(children.size());
}
- public void loadInfoFrom(Page page)
+ public boolean loadInfoFrom(Page page)
{
Collection<? extends ParameterBindingInfo> windowBindingInfos =
managerBean.getCoordinationService().getParameterBindings(page);
if (windowBindingInfos != null && !windowBindingInfos.isEmpty())
@@ -145,10 +145,13 @@
{
displayParameterBindings.put(wbInfo.getName(), new
DisplayParameterBinding(wbInfo));
}
+
+ return true;
}
else
{
displayParameterBindings = Collections.emptyMap();
+ return false;
}
}
Modified:
tags/JBoss_Portal_2_7_0/core-admin/src/resources/portal-admin-war/jsf/editCoordination.xhtml
===================================================================
---
tags/JBoss_Portal_2_7_0/core-admin/src/resources/portal-admin-war/jsf/editCoordination.xhtml 2008-10-27
16:40:24 UTC (rev 12186)
+++
tags/JBoss_Portal_2_7_0/core-admin/src/resources/portal-admin-war/jsf/editCoordination.xhtml 2008-10-27
16:46:16 UTC (rev 12187)
@@ -25,6 +25,7 @@
<br/>
+ <!-- Alias bindings -->
<div class="tenpx-top-bottom">
<h2 class="portlet-area-header"
onclick="toggle_visibility('aliasBindings');" style="cursor:
pointer"><a
name="#{bundle.COORDINATION_ALIAS_BINDINGS}"/>#{bundle.COORDINATION_ALIAS_BINDINGS}</h2>
@@ -112,6 +113,7 @@
</div>
</div>
+ <!-- Parameter bindings -->
<div class="tenpx-top-bottom">
<h2 class="portlet-area-header"
onclick="toggle_visibility('parameterBindings');" style="cursor:
pointer"><a
name="#{bundle.COORDINATION_PARAMETER_BINDINGS}"/>#{bundle.COORDINATION_PARAMETER_BINDINGS}</h2>
<div id="parameterBindings">
@@ -121,7 +123,7 @@
#{bundle.COORDINATION_PARAMETER_EXPLICIT_MODE}
</h:form>
- <h:panelGroup
rendered="#{coordinationManager.explicitParametersUsed}">
+ <h:panelGroup rendered="#{coordinationManager.explicitParametersUsed ||
!empty parameterManager.displayParameterBindings}">
<hr/>
<!-- Create parameter binding -->
@@ -217,7 +219,7 @@
onchange="this.form.submit()"
immediate="true"/>#{bundle.COORDINATION_EVENT_EXPLICIT_MODE}
</h:form>
- <h:panelGroup
rendered="#{coordinationManager.explicitEventsUsed}">
+ <h:panelGroup rendered="#{coordinationManager.explicitEventsUsed || !empty
eventManager.displayEventWirings}">
<hr/>
<!-- Create new event wiring -->
<h3 class="sectionTitle
tenpx-top-bottom">#{bundle.COORDINATION_EVENT_CREATE}</h3>
Modified:
tags/JBoss_Portal_2_7_0/testsuite/ui-tests/selenium-rc-server/user-extensions.js
===================================================================
---
tags/JBoss_Portal_2_7_0/testsuite/ui-tests/selenium-rc-server/user-extensions.js 2008-10-27
16:40:24 UTC (rev 12186)
+++
tags/JBoss_Portal_2_7_0/testsuite/ui-tests/selenium-rc-server/user-extensions.js 2008-10-27
16:46:16 UTC (rev 12187)
@@ -39,4 +39,29 @@
Selenium.prototype.fillInEditor = function(locator, content){
var iframe = this.browserbot.findElement(locator);
iframe.contentDocument.body.innerHTML= content;
-}
\ No newline at end of file
+}
+
+Selenium.prototype.assertTextOrder = function(textValues) {
+
+ var allText = this.page().bodyText();
+ var expectedTextValues = textValues.split(";");
+
+ for (var i = 0; i < expectedTextValues.length - 1; i++) {
+ var index = allText.indexOf(expectedTextValues[i]);
+ var nextIndex = allText.indexOf(expectedTextValues[i+1]);
+ if (index == -1) {
+ return false;
+ //assert.fail("'" + expectedTextValues[i] + "'
not found.");
+ }
+ if (nextIndex == -1) {
+ return false;
+ //assert.fail("'" + expectedTextValues[i+1] + "'
not found.");
+ }
+
+ if (index > nextIndex) {
+ return false;
+ //assert.fail("'" + expectedTextValues[i+1] + "'
found before '" + expectedTextValues[i] + "'");
+ }
+ }
+ return true;
+}
Modified:
tags/JBoss_Portal_2_7_0/testsuite/ui-tests/src/org/jboss/portal/test/selenium/DashboardTestCase.java
===================================================================
---
tags/JBoss_Portal_2_7_0/testsuite/ui-tests/src/org/jboss/portal/test/selenium/DashboardTestCase.java 2008-10-27
16:40:24 UTC (rev 12186)
+++
tags/JBoss_Portal_2_7_0/testsuite/ui-tests/src/org/jboss/portal/test/selenium/DashboardTestCase.java 2008-10-27
16:46:16 UTC (rev 12187)
@@ -11,6 +11,9 @@
@Test(groups = { "cms_dashboard" }, enabled = true, description =
"Dashboard issues test case.")
public class DashboardTestCase extends JBossPortalSeleniumTestCase {
+ private static final String SEL_CONTENT_TYPE =
"//select[contains(@id,'contentTypesForm:instanceId')]";
+ private static final String SUB_DEL_FROM_CENTER_REGION =
"//input[contains(@id,'layoutForm:l_center')]";
+ private static final String SEL_CENTER_REGION =
"//select[contains(@id,'layoutForm:selectMany_center')]";
private static final String SUBMIT_ADDCENTER =
"//input[contains(@id,'layoutForm:a_center')]";
private static final String SUBMIT_ADDLEFT =
"//input[contains(@id,'layoutForm:a_left')]";
private static final String LINK_CONFIGURE_DASHBOARD = "link=Configure
dashboard";
@@ -119,7 +122,7 @@
selenium.waitForPageToLoad(PAGE_LOAD);
Assert.assertTrue(selenium.isTextPresent("Current users"));
- Assert.assertTrue(selenium.isTextPresent("Whose 1 is logged-in:"));
+ Assert.assertTrue(selenium.isTextPresent("Among them: * logged-in"));
Assert.assertTrue(selenium.isTextPresent("[admin]"));
}
@@ -174,8 +177,8 @@
selectIfNotSelected(SELECT_PAGE,"DashTestPage");
- selenium.addSelection("layoutForm:selectMany_center",
"label=CurrentUsersPortletWindow");
- selenium.click("layoutForm:l_center");
+ selenium.addSelection(SEL_CENTER_REGION, "label=CurrentUsersPortletWindow");
+ selenium.click(SUB_DEL_FROM_CENTER_REGION);
selenium.waitForPageToLoad(PAGE_LOAD);
selenium.click(LINK_DASHBOARD);
@@ -195,9 +198,9 @@
selenium.click(LINK_CONFIGURE_DASHBOARD);
selenium.waitForPageToLoad(PAGE_LOAD);
selectIfNotSelected(SELECT_PAGE,"DashTestPage");
- selenium.select("abc:instanceId", "label=widget/google");
+ selenium.select(SEL_CONTENT_TYPE, "label=widget/google");
selenium.waitForPageToLoad(PAGE_LOAD);
- selenium.click("link=Hindu God of the Week");
+ selenium.click("link=Band Culinaria");
selenium.waitForPageToLoad(PAGE_LOAD);
selenium.click(SUBMIT_ADDCENTER);
selenium.waitForPageToLoad(PAGE_LOAD);
@@ -206,7 +209,8 @@
selenium.click("link=DashTestPage");
selenium.waitForPageToLoad(PAGE_LOAD);
- Assert.assertTrue(selenium.isTextPresent("Hindu God of the Week"));
+ Assert.assertTrue(selenium.isTextPresent("Band Culinaria"));
+ Assert.assertTrue(selenium.isTextPresent("Gadgets powered by Google"));
}
//
http://www.jboss.com/index.html?module=bb&op=viewtopic&t=143023
Modified:
tags/JBoss_Portal_2_7_0/testsuite/ui-tests/src/org/jboss/portal/test/selenium/IdentityAdminTestCase.java
===================================================================
---
tags/JBoss_Portal_2_7_0/testsuite/ui-tests/src/org/jboss/portal/test/selenium/IdentityAdminTestCase.java 2008-10-27
16:40:24 UTC (rev 12186)
+++
tags/JBoss_Portal_2_7_0/testsuite/ui-tests/src/org/jboss/portal/test/selenium/IdentityAdminTestCase.java 2008-10-27
16:46:16 UTC (rev 12187)
@@ -19,12 +19,12 @@
private static final String SUB_EDIT_PROF =
"//input[contains(@id,'profile-form:submit')]";
private static final String SUB_EDIT_USER_EMAIL_CANCEL =
"//input[contains(@id,'profile-form:cancel')]";
private static final String INP_EDIT_USER_EMAIL =
"//input[contains(@id,'profile-form:email')]";
- private static final String SUB_ROLE_SEARCH_USER =
"//input[contains(@id,'search-user-form:search')]";
+ private static final String SUB_ROLE_SEARCH_USER =
"//input[contains(@id,'search-user-form:search') and
@type='submit']";
private static final String INP_ROLE_SEARCH_USER =
"//input[contains(@id,'search-user-form:searchString')]";
private static final String SUB_EDIT_ROLE_SUBMIT =
"//input[contains(@id,'edit-role-link:submit')]";
private static final String SUB_EDIT_ROLE_CANCEL =
"//input[contains(@id,'edit-role-link:cancel')]";
private static final String INP_EDIT_ROLE_NAME =
"//input[contains(@id,'edit-role-link:display-name')]";
- private static final String SUB_PASS_CHANGE_SUBMIT =
"//input[contains(@id,'change-pwd-form:j_id31')]";
+ private static final String SUB_PASS_CHANGE_SUBMIT =
"//input[contains(@name,'change-pwd-form:j_id31')]";
private static final String SUB_PASS_CHANGE_CANCEL =
"//input[contains(@id,'change-pwd-form:cancel')]";
private static final String INPUT_PASS_CHANGE_P2 =
"//input[contains(@id,':change-pwd-form:passwordCheck')]";
private static final String INPUT_PASS_CHANGE_P1 =
"//input[contains(@id,':change-pwd-form:password')]";
@@ -253,7 +253,6 @@
selenium.waitForPageToLoad(PAGE_LOAD);
Assert.assertTrue(selenium.isTextPresent("editMe2(a)redhat.com"));
Assert.assertTrue(selenium.isTextPresent("Edit"));
- Assert.assertTrue(selenium.isTextPresent("Meme"));
deleteUser("editMe", "editMe2(a)redhat.com");
@@ -274,6 +273,7 @@
searchUser("changePass", "changePass(a)redhat.com");
+
int r = findTableRow(TABLE_USERLIST, "changePass", 0);
selenium.click(MessageFormat.format(LINK_T_USRLIST_EDIT, r - 1));
selenium.waitForPageToLoad(PAGE_LOAD);
@@ -691,7 +691,7 @@
}
- public void waitBlock(){
+ protected void waitBlock(){
try {
Thread.sleep(2000);
} catch (InterruptedException e) {
Modified:
tags/JBoss_Portal_2_7_0/testsuite/ui-tests/src/org/jboss/portal/test/selenium/portal/DashboardsTestCase.java
===================================================================
---
tags/JBoss_Portal_2_7_0/testsuite/ui-tests/src/org/jboss/portal/test/selenium/portal/DashboardsTestCase.java 2008-10-27
16:40:24 UTC (rev 12186)
+++
tags/JBoss_Portal_2_7_0/testsuite/ui-tests/src/org/jboss/portal/test/selenium/portal/DashboardsTestCase.java 2008-10-27
16:46:16 UTC (rev 12187)
@@ -77,7 +77,6 @@
selenium.type(MessageFormat.format(T_PROPS_INPUT_VALUE, r-1),value);
selenium.click(SUBMIT_UPDATE_VALUE);
selenium.waitForPageToLoad(PAGE_LOAD);
-
Assert.assertEquals(selenium.getValue(MessageFormat.format(T_PROPS_INPUT_VALUE,
r-1)),value,"Updated value not found.");
}
@@ -136,11 +135,11 @@
safeSelect(T_DH_SEL_LAYOUT, "1column");
- safeSelect(T_DH_SEL_THEME, "nphalanx");
+
safeSelect(T_DH_SEL_RENDERSET, "default");
-
+ safeSelect(T_DH_SEL_THEME, "nphalanx");
clickAndWait(T_DH_SUB_UPDATE);
}