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 */ 016package edu.sampleu.admin; 017 018/** 019 * @author Kuali Rice Team (rice.collab@kuali.org) 020 */ 021public abstract class ConfigComponentAftBase extends AdminTmplMthdAftNavCreateNewBase { 022 023 protected void createNewEnterDetails() throws InterruptedException { 024 waitAndTypeByName("document.documentHeader.documentDescription", getDescriptionUnique()); 025 selectOptionByName("document.newMaintainableObject.namespaceCode", namespaceCode); 026 jiraAwareTypeByName("document.newMaintainableObject.code", "code" + uniqueString); 027 jiraAwareTypeByName("document.newMaintainableObject.name", "name" + uniqueString); 028 } 029 030 /** 031 * {@inheritDoc} 032 * Component 033 * @return 034 */ 035 @Override 036 protected String getLinkLocator() { 037 return "Component"; 038 } 039 040 protected void saveAndClose() throws InterruptedException { 041 checkForDocError(); 042 waitAndClickByXpath(SAVE_XPATH); 043 waitForTextPresent("Document was successfully saved"); 044 waitAndClickByName("methodToCall.close"); 045// waitAndClickByName("methodToCall.processAnswer.button1"); 046 } 047 048 protected void saveAndReload() throws InterruptedException { 049 checkForDocError(); 050 waitAndClickByXpath(SAVE_XPATH); 051 waitForTextPresent("Document was successfully saved"); 052 waitAndClickByName("methodToCall.reload"); 053// waitAndClickByName("methodToCall.processAnswer.button1"); 054 } 055 056 protected void submitAndClose() throws InterruptedException { 057 checkForDocError(); 058 waitAndClickByName("methodToCall.route"); 059 waitForTextPresent("Document was successfully submitted"); 060 waitAndClickByName("methodToCall.close"); 061// waitAndClickByName("methodToCall.processAnswer.button1"); 062 } 063 064 /** 065 * submits the doc and asserts that it was successfully submitted 066 * does not close the document 067 * 068 * @throws InterruptedException 069 */ 070 protected void submit() throws InterruptedException { 071 checkForDocError(); 072 waitAndClickByName("methodToCall.route"); 073 waitForTextPresent("Document was successfully submitted"); 074 } 075 076 /** 077 * recalls a document. 078 * closes the page when done. 079 * 080 * @param cancel if true, performs recall and cancel. if false, performs recall to action list 081 * 082 * @throws InterruptedException 083 */ 084 protected void recall(boolean cancel) throws InterruptedException { 085 waitAndClickByName("methodToCall.recall"); 086 waitForTextPresent("the reason below"); 087 waitAndTypeByName("reason", "Oops!"); 088 if (cancel){ 089 // recall and cancel 090 waitAndClickByName("methodToCall.processAnswer.button1"); 091 waitForTextPresent("RECALLED"); 092 waitAndClickByName("methodToCall.close"); 093 } else { 094 // recall to action list 095 waitAndClickByName("methodToCall.processAnswer.button0"); 096 waitForTextPresent("SAVED"); 097 waitAndClickByName("methodToCall.close"); 098 waitAndClickByName("methodToCall.processAnswer.button1"); 099 } 100 } 101 102}