1 package com.atlassian.pageobjects.elements.test;
2
3 import com.atlassian.pageobjects.browser.Browser;
4 import com.atlassian.pageobjects.browser.IgnoreBrowser;
5 import com.atlassian.pageobjects.elements.query.Poller;
6 import com.atlassian.pageobjects.elements.test.pageobjects.page.AuiPage;
7 import com.atlassian.pageobjects.elements.test.pageobjects.page.ElementsPage;
8 import com.atlassian.pageobjects.elements.test.pageobjects.page.JQueryPage;
9 import org.junit.Test;
10
11 import java.util.List;
12
13 import static org.junit.Assert.assertEquals;
14 import static org.junit.Assert.assertFalse;
15 import static org.junit.Assert.assertTrue;
16
17 @IgnoreBrowser(Browser.HTMLUNIT_NOJS)
18 public class TestComponents extends AbstractPageElementBrowserTest
19 {
20 @Test
21 public void testAuiMenu()
22 {
23 AuiPage auipage = product.visit(AuiPage.class);
24
25
26 List<String> items = auipage.openLinksMenu().getItems();
27 assertEquals(6, items.size());
28 assertEquals("JQuery Page", items.get(0));
29 for(int i = 1; i <6; i++)
30 {
31 assertEquals("Item " + i, items.get(i));
32 }
33
34
35 auipage.openLinksMenu().gotoJQueryPage();
36 }
37
38 @Test
39 public void testsAuiTab()
40 {
41 AuiPage auipage = product.visit(AuiPage.class);
42
43
44 assertTrue(auipage.roleTabs().adminTab().isOpen());
45 assertFalse(auipage.roleTabs().userTab().isOpen());
46
47
48 assertEquals("This is User Tab", auipage.roleTabs().openUserTab().header());
49 assertFalse(auipage.roleTabs().adminTab().isOpen());
50 assertTrue(auipage.roleTabs().userTab().isOpen());
51
52
53 assertEquals("This is Admin Tab", auipage.roleTabs().openAdminTab().header());
54 assertTrue(auipage.roleTabs().adminTab().isOpen());
55 assertFalse(auipage.roleTabs().userTab().isOpen());
56 }
57
58 @Test
59 @IgnoreBrowser(value = Browser.IE, reason = "isVisible for inline dialog does not work in IE")
60 public void testsInlineDialog()
61 {
62 AuiPage auipage = product.visit(AuiPage.class);
63
64
65 assertFalse(auipage.inlineDialog().getView().isPresent());
66
67
68 assertEquals("AUI Inline Dialog", auipage.openInlineDialog().content());
69 assertTrue(auipage.inlineDialog().getView().isVisible());
70
71
72 auipage.roleTabs().openUserTab();
73 Poller.waitUntilFalse(auipage.inlineDialog().getView().timed().isVisible());
74
75 }
76
77 @Test
78 public void testJqueryMenu()
79 {
80 JQueryPage jquerypage = product.visit(JQueryPage.class);
81
82
83 assertTrue(jquerypage.jqueryMenu().getTrigger().isPresent());
84
85
86 assertFalse(jquerypage.jqueryMenu().isOpen());
87
88
89 assertTrue(jquerypage.jqueryMenu().open().isOpen());
90
91
92 assertFalse(jquerypage.jqueryMenu().close().isOpen());
93
94
95
96 ElementsPage auiPage = jquerypage.jqueryMenu().open().gotoElementsPage();
97
98
99 jquerypage = product.visit(JQueryPage.class);
100 jquerypage.openJqueryMenu().gotoElementsPage();
101
102 }
103 }