Author: vrockai
Date: 2009-06-23 10:25:50 -0400 (Tue, 23 Jun 2009)
New Revision: 13486
Modified:
branches/JBoss_Portal_Branch_2_7/testsuite/ui-tests/src/org/jboss/portal/test/selenium/DashboardTestCase.java
Log:
[JBPORTAL-2418] - selenium; window name without portlet testcase
Modified:
branches/JBoss_Portal_Branch_2_7/testsuite/ui-tests/src/org/jboss/portal/test/selenium/DashboardTestCase.java
===================================================================
---
branches/JBoss_Portal_Branch_2_7/testsuite/ui-tests/src/org/jboss/portal/test/selenium/DashboardTestCase.java 2009-06-23
10:54:52 UTC (rev 13485)
+++
branches/JBoss_Portal_Branch_2_7/testsuite/ui-tests/src/org/jboss/portal/test/selenium/DashboardTestCase.java 2009-06-23
14:25:50 UTC (rev 13486)
@@ -10,441 +10,501 @@
*
* @author <a href="mailto:vrockai@redhat.com">Viliam Rockai</a>
*/
-@Test(groups = {"cms_dashboard"}, enabled = true, description = "Dashboard
issues test case.")
+@Test(groups = { "cms_dashboard" }, enabled = true, description =
"Dashboard issues test case.")
public class DashboardTestCase extends JBossPortalSeleniumTestCase {
/** prefix for locator properties = dash. */
- public String casePfx = "dash.";
-
- private final String MSG_WINDOW_NAME_VALID =
getMess(casePfx+"msg.window.name.valid","is an invalid window name");
- private final String MSG_PAGE_RENAME_VALID =
getMess(casePfx+"msg.page.rename.valid","is an invalid portal object
name");
- private final String MSG_PAGE_NAME_VALID =
getMess(casePfx+"msg.page.name.valid","is an invalid page name");
-
- private final String DIV_PORTET_EDITOR_TITLE = getLoc(casePfx +
"div.portlet.editor.title", "portlet-editor-title");
- private final String HAND_R1 = getLoc(casePfx + "hand.r1",
"//html/body/div[2]/div/div/div[2]/div[2]/div/div/div[2]/div/div");
- private final String HAND_L1 = getLoc(casePfx + "hand.l1",
"//html/body/div[2]/div/div/div[2]/div/div/div/div/div/div/table/tbody/tr/td[2]/div");
- private final String SPAN_R1 = getLoc(casePfx + "span.r1",
"//html/body/div[2]/div/div/div[2]/div[2]/div/div/div/div/div/table/tbody/tr/td[2]/div/div/span");
- private final String DIV_REG_A = getLoc(casePfx + "div.reg.a",
"//div[@id='regionA']");
- private final String DIV_REG_B = getLoc(casePfx + "div.reg.b",
"//div[@id='regionB']");
- private final String SPAN_L2 = getLoc(casePfx + "span.l2",
"//html/body/div[2]/div/div/div[2]/div/div/div/div[2]/div/div/table/tbody/tr/td[2]/div/div/span");
- private final String SPAN_L1 = getLoc(casePfx + "span.l1",
"//html/body/div[2]/div/div/div[2]/div/div/div/div/div/div/table/tbody/tr/td[2]/div/div/span");
- private final String MSG_POWER = getMess(casePfx + "msg.power",
"Powered by JBoss");
- private final String LNK_POR_WEA_EDIT = getLoc(casePfx +
"lnk.por.wea.edit",
-
"//body/div[2]/div/div/div[2]/div/div/div/div/div/div/table/tbody/tr/td[2]/div/div/div[2]/span/a");
- private final String SUB_LAYOUT_UPDATE = getLoc(casePfx +
"sub.layout.update",
"//input[contains(@name,'dashboardLayoutForm:j_id12')]");
- private final String SUB_PAGE_RENAME = getLoc(casePfx + "sub.page.rename",
"//form[contains(@id,'renameForm')]/input[@type='submit']");
- private final String INP_PAGE_RENAME = getLoc(casePfx + "inp.page.rename",
"//input[contains(@id,'renameForm:newName')]");
- private final String INP_WINDOW_NAME = getLoc(casePfx + "inp.window.name",
"//input[contains(@id,'windowForm:windowName')]");
- private final String LINK_WEATHER_PORTLET = getLoc(casePfx +
"link.weather.portlet", "link=*WeatherPortlet*");
- private final String LINK_PORTL3 = getLoc(casePfx + "link.portl3",
"link=*WSRP admin portlet*");
- private final String LINK_PORTL2 = getLoc(casePfx + "link.portl2",
"link=*Who's online portlet*");
- private final String LINK_PORTL1 = getLoc(casePfx + "link.portl1",
"link=*Welcome portlet*");
- private final String OPT_PORTL2 = getLoc(casePfx + "opt.portl2",
"IdentityUserPortletWindow");
- private final String OPT_PORTL1 = getLoc(casePfx + "opt.portl1",
"JSPPortletWindow");
- private final String SEL_CONTENT_TYPE = getLoc(casePfx +
"sel.content.type",
"//select[contains(@id,'contentTypesForm:instanceId')]");
- private final String SUB_DEL_FROM_CENTER_REGION = getLoc(casePfx +
"sub.del.from.center.region",
"//input[contains(@id,'layoutForm:l_center')]");
- private final String SUB_DOWN_CENTER_REGION = getLoc(casePfx +
"sub.down.center.region",
"//input[contains(@id,'layoutForm:d_center')]");
- private final String SUB_UP_CENTER_REGION = getLoc(casePfx +
"sub.up.center.region",
"//input[contains(@id,'layoutForm:u_center')]");
- private final String SEL_CENTER_REGION = getLoc(casePfx +
"sel.center.region",
"//select[contains(@id,'layoutForm:selectMany_center')]");
- private final String SUB_ADDCENTER = getLoc(casePfx + "sub.addcenter",
"//input[contains(@id,'layoutForm:a_center')]");
- private final String SUB_ADDLEFT = getLoc(casePfx + "sub.addleft",
"//input[contains(@id,'layoutForm:a_left')]");
- private final String LNK_CONFIGURE_DASHBOARD = getLoc(casePfx +
"lnk.configure.dashboard", "link=Configure dashboard");
- private final String LNK_DASHBOARD = getLoc(casePfx + "lnk.dashboard",
"link=Dashboard");
- private final String SEL_PAGE = getLoc(casePfx + "sel.page",
"//select[contains(@id,'pageNameSelector')]");
- private final String INP_PAGENAME = getLoc(casePfx + "inp.pagename",
"//input[contains(@id,':pageName')]");
- private final String SUB_CREATEPAGE = getLoc(casePfx + "sub.createpage",
"//form[contains(@id,'j_id3')]/input[@type='submit']");
- private final String SEL_LAYOUT = getLoc(casePfx + "sel.layout",
"//select[contains(@id,'dashboardLayoutForm:layoutSelector')]");
- private final String SEL_THEME = getLoc(casePfx + "sel.theme",
"//select[contains(@id,'dashboardThemeForm:themeSelector')]");
- private final String SUB_THEMESEL = getLoc(casePfx + "sub.themesel",
"//form[contains(@id,'dashboardThemeForm')]/input[@type='submit']");
+ public String casePfx = "dash.";
- @BeforeMethod(groups = {"log"})
- protected void loginBeforeTest() {
- logoutIfPossible();
- login("admin", "admin");
- }
-/*
- @AfterMethod(groups = {"log"})
- protected void logoutAfterTest() {
- System.out.println("vilko");
- }
-*/
- /**
- * Simple drag and drop test processed on "user" dashboard. The greetings
- * portlet is moved from left to right column and the cms portlet is moved
- * from the right to left corner. The names of Greetings and User profile
- * portlets are then used for final assertion. The Greetings portlet message
- * must be at the top right corner and the "user profile" message should
be
- * in the top left corner.
- */
- @Test(enabled = true)
- public void testDragAndDrop() {
- logout();
- login("user", "user");
- selenium.click(LNK_DASHBOARD);
- selenium.waitForPageToLoad(PAGE_LOAD);
+ private final String MSG_WINDOW_NAME_VALID = getMess(casePfx
+ + "msg.window.name.valid", "is an invalid window name");
+ private final String MSG_PAGE_RENAME_VALID = getMess(casePfx
+ + "msg.page.rename.valid", "is an invalid portal object name");
+ private final String MSG_PAGE_NAME_VALID = getMess(casePfx
+ + "msg.page.name.valid", "is an invalid page name");
- Assert.assertEquals(selenium.getText(SPAN_L1), "Greetings !");
- Assert.assertEquals(selenium.getText(SPAN_L2), "User profile");
+ private final String DIV_PORTET_EDITOR_TITLE = getLoc(casePfx
+ + "div.portlet.editor.title", "portlet-editor-title");
+ private final String HAND_R1 = getLoc(casePfx + "hand.r1",
+ "//html/body/div[2]/div/div/div[2]/div[2]/div/div/div[2]/div/div");
+ private final String HAND_L1 = getLoc(
+ casePfx + "hand.l1",
+ "//html/body/div[2]/div/div/div[2]/div/div/div/div/div/div/table/tbody/tr/td[2]/div");
+ private final String SPAN_R1 = getLoc(
+ casePfx + "span.r1",
+ "//html/body/div[2]/div/div/div[2]/div[2]/div/div/div/div/div/table/tbody/tr/td[2]/div/div/span");
+ private final String DIV_REG_A = getLoc(casePfx + "div.reg.a",
+ "//div[@id='regionA']");
+ private final String DIV_REG_B = getLoc(casePfx + "div.reg.b",
+ "//div[@id='regionB']");
+ private final String SPAN_L2 = getLoc(
+ casePfx + "span.l2",
+ "//html/body/div[2]/div/div/div[2]/div/div/div/div[2]/div/div/table/tbody/tr/td[2]/div/div/span");
+ private final String SPAN_L1 = getLoc(
+ casePfx + "span.l1",
+ "//html/body/div[2]/div/div/div[2]/div/div/div/div/div/div/table/tbody/tr/td[2]/div/div/span");
+ private final String MSG_POWER = getMess(casePfx + "msg.power",
+ "Powered by JBoss");
+ private final String LNK_POR_WEA_EDIT = getLoc(
+ casePfx + "lnk.por.wea.edit",
+ "//body/div[2]/div/div/div[2]/div/div/div/div/div/div/table/tbody/tr/td[2]/div/div/div[2]/span/a");
+ private final String SUB_LAYOUT_UPDATE = getLoc(casePfx
+ + "sub.layout.update",
+ "//input[contains(@name,'dashboardLayoutForm:j_id12')]");
+ private final String SUB_PAGE_RENAME = getLoc(casePfx + "sub.page.rename",
+ "//form[contains(@id,'renameForm')]/input[@type='submit']");
+ private final String INP_PAGE_RENAME = getLoc(casePfx + "inp.page.rename",
+ "//input[contains(@id,'renameForm:newName')]");
+ private final String INP_WINDOW_NAME = getLoc(casePfx + "inp.window.name",
+ "//input[contains(@id,'windowForm:windowName')]");
+ private final String LINK_WEATHER_PORTLET = getLoc(casePfx
+ + "link.weather.portlet", "link=*WeatherPortlet*");
+ private final String LINK_PORTL3 = getLoc(casePfx + "link.portl3",
+ "link=*WSRP admin portlet*");
+ private final String LINK_PORTL2 = getLoc(casePfx + "link.portl2",
+ "link=*Who's online portlet*");
+ private final String LINK_PORTL1 = getLoc(casePfx + "link.portl1",
+ "link=*Welcome portlet*");
+ private final String OPT_PORTL2 = getLoc(casePfx + "opt.portl2",
+ "IdentityUserPortletWindow");
+ private final String OPT_PORTL1 = getLoc(casePfx + "opt.portl1",
+ "JSPPortletWindow");
+ private final String SEL_CONTENT_TYPE = getLoc(
+ casePfx + "sel.content.type",
+ "//select[contains(@id,'contentTypesForm:instanceId')]");
+ private final String SUB_DEL_FROM_CENTER_REGION = getLoc(casePfx
+ + "sub.del.from.center.region",
+ "//input[contains(@id,'layoutForm:l_center')]");
+ private final String SUB_DOWN_CENTER_REGION = getLoc(casePfx
+ + "sub.down.center.region",
+ "//input[contains(@id,'layoutForm:d_center')]");
+ private final String SUB_UP_CENTER_REGION = getLoc(casePfx
+ + "sub.up.center.region",
+ "//input[contains(@id,'layoutForm:u_center')]");
+ private final String SEL_CENTER_REGION = getLoc(casePfx
+ + "sel.center.region",
+ "//select[contains(@id,'layoutForm:selectMany_center')]");
+ private final String SUB_ADDCENTER = getLoc(casePfx + "sub.addcenter",
+ "//input[contains(@id,'layoutForm:a_center')]");
+ private final String SUB_ADDLEFT = getLoc(casePfx + "sub.addleft",
+ "//input[contains(@id,'layoutForm:a_left')]");
+ private final String LNK_CONFIGURE_DASHBOARD = getLoc(casePfx
+ + "lnk.configure.dashboard", "link=Configure dashboard");
+ private final String LNK_DASHBOARD = getLoc(casePfx + "lnk.dashboard",
+ "link=Dashboard");
+ private final String SEL_PAGE = getLoc(casePfx + "sel.page",
+ "//select[contains(@id,'pageNameSelector')]");
+ private final String INP_PAGENAME = getLoc(casePfx + "inp.pagename",
+ "//input[contains(@id,':pageName')]");
+ private final String SUB_CREATEPAGE = getLoc(casePfx + "sub.createpage",
+ "//form[contains(@id,'j_id3')]/input[@type='submit']");
+ private final String SEL_LAYOUT = getLoc(casePfx + "sel.layout",
+ "//select[contains(@id,'dashboardLayoutForm:layoutSelector')]");
+ private final String SEL_THEME = getLoc(casePfx + "sel.theme",
+ "//select[contains(@id,'dashboardThemeForm:themeSelector')]");
+ private final String SUB_THEMESEL = getLoc(casePfx + "sub.themesel",
+ "//form[contains(@id,'dashboardThemeForm')]/input[@type='submit']");
- selenium.dragAndDropToObject(HAND_L1, DIV_REG_B);
- selenium.dragAndDropToObject(HAND_R1, DIV_REG_A);
+ @BeforeMethod(groups = { "log" })
+ protected void loginBeforeTest() {
+ logoutIfPossible();
+ login("admin", "admin");
+ }
- Assert.assertEquals(selenium.getText(SPAN_L1), "User profile");
- Assert.assertEquals(selenium.getText(SPAN_R1), "Greetings !");
+ /*
+ * @AfterMethod(groups = {"log"}) protected void logoutAfterTest() {
+ * System.out.println("vilko"); }
+ */
+ /**
+ * Simple drag and drop test processed on "user" dashboard. The greetings
+ * portlet is moved from left to right column and the cms portlet is moved
+ * from the right to left corner. The names of Greetings and User profile
+ * portlets are then used for final assertion. The Greetings portlet message
+ * must be at the top right corner and the "user profile" message should be
+ * in the top left corner.
+ */
+ @Test(enabled = true)
+ public void testDragAndDrop() {
+ logout();
+ login("user", "user");
+ selenium.click(LNK_DASHBOARD);
+ selenium.waitForPageToLoad(PAGE_LOAD);
- }
- /**
- * Creates a page. In Dashboard configuration a new page named
- * "DashTestPage" is created. The existence of the link (page) is then
- * asserted on dashboard.s
- */
- @Test(enabled = true)
- public void testCreatePage() {
- selenium.click(LNK_DASHBOARD);
- selenium.waitForPageToLoad(PAGE_LOAD);
- waitFor(AJAX_LOAD);
+ Assert.assertEquals(selenium.getText(SPAN_L1), "Greetings !");
+ Assert.assertEquals(selenium.getText(SPAN_L2), "User profile");
- selenium.click(LNK_CONFIGURE_DASHBOARD);
- selenium.waitForPageToLoad(PAGE_LOAD);
+ selenium.dragAndDropToObject(HAND_L1, DIV_REG_B);
+ selenium.dragAndDropToObject(HAND_R1, DIV_REG_A);
- final String pageName = "DashTestPage";
- selenium.type(INP_PAGENAME, pageName);
+ Assert.assertEquals(selenium.getText(SPAN_L1), "User profile");
+ Assert.assertEquals(selenium.getText(SPAN_R1), "Greetings !");
- clickAndWait(SUB_CREATEPAGE);
+ }
- selenium.click(LNK_DASHBOARD);
- selenium.waitForPageToLoad(PAGE_LOAD);
- waitFor(AJAX_LOAD);
- Assert.assertTrue(selenium.isElementPresent("link=" + pageName));
- selenium.click("link=" + pageName);
- selenium.waitForPageToLoad(PAGE_LOAD);
- Assert.assertTrue(selenium.isTextPresent(MSG_POWER));
- }
+ /**
+ * Creates a page. In Dashboard configuration a new page named
+ * "DashTestPage" is created. The existence of the link (page) is then
+ * asserted on dashboard.s
+ */
+ @Test(enabled = true)
+ public void testCreatePage() {
+ selenium.click(LNK_DASHBOARD);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+ waitFor(AJAX_LOAD);
- /**
- * Renaming of a page on dashboard. firstly a page named
"DashToRenamePage"
- * is created the same way as in {@link DashboardTestCase#testCreatePage()}.
- * The page is then renamed to "DashRenamedPage". The existence of the link
named by renamed page on the dashboard is then used as a final assertion.
- */
- @Test(enabled = true, dependsOnMethods = {"testCreatePage"})
- public void testRenamePage() {
+ selenium.click(LNK_CONFIGURE_DASHBOARD);
+ selenium.waitForPageToLoad(PAGE_LOAD);
- // firstly create page
+ final String pageName = "DashTestPage";
+ selenium.type(INP_PAGENAME, pageName);
- selenium.click(LNK_DASHBOARD);
- waitFor(AJAX_LOAD);
+ clickAndWait(SUB_CREATEPAGE);
- selenium.click(LNK_CONFIGURE_DASHBOARD);
- selenium.waitForPageToLoad(PAGE_LOAD);
+ selenium.click(LNK_DASHBOARD);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+ waitFor(AJAX_LOAD);
+ Assert.assertTrue(selenium.isElementPresent("link=" + pageName));
+ selenium.click("link=" + pageName);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+ Assert.assertTrue(selenium.isTextPresent(MSG_POWER));
+ }
- final String pageName = "DashToRenamePage";
- final String pageNameNew = "DashRenamedPage";
- selenium.type(INP_PAGENAME, pageName);
+ /**
+ * Renaming of a page on dashboard. firstly a page named "DashToRenamePage"
+ * is created the same way as in {@link DashboardTestCase#testCreatePage()}.
+ * The page is then renamed to "DashRenamedPage". The existence of the link
+ * named by renamed page on the dashboard is then used as a final assertion.
+ */
+ @Test(enabled = true, dependsOnMethods = { "testCreatePage" })
+ public void testRenamePage() {
- clickAndWait(SUB_CREATEPAGE);
+ // firstly create page
- selenium.click(LNK_DASHBOARD);
- selenium.waitForPageToLoad(PAGE_LOAD);
- waitFor(AJAX_LOAD);
- Assert.assertTrue(selenium.isElementPresent("link=" + pageName));
- selenium.click("link=" + pageName);
- selenium.waitForPageToLoad(PAGE_LOAD);
- Assert.assertTrue(selenium.isTextPresent(MSG_POWER));
+ selenium.click(LNK_DASHBOARD);
+ waitFor(AJAX_LOAD);
- // then rename it
- selenium.click(LNK_CONFIGURE_DASHBOARD);
- selenium.waitForPageToLoad(PAGE_LOAD);
+ selenium.click(LNK_CONFIGURE_DASHBOARD);
+ selenium.waitForPageToLoad(PAGE_LOAD);
- selectIfNotSelected(SEL_PAGE, pageName);
+ final String pageName = "DashToRenamePage";
+ final String pageNameNew = "DashRenamedPage";
+ selenium.type(INP_PAGENAME, pageName);
- selenium.type(INP_PAGE_RENAME, pageNameNew);
- selenium.click(SUB_PAGE_RENAME);
- selenium.waitForPageToLoad(PAGE_LOAD);
+ clickAndWait(SUB_CREATEPAGE);
- selenium.click(LNK_DASHBOARD);
- waitFor(AJAX_LOAD);
- Assert.assertTrue(selenium.isElementPresent("Link="+pageNameNew));
+ selenium.click(LNK_DASHBOARD);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+ waitFor(AJAX_LOAD);
+ Assert.assertTrue(selenium.isElementPresent("link=" + pageName));
+ selenium.click("link=" + pageName);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+ Assert.assertTrue(selenium.isTextPresent(MSG_POWER));
- }
+ // then rename it
+ selenium.click(LNK_CONFIGURE_DASHBOARD);
+ selenium.waitForPageToLoad(PAGE_LOAD);
- /**
- * Updating a theme on a page. On a page created in
- * {@link DashboardTestCase#testCreatePage()} a theme is changed to
- * "renaissance". It is asserted that it was not selected before and at
the
- * end it is asserted, that the renaissance value is selected.
- */
- @Test(enabled = true, dependsOnMethods = {"testCreatePage"})
- public void testUpdateTheme() {
- selenium.click(LNK_DASHBOARD);
- selenium.waitForPageToLoad(PAGE_LOAD);
- selenium.click(LNK_CONFIGURE_DASHBOARD);
- // selenium.waitForPageToLoad(PAGE_LOAD);
- waitFor(AJAX_LOAD);
+ selectIfNotSelected(SEL_PAGE, pageName);
- selectIfNotSelected(SEL_PAGE, "DashTestPage");
+ selenium.type(INP_PAGE_RENAME, pageNameNew);
+ selenium.click(SUB_PAGE_RENAME);
+ selenium.waitForPageToLoad(PAGE_LOAD);
-
Assert.assertFalse(selenium.getSelectedLabel(SEL_THEME).equals("renaissance"),
"Previously selected theme other then expected.");
+ selenium.click(LNK_DASHBOARD);
+ waitFor(AJAX_LOAD);
+ Assert.assertTrue(selenium.isElementPresent("Link=" + pageNameNew));
- selenium.select(SEL_THEME, "label=renaissance");
+ }
- selenium.click(SUB_THEMESEL);
- selenium.waitForPageToLoad(PAGE_LOAD);
+ /**
+ * Updating a theme on a page. On a page created in
+ * {@link DashboardTestCase#testCreatePage()} a theme is changed to
+ * "renaissance". It is asserted that it was not selected before and at the
+ * end it is asserted, that the renaissance value is selected.
+ */
+ @Test(enabled = true, dependsOnMethods = { "testCreatePage" })
+ public void testUpdateTheme() {
+ selenium.click(LNK_DASHBOARD);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+ selenium.click(LNK_CONFIGURE_DASHBOARD);
+ // selenium.waitForPageToLoad(PAGE_LOAD);
+ waitFor(AJAX_LOAD);
- selenium.click(LNK_DASHBOARD);
- selenium.waitForPageToLoad(PAGE_LOAD);
- selenium.click(LNK_CONFIGURE_DASHBOARD);
- selenium.waitForPageToLoad(PAGE_LOAD);
+ selectIfNotSelected(SEL_PAGE, "DashTestPage");
- selectIfNotSelected(SEL_PAGE, "DashTestPage");
+ Assert.assertFalse(selenium.getSelectedLabel(SEL_THEME).equals(
+ "renaissance"),
+ "Previously selected theme other then expected.");
- Assert.assertEquals(selenium.getSelectedLabel(SEL_THEME),
"renaissance", "Previously selected theme other then expected.");
- }
+ selenium.select(SEL_THEME, "label=renaissance");
- /**
- * Updating a layout on a page. On a page created in
- * {@link DashboardTestCase#testCreatePage()} a theme is changed to
- * "generic". It is asserted that it was not selected before and at the
end
- * it is asserted, that the renaissance value is selected.
- */
- @Test(enabled = true, dependsOnMethods = {"testCreatePage"})
- public void testUpdateLayout() {
- selenium.click(LNK_DASHBOARD);
- selenium.waitForPageToLoad(PAGE_LOAD);
- selenium.click(LNK_CONFIGURE_DASHBOARD);
- // selenium.waitForPageToLoad(PAGE_LOAD);
- waitFor(AJAX_LOAD);
- selenium.windowMaximize();
- selectIfNotSelected(SEL_PAGE, "DashTestPage");
+ selenium.click(SUB_THEMESEL);
+ selenium.waitForPageToLoad(PAGE_LOAD);
-
Assert.assertFalse(selenium.getSelectedLabel(SEL_LAYOUT).equals("generic"),
"Previously selected layout other then expected.");
+ selenium.click(LNK_DASHBOARD);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+ selenium.click(LNK_CONFIGURE_DASHBOARD);
+ selenium.waitForPageToLoad(PAGE_LOAD);
- selenium.select(SEL_LAYOUT, "label=generic");
+ selectIfNotSelected(SEL_PAGE, "DashTestPage");
- selenium.click(SUB_LAYOUT_UPDATE);
- selenium.waitForPageToLoad(PAGE_LOAD);
+ Assert
+ .assertEquals(selenium.getSelectedLabel(SEL_THEME),
+ "renaissance",
+ "Previously selected theme other then expected.");
+ }
- selenium.click(LNK_DASHBOARD);
- selenium.waitForPageToLoad(PAGE_LOAD);
- selenium.click(LNK_CONFIGURE_DASHBOARD);
- selenium.waitForPageToLoad(PAGE_LOAD);
+ /**
+ * Updating a layout on a page. On a page created in
+ * {@link DashboardTestCase#testCreatePage()} a theme is changed to
+ * "generic". It is asserted that it was not selected before and at the end
+ * it is asserted, that the renaissance value is selected.
+ */
+ @Test(enabled = true, dependsOnMethods = { "testCreatePage" })
+ public void testUpdateLayout() {
+ selenium.click(LNK_DASHBOARD);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+ selenium.click(LNK_CONFIGURE_DASHBOARD);
+ // selenium.waitForPageToLoad(PAGE_LOAD);
+ waitFor(AJAX_LOAD);
+ selenium.windowMaximize();
+ selectIfNotSelected(SEL_PAGE, "DashTestPage");
- selectIfNotSelected(SEL_PAGE, "DashTestPage");
+ Assert.assertFalse(selenium.getSelectedLabel(SEL_LAYOUT).equals(
+ "generic"), "Previously selected layout other then expected.");
- Assert.assertEquals(selenium.getSelectedLabel(SEL_LAYOUT), "generic",
"Previously selected layout other then expected.");
- }
+ selenium.select(SEL_LAYOUT, "label=generic");
- /**
- * Adding a portlet to dashboard. Adding a "Who's online portlet" to
- * dashboard (center). At the end some strings specific for the portlet are
- * asserted to appear on a dashboard.
- */
- @Test(enabled = true, dependsOnMethods = {"testCreatePage"})
- public void testAddPortlet() {
- selenium.click(LNK_DASHBOARD);
- selenium.waitForPageToLoad(PAGE_LOAD);
+ selenium.click(SUB_LAYOUT_UPDATE);
+ selenium.waitForPageToLoad(PAGE_LOAD);
- selenium.click(LNK_CONFIGURE_DASHBOARD);
- // selenium.waitForPageToLoad(PAGE_LOAD);
- waitFor(AJAX_LOAD);
- selectIfNotSelected(SEL_PAGE, "DashTestPage");
- selenium.click(LINK_PORTL2);
- selenium.waitForPageToLoad(PAGE_LOAD);
- waitForElement(DIV_PORTET_EDITOR_TITLE);
- selenium.click(SUB_ADDCENTER);
- selenium.waitForPageToLoad(PAGE_LOAD);
+ selenium.click(LNK_DASHBOARD);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+ selenium.click(LNK_CONFIGURE_DASHBOARD);
+ selenium.waitForPageToLoad(PAGE_LOAD);
- selenium.click(LNK_DASHBOARD);
- selenium.waitForPageToLoad(PAGE_LOAD);
- selenium.click("link=DashTestPage");
- selenium.waitForPageToLoad(PAGE_LOAD);
+ selectIfNotSelected(SEL_PAGE, "DashTestPage");
- waitFor(AJAX_LOAD);
+ Assert.assertEquals(selenium.getSelectedLabel(SEL_LAYOUT), "generic",
+ "Previously selected layout other then expected.");
+ }
- Assert.assertTrue(selenium.isTextPresent("Current users"));
- Assert.assertTrue(selenium.isTextPresent("Among them: * logged-in"));
- Assert.assertTrue(selenium.isTextPresent("[admin]"));
- }
+ /**
+ * Adding a portlet to dashboard. Adding a "Who's online portlet" to
+ * dashboard (center). At the end some strings specific for the portlet are
+ * asserted to appear on a dashboard.
+ */
+ @Test(enabled = true, dependsOnMethods = { "testCreatePage" })
+ public void testAddPortlet() {
+ selenium.click(LNK_DASHBOARD);
+ selenium.waitForPageToLoad(PAGE_LOAD);
- /**
- * Moving with portlets on a dashboard. Firstly a page called
"DashMovePage"
- * is created the same way as in {@link DashboardTestCase#testCreatePage()}.
- * Then two portlets ("Welcome portlet", "Who's online
portlet" in that
- * order) are added to the page the same way as in
- * {@link DashboardTestCase#testAddPortlet()}. Their positions are swapped
- * at the end and the ordering of strings on a dashboard page is used for
- * assertion.
- *
- */
- @Test(enabled = true, dependsOnMethods = {"testCreatePage",
"testAddPortlet"})
- public void testMovePortlet() {
- final String pageName = "DashMovePage";
-
- selenium.click(LNK_DASHBOARD);
- selenium.waitForPageToLoad(PAGE_LOAD);
- selenium.click(LNK_CONFIGURE_DASHBOARD);
- // selenium.waitForPageToLoad(PAGE_LOAD);
- waitFor(AJAX_LOAD);
+ selenium.click(LNK_CONFIGURE_DASHBOARD);
+ // selenium.waitForPageToLoad(PAGE_LOAD);
+ waitFor(AJAX_LOAD);
+ selectIfNotSelected(SEL_PAGE, "DashTestPage");
+ selenium.click(LINK_PORTL2);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+ waitForElement(DIV_PORTET_EDITOR_TITLE);
+ selenium.click(SUB_ADDCENTER);
+ selenium.waitForPageToLoad(PAGE_LOAD);
- selenium.type(INP_PAGENAME, pageName);
- selenium.click(SUB_CREATEPAGE);
- selenium.waitForPageToLoad(PAGE_LOAD);
+ selenium.click(LNK_DASHBOARD);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+ selenium.click("link=DashTestPage");
+ selenium.waitForPageToLoad(PAGE_LOAD);
- selenium.click(LNK_DASHBOARD);
- selenium.waitForPageToLoad(PAGE_LOAD);
- selenium.click(LNK_CONFIGURE_DASHBOARD);
- selenium.waitForPageToLoad(PAGE_LOAD);
+ waitFor(AJAX_LOAD);
- selectIfNotSelected(SEL_PAGE, pageName);
- selenium.click(LINK_PORTL1);
- selenium.waitForPageToLoad(PAGE_LOAD);
- selenium.click(SUB_ADDCENTER);
- selenium.waitForPageToLoad(PAGE_LOAD);
+ Assert.assertTrue(selenium.isTextPresent("Current users"));
+ Assert.assertTrue(selenium.isTextPresent("Among them: * logged-in"));
+ Assert.assertTrue(selenium.isTextPresent("[admin]"));
+ }
- selectIfNotSelected(SEL_PAGE, pageName);
- selenium.click(LINK_PORTL2);
- selenium.waitForPageToLoad(PAGE_LOAD);
- selenium.click(SUB_ADDCENTER);
- selenium.waitForPageToLoad(PAGE_LOAD);
+ /**
+ * Moving with portlets on a dashboard. Firstly a page called "DashMovePage"
+ * is created the same way as in {@link DashboardTestCase#testCreatePage()}.
+ * Then two portlets ("Welcome portlet", "Who's online portlet"
in that
+ * order) are added to the page the same way as in
+ * {@link DashboardTestCase#testAddPortlet()}. Their positions are swapped
+ * at the end and the ordering of strings on a dashboard page is used for
+ * assertion.
+ *
+ */
+ @Test(enabled = true, dependsOnMethods = { "testCreatePage",
+ "testAddPortlet" })
+ public void testMovePortlet() {
+ final String pageName = "DashMovePage";
- selenium.click(LNK_DASHBOARD);
- selenium.waitForPageToLoad(PAGE_LOAD);
- selenium.click("link=" + pageName);
- selenium.waitForPageToLoad(PAGE_LOAD);
+ selenium.click(LNK_DASHBOARD);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+ selenium.click(LNK_CONFIGURE_DASHBOARD);
+ // selenium.waitForPageToLoad(PAGE_LOAD);
+ waitFor(AJAX_LOAD);
- Assert.assertFalse(assertTextOrder("Current;Greetings"));
- Assert.assertTrue(assertTextOrder("Greetings;Current"));
-
- selenium.click(LNK_CONFIGURE_DASHBOARD);
- // selenium.waitForPageToLoad(PAGE_LOAD);
- waitFor(AJAX_LOAD);
- selectIfNotSelected(SEL_PAGE, pageName);
+ selenium.type(INP_PAGENAME, pageName);
+ selenium.click(SUB_CREATEPAGE);
+ selenium.waitForPageToLoad(PAGE_LOAD);
- selenium.addSelection(SEL_CENTER_REGION, OPT_PORTL2);
- selenium.click(SUB_UP_CENTER_REGION);
- selenium.waitForPageToLoad(PAGE_LOAD);
+ selenium.click(LNK_DASHBOARD);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+ selenium.click(LNK_CONFIGURE_DASHBOARD);
+ selenium.waitForPageToLoad(PAGE_LOAD);
- selenium.click(LNK_DASHBOARD);
- selenium.waitForPageToLoad(PAGE_LOAD);
- selenium.click("link=" + pageName);
- selenium.waitForPageToLoad(PAGE_LOAD);
+ selectIfNotSelected(SEL_PAGE, pageName);
+ selenium.click(LINK_PORTL1);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+ selenium.click(SUB_ADDCENTER);
+ selenium.waitForPageToLoad(PAGE_LOAD);
- Assert.assertTrue(assertTextOrder("Current;Greetings"));
- Assert.assertFalse(assertTextOrder("Greetings;Current"));
+ selectIfNotSelected(SEL_PAGE, pageName);
+ selenium.click(LINK_PORTL2);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+ selenium.click(SUB_ADDCENTER);
+ selenium.waitForPageToLoad(PAGE_LOAD);
- }
+ selenium.click(LNK_DASHBOARD);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+ selenium.click("link=" + pageName);
+ selenium.waitForPageToLoad(PAGE_LOAD);
- /**
- * Reordering of portlets. After the portlets are moved in
- * {@link DashboardTestCase#testMovePortlet()}, they are swaped to the
- * previous position (reordered again) with this test. The ordering of
- * strings on a dashboard page is used for assertion.
- */
- @Test(enabled = true, dependsOnMethods = {"testCreatePage",
"testMovePortlet"})
- public void testReorder() {
- final String pageName = "DashMovePage";
+ Assert.assertFalse(assertTextOrder("Current;Greetings"));
+ Assert.assertTrue(assertTextOrder("Greetings;Current"));
- selenium.click(LNK_DASHBOARD);
- selenium.waitForPageToLoad(PAGE_LOAD);
- selenium.click(LNK_CONFIGURE_DASHBOARD);
- // selenium.waitForPageToLoad(PAGE_LOAD);
- waitFor(AJAX_LOAD);
- selectIfNotSelected(SEL_PAGE, pageName);
+ selenium.click(LNK_CONFIGURE_DASHBOARD);
+ // selenium.waitForPageToLoad(PAGE_LOAD);
+ waitFor(AJAX_LOAD);
+ selectIfNotSelected(SEL_PAGE, pageName);
- selenium.addSelection(SEL_CENTER_REGION, OPT_PORTL1);
- selenium.click(SUB_UP_CENTER_REGION);
- selenium.waitForPageToLoad(PAGE_LOAD);
+ selenium.addSelection(SEL_CENTER_REGION, OPT_PORTL2);
+ selenium.click(SUB_UP_CENTER_REGION);
+ selenium.waitForPageToLoad(PAGE_LOAD);
- selenium.click(LNK_DASHBOARD);
- selenium.waitForPageToLoad(PAGE_LOAD);
- selenium.click("link=" + pageName);
- selenium.waitForPageToLoad(PAGE_LOAD);
-
- Assert.assertFalse(assertTextOrder("Current;Greetings"));
- Assert.assertTrue(assertTextOrder("Greetings;Current"));
- }
+ selenium.click(LNK_DASHBOARD);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+ selenium.click("link=" + pageName);
+ selenium.waitForPageToLoad(PAGE_LOAD);
- /**
- * Deleting of a portlet. Portlet added in
- * {@link DashboardTestCase#testAddPortlet()} is used in this test. The
- * portlet is deleted and it is asserted that string specific for this
- * portlet are not appearing on the dashboard anymore.
- */
- @Test(enabled = true, dependsOnMethods = {"testAddPortlet"})
- public void testDeletePortlet() {
+ Assert.assertTrue(assertTextOrder("Current;Greetings"));
+ Assert.assertFalse(assertTextOrder("Greetings;Current"));
- selenium.click(LNK_DASHBOARD);
- selenium.waitForPageToLoad(PAGE_LOAD);
- selenium.click(LNK_CONFIGURE_DASHBOARD);
- // selenium.waitForPageToLoad(PAGE_LOAD);
- waitFor(AJAX_LOAD);
+ }
- selectIfNotSelected(SEL_PAGE, "DashTestPage");
+ /**
+ * Reordering of portlets. After the portlets are moved in
+ * {@link DashboardTestCase#testMovePortlet()}, they are swaped to the
+ * previous position (reordered again) with this test. The ordering of
+ * strings on a dashboard page is used for assertion.
+ */
+ @Test(enabled = true, dependsOnMethods = { "testCreatePage",
+ "testMovePortlet" })
+ public void testReorder() {
+ final String pageName = "DashMovePage";
- selenium.addSelection(SEL_CENTER_REGION,
"label=CurrentUsersPortletWindow");
- selenium.click(SUB_DEL_FROM_CENTER_REGION);
- selenium.waitForPageToLoad(PAGE_LOAD);
+ selenium.click(LNK_DASHBOARD);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+ selenium.click(LNK_CONFIGURE_DASHBOARD);
+ // selenium.waitForPageToLoad(PAGE_LOAD);
+ waitFor(AJAX_LOAD);
+ selectIfNotSelected(SEL_PAGE, pageName);
- selenium.click(LNK_DASHBOARD);
- selenium.waitForPageToLoad(PAGE_LOAD);
- selenium.click("link=DashTestPage");
- selenium.waitForPageToLoad(PAGE_LOAD);
+ selenium.addSelection(SEL_CENTER_REGION, OPT_PORTL1);
+ selenium.click(SUB_UP_CENTER_REGION);
+ selenium.waitForPageToLoad(PAGE_LOAD);
- Assert.assertFalse(selenium.isTextPresent("Current users"));
- Assert.assertFalse(selenium.isTextPresent("Whose 1 is logged-in:"));
- Assert.assertFalse(selenium.isTextPresent("[admin]"));
- }
+ selenium.click(LNK_DASHBOARD);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+ selenium.click("link=" + pageName);
+ selenium.waitForPageToLoad(PAGE_LOAD);
- /**
- * Adding of google portlet. Same as
- * {@link DashboardTestCase#testAddPortlet()} but added portlet is of type
- * "widget/google" (content type selector). "Band Culinaria"
google portlet
- * is used in this test.
- */
- @Test(enabled = false, dependsOnMethods = {"testCreatePage"})
- public void testAddGooglePortlet() {
- selenium.click(LNK_DASHBOARD);
- selenium.waitForPageToLoad(PAGE_LOAD);
- selenium.click(LNK_CONFIGURE_DASHBOARD);
- // selenium.waitForPageToLoad(PAGE_LOAD);
- waitFor(AJAX_LOAD);
- selectIfNotSelected(SEL_PAGE, "DashTestPage");
- selenium.select(SEL_CONTENT_TYPE, "label=widget/google");
- selenium.waitForPageToLoad(PAGE_LOAD);
- selenium.click("link=Band Culinaria");
- selenium.waitForPageToLoad(PAGE_LOAD);
- selenium.click(SUB_ADDCENTER);
- selenium.waitForPageToLoad(PAGE_LOAD);
- selenium.click(LNK_DASHBOARD);
- selenium.waitForPageToLoad(PAGE_LOAD);
- selenium.click("link=DashTestPage");
- selenium.waitForPageToLoad(PAGE_LOAD);
+ Assert.assertFalse(assertTextOrder("Current;Greetings"));
+ Assert.assertTrue(assertTextOrder("Greetings;Current"));
+ }
- Assert.assertTrue(selenium.isTextPresent("Band Culinaria"));
- Assert.assertTrue(selenium.isTextPresent("Gadgets powered by
Google"));
- }
-
- /**
+ /**
+ * Deleting of a portlet. Portlet added in
+ * {@link DashboardTestCase#testAddPortlet()} is used in this test. The
+ * portlet is deleted and it is asserted that string specific for this
+ * portlet are not appearing on the dashboard anymore.
+ */
+ @Test(enabled = true, dependsOnMethods = { "testAddPortlet" })
+ public void testDeletePortlet() {
+
+ selenium.click(LNK_DASHBOARD);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+ selenium.click(LNK_CONFIGURE_DASHBOARD);
+ // selenium.waitForPageToLoad(PAGE_LOAD);
+ waitFor(AJAX_LOAD);
+
+ selectIfNotSelected(SEL_PAGE, "DashTestPage");
+
+ selenium.addSelection(SEL_CENTER_REGION,
+ "label=CurrentUsersPortletWindow");
+ selenium.click(SUB_DEL_FROM_CENTER_REGION);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+
+ selenium.click(LNK_DASHBOARD);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+ selenium.click("link=DashTestPage");
+ selenium.waitForPageToLoad(PAGE_LOAD);
+
+ Assert.assertFalse(selenium.isTextPresent("Current users"));
+ Assert.assertFalse(selenium.isTextPresent("Whose 1 is logged-in:"));
+ Assert.assertFalse(selenium.isTextPresent("[admin]"));
+ }
+
+ /**
+ * Adding of google portlet. Same as
+ * {@link DashboardTestCase#testAddPortlet()} but added portlet is of type
+ * "widget/google" (content type selector). "Band Culinaria" google
portlet
+ * is used in this test.
+ */
+ @Test(enabled = false, dependsOnMethods = { "testCreatePage" })
+ public void testAddGooglePortlet() {
+ selenium.click(LNK_DASHBOARD);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+ selenium.click(LNK_CONFIGURE_DASHBOARD);
+ // selenium.waitForPageToLoad(PAGE_LOAD);
+ waitFor(AJAX_LOAD);
+ selectIfNotSelected(SEL_PAGE, "DashTestPage");
+ selenium.select(SEL_CONTENT_TYPE, "label=widget/google");
+ selenium.waitForPageToLoad(PAGE_LOAD);
+ selenium.click("link=Band Culinaria");
+ selenium.waitForPageToLoad(PAGE_LOAD);
+ selenium.click(SUB_ADDCENTER);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+ selenium.click(LNK_DASHBOARD);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+ selenium.click("link=DashTestPage");
+ selenium.waitForPageToLoad(PAGE_LOAD);
+
+ Assert.assertTrue(selenium.isTextPresent("Band Culinaria"));
+ Assert.assertTrue(selenium.isTextPresent("Gadgets powered by Google"));
+ }
+
+ /**
* Testing input validation for page creation. Test navigates to configure
* dashboard interface and tries to create a new page on the dashboard with
* the XSS string. The XSS string is inputed into the create page input and
* after submitting it is asserted that the error message is present.
*/
- @Test(enabled = true)
- public void testXssCreatePage() {
- selenium.click(LNK_DASHBOARD);
- selenium.waitForPageToLoad(PAGE_LOAD);
- waitFor(AJAX_LOAD);
+ @Test(enabled = true)
+ public void testXssCreatePage() {
+ selenium.click(LNK_DASHBOARD);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+ waitFor(AJAX_LOAD);
- selenium.click(LNK_CONFIGURE_DASHBOARD);
- selenium.waitForPageToLoad(PAGE_LOAD);
+ selenium.click(LNK_CONFIGURE_DASHBOARD);
+ selenium.waitForPageToLoad(PAGE_LOAD);
- selenium.type(INP_PAGENAME, XSS_STR1);
- clickAndWait(SUB_CREATEPAGE);
-
- Assert.assertTrue(selenium.isTextPresent(MSG_PAGE_NAME_VALID),"Message
\""+MSG_PAGE_NAME_VALID+"\" not found.");
- }
-
- /**
+ selenium.type(INP_PAGENAME, XSS_STR1);
+ clickAndWait(SUB_CREATEPAGE);
+
+ Assert.assertTrue(selenium.isTextPresent(MSG_PAGE_NAME_VALID),
+ "Message \"" + MSG_PAGE_NAME_VALID + "\" not found.");
+ }
+
+ /**
* Testing input validation for page renaming. Test navigates to configure
* dashboard interface and tries to rename a page on the dashboard with the
* XSS string. Firstly new page named "DashXSSToRenamePage" is created. Then
@@ -452,42 +512,43 @@
* After submitting it is asserted that the validation error message is
* present on the screen
*/
- @Test(enabled = true)
- public void testXssRenamePage() {
- selenium.click(LNK_DASHBOARD);
- waitFor(AJAX_LOAD);
+ @Test(enabled = true)
+ public void testXssRenamePage() {
+ selenium.click(LNK_DASHBOARD);
+ waitFor(AJAX_LOAD);
- selenium.click(LNK_CONFIGURE_DASHBOARD);
- selenium.waitForPageToLoad(PAGE_LOAD);
+ selenium.click(LNK_CONFIGURE_DASHBOARD);
+ selenium.waitForPageToLoad(PAGE_LOAD);
- final String pageName = "DashXSSToRenamePage";
-
- selenium.type(INP_PAGENAME, pageName);
+ final String pageName = "DashXSSToRenamePage";
- clickAndWait(SUB_CREATEPAGE);
+ selenium.type(INP_PAGENAME, pageName);
- selenium.click(LNK_DASHBOARD);
- selenium.waitForPageToLoad(PAGE_LOAD);
- waitFor(AJAX_LOAD);
- Assert.assertTrue(selenium.isElementPresent("link=" + pageName));
- selenium.click("link=" + pageName);
- selenium.waitForPageToLoad(PAGE_LOAD);
- Assert.assertTrue(selenium.isTextPresent(MSG_POWER));
+ clickAndWait(SUB_CREATEPAGE);
- // then rename it
- selenium.click(LNK_CONFIGURE_DASHBOARD);
- selenium.waitForPageToLoad(PAGE_LOAD);
+ selenium.click(LNK_DASHBOARD);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+ waitFor(AJAX_LOAD);
+ Assert.assertTrue(selenium.isElementPresent("link=" + pageName));
+ selenium.click("link=" + pageName);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+ Assert.assertTrue(selenium.isTextPresent(MSG_POWER));
- selectIfNotSelected(SEL_PAGE, pageName);
+ // then rename it
+ selenium.click(LNK_CONFIGURE_DASHBOARD);
+ selenium.waitForPageToLoad(PAGE_LOAD);
- selenium.type(INP_PAGE_RENAME, XSS_STR1);
- selenium.click(SUB_PAGE_RENAME);
- selenium.waitForPageToLoad(PAGE_LOAD);
-
- Assert.assertTrue(selenium.isTextPresent(MSG_PAGE_RENAME_VALID),"Message:
\""+MSG_PAGE_RENAME_VALID+"\" not found");
- }
-
- /**
+ selectIfNotSelected(SEL_PAGE, pageName);
+
+ selenium.type(INP_PAGE_RENAME, XSS_STR1);
+ selenium.click(SUB_PAGE_RENAME);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+
+ Assert.assertTrue(selenium.isTextPresent(MSG_PAGE_RENAME_VALID),
+ "Message: \"" + MSG_PAGE_RENAME_VALID + "\" not
found");
+ }
+
+ /**
* Testing input validation for window creation. Test navigates to configure
* dashboard interface and select previously selected "DashTestPage" page.
* Then it clicks on the portlet link defined in property file as
@@ -496,123 +557,151 @@
* the particular submit) it is asserted that the validation error message
* is present on the screen.
*/
- @Test(enabled = true, dependsOnMethods = {"testCreatePage"})
- public void testXssWindowName() {
- selenium.click(LNK_DASHBOARD);
- selenium.waitForPageToLoad(PAGE_LOAD);
+ @Test(enabled = true, dependsOnMethods = { "testCreatePage" })
+ public void testXssWindowName() {
+ selenium.click(LNK_DASHBOARD);
+ selenium.waitForPageToLoad(PAGE_LOAD);
- selenium.click(LNK_CONFIGURE_DASHBOARD);
- waitFor(AJAX_LOAD);
-
- selectIfNotSelected(SEL_PAGE, "DashTestPage");
- selenium.click(LINK_PORTL3);
- selenium.waitForPageToLoad(PAGE_LOAD);
- waitForElement(DIV_PORTET_EDITOR_TITLE);
- selenium.type(INP_WINDOW_NAME, XSS_STR1);
- selenium.click(SUB_ADDCENTER);
- selenium.waitForPageToLoad(PAGE_LOAD);
+ selenium.click(LNK_CONFIGURE_DASHBOARD);
+ waitFor(AJAX_LOAD);
- Assert.assertTrue(selenium.isTextPresent(MSG_WINDOW_NAME_VALID));
- }
+ selectIfNotSelected(SEL_PAGE, "DashTestPage");
+ selenium.click(LINK_PORTL3);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+ waitForElement(DIV_PORTET_EDITOR_TITLE);
+ selenium.type(INP_WINDOW_NAME, XSS_STR1);
+ selenium.click(SUB_ADDCENTER);
+ selenium.waitForPageToLoad(PAGE_LOAD);
- //
http://www.jboss.com/index.html?module=bb&op=viewtopic&t=143023
- //
https://jira.jboss.org/jira/browse/JBPORTAL-2177
- /**
- * Dashboard rename page loses portlet state settings bug testing. From
- * forum reference <a
- *
href="http://www.jboss.com/index.html?module=bb&op=viewtopic&...
- *
>http://www.jboss.com/index.html?module=bb&op=viewtopic&t=143023</a>.
- * Jira for this issue already created in <a
- *
href="https://jira.jboss.org/jira/browse/JBPORTAL-2177"
- * >https://jira.jboss.org/jira/browse/JBPORTAL-2177</a>.
- *
- * <pre>
- * - in Configure Dashboard, create a new dashboard page; I called mine test1
- * - in the left region, add the Weather portlet
- * - return to the Dashboard, select the new tab/page (test1), you see Miami weather
(the default)
- * - EDIT the weather portlet and enter a local zipcode, press OK, you see local
weather, so far so good
- * - return to Configure Dashboard, rename the page (test1a)
- * - return to the Dashboard, select the newly renamed tab
- * - now you no longer see the local weather because renaming the page has lost the
portlet window-specific settings
- * </pre>
- */
- @Test(enabled = true)
- public void testBugResetPortletSetting() {
- final String pageName = "page1";
- final String pageNameNew = "page1a";
+ Assert.assertTrue(selenium.isTextPresent(MSG_WINDOW_NAME_VALID));
+ }
- // create page
- selenium.open("/portal/");
- selenium.waitForPageToLoad(PAGE_LOAD);
- selenium.click(LNK_DASHBOARD);
- selenium.waitForPageToLoad(PAGE_LOAD);
- selenium.click(LNK_CONFIGURE_DASHBOARD);
- // selenium.waitForPageToLoad(PAGE_LOAD);
- waitFor(AJAX_LOAD);
- selenium.type(INP_PAGENAME, pageName);
- selenium.click(SUB_CREATEPAGE);
- selenium.waitForPageToLoad(PAGE_LOAD);
- selenium.click(LNK_DASHBOARD);
- selenium.waitForPageToLoad(PAGE_LOAD);
+ /**
+ * Test window name input when no portlet is selected. Types XSS string into
+ * window name and without selecting any portlet it clicks on relevant
+ * submit button. Final assert is made - XSS string should not be the value
+ * of window name input.
+ *
+ * @jira(JBPORTAL-2418)
+ */
+ @Test(enabled = true, dependsOnMethods = { "testCreatePage" })
+ public void testXssNonPortletWindowName() {
+ selenium.click(LNK_DASHBOARD);
+ selenium.waitForPageToLoad(PAGE_LOAD);
- Assert.assertTrue(selenium.isElementPresent("link=" + pageName));
- selenium.click("link=" + pageName);
- selenium.waitForPageToLoad(PAGE_LOAD);
+ selenium.click(LNK_CONFIGURE_DASHBOARD);
+ waitFor(AJAX_LOAD);
- Assert.assertTrue(selenium.isTextPresent(MSG_POWER));
+ selectIfNotSelected(SEL_PAGE, "DashTestPage");
+ selenium.type(INP_WINDOW_NAME, XSS_STR1);
+ selenium.click(SUB_ADDCENTER);
+ selenium.waitForPageToLoad(PAGE_LOAD);
- // add weather portlet
- selenium.open("/portal/");
- selenium.waitForPageToLoad(PAGE_LOAD);
- selenium.click(LNK_DASHBOARD);
- selenium.waitForPageToLoad(PAGE_LOAD);
- selenium.click(LNK_CONFIGURE_DASHBOARD);
- selenium.waitForPageToLoad(PAGE_LOAD);
+ Assert.assertFalse(selenium.getValue(INP_WINDOW_NAME).equals(XSS_STR1),
+ "XSS string found on the page in window name input.");
+ }
- selectIfNotSelected(SEL_PAGE, pageName);
+ //
http://www.jboss.com/index.html?module=bb&op=viewtopic&t=143023
+ //
https://jira.jboss.org/jira/browse/JBPORTAL-2177
+ /**
+ * Dashboard rename page loses portlet state settings bug testing. From
+ * forum reference <a
+ *
href="http://www.jboss.com/index.html?module=bb&op=viewtopic&...
+ *
>http://www.jboss.com/index.html?module=bb&op=viewtopic&t=143023</a>.
+ * Jira for this issue already created in <a
+ *
href="https://jira.jboss.org/jira/browse/JBPORTAL-2177"
+ * >https://jira.jboss.org/jira/browse/JBPORTAL-2177</a>.
+ *
+ * <pre>
+ * - in Configure Dashboard, create a new dashboard page; I called mine test1
+ * - in the left region, add the Weather portlet
+ * - return to the Dashboard, select the new tab/page (test1), you see Miami weather
(the default)
+ * - EDIT the weather portlet and enter a local zipcode, press OK, you see local
weather, so far so good
+ * - return to Configure Dashboard, rename the page (test1a)
+ * - return to the Dashboard, select the newly renamed tab
+ * - now you no longer see the local weather because renaming the page has lost the
portlet window-specific settings
+ * </pre>
+ */
+ @Test(enabled = true)
+ public void testBugResetPortletSetting() {
+ final String pageName = "page1";
+ final String pageNameNew = "page1a";
- selenium.click(LINK_WEATHER_PORTLET);
- selenium.waitForPageToLoad(PAGE_LOAD);
- selenium.click(SUB_ADDLEFT);
- selenium.waitForPageToLoad(PAGE_LOAD);
- selenium.click(LNK_DASHBOARD);
- selenium.waitForPageToLoad(PAGE_LOAD);
- selenium.click("link=" + pageName);
- selenium.waitForPageToLoad(PAGE_LOAD);
+ // create page
+ selenium.open("/portal/");
+ selenium.waitForPageToLoad(PAGE_LOAD);
+ selenium.click(LNK_DASHBOARD);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+ selenium.click(LNK_CONFIGURE_DASHBOARD);
+ // selenium.waitForPageToLoad(PAGE_LOAD);
+ waitFor(AJAX_LOAD);
+ selenium.type(INP_PAGENAME, pageName);
+ selenium.click(SUB_CREATEPAGE);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+ selenium.click(LNK_DASHBOARD);
+ selenium.waitForPageToLoad(PAGE_LOAD);
- Assert.assertTrue(selenium.isTextPresent("Miami, FL, US"));
+ Assert.assertTrue(selenium.isElementPresent("link=" + pageName));
+ selenium.click("link=" + pageName);
+ selenium.waitForPageToLoad(PAGE_LOAD);
- // change the properties
- selenium.click(LNK_POR_WEA_EDIT);
- selenium.waitForPageToLoad(PAGE_LOAD);
- selenium.type("newzip", "41001");
- selenium.click("submit");
- selenium.waitForPageToLoad(PAGE_LOAD);
- Assert.assertTrue(selenium.isTextPresent("Alexandria"));
+ Assert.assertTrue(selenium.isTextPresent(MSG_POWER));
- // rename portal
- selenium.open("/portal/");
- selenium.waitForPageToLoad(PAGE_LOAD);
- selenium.click(LNK_DASHBOARD);
- selenium.waitForPageToLoad(PAGE_LOAD);
- selenium.click(LNK_CONFIGURE_DASHBOARD);
- // selenium.waitForPageToLoad(PAGE_LOAD);
- waitFor(AJAX_LOAD);
+ // add weather portlet
+ selenium.open("/portal/");
+ selenium.waitForPageToLoad(PAGE_LOAD);
+ selenium.click(LNK_DASHBOARD);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+ selenium.click(LNK_CONFIGURE_DASHBOARD);
+ selenium.waitForPageToLoad(PAGE_LOAD);
- selectIfNotSelected(SEL_PAGE, pageName);
+ selectIfNotSelected(SEL_PAGE, pageName);
- selenium.type(INP_PAGE_RENAME, pageNameNew);
- selenium.click(SUB_PAGE_RENAME);
- selenium.waitForPageToLoad(PAGE_LOAD);
+ selenium.click(LINK_WEATHER_PORTLET);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+ selenium.click(SUB_ADDLEFT);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+ selenium.click(LNK_DASHBOARD);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+ selenium.click("link=" + pageName);
+ selenium.waitForPageToLoad(PAGE_LOAD);
- // check the portlet again
- selenium.open("/portal/");
- selenium.waitForPageToLoad(PAGE_LOAD);
- selenium.click(LNK_DASHBOARD);
- selenium.waitForPageToLoad(PAGE_LOAD);
- selenium.click("link=" + pageNameNew);
- selenium.waitForPageToLoad(PAGE_LOAD);
+ Assert.assertTrue(selenium.isTextPresent("Miami, FL, US"));
- Assert.assertTrue(selenium.isTextPresent("Alexandria"),
"Previously selected portlet settings were changed after renaming of portal
page.");
- }
+ // change the properties
+ selenium.click(LNK_POR_WEA_EDIT);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+ selenium.type("newzip", "41001");
+ selenium.click("submit");
+ selenium.waitForPageToLoad(PAGE_LOAD);
+ Assert.assertTrue(selenium.isTextPresent("Alexandria"));
+
+ // rename portal
+ selenium.open("/portal/");
+ selenium.waitForPageToLoad(PAGE_LOAD);
+ selenium.click(LNK_DASHBOARD);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+ selenium.click(LNK_CONFIGURE_DASHBOARD);
+ // selenium.waitForPageToLoad(PAGE_LOAD);
+ waitFor(AJAX_LOAD);
+
+ selectIfNotSelected(SEL_PAGE, pageName);
+
+ selenium.type(INP_PAGE_RENAME, pageNameNew);
+ selenium.click(SUB_PAGE_RENAME);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+
+ // check the portlet again
+ selenium.open("/portal/");
+ selenium.waitForPageToLoad(PAGE_LOAD);
+ selenium.click(LNK_DASHBOARD);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+ selenium.click("link=" + pageNameNew);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+
+ Assert
+ .assertTrue(
+ selenium.isTextPresent("Alexandria"),
+ "Previously selected portlet settings were changed after renaming of portal
page.");
+ }
}