View Javadoc

1   package com.atlassian.webdriver.confluence.page;
2   
3   import com.atlassian.pageobjects.Page;
4   import com.atlassian.pageobjects.PageBinder;
5   import com.atlassian.pageobjects.binder.WaitUntil;
6   import com.atlassian.webdriver.AtlassianWebDriver;
7   import com.atlassian.webdriver.confluence.component.header.ConfluenceHeader;
8   import com.atlassian.webdriver.confluence.component.menu.BrowseMenu;
9   import com.atlassian.webdriver.confluence.component.menu.ConfluenceUserMenu;
10  import com.atlassian.webdriver.confluence.component.UserDiscoverable;
11  import org.openqa.selenium.By;
12  
13  import javax.inject.Inject;
14  
15  /**
16   * Base class for all Confluence pages.
17   */
18  public abstract class ConfluenceAbstractPage implements UserDiscoverable, Page
19  {
20      @Inject
21      AtlassianWebDriver driver;
22      
23      @Inject
24      PageBinder pageBinder;
25  
26      public boolean isAdmin()
27      {
28          return getHeader().isAdmin();
29      }
30  
31      public boolean isLoggedIn()
32      {
33          return getHeader().isLoggedIn();
34      }
35  
36      public BrowseMenu getBrowseMenu()
37      {
38          return getHeader().getBrowseMenu();
39      }
40  
41      public ConfluenceUserMenu getUserMenu()
42      {
43          return getHeader().getUserMenu();
44      }
45  
46      @WaitUntil
47      public void doWait()
48      {
49          driver.waitUntilElementIsLocated(By.id("footer"));
50      }
51  
52      public ConfluenceHeader getHeader()
53      {
54          return pageBinder.bind(ConfluenceHeader.class);
55      }
56  }