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;
017    
018    import org.kuali.rice.testtools.selenium.ITUtil;
019    import org.kuali.rice.testtools.selenium.SmokeTestBase;
020    import org.kuali.rice.testtools.selenium.WebDriverUtil;
021    import org.junit.Test;
022    
023    import static com.thoughtworks.selenium.SeleneseTestBase.assertTrue;
024    
025    /**
026     * @author Kuali Rice Team (rice.collab@kuali.org)
027     */
028    public class LoginInvalidUserSmokeTest extends SmokeTestBase {
029    
030        @Override
031        protected String getBookmarkUrl() {
032            return ITUtil.PORTAL;
033        }
034    
035        @Override
036        protected void navigate() throws Exception {
037            // no-op should not need to navigate for invalid login test
038        }
039    
040        @Override
041        public void testSetUp()  {
042            System.setProperty(ITUtil.REMOTE_AUTOLOGIN_PROPERTY, "false"); // turn off auto login so we can test invalid login
043            super.testSetUp();
044        }
045    
046        @Test
047        public void testAdStarUserName() throws InterruptedException {
048            System.setProperty(ITUtil.REMOTE_AUTOLOGIN_PROPERTY, "true");
049            WebDriverUtil.loginKradOrKns(driver, "ad*", this);
050            waitForElementVisibleById("Rice-LoginButton", "ad* should not be a valid login");
051            passed();
052        }
053    
054        /**
055         * Invalid user name test
056         * @throws InterruptedException
057         */
058        @Test
059        public void testInvalidUserName() throws InterruptedException {
060            try {
061                System.setProperty(ITUtil.REMOTE_AUTOLOGIN_PROPERTY, "true");
062                WebDriverUtil.loginKradOrKns(driver, ITUtil.DTS_TWO, this);
063                fail("Expected Invalid Login exception with user " + ITUtil.DTS_TWO);
064            } catch (AssertionError e) {
065                assertTrue(e.getMessage().contains("Invalid"));
066                passed();
067            }
068        }
069    }