View Javadoc
1   /**
2    * Copyright 2005-2015 The Kuali Foundation
3    *
4    * Licensed under the Educational Community License, Version 2.0 (the "License");
5    * you may not use this file except in compliance with the License.
6    * You may obtain a copy of the License at
7    *
8    * http://www.opensource.org/licenses/ecl2.php
9    *
10   * Unless required by applicable law or agreed to in writing, software
11   * distributed under the License is distributed on an "AS IS" BASIS,
12   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13   * See the License for the specific language governing permissions and
14   * limitations under the License.
15   */
16  package edu.sampleu;
17  
18  import org.junit.Test;
19  import org.kuali.rice.testtools.selenium.AutomatedFunctionalTestUtils;
20  import org.kuali.rice.testtools.selenium.WebDriverLegacyITBase;
21  
22  public class LoginLogoutMultipleAft extends WebDriverLegacyITBase {
23  
24      /**
25       * "//div[@id='login-info']/strong[2]"
26       */
27      public static final String LOGIN_INFO_STRONG_2_XPATH = "//div[@id='login-info']/strong[2]";
28  
29      @Override
30      protected String getBookmarkUrl() {
31          return AutomatedFunctionalTestUtils.PORTAL;
32      }
33  
34      @Override
35      protected void navigate() throws Exception {
36          waitAndClickMainMenu();
37          waitForPageToLoad();
38      }
39  
40      @Override
41      public String getUserName() {
42          return "admin";
43      }
44  
45      @Test
46      public void testMultipleLoginLogoutNav() throws Exception {
47          testMultipleLoginLogout();
48          passed();
49      }
50  
51      public void testMultipleLoginLogout() throws Exception {
52          assertEquals("Logged in User: admin",getTextByXpath("//div[@id='login-info']/strong[1]"));
53          assertEquals(Boolean.FALSE, isElementPresentByXpath(LOGIN_INFO_STRONG_2_XPATH));
54          waitAndTypeByName("backdoorId", "employee");
55          waitAndClickByXpath("//input[@value='Login']");
56          waitForElementPresentByXpath(LOGIN_INFO_STRONG_2_XPATH);
57          assertEquals("  Impersonating User: employee",getTextByXpath(LOGIN_INFO_STRONG_2_XPATH));
58          waitAndClickLogout();
59          assertEquals(Boolean.FALSE, isElementPresentByXpath(LOGIN_INFO_STRONG_2_XPATH));
60          waitAndClickLogout();
61      }
62  }