blob: 4ac371e07d0d6cc6662500d42a715d789cb4f265 [file] [log] [blame]
/*
* Copyright (c) 2013, JoshuaTree Software. All rights reserved.
*/
package us.jts.commander.integration;
import java.io.File;
import java.util.List;
import java.util.concurrent.TimeUnit;
import org.apache.log4j.Logger;
import org.junit.*;
import static org.junit.Assert.*;
import org.openqa.selenium.*;
import org.openqa.selenium.firefox.FirefoxDriver;
import org.openqa.selenium.firefox.FirefoxProfile;
import org.openqa.selenium.remote.LocalFileDetector;
import us.jts.commander.GlobalIds;
/**
* This class uses apache selenium firefox driver to drive commander web ui
*/
public class CommanderSeleniumITCase
{
private WebDriver driver;
private String baseUrl;
private boolean acceptNextAlert = true;
private StringBuffer verificationErrors = new StringBuffer();
private static final Logger log = Logger.getLogger( CommanderSeleniumITCase.class.getName() );
@Before
public void setUp() throws Exception
{
FirefoxProfile ffProfile = new FirefoxProfile();
ffProfile.setPreference( "browser.safebrowsing.malware.enabled", false );
driver = new FirefoxDriver( ffProfile );
driver.manage().window().maximize();
// Use test local default:
//baseUrl = "http://localhost:8081";
//baseUrl = "http://192.168.1.101:8080";
//baseUrl = "http://192.168.1.104:8080";
// tomcat default:
baseUrl = "http://localhost:8080";
// tomcat SSL:
//baseUrl = "https://localhost:8444";
driver.manage().timeouts().implicitlyWait( 5, TimeUnit.SECONDS );
}
@Test
public void testCase1() throws Exception
{
log.info( "Begin CommanderSeleniumITCase" );
driver.get( baseUrl + "/commander" );
login();
TUtils.sleep( 1 );
boolean skipFirstHalf = false;
//boolean skipFirstHalf = true;
boolean skipSecondHalf = false;
//boolean skipSecondHalf = true;
if ( !skipFirstHalf )
{
users();
roles();
pobjs();
perms();
ssds();
dsds();
ouusers();
ouperms();
}
if ( !skipSecondHalf )
{
admrles();
admobjs();
admperms();
plcys();
binds();
authzs();
mods();
}
/*****
* LOGOUT
*/
driver.findElement( By.linkText( "LOGOUT" ) ).click();
log.info( "End CommanderSeleniumITCase" );
//driver.findElement( By.linkText( "glob:search*" ) ).click();
}
private void login()
{
driver.findElement( By.id( GlobalIds.USER_ID ) ).clear();
driver.findElement( By.id( GlobalIds.USER_ID ) ).sendKeys( "test" );
driver.findElement( By.id( GlobalIds.PSWD_FIELD ) ).clear();
driver.findElement( By.id( GlobalIds.PSWD_FIELD ) ).sendKeys( "test" );
driver.findElement( By.name( GlobalIds.LOGIN ) ).click();
}
private void users()
{
/*****
* USERS_PAGE TESTS
*/
driver.findElement( By.linkText( "USERS" ) ).click();
//driver.findElement( By.id( "roleRb" ) ).click();
driver.findElement( By.id( "roleAssignLinkLbl" ) ).click();
TUtils.sleep( 1 );
driver.findElement( By.linkText( ">" ) ).click();
TUtils.sleep( 1 );
driver.findElement( By.linkText( GlobalIds.SELECT ) ).click();
TUtils.sleep( 1 );
driver.findElement( By.name( "userformsearchfields:" + GlobalIds.SEARCH ) ).click();
driver.findElement( By.id( GlobalIds.FIELD_1 ) ).clear();
driver.findElement( By.id( GlobalIds.FIELD_1 ) ).sendKeys( "dev1" );
driver.findElement( By.id( "ouAssignLinkLbl" ) ).click();
TUtils.sleep( 1 );
driver.findElement( By.linkText( GlobalIds.SELECT ) ).click();
TUtils.sleep( 1 );
driver.findElement( By.name( "userformsearchfields:" + GlobalIds.SEARCH ) ).click();
TUtils.sleep( 1 );
WebElement table = driver.findElement(By.id("usertreegrid"));
List<WebElement> allRows = table.findElements(By.tagName("tr"));
allRows.get( 4 ).findElement(By.className("imxt-cell")).click();
TUtils.sleep( 1 );
allRows.get( 5 ).findElement(By.className("imxt-cell")).click();
TUtils.sleep( 1 );
allRows.get( 6 ).findElement(By.className("imxt-cell")).click();
TUtils.sleep( 1 );
driver.findElement( By.name( GlobalIds.CLEAR ) ).click();
TUtils.sleep( 1 );
driver.findElement( By.id( GlobalIds.USER_ID ) ).sendKeys( "selTestU1" );
driver.findElement( By.id( GlobalIds.PSWD_FIELD ) ).clear();
driver.findElement( By.id( GlobalIds.PSWD_FIELD ) ).sendKeys( "password" );
driver.findElement( By.id( GlobalIds.OU ) ).clear();
driver.findElement( By.id( GlobalIds.OU ) ).sendKeys( "dev1" );
driver.findElement( By.name( GlobalIds.OU_SEARCH ) ).click();
TUtils.sleep( 2 );
driver.findElement( By.linkText( GlobalIds.SELECT ) ).click();
TUtils.sleep( 1 );
driver.findElement( By.name( GlobalIds.POLICY_SEARCH ) ).click();
TUtils.sleep( 2 );
driver.findElement( By.linkText( ">" ) ).click();
TUtils.sleep( 1 );
driver.findElement( By.linkText( GlobalIds.SELECT ) ).click();
TUtils.sleep( 1 );
driver.findElement( By.name( GlobalIds.ADD ) ).click();
TUtils.sleep( 1 );
driver.findElement( By.id( GlobalIds.ROLE_ASSIGNMENTS_LABEL ) ).click();
( ( JavascriptExecutor ) driver ).executeScript( "$(document.getElementById('roles')).val('role1');" );
driver.findElement( By.id( GlobalIds.BEGIN_TIME_RC ) ).clear();
driver.findElement( By.id( GlobalIds.BEGIN_TIME_RC ) ).sendKeys( "8:00 AM" );
driver.findElement( By.id( GlobalIds.END_TIME_RC ) ).clear();
driver.findElement( By.id( GlobalIds.END_TIME_RC ) ).sendKeys( "5:00 PM" );
driver.findElement( By.id( GlobalIds.BEGIN_DATE_RC ) ).clear();
driver.findElement( By.id( GlobalIds.BEGIN_DATE_RC ) ).sendKeys( "1/1/2013" );
driver.findElement( By.id( GlobalIds.END_DATE_RC ) ).clear();
driver.findElement( By.id( GlobalIds.END_DATE_RC ) ).sendKeys( "1/1/2099" );
driver.findElement( By.id( GlobalIds.BEGIN_LOCK_DATE_RC ) ).clear();
driver.findElement( By.id( GlobalIds.BEGIN_LOCK_DATE_RC ) ).sendKeys( "6/1/2013" );
driver.findElement( By.id( GlobalIds.END_LOCK_DATE_RC ) ).clear();
driver.findElement( By.id( GlobalIds.END_LOCK_DATE_RC ) ).sendKeys( "6/15/2013" );
driver.findElement( By.id( GlobalIds.TIMEOUT_RC ) ).clear();
driver.findElement( By.id( GlobalIds.TIMEOUT_RC ) ).sendKeys( "120" );
driver.findElement( By.id( GlobalIds.SUNDAY_RC ) ).click();
driver.findElement( By.id( GlobalIds.MONDAY_RC ) ).click();
driver.findElement( By.id( GlobalIds.TUESDAY_RC ) ).click();
driver.findElement( By.id( GlobalIds.WEDNESDAY_RC ) ).click();
driver.findElement( By.id( GlobalIds.THURSDAY_RC ) ).click();
driver.findElement( By.id( GlobalIds.FRIDAY_RC ) ).click();
driver.findElement( By.id( GlobalIds.SATURDAY_RC ) ).click();
driver.findElement( By.name( GlobalIds.ASSIGN ) ).click();
TUtils.sleep( 1 );
driver.findElement( By.id( GlobalIds.ROLE_ASSIGNMENTS_LABEL ) ).click();
driver.findElement( By.name( GlobalIds.ROLES_SEARCH ) ).click();
TUtils.sleep( 2 );
driver.findElement( By.linkText( "6" ) ).click();
TUtils.sleep( 2 );
driver.findElement( By.linkText( GlobalIds.SELECT ) ).click();
TUtils.sleep( 2 );
driver.findElement( By.name( GlobalIds.ASSIGN ) ).click();
TUtils.sleep( 2 );
driver.findElement( By.id( "adminRoleAssignmentsLabel" ) ).click();
/*
if(driver.findElement( By.name( "adminRoles" ) ).isDisplayed())
{
System.out.println("adminRoles is displayed!!!");
}
else
{
System.out.println("adminRoles is NOT displayed!!!");
}
*/
( ( JavascriptExecutor ) driver ).executeScript( "$(document.getElementById('adminRoles')).val" +
"('DemoAdminUsers');" );
driver.findElement( By.id( GlobalIds.BEGIN_TIME_ARC ) ).clear();
driver.findElement( By.id( GlobalIds.BEGIN_TIME_ARC ) ).sendKeys( "8:00 AM" );
driver.findElement( By.id( GlobalIds.END_TIME_ARC ) ).clear();
driver.findElement( By.id( GlobalIds.END_TIME_ARC ) ).sendKeys( "5:00 PM" );
driver.findElement( By.id( GlobalIds.BEGIN_DATE_ARC ) ).clear();
driver.findElement( By.id( GlobalIds.BEGIN_DATE_ARC ) ).sendKeys( "1/1/2013" );
driver.findElement( By.id( GlobalIds.END_DATE_ARC ) ).clear();
driver.findElement( By.id( GlobalIds.END_DATE_ARC ) ).sendKeys( "1/1/2099" );
driver.findElement( By.id( GlobalIds.BEGIN_LOCK_DATE_ARC ) ).clear();
driver.findElement( By.id( GlobalIds.BEGIN_LOCK_DATE_ARC ) ).sendKeys( "6/1/2013" );
driver.findElement( By.id( GlobalIds.END_LOCK_DATE_ARC ) ).clear();
driver.findElement( By.id( GlobalIds.END_LOCK_DATE_ARC ) ).sendKeys( "6/15/2013" );
driver.findElement( By.id( GlobalIds.TIMEOUT_ARC ) ).clear();
driver.findElement( By.id( GlobalIds.TIMEOUT_ARC ) ).sendKeys( "180" );
driver.findElement( By.id( GlobalIds.MONDAY_ARC ) ).click();
driver.findElement( By.id( GlobalIds.TUESDAY_ARC ) ).click();
driver.findElement( By.id( GlobalIds.WEDNESDAY_ARC ) ).click();
driver.findElement( By.id( GlobalIds.THURSDAY_ARC ) ).click();
driver.findElement( By.id( GlobalIds.FRIDAY_ARC ) ).click();
driver.findElement( By.name( GlobalIds.ASSIGN_ADMIN_ROLE ) ).click();
TUtils.sleep( 1 );
driver.findElement( By.id( "adminRoleAssignmentsLabel" ) ).click();
driver.findElement( By.name( "adminRoles.search" ) ).click();
TUtils.sleep( 2 );
driver.findElement( By.linkText( ">" ) ).click();
TUtils.sleep( 1 );
driver.findElement( By.linkText( ">" ) ).click();
TUtils.sleep( 1 );
driver.findElement( By.linkText( GlobalIds.SELECT ) ).click();
TUtils.sleep( 2 );
driver.findElement( By.name( GlobalIds.ASSIGN_ADMIN_ROLE ) ).click();
TUtils.sleep( 2 );
driver.findElement( By.id( "contactInformationLabel" ) ).click();
TUtils.sleep( 1 );
driver.findElement( By.id( GlobalIds.DESCRIPTION ) ).clear();
driver.findElement( By.id( GlobalIds.DESCRIPTION ) ).sendKeys( "Selenium Test User" );
driver.findElement( By.id( GlobalIds.EMPLOYEE_TYPE ) ).clear();
driver.findElement( By.id( GlobalIds.EMPLOYEE_TYPE ) ).sendKeys( "Test User" );
driver.findElement( By.id( GlobalIds.TITLE ) ).clear();
driver.findElement( By.id( GlobalIds.TITLE ) ).sendKeys( "TestUser" );
( ( JavascriptExecutor ) driver ).executeScript( "$(document.getElementById('emails')).show();" );
driver.findElement( By.id( GlobalIds.EMAILS ) ).clear();
driver.findElement( By.id( GlobalIds.EMAILS ) ).sendKeys( "joeuser@selenium.com" );
( ( JavascriptExecutor ) driver ).executeScript( "$(document.getElementById('phones')).show();" );
driver.findElement( By.id( GlobalIds.PHONES ) ).clear();
driver.findElement( By.id( GlobalIds.PHONES ) ).sendKeys( "555-555-5555" );
( ( JavascriptExecutor ) driver ).executeScript( "$(document.getElementById('mobiles')).show();" );
driver.findElement( By.id( GlobalIds.MOBILES ) ).clear();
driver.findElement( By.id( GlobalIds.MOBILES ) ).sendKeys( "222-222-2222" );
driver.findElement( By.id( GlobalIds.ADDRESS_ASSIGNMENTS_LABEL ) ).click();
TUtils.sleep( 1 );
( ( JavascriptExecutor ) driver ).executeScript( "$(document.getElementById('addresses')).show();" );
driver.findElement( By.id( GlobalIds.ADDRESSES ) ).clear();
driver.findElement( By.id( GlobalIds.ADDRESSES ) ).sendKeys( "9 Vantage Pt" );
driver.findElement( By.id( GlobalIds.ADDRESS_CITY ) ).clear();
driver.findElement( By.id( GlobalIds.ADDRESS_CITY ) ).sendKeys( "Maumelle" );
driver.findElement( By.id( GlobalIds.ADDRESS_STATE ) ).clear();
driver.findElement( By.id( GlobalIds.ADDRESS_STATE ) ).sendKeys( "AR" );
driver.findElement( By.id( GlobalIds.ADDRESS_COUNTRY ) ).clear();
driver.findElement( By.id( GlobalIds.ADDRESS_COUNTRY ) ).sendKeys( "US" );
driver.findElement( By.id( GlobalIds.ADDRESS_POSTAL_CODE ) ).clear();
driver.findElement( By.id( GlobalIds.ADDRESS_POSTAL_CODE ) ).sendKeys( "72113" );
driver.findElement( By.id( GlobalIds.ADDRESS_POST_OFFICE_BOX ) ).clear();
driver.findElement( By.id( GlobalIds.ADDRESS_POST_OFFICE_BOX ) ).sendKeys( "422" );
driver.findElement( By.id( GlobalIds.ADDRESS_BUILDING ) ).clear();
driver.findElement( By.id( GlobalIds.ADDRESS_BUILDING ) ).sendKeys( "2929" );
driver.findElement( By.id( GlobalIds.ADDRESS_DEPARTMENT_NUMBER ) ).clear();
driver.findElement( By.id( GlobalIds.ADDRESS_DEPARTMENT_NUMBER ) ).sendKeys( "2222" );
driver.findElement( By.id( GlobalIds.ADDRESS_ROOM_NUMBER ) ).clear();
driver.findElement( By.id( GlobalIds.ADDRESS_ROOM_NUMBER ) ).sendKeys( "555" );
driver.findElement( By.id( GlobalIds.TEMPORAL_CONSTRAINTS_LABEL ) ).click();
TUtils.sleep( 1 );
driver.findElement( By.id( GlobalIds.BEGIN_TIME_P ) ).clear();
driver.findElement( By.id( GlobalIds.BEGIN_TIME_P ) ).sendKeys( "8:00 AM" );
driver.findElement( By.id( GlobalIds.END_TIME_P ) ).clear();
driver.findElement( By.id( GlobalIds.END_TIME_P ) ).sendKeys( "5:00 PM" );
driver.findElement( By.id( GlobalIds.BEGIN_DATE_P ) ).clear();
driver.findElement( By.id( GlobalIds.BEGIN_DATE_P ) ).sendKeys( "1/1/2013" );
driver.findElement( By.id( GlobalIds.END_DATE_P ) ).clear();
driver.findElement( By.id( GlobalIds.END_DATE_P ) ).sendKeys( "1/1/2099" );
driver.findElement( By.id( GlobalIds.BEGIN_LOCK_DATE_P ) ).clear();
driver.findElement( By.id( GlobalIds.BEGIN_LOCK_DATE_P ) ).sendKeys( "6/1/2013" );
driver.findElement( By.id( GlobalIds.END_LOCK_DATE_P ) ).clear();
driver.findElement( By.id( GlobalIds.END_LOCK_DATE_P ) ).sendKeys( "6/15/2013" );
driver.findElement( By.id( GlobalIds.TIMEOUT_P ) ).clear();
driver.findElement( By.id( GlobalIds.TIMEOUT_P ) ).sendKeys( "0" );
driver.findElement( By.id( GlobalIds.SUNDAY_P ) ).click();
driver.findElement( By.id( GlobalIds.MONDAY_P ) ).click();
driver.findElement( By.id( GlobalIds.TUESDAY_P ) ).click();
driver.findElement( By.id( GlobalIds.WEDNESDAY_P ) ).click();
driver.findElement( By.id( GlobalIds.THURSDAY_P ) ).click();
driver.findElement( By.id( GlobalIds.FRIDAY_P ) ).click();
driver.findElement( By.id( GlobalIds.SATURDAY_P ) ).click();
driver.findElement( By.id( GlobalIds.SYSTEM_INFO_LABEL ) ).click();
TUtils.sleep( 1 );
driver.findElement( By.id( GlobalIds.SYSTEM ) ).click();
driver.findElement( By.id( GlobalIds.CN ) ).clear();
driver.findElement( By.id( GlobalIds.CN ) ).sendKeys( "Firstname Lastname" );
driver.findElement( By.id( GlobalIds.SN ) ).clear();
driver.findElement( By.id( GlobalIds.SN ) ).sendKeys( "Lastname" );
driver.findElement( By.id( GlobalIds.IMPORT_PHOTO_LABEL ) ).click();
TUtils.sleep( 1 );
WebElement element = driver.findElement( By.name( "upload" ) );
LocalFileDetector detector = new LocalFileDetector();
String path = "./src/test/resources/p1.jpeg";
File f = detector.getLocalFile( path );
element.sendKeys( f.getAbsolutePath() );
driver.findElement( By.name( GlobalIds.SAVE ) ).click();
TUtils.sleep( 3 );
driver.findElement( By.name( GlobalIds.COMMIT ) ).click();
TUtils.sleep( 1 );
driver.findElement( By.id( GlobalIds.IMPORT_PHOTO_LABEL ) ).click();
TUtils.sleep( 2 );
driver.findElement( By.name( GlobalIds.DELETE ) ).click();
TUtils.sleep( 1 );
driver.findElement( By.id( GlobalIds.SYSTEM_INFO_LABEL ) ).click();
driver.findElement( By.id( GlobalIds.SYSTEM ) ).click();
driver.findElement( By.name( GlobalIds.COMMIT ) ).click();
TUtils.sleep( 1 );
driver.findElement( By.name( GlobalIds.DELETE ) ).click();
TUtils.sleep( 1 );
}
private void roles()
{
driver.findElement( By.linkText( "ROLES" ) ).click();
driver.findElement( By.id( GlobalIds.SEARCH_VAL ) ).clear();
driver.findElement( By.id( GlobalIds.SEARCH_VAL ) ).sendKeys( "oamt13" );
driver.findElement( By.name( GlobalIds.SEARCH ) ).click();
driver.findElement( By.id( GlobalIds.NAME ) ).clear();
driver.findElement( By.id( GlobalIds.NAME ) ).sendKeys( "SelTestRole" );
driver.findElement( By.id( GlobalIds.DESCRIPTION ) ).clear();
driver.findElement( By.id( GlobalIds.DESCRIPTION ) ).sendKeys( "Selenium Test Role" );
driver.findElement( By.name( GlobalIds.PARENTROLES_SEARCH ) ).click();
TUtils.sleep( 2 );
driver.findElement( By.linkText( ">" ) ).click();
TUtils.sleep( 1 );
driver.findElement( By.linkText( ">" ) ).click();
TUtils.sleep( 1 );
driver.findElement( By.linkText( GlobalIds.SELECT ) ).click();
TUtils.sleep( 2 );
driver.findElement( By.name( GlobalIds.ADD ) ).click();
TUtils.sleep( 1 );
driver.findElement( By.id( GlobalIds.TEMPORAL_CONSTRAINTS_LABEL ) ).click();
TUtils.sleep( 1 );
driver.findElement( By.id( GlobalIds.BEGIN_TIME_P ) ).clear();
driver.findElement( By.id( GlobalIds.BEGIN_TIME_P ) ).sendKeys( "8:00 AM" );
driver.findElement( By.id( GlobalIds.END_TIME_P ) ).clear();
driver.findElement( By.id( GlobalIds.END_TIME_P ) ).sendKeys( "5:00 PM" );
driver.findElement( By.id( GlobalIds.BEGIN_DATE_P ) ).clear();
driver.findElement( By.id( GlobalIds.BEGIN_DATE_P ) ).sendKeys( "1/1/2013" );
driver.findElement( By.id( GlobalIds.END_DATE_P ) ).clear();
driver.findElement( By.id( GlobalIds.END_DATE_P ) ).sendKeys( "1/1/2099" );
driver.findElement( By.id( GlobalIds.BEGIN_LOCK_DATE_P ) ).clear();
driver.findElement( By.id( GlobalIds.BEGIN_LOCK_DATE_P ) ).sendKeys( "6/1/2013" );
driver.findElement( By.id( GlobalIds.END_LOCK_DATE_P ) ).clear();
driver.findElement( By.id( GlobalIds.END_LOCK_DATE_P ) ).sendKeys( "6/15/2013" );
driver.findElement( By.id( GlobalIds.TIMEOUT_P ) ).clear();
driver.findElement( By.id( GlobalIds.TIMEOUT_P ) ).sendKeys( "0" );
driver.findElement( By.id( GlobalIds.SUNDAY_P ) ).click();
driver.findElement( By.id( GlobalIds.MONDAY_P ) ).click();
driver.findElement( By.id( GlobalIds.TUESDAY_P ) ).click();
driver.findElement( By.id( GlobalIds.WEDNESDAY_P ) ).click();
driver.findElement( By.id( GlobalIds.THURSDAY_P ) ).click();
driver.findElement( By.id( GlobalIds.FRIDAY_P ) ).click();
driver.findElement( By.id( GlobalIds.SATURDAY_P ) ).click();
driver.findElement( By.name( GlobalIds.COMMIT ) ).click();
TUtils.sleep( 1 );
driver.findElement( By.name( GlobalIds.DELETE ) ).click();
TUtils.sleep( 1 );
}
private void pobjs()
{
driver.findElement( By.linkText( "POBJS" ) ).click();
driver.findElement( By.id( GlobalIds.SEARCH_VAL ) ).sendKeys( "t" );
driver.findElement( By.name( GlobalIds.SEARCH ) ).click();
TUtils.sleep( 1 );
}
private void perms()
{
driver.findElement( By.linkText( "PERMS" ) ).click();
driver.findElement( By.id( "permObject" ) ).sendKeys( "/cal" );
driver.findElement( By.name( GlobalIds.SEARCH ) ).click();
TUtils.sleep( 1 );
}
private void ssds()
{
driver.findElement( By.linkText( "SSDS" ) ).click();
driver.findElement( By.id( "roleRb" ) ).click();
driver.findElement( By.id( GlobalIds.SEARCH_VAL ) ).sendKeys( "oamT16SDR6" );
driver.findElement( By.name( GlobalIds.SEARCH ) ).click();
TUtils.sleep( 1 );
}
private void dsds()
{
driver.findElement( By.linkText( "DSDS" ) ).click();
driver.findElement( By.id( "roleRb" ) ).click();
driver.findElement( By.id( GlobalIds.SEARCH_VAL ) ).sendKeys( "oamT13DSD6" );
driver.findElement( By.name( GlobalIds.SEARCH ) ).click();
TUtils.sleep( 1 );
}
private void ouusers()
{
driver.findElement( By.linkText( "OUSERS" ) ).click();
driver.findElement( By.id( GlobalIds.SEARCH_VAL ) ).sendKeys( "d" );
driver.findElement( By.name( GlobalIds.SEARCH ) ).click();
TUtils.sleep( 1 );
}
private void ouperms()
{
driver.findElement( By.linkText( "OUPRMS" ) ).click();
driver.findElement( By.id( GlobalIds.SEARCH_VAL ) ).sendKeys( "a" );
driver.findElement( By.name( GlobalIds.SEARCH ) ).click();
}
private void admrles()
{
TUtils.sleep( 1 );
driver.findElement( By.linkText( "ADMRLES" ) ).click();
driver.findElement( By.id( GlobalIds.SEARCH_VAL ) ).clear();
driver.findElement( By.id( GlobalIds.SEARCH_VAL ) ).sendKeys( "t" );
driver.findElement( By.name( GlobalIds.SEARCH ) ).click();
driver.findElement( By.id( GlobalIds.NAME ) ).clear();
driver.findElement( By.id( GlobalIds.NAME ) ).sendKeys( "SelTestAdminRole" );
driver.findElement( By.id( GlobalIds.DESCRIPTION ) ).clear();
driver.findElement( By.id( GlobalIds.DESCRIPTION ) ).sendKeys( "Selenium Test Admin Role" );
driver.findElement( By.name( GlobalIds.PARENTROLES_SEARCH ) ).click();
TUtils.sleep( 2 );
driver.findElement( By.linkText( ">" ) ).click();
TUtils.sleep( 1 );
driver.findElement( By.linkText( ">" ) ).click();
TUtils.sleep( 1 );
driver.findElement( By.linkText( GlobalIds.SELECT ) ).click();
TUtils.sleep( 2 );
// DELEGATION DETAILS:
driver.findElement( By.name( GlobalIds.ROLEAUXPANEL + ":" + GlobalIds.USEROU_SEARCH ) ).click();
TUtils.sleep( 1 );
driver.findElement( By.linkText( GlobalIds.SELECT ) ).click();
driver.findElement( By.name( GlobalIds.ROLEAUXPANEL + ":" + GlobalIds.PERMOU_SEARCH ) ).click();
TUtils.sleep( 1 );
driver.findElement( By.linkText( GlobalIds.SELECT ) ).click();
driver.findElement( By.id( GlobalIds.BEGIN_RANGE ) ).clear();
driver.findElement( By.id( GlobalIds.BEGIN_RANGE ) ).sendKeys( "oamT6D" );
driver.findElement( By.name( GlobalIds.ROLEAUXPANEL + ":" + GlobalIds.BEGIN_RANGE_SEARCH ) ).click();
TUtils.sleep( 1 );
driver.findElement( By.linkText( GlobalIds.SELECT ) ).click();
driver.findElement( By.name( GlobalIds.ROLEAUXPANEL + ":" + GlobalIds.BEGIN_INCLUSIVE ) ).click();
driver.findElement( By.name( GlobalIds.ROLEAUXPANEL + ":" + GlobalIds.END_RANGE_SEARCH ) ).click();
TUtils.sleep( 1 );
driver.findElement( By.linkText( GlobalIds.SELECT ) ).click();
driver.findElement( By.name( GlobalIds.ROLEAUXPANEL + ":" + GlobalIds.END_INCLUSIVE ) ).click();
driver.findElement( By.name( GlobalIds.ADD ) ).click();
TUtils.sleep( 1 );
driver.findElement( By.id( GlobalIds.TEMPORAL_CONSTRAINTS_LABEL ) ).click();
TUtils.sleep( 1 );
driver.findElement( By.id( GlobalIds.BEGIN_TIME_P ) ).clear();
driver.findElement( By.id( GlobalIds.BEGIN_TIME_P ) ).sendKeys( "8:00 AM" );
driver.findElement( By.id( GlobalIds.END_TIME_P ) ).clear();
driver.findElement( By.id( GlobalIds.END_TIME_P ) ).sendKeys( "5:00 PM" );
driver.findElement( By.id( GlobalIds.BEGIN_DATE_P ) ).clear();
driver.findElement( By.id( GlobalIds.BEGIN_DATE_P ) ).sendKeys( "1/1/2013" );
driver.findElement( By.id( GlobalIds.END_DATE_P ) ).clear();
driver.findElement( By.id( GlobalIds.END_DATE_P ) ).sendKeys( "1/1/2099" );
driver.findElement( By.id( GlobalIds.BEGIN_LOCK_DATE_P ) ).clear();
driver.findElement( By.id( GlobalIds.BEGIN_LOCK_DATE_P ) ).sendKeys( "6/1/2013" );
driver.findElement( By.id( GlobalIds.END_LOCK_DATE_P ) ).clear();
driver.findElement( By.id( GlobalIds.END_LOCK_DATE_P ) ).sendKeys( "6/15/2013" );
driver.findElement( By.id( GlobalIds.TIMEOUT_P ) ).clear();
driver.findElement( By.id( GlobalIds.TIMEOUT_P ) ).sendKeys( "0" );
driver.findElement( By.id( GlobalIds.SUNDAY_P ) ).click();
driver.findElement( By.id( GlobalIds.MONDAY_P ) ).click();
driver.findElement( By.id( GlobalIds.TUESDAY_P ) ).click();
driver.findElement( By.id( GlobalIds.WEDNESDAY_P ) ).click();
driver.findElement( By.id( GlobalIds.THURSDAY_P ) ).click();
driver.findElement( By.id( GlobalIds.FRIDAY_P ) ).click();
driver.findElement( By.id( GlobalIds.SATURDAY_P ) ).click();
driver.findElement( By.name( GlobalIds.COMMIT ) ).click();
TUtils.sleep( 1 );
driver.findElement( By.name( GlobalIds.DELETE ) ).click();
TUtils.sleep( 1 );
}
private void admobjs()
{
driver.findElement( By.linkText( "ADMOBJS" ) ).click();
driver.findElement( By.id( GlobalIds.SEARCH_VAL ) ).sendKeys( "u" );
driver.findElement( By.name( GlobalIds.SEARCH ) ).click();
TUtils.sleep( 1 );
}
private void admperms()
{
driver.findElement( By.linkText( "ADMPERMS" ) ).click();
driver.findElement( By.id( "objectAssignLinkLbl" ) ).click();
TUtils.sleep( 1 );
driver.findElement( By.linkText( GlobalIds.SELECT ) ).click();
driver.findElement( By.name( GlobalIds.SEARCH ) ).click();
TUtils.sleep( 1 );
}
private void plcys()
{
driver.findElement( By.linkText( "PLCYS" ) ).click();
driver.findElement( By.id( GlobalIds.SEARCH_VAL ) ).sendKeys( "oamtp1policy" );
driver.findElement( By.name( GlobalIds.SEARCH ) ).click();
TUtils.sleep( 1 );
}
private void binds()
{
driver.findElement( By.linkText( "BINDS" ) ).click();
driver.findElement( By.id( GlobalIds.USER_ID ) ).clear();
driver.findElement( By.id( GlobalIds.USER_ID ) ).sendKeys( "jtsuser1" );
driver.findElement( By.name( GlobalIds.SEARCH ) ).click();
TUtils.sleep( 1 );
WebElement table = driver.findElement(By.id("bindtreegrid"));
// Now get all the TR elements from the table
List<WebElement> allRows = table.findElements(By.tagName("tr"));
// And iterate over them, getting the cells
allRows.get( 4 ).findElement(By.className("imxt-cell")).click();
TUtils.sleep( 1 );
allRows.get( 5 ).findElement(By.className("imxt-cell")).click();
TUtils.sleep( 1 );
allRows.get( 6 ).findElement(By.className("imxt-cell")).click();
TUtils.sleep( 1 );
}
private void authzs()
{
driver.findElement( By.linkText( "AUTHZ" ) ).click();
driver.findElement( By.id( GlobalIds.OBJ_NAME ) ).clear();
driver.findElement( By.id( GlobalIds.OBJ_NAME ) ).sendKeys( "us.jts.fortress.rbac.AdminMgrImpl" );
driver.findElement( By.name( "admin" ) ).click();
driver.findElement( By.id( "permLinkLbl" ) ).click();
TUtils.sleep( 1 );
//driver.findElement( By.linkText( "6" ) ).click();
driver.findElement( By.linkText( GlobalIds.SELECT ) ).click();
driver.findElement( By.name( GlobalIds.SEARCH ) ).click();
TUtils.sleep( 1 );
WebElement table = driver.findElement(By.id("authztreegrid"));
// Now get all the TR elements from the table
List<WebElement> allRows = table.findElements(By.tagName("tr"));
// And iterate over them, getting the cells
allRows.get( 4 ).findElement(By.className("imxt-cell")).click();
TUtils.sleep( 1 );
allRows.get( 5 ).findElement(By.className("imxt-cell")).click();
TUtils.sleep( 1 );
allRows.get( 6 ).findElement(By.className("imxt-cell")).click();
TUtils.sleep( 1 );
}
private void mods()
{
driver.findElement( By.linkText( "MODS" ) ).click();
driver.findElement( By.id( GlobalIds.USER_ID ) ).clear();
driver.findElement( By.id( GlobalIds.USER_ID ) ).sendKeys( "test" );
driver.findElement( By.name( GlobalIds.SEARCH ) ).click();
TUtils.sleep( 10 );
WebElement table = driver.findElement(By.id("modtreegrid"));
// Now get all the TR elements from the table
List<WebElement> allRows = table.findElements(By.tagName("tr"));
// And iterate over them, getting the cells
allRows.get( 5 ).findElement(By.className("imxt-cell")).click();
TUtils.sleep( 1 );
nextPage(table, "modstable");
TUtils.sleep( 1 );
allRows.get( 6 ).findElement(By.className("imxt-cell")).click();
TUtils.sleep( 1 );
nextPage(table, "modstable");
TUtils.sleep( 1 );
}
private void nextPage(WebElement table, String szTableName)
{
table = driver.findElement(By.id( szTableName));
List<WebElement> allRows = table.findElements(By.tagName("a"));
for (WebElement row : allRows)
{
String szText = row.getText();
if(szText.equals( "Go to the next page" ))
row.click();
log.debug( "row text=" + row.getText());
}
}
@After
public void tearDown() throws Exception
{
driver.quit();
String verificationErrorString = verificationErrors.toString();
if ( !"".equals( verificationErrorString ) )
{
fail( verificationErrorString );
}
}
private boolean isElementPresent( By by )
{
try
{
driver.findElement( by );
return true;
}
catch ( NoSuchElementException e )
{
return false;
}
}
private boolean isAlertPresent()
{
try
{
driver.switchTo().alert();
return true;
}
catch ( NoAlertPresentException e )
{
return false;
}
}
private String closeAlertAndGetItsText()
{
try
{
Alert alert = driver.switchTo().alert();
String alertText = alert.getText();
if ( acceptNextAlert )
{
alert.accept();
}
else
{
alert.dismiss();
}
return alertText;
}
finally
{
acceptNextAlert = true;
}
}
// Warning: verifyTextPresent may require manual changes
/*
try
{
assertTrue(driver.findElement(By.cssSelector("BODY")).getText().matches("^[\\s\\S]*Commander Web
Admin[\\s\\S]*$"));
}
catch ( Error e )
{
verificationErrors.append( e.toString() );
}
*/
// Warning: verifyTextPresent may require manual changes
/*
try
{
assertTrue(driver.findElement(By.cssSelector("BODY")).getText().matches
("^[\\s\\S]*UserAdministration[\\s\\S]*$"));
}
catch ( Error e )
{
verificationErrors.append( e.toString() );
}
// Warning: verifyTextPresent may require manual changes
try
{
assertTrue( driver.findElement( By.cssSelector( "BODY" ) ).getText().matches(
"^[\\s\\S]*jtsTU16User7[\\s\\S]*$" ) );
}
catch ( Error e )
{
verificationErrors.append( e.toString() );
}
*/
/*
table = driver.findElement(By.id( "modstable"));
allRows = table.findElements(By.tagName("a"));
for (WebElement row : allRows)
{
String szText = row.getText();
if(szText.equals( "Go to the next page" ))
row.click();
log.info( "row text=" + row.getText());
}
TUtils.sleep( 1 );
*/
//table = driver.findElement(By.className( "k-link"));
//driver.findElement( By.className( "k-link" ) ).click();
//driver.findElement( By.className( "k-icon k-i-arrow-e" ) ).click();
//a.k-link:nth-child(4) > span:nth-child(1)
//TUtils.sleep( 1 );
//driver.findElement( By.className( "k-link" ) ).click();
//TUtils.sleep( 1 );
//driver.findElement( By.className( "k-link" ) ).click();
//TUtils.sleep( 1 );
/*
allRows.get( 6 ).findElement(By.className("imxt-cell")).click();
TUtils.sleep( 1 );
allRows.get( 7 ).findElement(By.className("imxt-cell")).click();
*/
/*
for(WebElement row : allRows)
{
if(rowctr++ < 5)
continue;
row.findElement(By.className("imxt-cell")).click();
TUtils.sleep( 3 );
//driver.findElement(By.className("imxt-cell")).click();
}
*/
/*
for (WebElement row : allRows)
{
rowctr++;
//List<WebElement> cells = row.findElements(By.tagName("td"));
if(rowctr < 5)
continue;
List<WebElement> cells = row.findElements(By.className("imxt-cell"));
driver.findElement(By.className("imxt-cell")).click();
*/
//List<WebElement> cells = row.findElements(By.className("imxt-cell"));
//List<WebElement> cells = row.findElements(By.className("imxt-a-imxt-nowrap"));
//*[@id="body35_1"]/td[1]/div
/*
int cellctr = 0;
for (WebElement cell : cells)
{
cellctr++;
//log.info( "Cell[" + rowctr + "][" + cellctr + "]: " + cell.toString() );
//log.info( "cell tagname: " + cell.getTagName());
//String td = cell.getAttribute( "td" );
String td = cell.getText();
//String innerText = driver.findElement(By.xpath(".//div")).getText();
//String innerText = driver.findElement(By.className("imxt-cell")).getText();
log.info( "intext[" + rowctr + "][" + cellctr + "] td value:" + td);
//List<WebElement> cells2 = cell.findElements(By.className("imxt-cell"));
// "imxt-cell"
///*/
/*[@id="body35_1"]/td[1]
}
*/
//List<WebElement> cells = row.findElements(By.xpath(".//*[@id=\"*\"]/td[2]/div"));
//List<WebElement> cells = row.findElements(By.xpath("//table/tbody/tr[" + rowctr + "/td[1]"));
//String innerText = driver.findElement(By.xpath("//table/tbody/tr[" + rowctr + "]/td[1]")).getText();
//List<WebElement> cells = row.findElements(By.xpath(".//td[1]"));
//log.info( "intext[" + rowctr + ":" + innerText);
////*[@id="body35_9"]
//<div class="imxt-a imxt-nowrap">demoUser10</div>
/*
int cellctr = 0;
for (WebElement cell : cells)
{
cellctr++;
log.info( "Cell[" + rowctr + "][" + cellctr + "]: " + cell.toString() );
log.info( "cell tagname: " + cell.getTagName());
}
*/
// }
//List<WebElement> cells = row.findElements(By.xpath(".//*[local-name(.)='th' or local-name(.)='td']"));
//TUtils.sleep( 1 );
//( ( JavascriptExecutor ) driver ).executeScript( "document.getElementById('usertreegrid').focus();" );
/*
( ( JavascriptExecutor ) driver ).executeScript( "$(document.getElementById('adminRoles')).val" +
"('DemoAdminUsers');" );
*/
}