001/** 002 * Copyright 2005-2016 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.sampleu.main; 017 018import org.kuali.rice.testtools.selenium.AutomatedFunctionalTestUtils; 019import org.kuali.rice.testtools.selenium.WebDriverUtils; 020 021/** 022 * @author Kuali Rice Team (rice.collab@kuali.org) 023 */ 024public class CreateNewAgendaAftBase extends MainTmplMthdSTNavBase{ 025 026 /** 027 * ITUtil.PORTAL + "?channelTitle=Create%20New%20Agenda&channelUrl=" + WebDriverUtils.getBaseUrlString() + 028 * "/kr-krad/krmsAgendaEditor?methodToCall=start&dataObjectClassName=org.kuali.rice.krms.impl.ui.AgendaEditor&returnLocation=" + 029 * ITUtil.PORTAL_URL + ITUtil.HIDE_RETURN_LINK; 030 */ 031 public static final String BOOKMARK_URL = AutomatedFunctionalTestUtils.PORTAL + "?channelTitle=Create%20New%20Agenda&channelUrl=" + WebDriverUtils 032 .getBaseUrlString() +"/kr-krad/krmsAgendaEditor?methodToCall=start&dataObjectClassName=org.kuali.rice.krms.impl.ui.AgendaEditor&returnLocation=" + 033 AutomatedFunctionalTestUtils.PORTAL_URL + AutomatedFunctionalTestUtils.HIDE_RETURN_LINK; 034 035 @Override 036 protected String getBookmarkUrl() { 037 return BOOKMARK_URL; 038 } 039 040 /** 041 * {@inheritDoc} 042 * Create New Agenda 043 * @return 044 */ 045 @Override 046 protected String getLinkLocator() { 047 return "Create New Agenda"; 048 } 049 050 protected void testCreateNewAgenda() throws Exception { 051 selectFrameIframePortlet(); 052 String desc = getDescriptionUnique(); 053 String docId = waitForAgendaDocId(); 054 waitAndSelectLabeled("Namespace:", "Kuali Rules Test"); 055 waitAndTypeLabeledInput("Name:", desc); 056 fireEvent("document.newMaintainableObject.dataObject.contextName", "focus"); 057 waitAndTypeLabeledInput("Context:", "Context1"); 058 fireEvent("document.newMaintainableObject.dataObject.contextName", "blur"); 059 Thread.sleep(1000); 060 // extra focus and blur to work around KULRICE-11534 Create New Agenda requires two blur events to fully render Type when Context is typed in (first renders label, second renders select) 061 fireEvent("document.newMaintainableObject.dataObject.contextName", "focus"); 062 Thread.sleep(500); 063 fireEvent("document.newMaintainableObject.dataObject.contextName", "blur"); 064 waitForElementPresentByName("document.newMaintainableObject.dataObject.agenda.typeId"); 065 waitAndSelectLabeled("Type:", "Campus Agenda"); 066 waitForElementPresentByName("document.newMaintainableObject.dataObject.customAttributesMap[Campus]"); 067 waitAndTypeLabeledInput("Campus:", "BL"); 068 waitAndTypeLabeledInput("label:", "Type label for " + desc); 069 submitSuccessfully(); 070 assertDocSearch(docId, "FINAL"); 071 } 072}