1 package com.atlassian.webdriver.confluence.component.menu;
2
3 import com.atlassian.pageobjects.PageBinder;
4 import com.atlassian.pageobjects.binder.Init;
5 import com.atlassian.webdriver.AtlassianWebDriver;
6 import com.atlassian.webdriver.confluence.page.ConfluenceAdminHomePage;
7 import com.atlassian.webdriver.confluence.page.PeopleDirectoryPage;
8 import com.atlassian.webdriver.utils.by.ByJquery;
9 import org.openqa.selenium.WebElement;
10 import org.openqa.selenium.support.FindBy;
11
12 import javax.inject.Inject;
13
14
15
16
17
18 public class BrowseMenu
19 {
20 @Inject
21 AtlassianWebDriver driver;
22
23 @Inject
24 PageBinder pageBinder;
25
26 @FindBy(id="administration-link")
27 private WebElement adminPageLink;
28
29 @FindBy(id="people-directory-link")
30 private WebElement peopleDirectoryLink;
31
32 private AjsDropdownMenu browseMenu;
33
34 @Init
35 public void initialise()
36 {
37 browseMenu = pageBinder.bind(AjsDropdownMenu.class, ByJquery.$("#browse-menu-link").parent("li"));
38 }
39
40 public ConfluenceAdminHomePage gotoAdminPage()
41 {
42 adminPageLink.click();
43 return pageBinder.bind(ConfluenceAdminHomePage.class);
44 }
45
46 public PeopleDirectoryPage gotoPeopleDirectoryPage()
47 {
48 peopleDirectoryLink.click();
49 return pageBinder.bind(PeopleDirectoryPage.class);
50 }
51
52 public BrowseMenu open()
53 {
54 browseMenu.open();
55 return this;
56 }
57
58 public boolean isOpen()
59 {
60 return browseMenu.isOpen();
61 }
62
63 public BrowseMenu close()
64 {
65 browseMenu.close();
66 return this;
67 }
68 }