001 /** 002 * Copyright 2005-2014 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 */ 016 package org.kuali.rice.krad.demo.travel.application; 017 018 import org.kuali.rice.testtools.selenium.WebDriverLegacyITBase; 019 import org.junit.Test; 020 021 /** 022 * @author Kuali Rice Team (rice.collab@kuali.org) 023 */ 024 public class DemoTravelDestinationLookUpAft extends WebDriverLegacyITBase { 025 026 /** 027 * /kr-krad/lookup?methodToCall=start&dataObjectClassName=edu.sampleu.travel.dataobject.TravelDestination 028 */ 029 public static final String BOOKMARK_URL = "/kr-krad/lookup?methodToCall=start&dataObjectClassName=edu.sampleu.travel.dataobject.TravelDestination"; 030 031 /** 032 * Search 033 */ 034 public static final String SEARCH = "Search"; 035 036 /** 037 * Clear Values 038 */ 039 public static final String CLEAR_VALUES = "Clear Values"; 040 041 /** 042 * lookupCriteria[travelDestinationId] 043 */ 044 public static final String DESTINATION_ID = "lookupCriteria[travelDestinationId]"; 045 046 /** 047 * lookupCriteria[travelDestinationName] 048 */ 049 public static final String DESTINATION_NAME = "lookupCriteria[travelDestinationName]"; 050 051 @Override 052 public String getBookmarkUrl() { 053 return BOOKMARK_URL; 054 } 055 056 @Override 057 protected void navigate() throws Exception { 058 waitAndClickById("Demo-DemoLink", ""); 059 waitAndClickByLinkText("Travel Destination Lookup"); 060 } 061 062 protected void testTravelDestinationLookUp() throws Exception { 063 waitAndTypeByName(DESTINATION_ID,"1"); 064 waitAndTypeByName(DESTINATION_NAME,"a*"); 065 waitAndClickButtonByText(SEARCH); 066 waitForTextPresent("No values match this search."); 067 waitForTextPresent("You have entered the primary key for this table (Id) in the search criteria. Since these fields can be used to uniquely identify a row in this table, the other search criteria entered will be ignored."); 068 waitAndClickButtonByText(CLEAR_VALUES); 069 waitAndClickByXpath("//input[@name='lookupCriteria[active]' and @value='Y']"); 070 waitAndClickButtonByText(SEARCH); 071 String activeResults [] ={"10000","Colorado","United States","Colorado","true"}; 072 Thread.sleep(1000); //Required as the below method "only waits for first element" in array. Here first element gets loaded and second takes a while. 073 assertTextPresent(activeResults); 074 } 075 076 @Test 077 public void testTravelDestinationLookUpBookmark() throws Exception { 078 testTravelDestinationLookUp(); 079 passed(); 080 } 081 082 @Test 083 public void testTravelDestinationLookUpNav() throws Exception { 084 testTravelDestinationLookUp(); 085 passed(); 086 } 087 }