1 package it.com.atlassian.plugin.refimpl;
2
3 import com.atlassian.webdriver.refapp.page.RefappHomePage;
4 import com.atlassian.webdriver.refapp.page.RefappLoginPage;
5 import org.junit.After;
6 import org.junit.Before;
7 import org.junit.Test;
8
9 import static org.hamcrest.MatcherAssert.assertThat;
10 import static org.hamcrest.core.Is.is;
11
12 public class TestActivityStreams extends AbstractRefappTestCase {
13 private RefappLoginPage loginPage;
14
15 @Before
16 public final void setUp() throws Exception {
17 loginPage = PRODUCT.gotoLoginPage();
18 }
19
20 @After
21 public final void tearDown() throws Exception {
22 loginPage.getHeader().logout(RefappHomePage.class);
23 }
24
25 @Test
26 public void testActivityStreamsPageExistInHeaderWhenLoginAsAdmin() {
27 RefappHomePage homePage = loginPage.login("betty", "betty", RefappHomePage.class);
28
29 assertThat("The login must have been successful.", homePage.getHeader().isLoggedIn(), is(true));
30
31 assertThat("Must have logged in as admin.", homePage.getHeader().isAdmin(), is(true));
32
33 assertThat("Activity Streams must be existed in header.", homePage.getHeader().isAtActivityStreamsPage(), is(true));
34 }
35
36 @Test
37 public void testActivityStreamsPageExistInHeaderWhenLoginAsSysAdmin() {
38 RefappHomePage homePage = loginPage.login("admin", "admin", RefappHomePage.class);
39
40 assertThat("The login must have been successful.", homePage.getHeader().isLoggedIn(), is(true));
41
42 assertThat("Must have logged in as sysadmin.", homePage.getHeader().isSysadmin(), is(true));
43
44 assertThat("Activity Streams must be existed in header.", homePage.getHeader().isAtActivityStreamsPage(), is(true));
45 }
46
47 @Test
48 public void testActivityStreamsPageExistInHeaderWhenLoginAsUser() {
49 RefappHomePage homePage = loginPage.login("barney", "barney", RefappHomePage.class);
50
51 assertThat("The login must have been successful.", homePage.getHeader().isLoggedIn(), is(true));
52
53 assertThat("Must not have logged in as admin.", homePage.getHeader().isAdmin(), is(false));
54
55 assertThat("Must not have logged in as sysadmin.", homePage.getHeader().isSysadmin(), is(false));
56
57 assertThat("Activity Streams must be existed in header.", homePage.getHeader().isAtActivityStreamsPage(), is(true));
58 }
59
60 @Test
61 public void testActivityStreamsPageExistInHeaderWhenLogout() {
62 loginPage = loginPage.login("barney", "barney", RefappLoginPage.class);
63
64 RefappHomePage homePage = loginPage.getHeader().logout(RefappHomePage.class);
65
66 assertThat("Must have logged out.", homePage.getHeader().isLoggedIn(), is(false));
67
68 assertThat("Activity Streams must be existed in header when user logged out",
69 homePage.getHeader().isAtActivityStreamsPage(), is(true));
70 }
71
72 @Test
73 public void testActivityStreamsPageExistInHeader() {
74 assertThat("Activity Streams must be existed in header", loginPage.getHeader().isAtActivityStreamsPage(), is(true));
75 }
76 }