001    /*
002     * Copyright 2006-2012 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.samplu.krad.travelview;
017    
018    import edu.samplu.common.KradMenuLegacyITBase;
019    import org.junit.Test;
020    
021    /**
022     * @author Kuali Rice Team (rice.collab@kuali.org)
023     */
024    public class MaintenanceDisclosuresLegacyIT extends KradMenuLegacyITBase{
025       
026        @Override
027        protected String getLinkLocator() {
028            return "Travel Account Maintenance (New)";
029        }
030    
031        @Test
032        /**
033         * Verify disclosures are present and functional
034         */
035        public void testVerifyDisclosures() throws Exception {
036            gotoMenuLinkLocator();
037            assertElementPresentByXpath("//span[contains(text(),'Document Overview')]");
038            assertElementPresentByXpath("//span[contains(text(),'Document Overview')]");
039            assertElementPresentByXpath("//span[contains(text(),'Account Information')]");
040            assertElementPresentByXpath("//span[contains(text(),'Fiscal Officer Accounts')]");
041            assertElementPresentByXpath("//span[contains(text(),'Notes and Attachments')]");
042            assertElementPresentByXpath("//span[contains(text(),'Ad Hoc Recipients')]");
043            assertElementPresentByXpath("//span[contains(text(),'Route Log')]");
044    
045            colapseExpandByXpath("//span[contains(text(),'Document Overview')]//img",
046                    "//label[contains(text(),'Organization Document Number')]");
047            colapseExpandByXpath("//span[contains(text(),'Account Information')]//img",
048                    "//label[contains(text(),'Travel Account Type Code')]");
049            colapseExpandByXpath("//span[contains(text(),'Fiscal Officer Accounts')]//img",
050                    "//a[contains(text(),'Lookup/Add Multiple Lines')]");
051    
052            expandColapseByXpath("//span[contains(text(),'Notes and Attachments')]//img", "//label[contains(text(),'Note Text')]");
053            expandColapseByXpath("//span[contains(text(),'Ad Hoc Recipients')]", "//span[contains(text(),'Ad Hoc Group Requests')]");
054    
055            // Handle frames
056            waitAndClickByXpath("//span[contains(text(),'Route Log')]//img");
057            selectFrame("routeLogIFrame");
058    
059            waitIsVisibleByXpath("//img[@alt='refresh']");
060    
061            // relative=top iframeportlet might look weird but either alone results in something not found.
062            selectTopFrame();
063            selectFrame("iframeportlet");
064            waitAndClickByXpath("//span[contains(text(),'Route Log')]//img");
065            selectFrame("routeLogIFrame");
066    
067            waitNotVisibleByXpath("//img[@alt='refresh']");
068            passed();
069        }
070    }