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 018import org.junit.Test; 019 020/** 021 * @author Kuali Rice Team (rice.collab@kuali.org) 022 */ 023 024public abstract class AdminTmplMthdAftNavBlanketAppBase extends AdminTmplMthdAftNavCreateNewBase { 025 026 @Override 027 protected String getMenuLinkLocator() { 028 return AdminTmplMthdAftNavBase.ADMIN_LOCATOR; 029 } 030 031 @Override 032 protected String getCreateNewLinkLocator() { 033 return AdminTmplMthdAftNavBase.CREATE_NEW_LOCATOR; 034 } 035 036 protected String testBlanketApprove() throws Exception { 037 selectFrameIframePortlet(); 038 waitAndCreateNew(); 039 String docId = verifyDocInitiated(); 040 assertBlanketApproveButtonsPresent(); 041 createNewLookupDetails(); 042 043 jGrowl("Click Blanket Approve"); 044 waitAndClickByName(BLANKET_APPROVE_NAME, 045 "No blanket approve button does the user " + getUserName() + " have permission?"); 046 Thread.sleep(2000); 047 048 int attempts = 0; 049 while (hasDocError() && extractErrorText().contains("a record with the same primary key already exists.") && 050 ++attempts <= 3) { 051 uniqueString = null; // make sure try a new one 052 jGrowl("record with the same primary key already exists"); 053 createNewEnterDetails(); 054 jGrowl("Click Blanket Approve"); 055 waitAndClickByName(BLANKET_APPROVE_NAME, 056 "No blanket approve button does the user " + getUserName() + " have permission?"); 057 } 058 059 checkForIncidentReport(); 060 blanketApproveAssert(docId); 061 return docId; 062 } 063 064 @Test 065 public void testBlanketAppBookmark() throws Exception { 066 testBlanketApprove(); 067 passed(); 068 } 069 070 @Test 071 public void testBlanketAppNav() throws Exception { 072 testBlanketApprove(); 073 passed(); 074 } 075}