001/** 002 * Copyright 2005-2011 The Kuali Foundation 003 * 004 * Licensed under the Educational Community License, Version 2.0 (the "License"); 005 * you may not use this file except in compliance with the License. 006 * You may obtain a copy of the License at 007 * 008 * http://www.opensource.org/licenses/ecl2.php 009 * 010 * Unless required by applicable law or agreed to in writing, software 011 * distributed under the License is distributed on an "AS IS" BASIS, 012 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 013 * See the License for the specific language governing permissions and 014 * limitations under the License. 015 */ 016package edu.samplu.travel.test; 017 018import com.thoughtworks.selenium.DefaultSelenium; 019import com.thoughtworks.selenium.Selenium; 020import org.junit.After; 021import org.junit.Before; 022import org.junit.Test; 023 024import static org.junit.Assert.assertEquals; 025/** 026 * TODO Administrator don't forget to fill this in. 027 * 028 * @author Kuali Rice Team (rice.collab@kuali.org) 029 */ 030public class FiscalOfficerInfoMaintenanceNewIT { 031 private Selenium selenium; 032 @Before 033 public void setUp() throws Exception { 034 //---- 3rd parameter(*firefox) can also be replaced by *chrome , *googlechrome. 035 selenium = new DefaultSelenium("localhost", 4444, "*firefox", System.getProperty("remote.public.url")); 036 selenium.start(); 037 } 038 039 @Test 040 public void testUntitled() throws Exception { 041 selenium.open("/portal.do?selectedTab=main"); 042 selenium.type("__login_user", "admin"); 043 selenium.click("//input[@value='Login']"); 044 selenium.waitForPageToLoad("50000"); 045 selenium.click("//a[@title='FiscalOfficerInfo Maintenance (New)']"); 046 selenium.waitForPageToLoad("50000"); 047 selenium.selectFrame("iframeportlet"); 048 String docId = selenium.getText("//span[contains(@id , '_attribute_span')][position()=1]"); 049 selenium.type("//input[@name='document.documentHeader.documentDescription']", "New FO Doc"); 050 selenium.type("//input[@name='document.newMaintainableObject.dataObject.id']", "5"); 051 selenium.type("//input[@name='document.newMaintainableObject.dataObject.userName']", "Jigar"); 052 053// selenium.type("newCollectionLines['document.newMaintainableObject.dataObject.accounts'].number", "123123"); 054// selenium.type("xpath = //input[@name='document.newMaintainableObject.dataObject.accounts[0].number']", "123123"); 055// selenium.type("//input[contains(@name , '.number')]", "123123"); 056// selenium.type("newCollectionLines['document.newMaintainableObject.dataObject.accounts'].name", "ChrisTravelAcc"); 057// selenium.type("xpath = //input[@name='document.newMaintainableObject.dataObject.accounts[0].name']", "ChrisTravelAcc"); 058// selenium.type("//input[contains(@name , '.name')]", "JustinTravelAcc"); 059// selenium.click("add"); 060// selenium.click("//input[@value='add']"); 061// System.out.println("adding Row"); 062// selenium.wait(90000); 063 064 selenium.click("//button[@value='save']"); 065 066 int docIdInt = Integer.valueOf(docId).intValue(); 067 068 selenium.waitForPageToLoad("50000"); 069 selenium.selectFrame("relative=up"); 070 selenium.click("//img[@alt='action list']"); 071 selenium.waitForPageToLoad("50000"); 072 selenium.selectFrame("iframeportlet"); 073 if(selenium.isElementPresent("link=Last")){ 074 selenium.click("link=Last"); 075 selenium.waitForPageToLoad("50000"); 076 selenium.click("link="+docIdInt); 077 } else { 078 selenium.click("link="+docIdInt); 079 } 080 081 Thread.sleep(5000); 082 String[] windowTitles = selenium.getAllWindowTitles(); 083 selenium.selectWindow(windowTitles[1]); 084 selenium.windowFocus(); 085 assertEquals(windowTitles[1], selenium.getTitle()); 086 087 //------submit-----// 088 selenium.selectFrame("relative=up"); 089 selenium.click("//button[@value='submit']"); 090 selenium.waitForPageToLoad("50000"); 091 selenium.close(); 092 //------submit over---// 093 094 //----step 2----// 095 selenium.selectWindow("null"); 096 selenium.windowFocus(); 097 selenium.click("//img[@alt='doc search']"); 098 selenium.waitForPageToLoad("50000"); 099 assertEquals(windowTitles[0], selenium.getTitle()); 100 selenium.selectFrame("iframeportlet"); 101 selenium.click("//input[@name='methodToCall.search' and @value='search']"); 102 selenium.waitForPageToLoad("50000"); 103 //----step 2 over ----// 104 105 //-----Step 3 verifies that doc is final-------// 106 assertEquals("FINAL", selenium.getText("//table[@id='row']/tbody/tr[1]/td[4]")); 107 selenium.selectFrame("relative=up"); 108 selenium.click("link=Main Menu"); 109 selenium.waitForPageToLoad("50000"); 110 assertEquals(windowTitles[0], selenium.getTitle()); 111 System.out.println("---------------------- :: Test complete :: ----------------------"); 112 //-----Step 3 verified that doc is final -------// 113 114 } 115 116 117 118 @After 119 public void tearDown() throws Exception { 120 selenium.stop(); 121 } 122}