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 */
016
017 package edu.samplu.admin.test;
018
019 import org.junit.Assert;
020 import org.junit.Test;
021
022 import edu.samplu.common.ITUtil;
023 import edu.samplu.common.WebDriverLegacyITBase;
024
025
026 /**
027 * test that repeated ajax refreshes work
028 * @author Kuali Rice Team (rice.collab@kuali.org)
029 */
030 public class AgendaEditRuleRefreshLegacyIT extends WebDriverLegacyITBase {
031
032 @Override
033 public String getTestUrl(){
034 return ITUtil.PORTAL;
035 }
036 /**
037 * This overridden method ...
038 *
039 * @see edu.samplu.common.WebDriverLegacyITBase#getTestUrl()
040 */
041
042 @Test
043 /**
044 * test that repeated ajax refreshes work
045 */
046 public void testAgendaEditRuleRefreshIT() throws Exception {
047 waitAndClickByLinkText("Agenda Lookup");
048 waitForPageToLoad();
049 selectFrame("iframeportlet");
050 waitAndClickByXpath("//div[@class='uif-boxLayout uif-horizontalBoxLayout clearfix']/button[1]"); // waitAndClick("id=32");
051 Thread.sleep(3000);
052 waitAndClickByXpath("//a[@title='edit Agenda Definition withAgenda Id=T1000 ']", "Does user have edit permissions?"); // waitAndClick("id=194_line0");
053 checkForIncidentReport("");
054 Thread.sleep(3000);
055 waitAndClickByXpath("//li/a[@class='agendaNode ruleNode']"); // waitAndClick("//li[@id='473_node_0_parent_root']/a");
056 waitAndClickByXpath("//li/a[@class='agendaNode logicNode whenTrueNode']");
057 waitAndClickByLinkText("[-] collapse all");
058
059 // click refresh several times
060 for (int i = 0; i < 6; i++) {
061 for (int second = 0;; second++) {
062 if (second >= 60)
063 Assert.fail("timeout");
064 try {
065 if (isElementPresent(".kr-refresh-button"))
066 break;
067 } catch (Exception e) {}
068 Thread.sleep(1000);
069 }
070
071 waitAndClick("button.kr-refresh-button");
072 }
073 }
074
075 }
076