001 /* 002 * Copyright 2006-2012 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 edu.samplu.krad.travelview; 017 018 import com.thoughtworks.selenium.DefaultSelenium; 019 import com.thoughtworks.selenium.Selenium; 020 import org.junit.After; 021 import org.junit.Before; 022 import org.junit.Test; 023 024 import static org.junit.Assert.*; 025 026 public class MaintenanceAddDeleteFiscalOfficerIT { 027 private Selenium selenium; 028 029 @Before 030 public void setUp() throws Exception { 031 selenium = new DefaultSelenium("localhost", 4444, "*chrome", System.getProperty("remote.public.url")); 032 selenium.start(); 033 } 034 035 @Test 036 /** 037 * Verify a fiscal officer line can be added and deleted 038 */ 039 public void testVerifyAddDeleteFiscalOfficer() throws Exception { 040 selenium.open("/kr-dev/portal.do"); 041 selenium.type("name=__login_user", "admin"); 042 selenium.click("css=input[type=\"submit\"]"); 043 selenium.waitForPageToLoad("30000"); 044 selenium.click("link=KRAD"); 045 selenium.waitForPageToLoad("50000"); 046 selenium.click("link=Travel Account Maintenance (New)"); 047 selenium.waitForPageToLoad("100000"); 048 selenium.selectFrame("iframeportlet"); 049 selenium.type("id=u1067_add_control", "1234567890"); 050 selenium.type("id=u1101_add_control", "2"); 051 selenium.click("id=u1066_add"); 052 053 for (int second = 0;; second++) { 054 if (second >= 15) { 055 fail("timeout"); 056 } 057 058 if (selenium.isElementPresent("name=document.newMaintainableObject.dataObject.fiscalOfficer.accounts[0].number")) { 059 break; 060 } 061 062 Thread.sleep(1000); 063 } 064 065 assertEquals("1234567890", selenium.getValue("name=document.newMaintainableObject.dataObject.fiscalOfficer.accounts[0].number")); 066 assertEquals("2", selenium.getValue("name=document.newMaintainableObject.dataObject.fiscalOfficer.accounts[0].foId")); 067 selenium.click("css=#u1065_line0"); 068 069 for (int second = 0;; second++) { 070 if (second >= 15) { 071 fail("timeout"); 072 } 073 074 if (!selenium.isElementPresent("name=document.newMaintainableObject.dataObject.fiscalOfficer.accounts[0].number")) { 075 break; 076 } 077 078 Thread.sleep(1000); 079 } 080 } 081 082 @After 083 public void tearDown() throws Exception { 084 selenium.stop(); 085 } 086 }