[portal-commits] JBoss Portal SVN: r13048 - in branches/JBoss_Portal_Branch_2_7/testsuite/ui-tests: src/org/jboss/portal/test/selenium and 1 other directory.
portal-commits at lists.jboss.org
portal-commits at lists.jboss.org
Wed Mar 18 12:10:41 EDT 2009
Author: vrockai
Date: 2009-03-18 12:10:41 -0400 (Wed, 18 Mar 2009)
New Revision: 13048
Added:
branches/JBoss_Portal_Branch_2_7/testsuite/ui-tests/src/org/jboss/portal/test/selenium/PortalAjaxSamplesTestCase.java
branches/JBoss_Portal_Branch_2_7/testsuite/ui-tests/src/org/jboss/portal/test/selenium/PortalSamplesTestCase.java
Modified:
branches/JBoss_Portal_Branch_2_7/testsuite/ui-tests/src/org/jboss/portal/test/selenium/locator.properties
branches/JBoss_Portal_Branch_2_7/testsuite/ui-tests/testng.xml
Log:
[JBPORTAL-2313] portal samples tests
Added: branches/JBoss_Portal_Branch_2_7/testsuite/ui-tests/src/org/jboss/portal/test/selenium/PortalAjaxSamplesTestCase.java
===================================================================
--- branches/JBoss_Portal_Branch_2_7/testsuite/ui-tests/src/org/jboss/portal/test/selenium/PortalAjaxSamplesTestCase.java (rev 0)
+++ branches/JBoss_Portal_Branch_2_7/testsuite/ui-tests/src/org/jboss/portal/test/selenium/PortalAjaxSamplesTestCase.java 2009-03-18 16:10:41 UTC (rev 13048)
@@ -0,0 +1,471 @@
+package org.jboss.portal.test.selenium;
+
+import org.testng.annotations.AfterMethod;
+import org.testng.annotations.BeforeMethod;
+import org.testng.annotations.Test;
+import static org.testng.Assert.*;
+
+
+ at Test(groups = { "test_samples" }, enabled = true)
+public class PortalAjaxSamplesTestCase extends JBossPortalSeleniumTestCase {
+
+ public static long AJAX_TIMEOUT = 4500;
+
+ public static String casePfx = "samples.ajax.";
+
+ private final String SES_LNK_INVALIDATE = getProp(casePfx+"ses.lnk.invalidate","link=invalidate");
+ private final String RES_DIV_RTEXT = getProp(casePfx+"res.div.rtext","repeat-text");
+ private final String RES_DIV_PTEXT = getProp(casePfx+"res.div.ptext","product-text");
+ private final String RES_LNK_P3 = getProp(casePfx+"res.lnk.p3","link=Product3");
+ private final String RES_LNK_P2 = getProp(casePfx+"res.lnk.p2","link=Product2");
+ private final String RES_LNK_P1 = getProp(casePfx+"res.lnk.p1","link=Product1");
+ private final String RES_INP = getProp(casePfx+"res.inp","repeat");
+ private final String RES_LNK = getProp(casePfx+"res.lnk","//ul[@id='tabsHeader']/li[4]/ul/li[17]/a");
+ private final String WIN_DIV_CON = getProp(casePfx+"win.div.con","//html/body/div[2]/div/div/div[2]/div[2]/div/div/div/div/table/tbody/tr[2]/td[2]/div/div");
+ private final String WIN_LNK = getProp(casePfx+"win.lnk","//ul[@id='tabsHeader']/li[4]/ul/li[16]/a");
+ private final String SES_TAB_PSCOPE = getProp(casePfx+"ses.tab.pscope","//html/body/div[2]/div/div/div[2]/div[2]/div/div/div/div/table/tbody/tr[2]/td[2]/div/div/table");
+ private final String SES_TAB_ASCOPE = getProp(casePfx+"ses.tab.ascope","//html/body/div[2]/div/div/div[2]/div[2]/div/div/div/div/table/tbody/tr[2]/td[2]/div/div/table[2]");
+ private final String SES_SUB_ASCOPE = getProp(casePfx+"ses.sub.ascope","application");
+ private final String SES_SUB_PSCOPE = getProp(casePfx+"ses.sub.pscope","portlet");
+ private final String SES_INP_VAL = getProp(casePfx+"ses.inp.val","value");
+ private final String SES_INP_NAM = getProp(casePfx+"ses.inp.nam","name");
+ private final String SES_LNK = getProp(casePfx+"ses.lnk","//ul[@id='tabsHeader']/li[4]/ul/li[14]/a");
+ private final String PUB_1_LNK_FOO_REM = getProp(casePfx+"pub.1.lnk.foo.rem","//html/body/div[2]/div/div/div[2]/div/div/div/div/div/table/tbody/tr[2]/td[2]/div/div/form/table/tbody/tr/td[2]/a");
+ private final String PUB_3_LNK_BAR_REM = getProp(casePfx+"pub.3.lnk.bar.rem","//html/body/div[2]/div/div/div[2]/div[2]/div/div[2]/div/div/table/tbody/tr[2]/td[2]/div/div/form/table/tbody/tr[2]/td[2]/a");
+ private final String PUB_3_LNK_JUU_REM = getProp(casePfx+"pub.3.lnk.juu.rem","//html/body/div[2]/div/div/div[2]/div[2]/div/div[2]/div/div/table/tbody/tr[2]/td[2]/div/div/form/table/tbody/tr/td[2]/a");
+ private final String PUB_SUB_2 = getProp(casePfx+"pub.sub.2","//html/body/div[2]/div/div/div[2]/div[2]/div/div/div/div/table/tbody/tr[2]/td[2]/div/div/form/table/tbody/tr[3]/td/input");
+ private final String PUB_SUB_1 = getProp(casePfx+"pub.sub.1","//input[@value='Update']");
+ private final String PUB_DIV_3_BAR = getProp(casePfx+"pub.div.3.bar","//html/body/div[2]/div/div/div[2]/div[2]/div/div[2]/div/div/table/tbody/tr[2]/td[2]/div/div/form/table/tbody/tr[2]/td[2]/input");
+ private final String PUB_DIV_3_JUU = getProp(casePfx+"pub.div.3.juu","//html/body/div[2]/div/div/div[2]/div[2]/div/div[2]/div/div/table/tbody/tr[2]/td[2]/div/div/form/table/tbody/tr/td[2]/input");
+ private final String PUB_DIV_2_JUU = getProp(casePfx+"pub.div.2.juu","juu");
+ private final String PUB_DIV_2_FOO = getProp(casePfx+"pub.div.2.foo","//html/body/div[2]/div/div/div[2]/div[2]/div/div/div/div/table/tbody/tr[2]/td[2]/div/div/form/table/tbody/tr/td[2]/input");
+ private final String PUB_DIV_1_BAR = getProp(casePfx+"pub.div.1.bar","bar");
+ private final String PUB_DIV_1_FOO = getProp(casePfx+"pub.div.1.foo","foo");
+ private final String PUB_LNK = getProp(casePfx+"pub.lnk","//ul[@id='tabsHeader']/li[4]/ul/li[12]/a");
+ private final String PEVT_DIV_P3_MAX = getProp(casePfx+"pevt.div.p3.max","//html/body/div[2]/div/div/div[2]/div[2]/div/div[3]/div/div/table/tbody/tr/td[2]/div/div[2]/span/a");
+ private final String PEVT_DIV_P2_MAX = getProp(casePfx+"pevt.div.p2.max","//html/body/div[2]/div/div/div[2]/div[2]/div/div[2]/div/div/table/tbody/tr/td[2]/div/div[2]/span/a");
+ private final String PEVT_DIV_L3_MAX = getProp(casePfx+"pevt.div.l3.max","//html/body/div[2]/div/div/div[2]/div/div/div[3]/div/div/table/tbody/tr/td[2]/div/div[2]/span/a");
+ private final String PEVT_DIV_L2_MAX = getProp(casePfx+"pevt.div.l2.max","//html/body/div[2]/div/div/div[2]/div/div/div[2]/div/div/table/tbody/tr/td[2]/div/div[2]/span/a");
+ private final String PEVT_DIV_P3 = getProp(casePfx+"pevt.div.p3","//html/body/div[2]/div/div/div[2]/div[2]/div/div[3]/div/div/table/tbody/tr[2]/td[2]/div/div");
+ private final String PEVT_DIV_P2 = getProp(casePfx+"pevt.div.p2","//html/body/div[2]/div/div/div[2]/div[2]/div/div[2]/div/div/table/tbody/tr[2]/td[2]/div/div");
+ private final String PEVT_DIV_P1 = getProp(casePfx+"pevt.div.p1","//html/body/div[2]/div/div/div[2]/div[2]/div/div/div/div/table/tbody/tr[2]/td[2]/div/div");
+ private final String PEVT_DIV_L3 = getProp(casePfx+"pevt.div.l3","//html/body/div[2]/div/div/div[2]/div/div/div[3]/div/div/table/tbody/tr[2]/td[2]/div/div");
+ private final String PEVT_DIV_L2 = getProp(casePfx+"pevt.div.l2","//html/body/div[2]/div/div/div[2]/div/div/div[2]/div/div/table/tbody/tr[2]/td[2]/div/div");
+ private final String PEVT_DIV_L1 = getProp(casePfx+"pevt.div.l1","//html/body/div[2]/div/div/div[2]/div/div/div/div/div/table/tbody/tr[2]/td[2]/div/div");
+ private final String PEVT_LNK = getProp(casePfx+"pevt.lnk","//ul[@id='tabsHeader']/li[4]/ul/li[11]/a");
+ private final String MOD_DIV_CON = getProp(casePfx+"mod.div.con","//html/body/div[2]/div/div/div[2]/div[2]/div/div/div/div/table/tbody/tr[2]/td[2]/div/div");
+ private final String MOD_LNK = getProp(casePfx+"mod.lnk","//ul[@id='tabsHeader']/li[4]/ul/li[10]/a");
+ private final String MPOR_DIV_CON = getProp(casePfx+"mpor.div.con","content-container");
+ private final String MPOR_LNK = getProp(casePfx+"mpor.lnk","//ul[@id='tabsHeader']/li[4]/ul/li[9]/a");
+ private final String MINS_DIV_CON = getProp(casePfx+"mins.div.con","content-container");
+ private final String MINS_LNK = getProp(casePfx+"mins.lnk","//ul[@id='tabsHeader']/li[4]/ul/li[8]/a");
+ private final String JS_LNK_SUBMIT = getProp(casePfx+"js.lnk.submit","link=submit");
+ private final String JS_OPT_3 = getProp(casePfx+"js.opt.3","//form[@id='jbpnsFormAutoSubmitPortletWindowsnpbj_the_form']/select/option[3]");
+ private final String JS_OPT_2 = getProp(casePfx+"js.opt.2","//form[@id='jbpnsFormAutoSubmitPortletWindowsnpbj_the_form']/select/option[2]");
+ private final String JS_OPT_1 = getProp(casePfx+"js.opt.1","//form[@id='jbpnsFormAutoSubmitPortletWindowsnpbj_the_form']/select/option[1]");
+ private final String JS_LAB_C = getProp(casePfx+"js.lab.c","label=C");
+ private final String JS_LAB_B = getProp(casePfx+"js.lab.b","label=B");
+ private final String JS_LAB_A = getProp(casePfx+"js.lab.a","label=A");
+ private final String JS_SEL_LETTER = getProp(casePfx+"js.sel.letter","//select[@onclick=\"document.getElementById('jbpnsFormAutoSubmitPortletWindowsnpbj_the_form').submit()\"]");
+ private final String JS_LNK = getProp(casePfx+"js.lnk","//ul[@id='tabsHeader']/li[4]/ul/li[7]/a");
+ private final String HEAD_INP_CONTENT = getProp(casePfx+"head.inp.content","Introducing-HeaderContentInput");
+ private final String HEAD_DIV_CONTENT = getProp(casePfx+"head.div.content","Introducing-HeaderContent");
+ private final String HEAD_LNK = getProp(casePfx+"head.lnk","//ul[@id='tabsHeader']/li[4]/ul/li[6]/a");
+ private final String EXC_LNK_PORTLET = getProp(casePfx+"exc.lnk.portlet","link=render PortletException");
+ private final String EXC_LNK = getProp(casePfx+"exc.lnk","//ul[@id='tabsHeader']/li[4]/ul/li[5]/a");
+ private final String EVT_SUB_COLOR = getProp(casePfx+"evt.sub.color","//input[@type='submit']");
+ private final String EVT_DIV_BLACK = getProp(casePfx+"evt.div.black","//html/body/div[2]/div/div/div[2]/div[2]/div/div[2]/div/div/table/tbody/tr[2]/td[2]/div/div/div[contains(@style,'black')]");
+ private final String EVT_DIV_RED = getProp(casePfx+"evt.div.red","//html/body/div[2]/div/div/div[2]/div[2]/div/div[2]/div/div/table/tbody/tr[2]/td[2]/div/div/div[contains(@style,'red')]");
+ private final String EVT_DIV_BLUE = getProp(casePfx+"evt.div.blue","//html/body/div[2]/div/div/div[2]/div[2]/div/div[2]/div/div/table/tbody/tr[2]/td[2]/div/div/div[contains(@style,'blue')]");
+ private final String EVT_SEL_LAB_BLACK = getProp(casePfx+"evt.sel.lab.black","label=black");
+ private final String EVT_SEL_LAB_RED = getProp(casePfx+"evt.sel.lab.red","label=red");
+ private final String EVT_SEL_LAB_BLUE = getProp(casePfx+"evt.sel.lab.blue","label=blue");
+ private final String EVT_SEL_COL = getProp(casePfx+"evt.sel.col","color");
+ private final String EVT_LNK = getProp(casePfx+"evt.lnk","//ul[@id='tabsHeader']/li[4]/ul/li[4]/a");
+ private final String ENC_LNK = getProp(casePfx+"enc.lnk","//ul[@id='tabsHeader']/li[4]/ul/li[3]/a");
+ private final String ENC_INP_REN = getProp(casePfx+"enc.inp.ren","text");
+ private final String ENC_SUB_ACT = getProp(casePfx+"enc.sub.act","//input[@value='Submit to action phase']");
+ private final String ENC_INP_ACT = getProp(casePfx+"enc.inp.act","//html/body/div[2]/div/div/div[2]/div[2]/div/div/div/div/table/tbody/tr[2]/td[2]/div/div/div/form[2]/input");
+ private final String ENC_TEXTAREA2 = getProp(casePfx+"enc.textarea2","//html/body/div[2]/div/div/div[2]/div[2]/div/div/div/div/table/tbody/tr[2]/td[2]/div/div/div[5]/textarea");
+ private final String ENC_TEXTAREA1 = getProp(casePfx+"enc.textarea1","//textarea[@name='text']");
+ private final String CHAR_ALL_SUB_CHECK = getProp(casePfx+"char.all.sub.check","//html/body/div[2]/div/div/div[2]/div[2]/div/div/div/div/table/tbody/tr[2]/td[2]/div/div/div[8]/form/input[3]");
+ private final String CHAR_INP_TEXT_SUB_CHECK = getProp(casePfx+"char.inp.text.sub.check","//html/body/div[2]/div/div/div[2]/div[2]/div/div/div/div/table/tbody/tr[2]/td[2]/div/div/div[6]/form/input[4]");
+ private final String CHAR_LNK_TEXTAREA_CHECK = getProp(casePfx+"char.lnk.textarea.check","//input[@value='check']");
+ private final String CHAR_INP_TEXT = getProp(casePfx+"char.inp.text","//input[@name='text']");
+ private final String CHAR_TEXTAREA = getProp(casePfx+"char.textarea","text");
+ private final String CHAR_SUB_CHANGE = getProp(casePfx+"char.sub.change","//input[@value='change']");
+ private final String CHAR_INP_TO = getProp(casePfx+"char.inp.to","to");
+ private final String CHAR_INP_FROM = getProp(casePfx+"char.inp.from","from");
+ private final String CHAR_LNK = getProp(casePfx+"char.lnk","//ul[@id='tabsHeader']/li[4]/ul/li[2]/a");
+ private final String CACHE_LNK = getProp(casePfx+"cache.lnk","//ul[@id='tabsHeader']/li[4]/ul/li[1]/a");
+ private final String CACHE_LNK_2REN = getProp(casePfx+"cache.lnk.2ren","//html/body/div[2]/div/div/div[2]/div[2]/div/div[2]/div/div/table/tbody/tr[2]/td[2]/div/div/div[5]/a");
+ private final String CACHE_LNK_2ACT = getProp(casePfx+"cache.lnk.2act","//html/body/div[2]/div/div/div[2]/div[2]/div/div[2]/div/div/table/tbody/tr[2]/td[2]/div/div/div[4]/a");
+ private final String CACHE_LNK_1REN = getProp(casePfx+"cache.lnk.1ren","link=render");
+ private final String CACHE_LNK_1ACT = getProp(casePfx+"cache.lnk.1act","link=action");
+ private final String CACHE_DIV_2_RENDER = getProp(casePfx+"cache.div.2.render","//html/body/div[2]/div/div/div[2]/div[2]/div/div[2]/div/div/table/tbody/tr[2]/td[2]/div/div/div[2]/div");
+ private final String CACHE_DIV_1_RENDER = getProp(casePfx+"cache.div.1.render","//html/body/div[2]/div/div/div[2]/div[2]/div/div/div/div/table/tbody/tr[2]/td[2]/div/div/div[2]/div");
+
+
+
+
+ @BeforeMethod(groups = { "log" })
+ public void loginBeforeTest() {
+ selenium.open("/portal/portal/default/default");
+ waitFor(AJAX_TIMEOUT);
+ }
+
+ @AfterMethod(groups = { "log" })
+ public void logoutAfterTest() {
+
+ }
+ @Test(enabled = true)
+ public void cacheTest() {
+ selenium.click(CACHE_LNK);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+ assertEquals("0", selenium.getText(CACHE_DIV_1_RENDER));
+ assertEquals("0", selenium.getText(CACHE_DIV_2_RENDER));
+
+ selenium.click(CACHE_LNK_1ACT);
+ waitFor(AJAX_TIMEOUT);
+ assertEquals("1", selenium.getText(CACHE_DIV_1_RENDER));
+ assertEquals("0", selenium.getText(CACHE_DIV_2_RENDER));
+
+ selenium.click(CACHE_LNK_1REN);
+ waitFor(AJAX_TIMEOUT);
+ assertEquals("1", selenium.getText(CACHE_DIV_1_RENDER));
+ assertEquals("0", selenium.getText(CACHE_DIV_2_RENDER));
+
+ selenium.click(CACHE_LNK_2ACT);
+ waitFor(AJAX_TIMEOUT);
+ assertEquals("1", selenium.getText(CACHE_DIV_1_RENDER));
+ assertEquals("1", selenium.getText(CACHE_DIV_2_RENDER));
+
+ selenium.click(CACHE_LNK_2REN);
+ waitFor(AJAX_TIMEOUT);
+ assertEquals("1", selenium.getText(CACHE_DIV_1_RENDER));
+ assertEquals("2", selenium.getText(CACHE_DIV_2_RENDER));
+ }
+
+ @Test(enabled = true)
+ public void charsetTest() {
+ selenium.click(CHAR_LNK);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+ selenium.type(CHAR_INP_FROM, "65");
+ selenium.type(CHAR_INP_TO, "75");
+ selenium.click(CHAR_SUB_CHANGE);
+ waitFor(AJAX_TIMEOUT);
+ assertEquals("ABCDEFGHIJ", selenium.getText(CHAR_TEXTAREA));
+ selenium.click(CHAR_LNK_TEXTAREA_CHECK);
+ waitFor(AJAX_TIMEOUT);
+ assertTrue(selenium.isTextPresent("Test result: The input matched the expected result"));
+ assertEquals("ABCDEFGHIJ", selenium.getValue(CHAR_INP_TEXT));
+ selenium.click(CHAR_INP_TEXT_SUB_CHECK);
+ waitFor(AJAX_TIMEOUT);
+ selenium.type(CHAR_INP_FROM, "55");
+ selenium.type(CHAR_INP_TO, "65");
+ selenium.click(CHAR_SUB_CHANGE);
+ waitFor(AJAX_TIMEOUT);
+ assertEquals("789:;<=>?@", selenium.getValue(CHAR_INP_TEXT));
+ selenium.type(CHAR_TEXTAREA, "789:;<=>?@4");
+ selenium.click(CHAR_LNK_TEXTAREA_CHECK);
+ waitFor(AJAX_TIMEOUT);
+ assertTrue(selenium.isTextPresent("Test result: The input did not matched the expected result"));
+ selenium.type(CHAR_INP_TEXT, "789:;<=>?@f");
+ selenium.click(CHAR_ALL_SUB_CHECK);
+ waitFor(AJAX_TIMEOUT);
+ assertTrue(selenium.isTextPresent("Test result: The input matched the expected result"));
+ }
+
+ @Test(enabled = true)
+ public void encodingTest() {
+ selenium.click(ENC_LNK);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+ assertEquals("", selenium.getValue(ENC_TEXTAREA1));
+ assertEquals("", selenium.getValue(ENC_TEXTAREA2));
+ selenium.type(ENC_INP_ACT, "action");
+ selenium.click(ENC_SUB_ACT);
+ waitFor(AJAX_TIMEOUT);
+ assertEquals("action", selenium.getValue(ENC_TEXTAREA1));
+ assertEquals("action", selenium.getValue(ENC_TEXTAREA2));
+ selenium.type(CHAR_TEXTAREA, "render");
+ selenium.click("//input[@value='Submit to render phase']");
+ waitFor(AJAX_TIMEOUT);
+ assertEquals("", selenium.getValue(ENC_TEXTAREA1));
+ assertEquals("action", selenium.getValue(ENC_TEXTAREA2));
+ }
+
+ @Test(enabled = true)
+ public void eventTest() {
+ selenium.click(EVT_LNK);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+ selenium.select(EVT_SEL_COL, EVT_SEL_LAB_BLUE);
+ selenium.click(EVT_SUB_COLOR);
+ waitFor(3500);
+ assertTrue(selenium.isElementPresent(EVT_DIV_BLUE));
+ selenium.select(EVT_SEL_COL, EVT_SEL_LAB_RED);
+ selenium.click(EVT_SUB_COLOR);
+ waitFor(3500);
+ assertTrue(selenium.isElementPresent(EVT_DIV_RED));
+ selenium.select(EVT_SEL_COL, EVT_SEL_LAB_BLACK);
+ selenium.click(EVT_SUB_COLOR);
+ waitFor(3500);
+ assertTrue(selenium.isElementPresent(EVT_DIV_BLACK));
+ }
+
+ @Test(enabled = true)
+ public void exceptionTest() {
+ selenium.click(EXC_LNK);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+ selenium.click(EXC_LNK_PORTLET);
+ waitFor(AJAX_TIMEOUT);
+ assertTrue(selenium.isTextPresent("javax.portlet.PortletException"));
+ }
+
+ @Test(enabled = true)
+ public void headerTest() {
+ selenium.click(HEAD_LNK);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+ assertTrue(selenium.isElementPresent(HEAD_DIV_CONTENT));
+ selenium.click(HEAD_INP_CONTENT);
+ assertEquals("hello from the injected java script!", selenium.getAlert());
+ }
+
+ @Test(enabled = true)
+ public void javascriptTest() {
+ selenium.click(JS_LNK);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+ selenium.addSelection(JS_SEL_LETTER, JS_LAB_A);
+ selenium.click(JS_OPT_1);
+ waitFor(AJAX_TIMEOUT);
+
+ assertFalse(selenium.isSomethingSelected(JS_SEL_LETTER));
+
+ selenium.addSelection(JS_SEL_LETTER, JS_LAB_B);
+ selenium.click(JS_OPT_2);
+ waitFor(AJAX_TIMEOUT);
+
+ assertFalse(selenium.isSomethingSelected(JS_SEL_LETTER));
+
+ selenium.addSelection(JS_SEL_LETTER, JS_LAB_C);
+ selenium.click(JS_OPT_3);
+ waitFor(AJAX_TIMEOUT);
+
+ assertFalse(selenium.isSomethingSelected(JS_SEL_LETTER));
+
+ selenium.click(JS_LNK_SUBMIT);
+ waitFor(AJAX_TIMEOUT);
+
+ assertFalse(selenium.isSomethingSelected(JS_SEL_LETTER));
+ }
+
+ @Test(enabled = true)
+ public void missingInstanceTest() {
+ selenium.click(MINS_LNK);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+ assertEquals("", selenium.getText(MINS_DIV_CON));
+ }
+
+ @Test(enabled = true)
+ public void missingPortletTest() {
+ selenium.click(MPOR_LNK);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+ assertEquals("", selenium.getText(MPOR_DIV_CON));
+ }
+
+ @Test(enabled = true)
+ public void modeTest() {
+ selenium.click(MOD_LNK);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+ assertEquals("View", selenium.getText(MOD_DIV_CON));
+ }
+
+ @Test(enabled = true)
+ public void pageEventTest() {
+ final String portletText = "This is a simple showcase of Portal Node Event Listener. For this portal page it ensures that in every column, only one portlet window is in NORMAL state. Try to change the window state of other portlets and see what happens. To learn more, read InterPortlet Communication (IPC) chapter in JBoss Portal Reference Guide.";
+ final String emptyText = "";
+
+ selenium.click(PEVT_LNK);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+
+ // Left column
+
+ assertEquals(portletText, selenium.getText(PEVT_DIV_L1));
+ assertEquals(emptyText, selenium.getText(PEVT_DIV_L2));
+ assertEquals(emptyText, selenium.getText(PEVT_DIV_L3));
+
+ selenium.click(PEVT_DIV_L2_MAX);
+ waitFor(AJAX_TIMEOUT);
+
+ assertEquals(emptyText, selenium.getText(PEVT_DIV_L1));
+ assertEquals(portletText, selenium.getText(PEVT_DIV_L2));
+ assertEquals(emptyText, selenium.getText(PEVT_DIV_L3));
+
+ selenium.click(PEVT_DIV_L3_MAX);
+ waitFor(AJAX_TIMEOUT);
+
+ assertEquals(emptyText, selenium.getText(PEVT_DIV_L1));
+ assertEquals(emptyText, selenium.getText(PEVT_DIV_L2));
+ assertEquals(portletText, selenium.getText(PEVT_DIV_L3));
+
+ // Right column
+
+ assertEquals(portletText, selenium.getText(PEVT_DIV_P1));
+ assertEquals(emptyText, selenium.getText(PEVT_DIV_P2));
+ assertEquals(emptyText, selenium.getText(PEVT_DIV_P3));
+
+ selenium.click(PEVT_DIV_P2_MAX);
+ waitFor(AJAX_TIMEOUT);
+
+ assertEquals(emptyText, selenium.getText(PEVT_DIV_P1));
+ assertEquals(portletText, selenium.getText(PEVT_DIV_P2));
+ assertEquals(emptyText, selenium.getText(PEVT_DIV_P3));
+
+ selenium.click(PEVT_DIV_P3_MAX);
+ waitFor(AJAX_TIMEOUT);
+
+ assertEquals(emptyText, selenium.getText(PEVT_DIV_P1));
+ assertEquals(emptyText, selenium.getText(PEVT_DIV_P2));
+ assertEquals(portletText, selenium.getText(PEVT_DIV_P3));
+
+ }
+
+ @Test(enabled = true)
+ public void publicParametersTest() {
+ selenium.click(PUB_LNK);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+ assertEquals("", selenium.getValue(PUB_DIV_1_FOO));
+ assertEquals("", selenium.getValue(PUB_DIV_1_BAR));
+ assertEquals("", selenium.getValue(PUB_DIV_2_FOO));
+ assertEquals("", selenium.getValue(PUB_DIV_2_JUU));
+ assertEquals("", selenium.getValue(PUB_DIV_3_JUU));
+ assertEquals("", selenium.getValue(PUB_DIV_3_BAR));
+ selenium.type(PUB_DIV_1_FOO, PUB_DIV_1_FOO);
+ selenium.click(PUB_SUB_1);
+ waitFor(AJAX_TIMEOUT);
+ assertEquals(PUB_DIV_1_FOO, selenium.getValue(PUB_DIV_1_FOO));
+ assertEquals("", selenium.getValue(PUB_DIV_1_BAR));
+ assertEquals(PUB_DIV_1_FOO, selenium.getValue(PUB_DIV_2_FOO));
+ assertEquals("", selenium.getValue(PUB_DIV_2_JUU));
+ assertEquals("", selenium.getValue(PUB_DIV_3_JUU));
+ assertEquals("", selenium.getValue(PUB_DIV_3_BAR));
+ selenium.type(PUB_DIV_1_BAR, PUB_DIV_1_BAR);
+ selenium.click(PUB_SUB_1);
+ waitFor(AJAX_TIMEOUT);
+ assertEquals(PUB_DIV_1_FOO, selenium.getValue(PUB_DIV_1_FOO));
+ assertEquals(PUB_DIV_1_BAR, selenium.getValue(PUB_DIV_1_BAR));
+ assertEquals(PUB_DIV_1_FOO, selenium.getValue(PUB_DIV_2_FOO));
+ assertEquals("", selenium.getValue(PUB_DIV_2_JUU));
+ assertEquals("", selenium.getValue(PUB_DIV_3_JUU));
+ assertEquals(PUB_DIV_1_BAR, selenium.getValue(PUB_DIV_3_BAR));
+ selenium.type(PUB_DIV_2_JUU, PUB_DIV_2_JUU);
+ selenium.click(PUB_SUB_2);
+ waitFor(AJAX_TIMEOUT);
+ assertEquals(PUB_DIV_1_FOO, selenium.getValue(PUB_DIV_1_FOO));
+ assertEquals(PUB_DIV_1_BAR, selenium.getValue(PUB_DIV_1_BAR));
+ assertEquals(PUB_DIV_1_FOO, selenium.getValue(PUB_DIV_2_FOO));
+ assertEquals(PUB_DIV_2_JUU, selenium.getValue(PUB_DIV_2_JUU));
+ assertEquals(PUB_DIV_2_JUU, selenium.getValue(PUB_DIV_3_JUU));
+ assertEquals(PUB_DIV_1_BAR, selenium.getValue(PUB_DIV_3_BAR));
+ selenium.click(PUB_1_LNK_FOO_REM);
+ waitFor(AJAX_TIMEOUT);
+ assertEquals("", selenium.getValue(PUB_DIV_1_FOO));
+ assertEquals(PUB_DIV_1_BAR, selenium.getValue(PUB_DIV_1_BAR));
+ assertEquals("", selenium.getValue(PUB_DIV_2_FOO));
+ assertEquals(PUB_DIV_2_JUU, selenium.getValue(PUB_DIV_2_JUU));
+ assertEquals(PUB_DIV_2_JUU, selenium.getValue(PUB_DIV_3_JUU));
+ assertEquals(PUB_DIV_1_BAR, selenium.getValue(PUB_DIV_3_BAR));
+ selenium.click(PUB_3_LNK_JUU_REM);
+ waitFor(AJAX_TIMEOUT);
+ assertEquals("", selenium.getValue(PUB_DIV_1_FOO));
+ assertEquals(PUB_DIV_1_BAR, selenium.getValue(PUB_DIV_1_BAR));
+ assertEquals("", selenium.getValue(PUB_DIV_2_FOO));
+ assertEquals("", selenium.getValue(PUB_DIV_2_JUU));
+ assertEquals("", selenium.getValue(PUB_DIV_3_JUU));
+ assertEquals(PUB_DIV_1_BAR, selenium.getValue(PUB_DIV_3_BAR));
+ selenium.click(PUB_3_LNK_BAR_REM);
+ waitFor(AJAX_TIMEOUT);
+ assertEquals("", selenium.getValue(PUB_DIV_1_FOO));
+ assertEquals("", selenium.getValue(PUB_DIV_1_BAR));
+ assertEquals("", selenium.getValue(PUB_DIV_2_FOO));
+ assertEquals("", selenium.getValue(PUB_DIV_2_JUU));
+ assertEquals("", selenium.getValue(PUB_DIV_3_JUU));
+ assertEquals("", selenium.getValue(PUB_DIV_3_BAR));
+ }
+
+ @Test(enabled = false)
+ public void secureTest() {
+
+
+ }
+
+ @Test(enabled = true)
+ public void sessionTest() {
+ selenium.click(SES_LNK);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+ selenium.type(SES_INP_NAM, "scope1");
+ selenium.type(SES_INP_VAL, "scopeval1");
+ selenium.click(SES_SUB_PSCOPE);
+ waitFor(AJAX_TIMEOUT);
+
+ int r = findTableRow(SES_TAB_PSCOPE, "scope1", 0);
+ assertTrue(r>0);
+ assertEquals(findTableRow(SES_TAB_PSCOPE, "scopeval1", 1), r);
+
+ //assertEquals("scope1", selenium.getText("//div[@id='regionB']/div/table/tbody/tr[2]/td[2]/div/table[1]/tbody/tr[2]/td[1]"));
+ //assertEquals("scopeval1", selenium.getText("//div[@id='regionB']/div/table/tbody/tr[2]/td[2]/div/table[1]/tbody/tr[2]/td[2]"));
+ selenium.type(SES_INP_NAM, "app1");
+ selenium.type(SES_INP_VAL, "appval1");
+ selenium.click(SES_SUB_ASCOPE);
+ waitFor(AJAX_TIMEOUT);
+
+ r = findTableRow(SES_TAB_ASCOPE, "app1", 0);
+ assertTrue(r>0);
+ assertEquals(findTableRow(SES_TAB_ASCOPE, "appval1", 1), r);
+
+ //assertEquals("app1", selenium.getText("//div[@id='regionB']/div/table/tbody/tr[2]/td[2]/div/table[2]/tbody/tr[2]/td[1]"));
+ //assertEquals("appval1", selenium.getText("//div[@id='regionB']/div/table/tbody/tr[2]/td[2]/div/table[2]/tbody/tr[2]/td[2]"));
+
+ selenium.click(SES_LNK_INVALIDATE);
+ waitFor(AJAX_TIMEOUT);
+
+ assertFalse(selenium.isTextPresent("Session id"));
+ }
+
+ @Test(enabled = false)
+ public void urlPortletTest() {
+
+
+ }
+
+ @Test(enabled = true)
+ public void windowIdTest() {
+ selenium.click(WIN_LNK);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+ assertEquals("Window ID is equals to /default/TestWithAjax/Window id test/WindowIDPortletWindow", selenium.getText(WIN_DIV_CON));
+ }
+
+ @Test(enabled = true)
+ public void serveResourceDemoTest() {
+
+ selenium.click(RES_LNK);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+ selenium.type(RES_INP, "valtest");
+ selenium.typeKeys(RES_INP, " ");
+
+ waitFor(AJAX_TIMEOUT);
+
+ assertEquals("valtest", selenium.getText(RES_DIV_RTEXT));
+ selenium.click(RES_LNK_P1);
+ waitFor(AJAX_TIMEOUT);
+ assertEquals("Product ID: 1\n B BY BURTON ALPHA\nSale Price: $314.96", selenium.getText(RES_DIV_PTEXT));
+ selenium.click(RES_LNK_P2);
+ waitFor(AJAX_TIMEOUT);
+ assertEquals("Product ID: 2\nFORUM DESTROYER LTD\n$319.99", selenium.getText(RES_DIV_PTEXT));
+ selenium.click(RES_LNK_P3);
+ waitFor(AJAX_TIMEOUT);
+ assertEquals("Product ID: 3\n SANTA CRUZ ALLSTAR\n$256.00", selenium.getText(RES_DIV_PTEXT));
+
+ }
+
+
+}
Added: branches/JBoss_Portal_Branch_2_7/testsuite/ui-tests/src/org/jboss/portal/test/selenium/PortalSamplesTestCase.java
===================================================================
--- branches/JBoss_Portal_Branch_2_7/testsuite/ui-tests/src/org/jboss/portal/test/selenium/PortalSamplesTestCase.java (rev 0)
+++ branches/JBoss_Portal_Branch_2_7/testsuite/ui-tests/src/org/jboss/portal/test/selenium/PortalSamplesTestCase.java 2009-03-18 16:10:41 UTC (rev 13048)
@@ -0,0 +1,477 @@
+package org.jboss.portal.test.selenium;
+
+import org.testng.annotations.AfterMethod;
+import org.testng.annotations.BeforeMethod;
+import org.testng.annotations.Test;
+import static org.testng.Assert.*;
+
+
+ at Test(groups = { "test_samples" }, enabled = true)
+public class PortalSamplesTestCase extends JBossPortalSeleniumTestCase {
+
+ public static long AJAX_TIMEOUT = 4500;
+
+ public static String casePfx = "samples.";
+
+ private final String SES_LNK_INVALIDATE = getProp(casePfx+"ses.lnk.invalidate","link=invalidate");
+ private final String RES_DIV_RTEXT = getProp(casePfx+"res.div.rtext","repeat-text");
+ private final String RES_DIV_PTEXT = getProp(casePfx+"res.div.ptext","product-text");
+ private final String RES_LNK_P3 = getProp(casePfx+"res.lnk.p3","link=Product3");
+ private final String RES_LNK_P2 = getProp(casePfx+"res.lnk.p2","link=Product2");
+ private final String RES_LNK_P1 = getProp(casePfx+"res.lnk.p1","link=Product1");
+ private final String RES_INP = getProp(casePfx+"res.inp","repeat");
+ private final String RES_LNK = getProp(casePfx+"res.lnk","link=serveResource Demo");
+ private final String WIN_DIV_CON = getProp(casePfx+"win.div.con","//div[@id='regionB']/div/table/tbody/tr[2]/td[2]/div");
+ private final String WIN_LNK = getProp(casePfx+"win.lnk","link=Window id test");
+ private final String SES_TAB_PSCOPE = getProp(casePfx+"ses.tab.pscope","//html/body/div[2]/div/div/div[2]/div[2]/div/table/tbody/tr[2]/td[2]/div/table");
+ private final String SES_TAB_ASCOPE = getProp(casePfx+"ses.tab.ascope","//html/body/div[2]/div/div/div[2]/div[2]/div/table/tbody/tr[2]/td[2]/div/table[2]");
+ private final String SES_SUB_ASCOPE = getProp(casePfx+"ses.sub.ascope","application");
+ private final String SES_SUB_PSCOPE = getProp(casePfx+"ses.sub.pscope","portlet");
+ private final String SES_INP_VAL = getProp(casePfx+"ses.inp.val","value");
+ private final String SES_INP_NAM = getProp(casePfx+"ses.inp.nam","name");
+ private final String SES_LNK = getProp(casePfx+"ses.lnk","link=Session test");
+ private final String PUB_1_LNK_FOO_REM = getProp(casePfx+"pub.1.lnk.foo.rem","link=Remove");
+ private final String PUB_3_LNK_BAR_REM = getProp(casePfx+"pub.3.lnk.bar.rem","//div[@id='regionB']/div[2]/table/tbody/tr[2]/td[2]/div/form/table/tbody/tr[2]/td[2]/a");
+ private final String PUB_3_LNK_JUU_REM = getProp(casePfx+"pub.3.lnk.juu.rem","//div[@id='regionB']/div[2]/table/tbody/tr[2]/td[2]/div/form/table/tbody/tr[1]/td[2]/a");
+ private final String PUB_SUB_2 = getProp(casePfx+"pub.sub.2","//div[@id='regionB']/div[1]/table/tbody/tr[2]/td[2]/div/form/table/tbody/tr[3]/td/input");
+ private final String PUB_SUB_1 = getProp(casePfx+"pub.sub.1","//input[@value='Update']");
+ private final String PUB_DIV_3_BAR = getProp(casePfx+"pub.div.3.bar","//div[@id='regionB']/div[2]/table/tbody/tr[2]/td[2]/div/form/table/tbody/tr[2]/td[2]/input");
+ private final String PUB_DIV_3_JUU = getProp(casePfx+"pub.div.3.juu","//div[@id='regionB']/div[2]/table/tbody/tr[2]/td[2]/div/form/table/tbody/tr[1]/td[2]/input");
+ private final String PUB_DIV_2_JUU = getProp(casePfx+"pub.div.2.juu","juu");
+ private final String PUB_DIV_2_FOO = getProp(casePfx+"pub.div.2.foo","//div[@id='regionB']/div[1]/table/tbody/tr[2]/td[2]/div/form/table/tbody/tr[1]/td[2]/input");
+ private final String PUB_DIV_1_BAR = getProp(casePfx+"pub.div.1.bar","bar");
+ private final String PUB_DIV_1_FOO = getProp(casePfx+"pub.div.1.foo","foo");
+ private final String PUB_LNK = getProp(casePfx+"pub.lnk","link=Public parameters test");
+ private final String PEVT_DIV_P3_MAX = getProp(casePfx+"pevt.div.p3.max","//div[@id='regionB']/div[3]/table/tbody/tr[1]/td[2]/div[2]/span[1]/a");
+ private final String PEVT_DIV_P2_MAX = getProp(casePfx+"pevt.div.p2.max","//div[@id='regionB']/div[2]/table/tbody/tr[1]/td[2]/div[2]/span[1]/a");
+ private final String PEVT_DIV_L3_MAX = getProp(casePfx+"pevt.div.l3.max","//div[@id='regionA']/div[3]/table/tbody/tr[1]/td[2]/div[2]/span[1]/a");
+ private final String PEVT_DIV_L2_MAX = getProp(casePfx+"pevt.div.l2.max","//div[@id='regionA']/div[2]/table/tbody/tr[1]/td[2]/div[2]/span[1]/a");
+ private final String PEVT_DIV_P3 = getProp(casePfx+"pevt.div.p3","//div[@id='regionB']/div[3]/table/tbody/tr[2]/td[2]/div/");
+ private final String PEVT_DIV_P2 = getProp(casePfx+"pevt.div.p2","//div[@id='regionB']/div[2]/table/tbody/tr[2]/td[2]/div/");
+ private final String PEVT_DIV_P1 = getProp(casePfx+"pevt.div.p1","//div[@id='regionB']/div[1]/table/tbody/tr[2]/td[2]/div/");
+ private final String PEVT_DIV_L3 = getProp(casePfx+"pevt.div.l3","//div[@id='regionA']/div[3]/table/tbody/tr[2]/td[2]/div/");
+ private final String PEVT_DIV_L2 = getProp(casePfx+"pevt.div.l2","//div[@id='regionA']/div[2]/table/tbody/tr[2]/td[2]/div/");
+ private final String PEVT_DIV_L1 = getProp(casePfx+"pevt.div.l1","//div[@id='regionA']/div[1]/table/tbody/tr[2]/td[2]/div/");
+ private final String PEVT_LNK = getProp(casePfx+"pevt.lnk","link=Page event test");
+ private final String MOD_DIV_CON = getProp(casePfx+"mod.div.con","//div[@id='regionB']/div/table/tbody/tr[2]/td[2]/div");
+ private final String MOD_LNK = getProp(casePfx+"mod.lnk","link=Mode test");
+ private final String MPOR_DIV_CON = getProp(casePfx+"mpor.div.con","content-container");
+ private final String MPOR_LNK = getProp(casePfx+"mpor.lnk","link=Missing portlet");
+ private final String MINS_DIV_CON = getProp(casePfx+"mins.div.con","content-container");
+ private final String MINS_LNK = getProp(casePfx+"mins.lnk","link=Missing instance");
+ private final String JS_LNK_SUBMIT = getProp(casePfx+"js.lnk.submit","link=submit");
+ private final String JS_OPT_3 = getProp(casePfx+"js.opt.3","//form[@id='jbpnsFormAutoSubmitPortletWindowsnpbj_the_form']/select/option[3]");
+ private final String JS_OPT_2 = getProp(casePfx+"js.opt.2","//form[@id='jbpnsFormAutoSubmitPortletWindowsnpbj_the_form']/select/option[2]");
+ private final String JS_OPT_1 = getProp(casePfx+"js.opt.1","//form[@id='jbpnsFormAutoSubmitPortletWindowsnpbj_the_form']/select/option[1]");
+ private final String JS_LAB_C = getProp(casePfx+"js.lab.c","label=C");
+ private final String JS_LAB_B = getProp(casePfx+"js.lab.b","label=B");
+ private final String JS_LAB_A = getProp(casePfx+"js.lab.a","label=A");
+ private final String JS_SEL_LETTER = getProp(casePfx+"js.sel.letter","//select[@onclick=\"document.getElementById('jbpnsFormAutoSubmitPortletWindowsnpbj_the_form').submit()\"]");
+ private final String JS_LNK = getProp(casePfx+"js.lnk","link=Javascript test");
+ private final String HEAD_INP_CONTENT = getProp(casePfx+"head.inp.content","Introducing-HeaderContentInput");
+ private final String HEAD_DIV_CONTENT = getProp(casePfx+"head.div.content","Introducing-HeaderContent");
+ private final String HEAD_LNK = getProp(casePfx+"head.lnk","link=Header test");
+ private final String FS_LNK = getProp(casePfx+"fs.lnk","link=File system content");
+ private final String EXC_LNK_PORTLET = getProp(casePfx+"exc.lnk.portlet","link=render PortletException");
+ private final String EXC_LNK = getProp(casePfx+"exc.lnk","link=Exception test");
+ private final String EVT_SUB_COLOR = getProp(casePfx+"evt.sub.color","//input[@type='submit']");
+ private final String EVT_DIV_BLACK = getProp(casePfx+"evt.div.black","//div[@id='regionB']/div[2]/table/tbody/tr[2]/td[2]/div/div[contains(@style,'black')]");
+ private final String EVT_DIV_RED = getProp(casePfx+"evt.div.red","//div[@id='regionB']/div[2]/table/tbody/tr[2]/td[2]/div/div[contains(@style,'red')]");
+ private final String EVT_DIV_BLUE = getProp(casePfx+"evt.div.blue","//div[@id='regionB']/div[2]/table/tbody/tr[2]/td[2]/div/div[contains(@style,'blue')]");
+ private final String EVT_SEL_LAB_BLACK = getProp(casePfx+"evt.sel.lab.black","label=black");
+ private final String EVT_SEL_LAB_RED = getProp(casePfx+"evt.sel.lab.red","label=red");
+ private final String EVT_SEL_LAB_BLUE = getProp(casePfx+"evt.sel.lab.blue","label=blue");
+ private final String EVT_SEL_COL = getProp(casePfx+"evt.sel.col","color");
+ private final String EVT_LNK = getProp(casePfx+"evt.lnk","link=Event test");
+ private final String ENC_LNK = getProp(casePfx+"enc.lnk","link=Encoding test");
+ private final String ENC_INP_REN = getProp(casePfx+"enc.inp.ren","text");
+ private final String ENC_SUB_ACT = getProp(casePfx+"enc.sub.act","//input[@value='Submit to action phase']");
+ private final String ENC_INP_ACT = getProp(casePfx+"enc.inp.act","//div[@id='regionB']/div/table/tbody/tr[2]/td[2]/div/div[1]/form[2]/input[1]");
+ private final String ENC_TEXTAREA2 = getProp(casePfx+"enc.textarea2","//div[@id='regionB']/div/table/tbody/tr[2]/td[2]/div/div[5]/textarea");
+ private final String ENC_TEXTAREA1 = getProp(casePfx+"enc.textarea1","//textarea[@name='text']");
+ private final String CHAR_ALL_SUB_CHECK = getProp(casePfx+"char.all.sub.check","//html/body/div[2]/div/div/div[2]/div[2]/div/table/tbody/tr[2]/td[2]/div/div[8]/form/input[3]");
+ private final String CHAR_INP_TEXT_SUB_CHECK = getProp(casePfx+"char.inp.text.sub.check","//div[@id='regionB']/div/table/tbody/tr[2]/td[2]/div/div[8]/form/input[3]");
+ private final String CHAR_LNK_TEXTAREA_CHECK = getProp(casePfx+"char.lnk.textarea.check","//input[@value='check']");
+ private final String CHAR_INP_TEXT = getProp(casePfx+"char.inp.text","//input[@name='text']");
+ private final String CHAR_TEXTAREA = getProp(casePfx+"char.textarea","text");
+ private final String CHAR_SUB_CHANGE = getProp(casePfx+"char.sub.change","//input[@value='change']");
+ private final String CHAR_INP_TO = getProp(casePfx+"char.inp.to","to");
+ private final String CHAR_INP_FROM = getProp(casePfx+"char.inp.from","from");
+ private final String CHAR_LNK = getProp(casePfx+"char.lnk","link=Charset test");
+ private final String CACHE_LNK = getProp(casePfx+"cache.lnk","link=Cache test");
+ private final String CACHE_LNK_2REN = getProp(casePfx+"cache.lnk.2ren","//div[@id='regionB']/div[2]/table/tbody/tr[2]/td[2]/div/div[5]/a");
+ private final String CACHE_LNK_2ACT = getProp(casePfx+"cache.lnk.2act","//div[@id='regionB']/div[2]/table/tbody/tr[2]/td[2]/div/div[4]/a");
+ private final String CACHE_LNK_1REN = getProp(casePfx+"cache.lnk.1ren","link=render");
+ private final String CACHE_LNK_1ACT = getProp(casePfx+"cache.lnk.1act","link=action");
+ private final String CACHE_2RENDER = getProp(casePfx+"cache.2render","//div[@id='regionB']/div[2]/table/tbody/tr[2]/td[2]/div/div[2]/div");
+ private final String CACHE_1RENDER = getProp(casePfx+"cache.1render","//div[@id='regionB']/div[1]/table/tbody/tr[2]/td[2]/div/div[2]/div");
+
+ @BeforeMethod(groups = { "log" })
+ public void loginBeforeTest() {
+ selenium.open("/portal/portal/default/default");
+ selenium.waitForPageToLoad(PAGE_LOAD);
+ }
+
+ @AfterMethod(groups = { "log" })
+ public void logoutAfterTest() {
+
+ }
+ @Test(enabled = true)
+ public void cacheTest() {
+ selenium.click(CACHE_LNK);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+ assertEquals("0", selenium.getText(CACHE_1RENDER));
+ assertEquals("0", selenium.getText(CACHE_2RENDER));
+
+ selenium.click(CACHE_LNK_1ACT);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+ assertEquals("1", selenium.getText(CACHE_1RENDER));
+ assertEquals("1", selenium.getText(CACHE_2RENDER));
+
+ selenium.click(CACHE_LNK_1REN);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+ assertEquals("1", selenium.getText(CACHE_1RENDER));
+ assertEquals("2", selenium.getText(CACHE_2RENDER));
+
+ selenium.click(CACHE_LNK_2ACT);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+ assertEquals("1", selenium.getText(CACHE_1RENDER));
+ assertEquals("3", selenium.getText(CACHE_2RENDER));
+
+ selenium.click(CACHE_LNK_2REN);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+ assertEquals("1", selenium.getText(CACHE_1RENDER));
+ assertEquals("4", selenium.getText(CACHE_2RENDER));
+ }
+
+ @Test(enabled = true)
+ public void charsetTest() {
+ selenium.click(CHAR_LNK);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+ selenium.type(CHAR_INP_FROM, "65");
+ selenium.type(CHAR_INP_TO, "75");
+ selenium.click(CHAR_SUB_CHANGE);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+ assertEquals("ABCDEFGHIJ", selenium.getText(CHAR_TEXTAREA));
+ selenium.click(CHAR_LNK_TEXTAREA_CHECK);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+ assertTrue(selenium.isTextPresent("Test result: The input matched the expected result"));
+ assertEquals("ABCDEFGHIJ", selenium.getValue(CHAR_INP_TEXT));
+ selenium.click(CHAR_INP_TEXT_SUB_CHECK);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+ selenium.type(CHAR_INP_FROM, "55");
+ selenium.type(CHAR_INP_TO, "65");
+ selenium.click(CHAR_SUB_CHANGE);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+ assertEquals("789:;<=>?@", selenium.getValue(CHAR_INP_TEXT));
+ selenium.type(CHAR_TEXTAREA, "789:;<=>?@4");
+ selenium.click(CHAR_LNK_TEXTAREA_CHECK);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+ assertTrue(selenium.isTextPresent("Test result: The input did not matched the expected result"));
+ selenium.type(CHAR_INP_TEXT, "789:;<=>?@f");
+ selenium.click(CHAR_ALL_SUB_CHECK);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+ assertTrue(selenium.isTextPresent("Test result: The input matched the expected result"));
+ }
+
+ @Test(enabled = true)
+ public void encodingTest() {
+ selenium.click(ENC_LNK);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+ assertEquals("", selenium.getValue(ENC_TEXTAREA1));
+ assertEquals("", selenium.getValue(ENC_TEXTAREA2));
+ selenium.type(ENC_INP_ACT, "action");
+ selenium.click(ENC_SUB_ACT);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+ assertEquals("action", selenium.getValue(ENC_TEXTAREA1));
+ assertEquals("action", selenium.getValue(ENC_TEXTAREA2));
+ selenium.type(CHAR_TEXTAREA, "render");
+ selenium.click("//input[@value='Submit to render phase']");
+ selenium.waitForPageToLoad(PAGE_LOAD);
+ assertEquals("", selenium.getValue(ENC_TEXTAREA1));
+ assertEquals("action", selenium.getValue(ENC_TEXTAREA2));
+ }
+
+ @Test(enabled = true)
+ public void eventTest() {
+ selenium.click(EVT_LNK);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+ selenium.select(EVT_SEL_COL, EVT_SEL_LAB_BLUE);
+ selenium.click(EVT_SUB_COLOR);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+ assertTrue(selenium.isElementPresent(EVT_DIV_BLUE));
+ selenium.select(EVT_SEL_COL, EVT_SEL_LAB_RED);
+ selenium.click(EVT_SUB_COLOR);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+ assertTrue(selenium.isElementPresent(EVT_DIV_RED));
+ selenium.select(EVT_SEL_COL, EVT_SEL_LAB_BLACK);
+ selenium.click(EVT_SUB_COLOR);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+ assertTrue(selenium.isElementPresent(EVT_DIV_BLACK));
+ }
+
+ @Test(enabled = true)
+ public void exceptionTest() {
+ selenium.click(EXC_LNK);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+ selenium.click(EXC_LNK_PORTLET);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+ assertTrue(selenium.isTextPresent("javax.portlet.PortletException"));
+ }
+
+ @Test(enabled = true)
+ public void fileSystemContentTest() {
+ selenium.click(FS_LNK);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+ assertTrue(selenium.isTextPresent("Bar content"));
+ }
+
+ @Test(enabled = true)
+ public void headerTest() {
+ selenium.click(HEAD_LNK);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+ assertTrue(selenium.isElementPresent(HEAD_DIV_CONTENT));
+ selenium.click(HEAD_INP_CONTENT);
+ assertEquals("hello from the injected java script!", selenium.getAlert());
+ }
+
+ @Test(enabled = true)
+ public void javascriptTest() {
+ selenium.click(JS_LNK);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+ selenium.addSelection(JS_SEL_LETTER, JS_LAB_A);
+ selenium.click(JS_OPT_1);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+
+ assertFalse(selenium.isSomethingSelected(JS_SEL_LETTER));
+
+ selenium.addSelection(JS_SEL_LETTER, JS_LAB_B);
+ selenium.click(JS_OPT_2);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+
+ assertFalse(selenium.isSomethingSelected(JS_SEL_LETTER));
+
+ selenium.addSelection(JS_SEL_LETTER, JS_LAB_C);
+ selenium.click(JS_OPT_3);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+
+ assertFalse(selenium.isSomethingSelected(JS_SEL_LETTER));
+
+ selenium.click(JS_LNK_SUBMIT);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+
+ assertFalse(selenium.isSomethingSelected(JS_SEL_LETTER));
+ }
+
+ @Test(enabled = true)
+ public void missingInstanceTest() {
+ selenium.click(MINS_LNK);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+ assertEquals("", selenium.getText(MINS_DIV_CON));
+ }
+
+ @Test(enabled = true)
+ public void missingPortletTest() {
+ selenium.click(MPOR_LNK);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+ assertEquals("", selenium.getText(MPOR_DIV_CON));
+ }
+
+ @Test(enabled = true)
+ public void modeTest() {
+ selenium.click(MOD_LNK);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+ assertEquals("View", selenium.getText(MOD_DIV_CON));
+ }
+
+ @Test(enabled = true)
+ public void pageEventTest() {
+ final String portletText = "This is a simple showcase of Portal Node Event Listener. For this portal page it ensures that in every column, only one portlet window is in NORMAL state. Try to change the window state of other portlets and see what happens. To learn more, read InterPortlet Communication (IPC) chapter in JBoss Portal Reference Guide.";
+ final String emptyText = "";
+
+ selenium.click(PEVT_LNK);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+
+ // Left column
+
+ assertEquals(portletText, selenium.getText(PEVT_DIV_L1));
+ assertEquals(emptyText, selenium.getText(PEVT_DIV_L2));
+ assertEquals(emptyText, selenium.getText(PEVT_DIV_L3));
+
+ selenium.click(PEVT_DIV_L2_MAX);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+
+ assertEquals(emptyText, selenium.getText(PEVT_DIV_L1));
+ assertEquals(portletText, selenium.getText(PEVT_DIV_L2));
+ assertEquals(emptyText, selenium.getText(PEVT_DIV_L3));
+
+ selenium.click(PEVT_DIV_L3_MAX);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+
+ assertEquals(emptyText, selenium.getText(PEVT_DIV_L1));
+ assertEquals(emptyText, selenium.getText(PEVT_DIV_L2));
+ assertEquals(portletText, selenium.getText(PEVT_DIV_L3));
+
+ // Right column
+
+ assertEquals(portletText, selenium.getText(PEVT_DIV_P1));
+ assertEquals(emptyText, selenium.getText(PEVT_DIV_P2));
+ assertEquals(emptyText, selenium.getText(PEVT_DIV_P3));
+
+ selenium.click(PEVT_DIV_P2_MAX);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+
+ assertEquals(emptyText, selenium.getText(PEVT_DIV_P1));
+ assertEquals(portletText, selenium.getText(PEVT_DIV_P2));
+ assertEquals(emptyText, selenium.getText(PEVT_DIV_P3));
+
+ selenium.click(PEVT_DIV_P3_MAX);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+
+ assertEquals(emptyText, selenium.getText(PEVT_DIV_P1));
+ assertEquals(emptyText, selenium.getText(PEVT_DIV_P2));
+ assertEquals(portletText, selenium.getText(PEVT_DIV_P3));
+
+ }
+
+ @Test(enabled = true)
+ public void publicParametersTest() {
+ selenium.click(PUB_LNK);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+ assertEquals("", selenium.getValue(PUB_DIV_1_FOO));
+ assertEquals("", selenium.getValue(PUB_DIV_1_BAR));
+ assertEquals("", selenium.getValue(PUB_DIV_2_FOO));
+ assertEquals("", selenium.getValue(PUB_DIV_2_JUU));
+ assertEquals("", selenium.getValue(PUB_DIV_3_JUU));
+ assertEquals("", selenium.getValue(PUB_DIV_3_BAR));
+ selenium.type(PUB_DIV_1_FOO, PUB_DIV_1_FOO);
+ selenium.click(PUB_SUB_1);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+ assertEquals(PUB_DIV_1_FOO, selenium.getValue(PUB_DIV_1_FOO));
+ assertEquals("", selenium.getValue(PUB_DIV_1_BAR));
+ assertEquals(PUB_DIV_1_FOO, selenium.getValue(PUB_DIV_2_FOO));
+ assertEquals("", selenium.getValue(PUB_DIV_2_JUU));
+ assertEquals("", selenium.getValue(PUB_DIV_3_JUU));
+ assertEquals("", selenium.getValue(PUB_DIV_3_BAR));
+ selenium.type(PUB_DIV_1_BAR, PUB_DIV_1_BAR);
+ selenium.click(PUB_SUB_1);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+ assertEquals(PUB_DIV_1_FOO, selenium.getValue(PUB_DIV_1_FOO));
+ assertEquals(PUB_DIV_1_BAR, selenium.getValue(PUB_DIV_1_BAR));
+ assertEquals(PUB_DIV_1_FOO, selenium.getValue(PUB_DIV_2_FOO));
+ assertEquals("", selenium.getValue(PUB_DIV_2_JUU));
+ assertEquals("", selenium.getValue(PUB_DIV_3_JUU));
+ assertEquals(PUB_DIV_1_BAR, selenium.getValue(PUB_DIV_3_BAR));
+ selenium.type(PUB_DIV_2_JUU, PUB_DIV_2_JUU);
+ selenium.click(PUB_SUB_2);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+ assertEquals(PUB_DIV_1_FOO, selenium.getValue(PUB_DIV_1_FOO));
+ assertEquals(PUB_DIV_1_BAR, selenium.getValue(PUB_DIV_1_BAR));
+ assertEquals(PUB_DIV_1_FOO, selenium.getValue(PUB_DIV_2_FOO));
+ assertEquals(PUB_DIV_2_JUU, selenium.getValue(PUB_DIV_2_JUU));
+ assertEquals(PUB_DIV_2_JUU, selenium.getValue(PUB_DIV_3_JUU));
+ assertEquals(PUB_DIV_1_BAR, selenium.getValue(PUB_DIV_3_BAR));
+ selenium.click(PUB_1_LNK_FOO_REM);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+ assertEquals("", selenium.getValue(PUB_DIV_1_FOO));
+ assertEquals(PUB_DIV_1_BAR, selenium.getValue(PUB_DIV_1_BAR));
+ assertEquals("", selenium.getValue(PUB_DIV_2_FOO));
+ assertEquals(PUB_DIV_2_JUU, selenium.getValue(PUB_DIV_2_JUU));
+ assertEquals(PUB_DIV_2_JUU, selenium.getValue(PUB_DIV_3_JUU));
+ assertEquals(PUB_DIV_1_BAR, selenium.getValue(PUB_DIV_3_BAR));
+ selenium.click(PUB_3_LNK_JUU_REM);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+ assertEquals("", selenium.getValue(PUB_DIV_1_FOO));
+ assertEquals(PUB_DIV_1_BAR, selenium.getValue(PUB_DIV_1_BAR));
+ assertEquals("", selenium.getValue(PUB_DIV_2_FOO));
+ assertEquals("", selenium.getValue(PUB_DIV_2_JUU));
+ assertEquals("", selenium.getValue(PUB_DIV_3_JUU));
+ assertEquals(PUB_DIV_1_BAR, selenium.getValue(PUB_DIV_3_BAR));
+ selenium.click(PUB_3_LNK_BAR_REM);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+ assertEquals("", selenium.getValue(PUB_DIV_1_FOO));
+ assertEquals("", selenium.getValue(PUB_DIV_1_BAR));
+ assertEquals("", selenium.getValue(PUB_DIV_2_FOO));
+ assertEquals("", selenium.getValue(PUB_DIV_2_JUU));
+ assertEquals("", selenium.getValue(PUB_DIV_3_JUU));
+ assertEquals("", selenium.getValue(PUB_DIV_3_BAR));
+ }
+
+ @Test(enabled = false)
+ public void secureTest() {
+
+
+ }
+
+ @Test(enabled = true)
+ public void sessionTest() {
+ selenium.click(SES_LNK);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+ selenium.type(SES_INP_NAM, "scope1");
+ selenium.type(SES_INP_VAL, "scopeval1");
+ selenium.click(SES_SUB_PSCOPE);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+
+ int r = findTableRow(SES_TAB_PSCOPE, "scope1", 0);
+ assertTrue(r>0);
+ assertEquals(findTableRow(SES_TAB_PSCOPE, "scopeval1", 1), r);
+
+ //assertEquals("scope1", selenium.getText("//div[@id='regionB']/div/table/tbody/tr[2]/td[2]/div/table[1]/tbody/tr[2]/td[1]"));
+ //assertEquals("scopeval1", selenium.getText("//div[@id='regionB']/div/table/tbody/tr[2]/td[2]/div/table[1]/tbody/tr[2]/td[2]"));
+ selenium.type(SES_INP_NAM, "app1");
+ selenium.type(SES_INP_VAL, "appval1");
+ selenium.click(SES_SUB_ASCOPE);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+
+ r = findTableRow(SES_TAB_ASCOPE, "app1", 0);
+ assertTrue(r>0);
+ assertEquals(findTableRow(SES_TAB_ASCOPE, "appval1", 1), r);
+
+ //assertEquals("app1", selenium.getText("//div[@id='regionB']/div/table/tbody/tr[2]/td[2]/div/table[2]/tbody/tr[2]/td[1]"));
+ //assertEquals("appval1", selenium.getText("//div[@id='regionB']/div/table/tbody/tr[2]/td[2]/div/table[2]/tbody/tr[2]/td[2]"));
+
+ selenium.click(SES_LNK_INVALIDATE);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+
+ assertFalse(selenium.isTextPresent("Session id"));
+ }
+
+ @Test(enabled = false)
+ public void urlPortletTest() {
+
+
+ }
+
+ @Test(enabled = true)
+ public void windowIdTest() {
+ selenium.click(WIN_LNK);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+ assertEquals("Window ID is equals to /default/Test/Window id test/WindowIDPortletWindow", selenium.getText(WIN_DIV_CON));
+ }
+
+ @Test(enabled = true)
+ public void serveResourceDemoTest() {
+
+ selenium.click(RES_LNK);
+ selenium.waitForPageToLoad(PAGE_LOAD);
+ selenium.type(RES_INP, "valtest");
+ selenium.typeKeys(RES_INP, " ");
+
+ waitFor(AJAX_TIMEOUT);
+
+ assertEquals("valtest", selenium.getText(RES_DIV_RTEXT));
+ selenium.click(RES_LNK_P1);
+ waitFor(AJAX_TIMEOUT);
+ assertEquals("Product ID: 1\n B BY BURTON ALPHA\nSale Price: $314.96", selenium.getText(RES_DIV_PTEXT));
+ selenium.click(RES_LNK_P2);
+ waitFor(AJAX_TIMEOUT);
+ assertEquals("Product ID: 2\nFORUM DESTROYER LTD\n$319.99", selenium.getText(RES_DIV_PTEXT));
+ selenium.click(RES_LNK_P3);
+ waitFor(AJAX_TIMEOUT);
+ assertEquals("Product ID: 3\n SANTA CRUZ ALLSTAR\n$256.00", selenium.getText(RES_DIV_PTEXT));
+
+ }
+
+
+
+}
Modified: branches/JBoss_Portal_Branch_2_7/testsuite/ui-tests/src/org/jboss/portal/test/selenium/locator.properties
===================================================================
--- branches/JBoss_Portal_Branch_2_7/testsuite/ui-tests/src/org/jboss/portal/test/selenium/locator.properties 2009-03-18 16:08:17 UTC (rev 13047)
+++ branches/JBoss_Portal_Branch_2_7/testsuite/ui-tests/src/org/jboss/portal/test/selenium/locator.properties 2009-03-18 16:10:41 UTC (rev 13048)
@@ -428,4 +428,193 @@
portal.e2e.pag.tl.display=//a[contains(@id,''obj-nav-form:pages-datatable:{0}:rename-display'')]
portal.e2e.pag.tl.delete=//a[contains(@id,''obj-nav-form:pages-datatable:{0}:delete-link'')]
portal.e2e.pag.tl.makedef=//a[contains(@id,''obj-nav-form:pages-datatable:{0}:default-link'')]
-portal.e2e.div.por.cont=content-container
\ No newline at end of file
+portal.e2e.div.por.cont=content-container
+
+# PortalSamplesTestCase
+
+samples.ses.lnk.invalidate=link=invalidate
+samples.res.div.rtext=repeat-text
+samples.res.div.ptext=product-text
+samples.res.lnk.p3=link=Product3
+samples.res.lnk.p2=link=Product2
+samples.res.lnk.p1=link=Product1
+samples.res.inp=repeat
+samples.res.lnk=link=serveResource Demo
+samples.win.div.con=//div[@id='regionB']/div/table/tbody/tr[2]/td[2]/div
+samples.win.lnk=link=Window id test
+samples.ses.tab.pscope=//html/body/div[2]/div/div/div[2]/div[2]/div/table/tbody/tr[2]/td[2]/div/table
+samples.ses.tab.ascope=//html/body/div[2]/div/div/div[2]/div[2]/div/table/tbody/tr[2]/td[2]/div/table[2]
+samples.ses.sub.ascope=application
+samples.ses.sub.pscope=portlet
+samples.ses.inp.val=value
+samples.ses.inp.nam=name
+samples.ses.lnk=link=Session test
+samples.pub.1.lnk.foo.rem=link=Remove
+samples.pub.3.lnk.bar.rem=//div[@id='regionB']/div[2]/table/tbody/tr[2]/td[2]/div/form/table/tbody/tr[2]/td[2]/a
+samples.pub.3.lnk.juu.rem=//div[@id='regionB']/div[2]/table/tbody/tr[2]/td[2]/div/form/table/tbody/tr[1]/td[2]/a
+samples.pub.sub.2=//div[@id='regionB']/div[1]/table/tbody/tr[2]/td[2]/div/form/table/tbody/tr[3]/td/input
+samples.pub.sub.1=//input[@value='Update']
+samples.pub.div.3.bar=//div[@id='regionB']/div[2]/table/tbody/tr[2]/td[2]/div/form/table/tbody/tr[2]/td[2]/input
+samples.pub.div.3.juu=//div[@id='regionB']/div[2]/table/tbody/tr[2]/td[2]/div/form/table/tbody/tr[1]/td[2]/input
+samples.pub.div.2.juu=juu
+samples.pub.div.2.foo=//div[@id='regionB']/div[1]/table/tbody/tr[2]/td[2]/div/form/table/tbody/tr[1]/td[2]/input
+samples.pub.div.1.bar=bar
+samples.pub.div.1.foo=foo
+samples.pub.lnk=link=Public parameters test
+samples.pevt.div.p3.max=//div[@id='regionB']/div[3]/table/tbody/tr[1]/td[2]/div[2]/span[1]/a
+samples.pevt.div.p2.max=//div[@id='regionB']/div[2]/table/tbody/tr[1]/td[2]/div[2]/span[1]/a
+samples.pevt.div.l3.max=//div[@id='regionA']/div[3]/table/tbody/tr[1]/td[2]/div[2]/span[1]/a
+samples.pevt.div.l2.max=//div[@id='regionA']/div[2]/table/tbody/tr[1]/td[2]/div[2]/span[1]/a
+samples.pevt.div.p3=//div[@id='regionB']/div[3]/table/tbody/tr[2]/td[2]/div/
+samples.pevt.div.p2=//div[@id='regionB']/div[2]/table/tbody/tr[2]/td[2]/div/
+samples.pevt.div.p1=//div[@id='regionB']/div[1]/table/tbody/tr[2]/td[2]/div/
+samples.pevt.div.l3=//div[@id='regionA']/div[3]/table/tbody/tr[2]/td[2]/div/
+samples.pevt.div.l2=//div[@id='regionA']/div[2]/table/tbody/tr[2]/td[2]/div/
+samples.pevt.div.l1=//div[@id='regionA']/div[1]/table/tbody/tr[2]/td[2]/div/
+samples.pevt.lnk=link=Page event test
+samples.mod.div.con=//div[@id='regionB']/div/table/tbody/tr[2]/td[2]/div
+samples.mod.lnk=link=Mode test
+samples.mpor.div.con=content-container
+samples.mpor.lnk=link=Missing portlet
+samples.mins.div.con=content-container
+samples.mins.lnk=link=Missing instance
+samples.js.lnk.submit=link=submit
+samples.js.opt.3=//form[@id='jbpnsFormAutoSubmitPortletWindowsnpbj_the_form']/select/option[3]
+samples.js.opt.2=//form[@id='jbpnsFormAutoSubmitPortletWindowsnpbj_the_form']/select/option[2]
+samples.js.opt.1=//form[@id='jbpnsFormAutoSubmitPortletWindowsnpbj_the_form']/select/option[1]
+samples.js.lab.c=label=C
+samples.js.lab.b=label=B
+samples.js.lab.a=label=A
+samples.js.sel.letter=//select[@onclick=\"document.getElementById('jbpnsFormAutoSubmitPortletWindowsnpbj_the_form').submit()\"]
+samples.js.lnk=link=Javascript test
+samples.head.inp.content=Introducing-HeaderContentInput
+samples.head.div.content=Introducing-HeaderContent
+samples.head.lnk=link=Header test
+samples.fs.lnk=link=File system content
+samples.exc.lnk.portlet=link=render PortletException
+samples.exc.lnk=link=Exception test
+samples.evt.sub.color=//input[@type='submit']
+samples.evt.div.black=//div[@id='regionB']/div[2]/table/tbody/tr[2]/td[2]/div/div[contains(@style,'black')]
+samples.evt.div.red=//div[@id='regionB']/div[2]/table/tbody/tr[2]/td[2]/div/div[contains(@style,'red')]
+samples.evt.div.blue=//div[@id='regionB']/div[2]/table/tbody/tr[2]/td[2]/div/div[contains(@style,'blue')]
+samples.evt.sel.lab.black=label=black
+samples.evt.sel.lab.red=label=red
+samples.evt.sel.lab.blue=label=blue
+samples.evt.sel.col=color
+samples.evt.lnk=link=Event test
+samples.enc.lnk=link=Encoding test
+samples.enc.inp.ren=text
+samples.enc.sub.act=//input[@value='Submit to action phase']
+samples.enc.inp.act=//div[@id='regionB']/div/table/tbody/tr[2]/td[2]/div/div[1]/form[2]/input[1]
+samples.enc.textarea2=//div[@id='regionB']/div/table/tbody/tr[2]/td[2]/div/div[5]/textarea
+samples.enc.textarea1=//textarea[@name='text']
+samples.char.all.sub.check=//html/body/div[2]/div/div/div[2]/div[2]/div/table/tbody/tr[2]/td[2]/div/div[8]/form/input[3]
+samples.char.inp.text.sub.check=//div[@id='regionB']/div/table/tbody/tr[2]/td[2]/div/div[8]/form/input[3]
+samples.char.lnk.textarea.check=//input[@value='check']
+samples.char.inp.text=//input[@name='text']
+samples.char.textarea=text
+samples.char.sub.change=//input[@value='change']
+samples.char.inp.to=to
+samples.char.inp.from=from
+samples.char.lnk=link=Charset test
+samples.cache.lnk=link=Cache test
+samples.cache.lnk.2ren=//div[@id='regionB']/div[2]/table/tbody/tr[2]/td[2]/div/div[5]/a
+samples.cache.lnk.2act=//div[@id='regionB']/div[2]/table/tbody/tr[2]/td[2]/div/div[4]/a
+samples.cache.lnk.1ren=link=render
+samples.cache.lnk.1act=link=action
+samples.cache.2render=//div[@id='regionB']/div[2]/table/tbody/tr[2]/td[2]/div/div[2]/div
+samples.cache.1render=//div[@id='regionB']/div[1]/table/tbody/tr[2]/td[2]/div/div[2]/div
+
+# PortalAjaxSamplesTestCase
+
+samples.ajax.ses.lnk.invalidate=link=invalidate
+samples.ajax.res.div.rtext=repeat-text
+samples.ajax.res.div.ptext=product-text
+samples.ajax.res.lnk.p3=link=Product3
+samples.ajax.res.lnk.p2=link=Product2
+samples.ajax.res.lnk.p1=link=Product1
+samples.ajax.res.inp=repeat
+samples.ajax.res.lnk=//ul[@id='tabsHeader']/li[4]/ul/li[17]/a
+samples.ajax.win.div.con=//html/body/div[2]/div/div/div[2]/div[2]/div/div/div/div/table/tbody/tr[2]/td[2]/div/div
+samples.ajax.win.lnk=//ul[@id='tabsHeader']/li[4]/ul/li[16]/a
+samples.ajax.ses.tab.pscope=//html/body/div[2]/div/div/div[2]/div[2]/div/div/div/div/table/tbody/tr[2]/td[2]/div/div/table
+samples.ajax.ses.tab.ascope=//html/body/div[2]/div/div/div[2]/div[2]/div/div/div/div/table/tbody/tr[2]/td[2]/div/div/table[2]
+samples.ajax.ses.sub.ascope=application
+samples.ajax.ses.sub.pscope=portlet
+samples.ajax.ses.inp.val=value
+samples.ajax.ses.inp.nam=name
+samples.ajax.ses.lnk=//ul[@id='tabsHeader']/li[4]/ul/li[14]/a
+samples.ajax.pub.1.lnk.foo.rem=//html/body/div[2]/div/div/div[2]/div/div/div/div/div/table/tbody/tr[2]/td[2]/div/div/form/table/tbody/tr/td[2]/a
+samples.ajax.pub.3.lnk.bar.rem=//html/body/div[2]/div/div/div[2]/div[2]/div/div[2]/div/div/table/tbody/tr[2]/td[2]/div/div/form/table/tbody/tr[2]/td[2]/a
+samples.ajax.pub.3.lnk.juu.rem=//html/body/div[2]/div/div/div[2]/div[2]/div/div[2]/div/div/table/tbody/tr[2]/td[2]/div/div/form/table/tbody/tr/td[2]/a
+samples.ajax.pub.sub.2=//html/body/div[2]/div/div/div[2]/div[2]/div/div/div/div/table/tbody/tr[2]/td[2]/div/div/form/table/tbody/tr[3]/td/input
+samples.ajax.pub.sub.1=//input[@value='Update']
+samples.ajax.pub.div.3.bar=//html/body/div[2]/div/div/div[2]/div[2]/div/div[2]/div/div/table/tbody/tr[2]/td[2]/div/div/form/table/tbody/tr[2]/td[2]/input
+samples.ajax.pub.div.3.juu=//html/body/div[2]/div/div/div[2]/div[2]/div/div[2]/div/div/table/tbody/tr[2]/td[2]/div/div/form/table/tbody/tr/td[2]/input
+samples.ajax.pub.div.2.juu=juu
+samples.ajax.pub.div.2.foo=//html/body/div[2]/div/div/div[2]/div[2]/div/div/div/div/table/tbody/tr[2]/td[2]/div/div/form/table/tbody/tr/td[2]/input
+samples.ajax.pub.div.1.bar=bar
+samples.ajax.pub.div.1.foo=foo
+samples.ajax.pub.lnk=//ul[@id='tabsHeader']/li[4]/ul/li[12]/a
+samples.ajax.pevt.div.p3.max=//html/body/div[2]/div/div/div[2]/div[2]/div/div[3]/div/div/table/tbody/tr/td[2]/div/div[2]/span/a
+samples.ajax.pevt.div.p2.max=//html/body/div[2]/div/div/div[2]/div[2]/div/div[2]/div/div/table/tbody/tr/td[2]/div/div[2]/span/a
+samples.ajax.pevt.div.l3.max=//html/body/div[2]/div/div/div[2]/div/div/div[3]/div/div/table/tbody/tr/td[2]/div/div[2]/span/a
+samples.ajax.pevt.div.l2.max=//html/body/div[2]/div/div/div[2]/div/div/div[2]/div/div/table/tbody/tr/td[2]/div/div[2]/span/a
+samples.ajax.pevt.div.p3=//html/body/div[2]/div/div/div[2]/div[2]/div/div[3]/div/div/table/tbody/tr[2]/td[2]/div/div
+samples.ajax.pevt.div.p2=//html/body/div[2]/div/div/div[2]/div[2]/div/div[2]/div/div/table/tbody/tr[2]/td[2]/div/div
+samples.ajax.pevt.div.p1=//html/body/div[2]/div/div/div[2]/div[2]/div/div/div/div/table/tbody/tr[2]/td[2]/div/div
+samples.ajax.pevt.div.l3=//html/body/div[2]/div/div/div[2]/div/div/div[3]/div/div/table/tbody/tr[2]/td[2]/div/div
+samples.ajax.pevt.div.l2=//html/body/div[2]/div/div/div[2]/div/div/div[2]/div/div/table/tbody/tr[2]/td[2]/div/div
+samples.ajax.pevt.div.l1=//html/body/div[2]/div/div/div[2]/div/div/div/div/div/table/tbody/tr[2]/td[2]/div/div
+samples.ajax.pevt.lnk=//ul[@id='tabsHeader']/li[4]/ul/li[11]/a
+samples.ajax.mod.div.con=//html/body/div[2]/div/div/div[2]/div[2]/div/div/div/div/table/tbody/tr[2]/td[2]/div/div
+samples.ajax.mod.lnk=//ul[@id='tabsHeader']/li[4]/ul/li[10]/a
+samples.ajax.mpor.div.con=content-container
+samples.ajax.mpor.lnk=//ul[@id='tabsHeader']/li[4]/ul/li[9]/a
+samples.ajax.mins.div.con=content-container
+samples.ajax.mins.lnk=//ul[@id='tabsHeader']/li[4]/ul/li[8]/a
+samples.ajax.js.lnk.submit=link=submit
+samples.ajax.js.opt.3=//form[@id='jbpnsFormAutoSubmitPortletWindowsnpbj_the_form']/select/option[3]
+samples.ajax.js.opt.2=//form[@id='jbpnsFormAutoSubmitPortletWindowsnpbj_the_form']/select/option[2]
+samples.ajax.js.opt.1=//form[@id='jbpnsFormAutoSubmitPortletWindowsnpbj_the_form']/select/option[1]
+samples.ajax.js.lab.c=label=C
+samples.ajax.js.lab.b=label=B
+samples.ajax.js.lab.a=label=A
+samples.ajax.js.sel.letter=//select[@onclick=\"document.getElementById('jbpnsFormAutoSubmitPortletWindowsnpbj_the_form').submit()\"]
+samples.ajax.js.lnk=//ul[@id='tabsHeader']/li[4]/ul/li[7]/a
+samples.ajax.head.inp.content=Introducing-HeaderContentInput
+samples.ajax.head.div.content=Introducing-HeaderContent
+samples.ajax.head.lnk=//ul[@id='tabsHeader']/li[4]/ul/li[6]/a
+samples.ajax.exc.lnk.portlet=link=render PortletException
+samples.ajax.exc.lnk=//ul[@id='tabsHeader']/li[4]/ul/li[5]/a
+samples.ajax.evt.sub.color=//input[@type='submit']
+samples.ajax.evt.div.black=//html/body/div[2]/div/div/div[2]/div[2]/div/div[2]/div/div/table/tbody/tr[2]/td[2]/div/div/div[contains(@style,'black')]
+samples.ajax.evt.div.red=//html/body/div[2]/div/div/div[2]/div[2]/div/div[2]/div/div/table/tbody/tr[2]/td[2]/div/div/div[contains(@style,'red')]
+samples.ajax.evt.div.blue=//html/body/div[2]/div/div/div[2]/div[2]/div/div[2]/div/div/table/tbody/tr[2]/td[2]/div/div/div[contains(@style,'blue')]
+samples.ajax.evt.sel.lab.black=label=black
+samples.ajax.evt.sel.lab.red=label=red
+samples.ajax.evt.sel.lab.blue=label=blue
+samples.ajax.evt.sel.col=color
+samples.ajax.evt.lnk=//ul[@id='tabsHeader']/li[4]/ul/li[4]/a
+samples.ajax.enc.lnk=//ul[@id='tabsHeader']/li[4]/ul/li[3]/a
+samples.ajax.enc.inp.ren=text
+samples.ajax.enc.sub.act=//input[@value='Submit to action phase']
+samples.ajax.enc.inp.act=//html/body/div[2]/div/div/div[2]/div[2]/div/div/div/div/table/tbody/tr[2]/td[2]/div/div/div/form[2]/input
+samples.ajax.enc.textarea2=//html/body/div[2]/div/div/div[2]/div[2]/div/div/div/div/table/tbody/tr[2]/td[2]/div/div/div[5]/textarea
+samples.ajax.enc.textarea1=//textarea[@name='text']
+samples.ajax.char.all.sub.check=//html/body/div[2]/div/div/div[2]/div[2]/div/div/div/div/table/tbody/tr[2]/td[2]/div/div/div[8]/form/input[3]
+samples.ajax.char.inp.text.sub.check=//html/body/div[2]/div/div/div[2]/div[2]/div/div/div/div/table/tbody/tr[2]/td[2]/div/div/div[6]/form/input[4]
+samples.ajax.char.lnk.textarea.check=//input[@value='check']
+samples.ajax.char.inp.text=//input[@name='text']
+samples.ajax.char.textarea=text
+samples.ajax.char.sub.change=//input[@value='change']
+samples.ajax.char.inp.to=to
+samples.ajax.char.inp.from=from
+samples.ajax.char.lnk=//ul[@id='tabsHeader']/li[4]/ul/li[2]/a
+samples.ajax.cache.lnk=//ul[@id='tabsHeader']/li[4]/ul/li[1]/a
+samples.ajax.cache.lnk.2ren=//html/body/div[2]/div/div/div[2]/div[2]/div/div[2]/div/div/table/tbody/tr[2]/td[2]/div/div/div[5]/a
+samples.ajax.cache.lnk.2act=//html/body/div[2]/div/div/div[2]/div[2]/div/div[2]/div/div/table/tbody/tr[2]/td[2]/div/div/div[4]/a
+samples.ajax.cache.lnk.1ren=link=render
+samples.ajax.cache.lnk.1act=link=action
+samples.ajax.cache.div.2.render=//html/body/div[2]/div/div/div[2]/div[2]/div/div[2]/div/div/table/tbody/tr[2]/td[2]/div/div/div[2]/div
+samples.ajax.cache.div.1.render=//html/body/div[2]/div/div/div[2]/div[2]/div/div/div/div/table/tbody/tr[2]/td[2]/div/div/div[2]/div
Modified: branches/JBoss_Portal_Branch_2_7/testsuite/ui-tests/testng.xml
===================================================================
--- branches/JBoss_Portal_Branch_2_7/testsuite/ui-tests/testng.xml 2009-03-18 16:08:17 UTC (rev 13047)
+++ branches/JBoss_Portal_Branch_2_7/testsuite/ui-tests/testng.xml 2009-03-18 16:10:41 UTC (rev 13048)
@@ -88,6 +88,18 @@
<class name="org.jboss.portal.test.selenium.cms.CMSArchiveUploadTestCase"></class></classes>
</test>
+ <test name="org.jboss.portal.test.selenium.PortalSamplesTestCase"
+ verbose="2" annotations="JDK">
+ <classes>
+ <class name="org.jboss.portal.test.selenium.PortalSamplesTestCase"></class></classes>
+ </test>
+
+ <test name="org.jboss.portal.test.selenium.PortalAjaxSamplesTestCase"
+ verbose="2" annotations="JDK">
+ <classes>
+ <class name="org.jboss.portal.test.selenium.PortalAjaxSamplesTestCase"></class></classes>
+ </test>
+
<test name="org.jboss.portal.test.selenium.EndToEndBeaPortlet"
verbose="2" annotations="JDK">
<classes>
More information about the portal-commits
mailing list