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 edu.sampleu.admin;
017
018 /**
019 * @author Kuali Rice Team (rice.collab@kuali.org)
020 */
021 public abstract class ConfigComponentAftBase extends AdminTmplMthdAftNavBase {
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 }