1   package com.atlassian.pageobjects.elements.test.pageobjects.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.pageobjects.elements.PageElementFinder;
7   import com.atlassian.pageobjects.elements.query.Poller;
8   import com.atlassian.pageobjects.elements.test.pageobjects.component.JQueryMenu;
9   import com.atlassian.webdriver.utils.by.ByJquery;
10  
11  import javax.inject.Inject;
12  
13  /**
14   * Represents the jquery.html
15   */
16  public class JQueryPage implements Page
17  {
18      @Inject
19      protected PageBinder pageBinder;
20  
21      @Inject
22      protected PageElementFinder elementFinder;
23  
24      public String getUrl()
25      {
26          return "/html/jquery.html";
27      }
28  
29      @WaitUntil
30      public void doWait()
31      {
32          Poller.waitUntilTrue(elementFinder.find(ByJquery.$("h2:contains(JQuery DropDown Menu)")).timed().isPresent());
33      }
34  
35      public JQueryMenu jqueryMenu()
36      {
37          return pageBinder.bind(JQueryMenu.class);
38      }
39  
40      public JQueryMenu openJqueryMenu() {
41          return pageBinder.bind(JQueryMenu.class).open();
42      }
43  }