com.ibm.team.fvt.tests.clm.pages.lpa
Class LpaWebMembersPage

java.lang.Object
  extended by com.ibm.team.fvt.tests.web.WebPage
      extended by com.ibm.team.fvt.tests.clm.pages.ClmWebPage
          extended by com.ibm.team.fvt.tests.clm.pages.lpa.LpaWebPage
              extended by com.ibm.team.fvt.tests.clm.pages.lpa.LpaWebMembersPage
All Implemented Interfaces:
ClmWebPageConstants

public class LpaWebMembersPage
extends LpaWebPage

Manage the Lifecycle Project Members web page.

The page address is: https://server:port/admin/web/members.

Following actions are accessible in this page:

Following functionalities are also defined or specialized by this page:


Field Summary
 
Fields inherited from class com.ibm.team.fvt.tests.web.WebPage
NO_DATA
 
Fields inherited from interface com.ibm.team.fvt.tests.clm.pages.ClmWebPageConstants
ADMINISTRATION_HOME_MENU_GROUP, JAZZ_TEAM_SERVER_HOME_MENU_ITEM, LIFECYCLE_PROJECT_ADMIN_MENU_ITEM, USER_NOT_AUTHORIZED_MESSAGE_ID, USER_NOT_AUTHORIZED_MESSAGE_LOCATOR
 
Constructor Summary
LpaWebMembersPage(java.lang.String url, ClmConfig config, com.ibm.team.fvt.tests.config.User user)
           
 
Method Summary
 int addMember(ClmUser member)
          Add the given user to current selected project's members.
 java.util.List<org.openqa.selenium.WebElement> getMembers()
          Return the members for the selected project.
 boolean hasMember()
          Return whether the selected project has member or not.
 void selectProject(java.lang.String projectName)
          Select the given project name in the selection drop-down list.
 void selectProject(java.lang.String projectName, boolean fail)
          Select the given project name in the selection drop-down list.
 void setDefaultProcessRoles(ClmUser member)
          Set the default process roles for the given user.
 int showMemberDetails(ClmUser member)
          Show the details of the given user.
 
Methods inherited from class com.ibm.team.fvt.tests.clm.pages.lpa.LpaWebPage
clickMembers, clickProjects, clickSample
 
Methods inherited from class com.ibm.team.fvt.tests.clm.pages.ClmWebPage
checkRichHover, clickHomeMenuItem, getBannerTitle, getCcmApplication, getConfig, getDmApplication, getJtsApplication, getLpaApplication, getMiniDashboard, getQmApplication, getRmApplication, getTitle, getUser, gotoCcmProjectPage, gotoCcmProjectPage, gotoDmProjectPage, gotoDmProjectPage, gotoJtsAdminHomePage, gotoLpaAllProjectsPage, gotoQmProjectPage, gotoQmProjectPage, gotoRmProjectPage, gotoRmProjectPage, logout, openAdminUIMenu, openHelpMenu, openHomeMenu, openMenu, openMenu, openToolbarMenu, openUserProfileMenu, refresh, save, waitWhileBusy
 
Methods inherited from class com.ibm.team.fvt.tests.web.WebPage
changeUser, checkHoverTitle, checkRichHover, get, getBrowser, getLocation, getPage, getPage, getPageUsingBrowser, goBack, openPage, openPage, openPageUsingBrowser, openPageUsingHoverTitle, openPageUsingLink, openPageUsingLink, openPageUsingLink, openPageUsingLink, openPageUsingLink, openPageUsingLink, richHoverOverLink, toString
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

LpaWebMembersPage

public LpaWebMembersPage(java.lang.String url,
                         ClmConfig config,
                         com.ibm.team.fvt.tests.config.User user)
Method Detail

addMember

public int addMember(ClmUser member)
Add the given user to current selected project's members.

Do nothing if the given user is already a project's member.

After having added the user as project's member, check that the user is well shown in the preview members table. In case not, try to workaround this issue by refreshing the web page content.

If the user was added, save the change and wait for the new project members page content to be loaded.

Parameters:
member - The user to add as project's members.
Returns:
Return the table line index where the member have been added.

getMembers

public java.util.List<org.openqa.selenium.WebElement> getMembers()
Return the members for the selected project.

Note that this method returns no elements for preview members table (ie. table displayed just after having added a new member...)

Returns:
List of members (WebBrowserElement) already added to the selected project.

hasMember

public boolean hasMember()
Return whether the selected project has member or not.

Returns:
true if there's no member for the selected project, false otherwise.

selectProject

public void selectProject(java.lang.String projectName)
Select the given project name in the selection drop-down list.

Fails if the project does not exist

Parameters:
projectName - The project name to select.

selectProject

public void selectProject(java.lang.String projectName,
                          boolean fail)
Select the given project name in the selection drop-down list.

Only fails if specified when the project does not exist.

If a problem occurs while looking for relative web element of the selection drop-down list, then Workaround the issue by retrying several times

Parameters:
projectName - The project name to select.
fail - Tell whether to fail (ie. throws a ScenarioFailedError or not when the project does not exist.

setDefaultProcessRoles

public void setDefaultProcessRoles(ClmUser member)
Set the default process roles for the given user.

The default process roles are:

Parameters:
member - The user to assign process roles

showMemberDetails

public int showMemberDetails(ClmUser member)
Show the details of the given user.

Nothing happen if the given user is not a member of the currently selected project or if the details are already shown for this member.

When calling this method, you'll get the index of the member details table line for the given user.

Parameters:
member - The project member to show details
Returns:
The table line index of the member details as an int