001 /**
002 * Copyright 2005-2013 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.admin.test;
017
018 import edu.samplu.common.ITUtil;
019 import edu.samplu.common.SmokeTestBase;
020 import org.junit.Test;
021 import org.kuali.rice.krad.util.KRADConstants;
022
023 import static org.junit.Assert.assertFalse;
024 import static org.junit.Assert.assertTrue;
025
026 /**
027 * Tests whether the ENABLE_FIELD_LEVEL_HELP_IND parameter is being considered and loaded on each request.
028 *
029 * @author Kuali Rice Team (rice.collab@kuali.org)
030 */
031 public class ParameterEnableFieldLevelHelpIndSmokeTest extends SmokeTestBase {
032
033 @Override
034 protected String getBookmarkUrl() {
035 return ITUtil.PORTAL;
036 }
037
038 @Override
039 protected void navigate() throws Exception {
040 waitAndClickAdministration(this);
041 waitForPageToLoad();
042 }
043
044 /**
045 * Sets the ENABLE_FIELD_LEVEL_HELP_IND parameter to 'Y', checks whether the field level help links are enabled
046 * on the Person document, then sets ENABLE_FIELD_LEVEL_HELP_IND to 'N' and checks the opposite.
047 *
048 * @throws Exception
049 */
050 @Test
051 public void testEnableFieldLevelHelpIndParameterNav() throws Exception {
052 setParameter(KRADConstants.SystemGroupParameterNames.ENABLE_FIELD_LEVEL_HELP_IND, "Y");
053
054 waitAndClickByLinkText("Person");
055 waitForPageToLoad();
056 selectFrameIframePortlet();
057 assertTrue("The help field did not appear", isElementPresent("img[alt='[Help]Principal Name']"));
058
059 setParameter(KRADConstants.SystemGroupParameterNames.ENABLE_FIELD_LEVEL_HELP_IND, "N");
060
061 waitAndClickByLinkText("Person");
062 waitForPageToLoad();
063 selectFrameIframePortlet();
064 assertFalse("The help field appeared", isElementPresent("img[alt='[Help]Principal Name']"));
065
066 passed();
067 }
068
069 private void setParameter(String parameterName, String parameterValue) throws Exception {
070 selectTopFrame();
071 waitAndClickAdministration(this);
072 waitAndClickByLinkText("Parameter");
073
074 selectFrameIframePortlet();
075 waitAndType("input#name", parameterName);
076 waitAndClickSearch();
077 waitAndClickByLinkText(EDIT_LINK_TEXT);
078
079 waitAndTypeByXpath(DOC_DESCRIPTION_XPATH, "Setting Field Level Help Indicator to " + parameterValue);
080 clearTextByXpath("//textarea[@id='document.newMaintainableObject.value']");
081 waitAndTypeByXpath("//textarea[@id='document.newMaintainableObject.value']", parameterValue);
082 waitAndClickByName(BLANKET_APPROVE_NAME);
083 }
084
085
086 }