001/**
002 * Copyright 2005-2015 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 org.kuali.rice.krad.labs.maintenance;
017
018import org.junit.Test;
019
020/**
021 * @author Kuali Rice Team (rice.collab@kuali.org)
022 */
023public class LabsMaintenanceCopyLinkOnSearchResultAft extends LabsMaintenanceBase {
024
025    /**
026     * /kr-krad/kradsampleapp?viewId=KradMaintenanceSample-PageR2C3
027     */
028    public static final String BOOKMARK_URL = "/kr-krad/kradsampleapp?viewId=KradMaintenanceSample-PageR2C3";
029
030    @Override
031    protected String getBookmarkUrl() {
032        return BOOKMARK_URL;
033    }
034
035    @Override
036    protected void navigate() throws Exception {
037        navigateToMaintenance("Maintenance Sample - Copy link on Search Results");
038    }
039
040    protected void testMaintenanceDefineControl() throws InterruptedException {
041        waitAndClickByLinkText("Travel Company Maintenance Sample - Copy from Search Result");
042        waitAndClickSearchByText();
043        waitAndClickLinkContainingText("copy");
044        waitForElementPresentByXpath("//div[@data-label='Company Name']");
045        String companyNameValue=getTextByXpath("//div[@data-label='Company Name']");
046        waitForElementPresentByXpath("//input[@name='document.newMaintainableObject.dataObject.travelCompanyName' and @value='"+companyNameValue+"']");
047        String oldCompanyId=getTextByXpath("//section[2]/div/table/tbody/tr[2]/td/div");
048        String newCompanyId=getTextByXpath("//section[2]/div/table/tbody/tr[2]/td[2]/div");
049        if(oldCompanyId.equals(newCompanyId)){
050                jiraAwareFail("Company Id's are copied same.");
051        }
052        waitAndTypeByName("document.documentHeader.documentDescription","copy testing");
053        waitAndClickSubmitByText();
054        waitAndClickConfirmSubmitOk();
055        waitForProgressLoading();
056        waitForTextPresent("Document was successfully submitted.");
057        open(getBaseUrlString()+BOOKMARK_URL);
058        waitAndClickByLinkText("Travel Company Maintenance Sample - Copy from Search Result");
059        waitAndTypeByName("lookupCriteria[travelCompanyId]", newCompanyId);
060        waitAndClickSearchByText();
061        waitForTextPresent(newCompanyId);
062    }
063
064    @Test
065    public void testMaintenanceDefineControlBookmark() throws Exception {
066        testMaintenanceDefineControl();
067        passed();
068    }
069
070    @Test
071    public void testMaintenanceDefineControlNav() throws Exception {
072        testMaintenanceDefineControl();
073        passed();
074    }
075}