001 /* 002 * Copyright 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/ecl1.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 */ 016 package edu.samplu.travel.krad.test; 017 018 import static org.junit.Assert.*; 019 020 import org.junit.Test; 021 import org.openqa.selenium.Alert; 022 import org.openqa.selenium.By; 023 import org.openqa.selenium.WebElement; 024 025 import edu.samplu.common.ITUtil; 026 import edu.samplu.common.WebDriverLegacyITBase; 027 028 /** 029 * it tests travel account lookup screen. 030 * 031 * @author Kuali Rice Team (rice.collab@kuali.org) 032 */ 033 public class TravelAccountLookupLegacyIT extends WebDriverLegacyITBase { 034 @Override 035 public String getTestUrl() { 036 return ITUtil.PORTAL; 037 } 038 039 @Test 040 public void testTravelAccountLookup() throws Exception { 041 waitAndClickByLinkText("KRAD"); 042 waitAndClickByLinkText("Travel Account Lookup"); 043 selectFrame("iframeportlet"); 044 045 //Blank Search 046 waitAndClickByXpath("//*[@id='u18']"); 047 Thread.sleep(2000); 048 assertElementPresentByLinkText("a1"); 049 assertElementPresentByLinkText("a2"); 050 assertElementPresentByLinkText("a3"); 051 052 //QuickFinder Lookup 053 054 waitAndTypeByName("lookupCriteria[number]", "a*"); 055 waitAndClickByXpath("//*[@id='u18']"); 056 Thread.sleep(2000); 057 assertElementPresentByLinkText("a1"); 058 assertElementPresentByLinkText("a2"); 059 assertElementPresentByLinkText("a3"); 060 waitAndClickByXpath("//button[@id='u19']"); 061 Thread.sleep(2000); 062 063 //search with each field 064 waitAndTypeByName("lookupCriteria[number]", "a2"); 065 waitAndClickByXpath("//*[@id='u18']"); 066 Thread.sleep(2000); 067 assertElementPresentByLinkText("a2"); 068 waitAndClickByXpath("//button[@id='u19']"); 069 Thread.sleep(2000); 070 071 waitAndTypeByName("lookupCriteria[foId]", "1"); 072 waitAndClickByXpath("//*[@id='u18']"); 073 Thread.sleep(2000); 074 assertEquals("1", getTextByXpath("//table[@id='u27']//tr//td[8]").trim().substring(0, 1)); 075 waitAndClickByXpath("//button[@id='u19']"); 076 Thread.sleep(2000); 077 078 selectOptionByName("lookupCriteria[extension.accountTypeCode]", "CAT"); 079 waitAndClickByXpath("//*[@id='u18']"); 080 waitAndClickByXpath("//table[@id='u27']//tr//td[2]//a"); 081 Thread.sleep(2000); 082 selectTopFrame(); 083 Thread.sleep(5000); 084 WebElement iframe1= driver.findElement(By.xpath("//iframe[@class='fancybox-iframe']")); 085 driver.switchTo().frame(iframe1); 086 assertEquals("Travel Account Inquiry", getTextByXpath("//h1/span").trim()); 087 assertEquals("CAT - Clearing Account Type", getTextByXpath("//*[@id='u44_control']").trim()); 088 waitAndClickByXpath("//button[@id='u13']"); 089 selectFrame("iframeportlet"); 090 091 } 092 }