[richfaces-svn-commits] JBoss Rich Faces SVN: r15871 - in branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test: java/org/jboss/richfaces/integrationTest/columns and 26 other directories.

richfaces-svn-commits at lists.jboss.org richfaces-svn-commits at lists.jboss.org
Thu Nov 12 07:07:04 EST 2009


Author: ppitonak at redhat.com
Date: 2009-11-12 07:07:03 -0500 (Thu, 12 Nov 2009)
New Revision: 15871

Modified:
   branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/java/org/jboss/richfaces/integrationTest/AbstractDataIterationTestCase.java
   branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/java/org/jboss/richfaces/integrationTest/columns/ColumnsTestCase.java
   branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/java/org/jboss/richfaces/integrationTest/dataFilterSlider/DataFilterSliderTestCase.java
   branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/java/org/jboss/richfaces/integrationTest/dataGrid/DataGridTestCase.java
   branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/java/org/jboss/richfaces/integrationTest/dataScroller/DataScrollerTestCase.java
   branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/java/org/jboss/richfaces/integrationTest/dataTable/ModifiableDataModelTestCase.java
   branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/java/org/jboss/richfaces/integrationTest/editor/AdvancedEditorTestCase.java
   branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/java/org/jboss/richfaces/integrationTest/extendedDataTable/AbstractExtendedDataTableTestCase.java
   branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/java/org/jboss/richfaces/integrationTest/extendedDataTable/DraggingTestCase.java
   branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/java/org/jboss/richfaces/integrationTest/extendedDataTable/FilteringTestCase.java
   branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/java/org/jboss/richfaces/integrationTest/extendedDataTable/GroupingTestCase.java
   branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/java/org/jboss/richfaces/integrationTest/extendedDataTable/SelectingTestCase.java
   branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/java/org/jboss/richfaces/integrationTest/extendedDataTable/SortingTestCase.java
   branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/java/org/jboss/richfaces/integrationTest/repeat/RepeatTestCase.java
   branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/java/org/jboss/richfaces/integrationTest/tableFiltering/TableFilteringTestCase.java
   branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/java/org/jboss/richfaces/integrationTest/tableSorting/TableSortingTestCase.java
   branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/java/org/jboss/richfaces/integrationTest/tree/TreeTestCase.java
   branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/resources/org/jboss/richfaces/integrationTest/ajaxValidator/locators.properties
   branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/resources/org/jboss/richfaces/integrationTest/beanValidator/locators.properties
   branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/resources/org/jboss/richfaces/integrationTest/columns/locators.properties
   branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/resources/org/jboss/richfaces/integrationTest/commandButton/locators.properties
   branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/resources/org/jboss/richfaces/integrationTest/commandLink/locators.properties
   branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/resources/org/jboss/richfaces/integrationTest/data-iteration--locators.properties
   branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/resources/org/jboss/richfaces/integrationTest/dataFilterSlider/locators.properties
   branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/resources/org/jboss/richfaces/integrationTest/dataGrid/locators.properties
   branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/resources/org/jboss/richfaces/integrationTest/dataList/locators.properties
   branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/resources/org/jboss/richfaces/integrationTest/dataScroller/locators.properties
   branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/resources/org/jboss/richfaces/integrationTest/dataTable/locators-DataTableTestCase.properties
   branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/resources/org/jboss/richfaces/integrationTest/dataTable/locators-EditTableWithModalPanelTestCase.properties
   branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/resources/org/jboss/richfaces/integrationTest/dataTable/locators-ExtendedDataModelTestCase.properties
   branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/resources/org/jboss/richfaces/integrationTest/dataTable/locators-ModifiableDataModelTestCase.properties
   branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/resources/org/jboss/richfaces/integrationTest/extendedDataTable/locators-DraggingTestCase.properties
   branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/resources/org/jboss/richfaces/integrationTest/extendedDataTable/locators-GroupingTestCase.properties
   branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/resources/org/jboss/richfaces/integrationTest/extendedDataTable/locators-SelectingTestCase.properties
   branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/resources/org/jboss/richfaces/integrationTest/extendedDataTable/locators-SortingTestCase.properties
   branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/resources/org/jboss/richfaces/integrationTest/extendedDataTable/locators.properties
   branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/resources/org/jboss/richfaces/integrationTest/repeat/locators.properties
   branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/resources/org/jboss/richfaces/integrationTest/tableFiltering/locators.properties
   branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/resources/org/jboss/richfaces/integrationTest/tableSorting/locators.properties
   branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/resources/org/jboss/richfaces/integrationTest/tree/messages.properties
Log:
* XPath locators replaced by jQuery locators
* removed one method from AdvancedEditorTestCase causing problem on non-UTF8 systems
* TreeTestCase partially reverted

Modified: branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/java/org/jboss/richfaces/integrationTest/AbstractDataIterationTestCase.java
===================================================================
--- branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/java/org/jboss/richfaces/integrationTest/AbstractDataIterationTestCase.java	2009-11-12 03:25:11 UTC (rev 15870)
+++ branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/java/org/jboss/richfaces/integrationTest/AbstractDataIterationTestCase.java	2009-11-12 12:07:03 UTC (rev 15871)
@@ -90,7 +90,7 @@
 	 */
 	protected void gotoPage(String button) {
 		final String previousPage = getActivePage().toString();
-
+		
 		if (previousPage.equals(selenium.getText(button))) {
 			return;
 		}
@@ -99,15 +99,14 @@
 				&& (LOC_BUTTON_FIRST_PAGE.equals(button) || LOC_BUTTON_PREVIOUS_PAGE.equals(button))) {
 			return;
 		}
-
+		
 		if (previousPage.equals(getLastVisiblePage().toString())
 				&& (LOC_BUTTON_LAST_PAGE.equals(button) || LOC_BUTTON_NEXT_PAGE.equals(button))) {
 			return;
 		}
-
 		// move to specified page
 		selenium.click(button);
-
+		
 		Wait.failWith("The page never changed as required").until(new Condition() {
 			public boolean isTrue() {
 				return !previousPage.equals(getActivePage().toString());
@@ -130,8 +129,8 @@
 	 * @return number of last page visible on page control
 	 */
 	protected Integer getLastVisiblePage() {
-		Number pages = selenium.getXpathCount(format(LOC_BUTTON_NUMBERED_PAGE_PREFORMATTED, 0));
-		String lastVisiblePage = selenium.getText(format(LOC_BUTTON_NUMBERED_PAGE_PREFORMATTED, pages));
+		Number pages = getJQueryCount(format(LOC_BUTTON_NUMBERED_PAGE_PREFORMATTED, -1)) - 6;
+		String lastVisiblePage = selenium.getText(format(LOC_BUTTON_NUMBERED_PAGE_PREFORMATTED, pages.intValue()));
 		return Integer.valueOf(lastVisiblePage);
 	}
 
@@ -178,7 +177,7 @@
 				gotoPage(LOC_BUTTON_NEXT_PAGE);
 			}
 
-			final int rows = selenium.getXpathCount(format(columnsPreformatted[0], 0)).intValue();
+			final int rows = getJQueryCount(format(columnsPreformatted[0], 0));
 			
 			assertTrue(rows > 0, "There must be at least one row in the table");
 

Modified: branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/java/org/jboss/richfaces/integrationTest/columns/ColumnsTestCase.java
===================================================================
--- branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/java/org/jboss/richfaces/integrationTest/columns/ColumnsTestCase.java	2009-11-12 03:25:11 UTC (rev 15870)
+++ branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/java/org/jboss/richfaces/integrationTest/columns/ColumnsTestCase.java	2009-11-12 12:07:03 UTC (rev 15871)
@@ -111,8 +111,8 @@
 	}
 
 	private String[][] getMapOfCells() {
-		final int columns = selenium.getXpathCount(format(LOC_TD_PREFORMATTED, 1, 0)).intValue();
-		final int rows = selenium.getXpathCount(format(LOC_TD_PREFORMATTED, 0, 1)).intValue();
+		final int columns = getJQueryCount(format(LOC_TD_PREFORMATTED, 1, 0));
+		final int rows = getJQueryCount(format(LOC_TD_PREFORMATTED, 0, 1));
 
 		String[][] map = new String[rows][columns];
 

Modified: branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/java/org/jboss/richfaces/integrationTest/dataFilterSlider/DataFilterSliderTestCase.java
===================================================================
--- branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/java/org/jboss/richfaces/integrationTest/dataFilterSlider/DataFilterSliderTestCase.java	2009-11-12 03:25:11 UTC (rev 15870)
+++ branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/java/org/jboss/richfaces/integrationTest/dataFilterSlider/DataFilterSliderTestCase.java	2009-11-12 12:07:03 UTC (rev 15871)
@@ -40,6 +40,7 @@
 public class DataFilterSliderTestCase extends AbstractDataIterationTestCase {
 
 	private final String LOC_FIELDSET_HEADER = getLoc("FIELDSET_HEADER");
+	private final String LOC_TABLE_ROWS = getLoc("TABLE_ROWS");
 	private final String LOC_TD_MILEAGE_PREFORMATTED = getLoc("TD_MILEAGE_PREFORMATTED");
 	private final String LOC_TD_BRAND_PREFORMATTED = getLoc("TD_BRAND_PREFORMATTED");
 	private final String LOC_LINK_BRAND_PREFORMATTED = getLoc("LINK_BRAND_PREFORMATTED");
@@ -124,7 +125,7 @@
 			}
 		});
 
-		for (int row = 1; row <= selenium.getXpathCount(format(LOC_TD_BRAND_PREFORMATTED, 0)).intValue(); row++) {
+		for (int row = 1; row <= getJQueryCount(LOC_TABLE_ROWS); row++) {
 			String rowBrand = selenium.getText(format(LOC_TD_BRAND_PREFORMATTED, row));
 
 			assertEquals(rowBrand, brand, "In all rows must be the defined brand");
@@ -140,9 +141,9 @@
 
 	private List<Integer> checkAllMileagesMaxAndReturnItsList(int maxMileage) {
 		List<Integer> list = new LinkedList<Integer>();
-
-		int rowCount = selenium.getXpathCount(format(LOC_TD_MILEAGE_PREFORMATTED, 0)).intValue();
-
+		
+		int rowCount = getJQueryCount(LOC_TABLE_ROWS);
+		
 		for (int row = 1; row <= rowCount; row++) {
 			int rowMileage = Double.valueOf(selenium.getText(format(LOC_TD_MILEAGE_PREFORMATTED, row))).intValue();
 
@@ -160,7 +161,7 @@
 	}
 
 	private void clickSliderAtPercent(double percent) {
-		final Number handlePosition = selenium.getElementPositionLeft(LOC_DIV_SLIDER_HANDLE);
+	    final Number handlePosition = selenium.getElementPositionLeft(LOC_DIV_SLIDER_HANDLE);
 
 		int width = selenium.getElementWidth(LOC_DIV_SLIDER_TRACK).intValue();
 		int height = selenium.getElementHeight(LOC_DIV_SLIDER_TRACK).intValue();

Modified: branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/java/org/jboss/richfaces/integrationTest/dataGrid/DataGridTestCase.java
===================================================================
--- branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/java/org/jboss/richfaces/integrationTest/dataGrid/DataGridTestCase.java	2009-11-12 03:25:11 UTC (rev 15870)
+++ branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/java/org/jboss/richfaces/integrationTest/dataGrid/DataGridTestCase.java	2009-11-12 12:07:03 UTC (rev 15871)
@@ -55,18 +55,17 @@
 			if (!cellTexts.isEmpty()) {
 				gotoPage(LOC_BUTTON_NEXT_PAGE);
 			}
+			
+			final int cellCount = getJQueryCount(format(LOC_TD_GRID_PREFORMATTED, 0, 0));
 
-			final int cellCount = selenium.getXpathCount(format(LOC_TD_GRID_PREFORMATTED, 0, 0)).intValue();
-
 			assertTrue(cellCount > 0 && cellCount <= MSG_COUNT_CELLS_PER_PAGE, format(
 					"There should be at least one cell per page (page {0}), but no more than {1}", page,
 					MSG_COUNT_CELLS_PER_PAGE));
 
-			int rowCount = selenium.getXpathCount(format(LOC_TD_GRID_PREFORMATTED, 0, 1)).intValue();
+			int rowCount = getJQueryCount(format(LOC_TD_GRID_PREFORMATTED, 0, 1));
 
 			for (int row = 1; row <= rowCount; row++) {
-				final int columnCount = selenium.getXpathCount(format(LOC_TD_GRID_PREFORMATTED, row, 0)).intValue();
-
+				final int columnCount = getJQueryCount(format(LOC_TD_GRID_PREFORMATTED, row, 0));
 				assertTrue(columnCount > 0 && columnCount <= MSG_COUNT_CELLS_PER_COLUMN, format(
 						"There should be at least one cell per column (page {0}), but no more than {1}", page,
 						MSG_COUNT_CELLS_PER_COLUMN));

Modified: branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/java/org/jboss/richfaces/integrationTest/dataScroller/DataScrollerTestCase.java
===================================================================
--- branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/java/org/jboss/richfaces/integrationTest/dataScroller/DataScrollerTestCase.java	2009-11-12 03:25:11 UTC (rev 15870)
+++ branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/java/org/jboss/richfaces/integrationTest/dataScroller/DataScrollerTestCase.java	2009-11-12 12:07:03 UTC (rev 15871)
@@ -49,7 +49,7 @@
 		String tableText = getTableText();
 
 		for (String page : MSG_LIST_OF_PAGES) {
-			gotoPage(format(LOC_BUTTON_NUMBERED_PAGE_PREFORMATTED, Integer.valueOf(page)));
+		    gotoPage(format(LOC_BUTTON_NUMBERED_PAGE_PREFORMATTED, Integer.valueOf(page)-1));
 
 			tableText = checkThatTextDiffersAndReturn(tableText);
 		}
@@ -74,7 +74,6 @@
 		gotoPage(format(LOC_BUTTON_NUMBERED_PAGE_PREFORMATTED, page));
 
 		selenium.refresh();
-
 		assertTrue(page.equals(getActivePage()));
 
 		// TODO cannot just do openPage

Modified: branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/java/org/jboss/richfaces/integrationTest/dataTable/ModifiableDataModelTestCase.java
===================================================================
--- branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/java/org/jboss/richfaces/integrationTest/dataTable/ModifiableDataModelTestCase.java	2009-11-12 03:25:11 UTC (rev 15870)
+++ branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/java/org/jboss/richfaces/integrationTest/dataTable/ModifiableDataModelTestCase.java	2009-11-12 12:07:03 UTC (rev 15871)
@@ -59,7 +59,7 @@
 		});
 
 		// check if keys on all pages are sorted in right way
-		final int pageCount = selenium.getXpathCount(format(LOC_BUTTON_NUMBERED_PAGE_PREFORMATTED, 0)).intValue();
+		final int pageCount = getJQueryCount(format(LOC_BUTTON_NUMBERED_PAGE_PREFORMATTED, 0));
 
 		String lastText = null; // remembers last cell text
 
@@ -76,7 +76,7 @@
 			});
 
 			// count how many rows (cells in one column) table have
-			final int cellCount = selenium.getXpathCount(format(LOC_TD_KEY_PREFORMATTED, 0)).intValue();
+			final int cellCount = getJQueryCount(format(LOC_TD_KEY_PREFORMATTED, 0));
 
 			// checks that columns are correctly sorted
 			for (int row = 1; row <= cellCount; row++) {
@@ -113,12 +113,12 @@
 		});
 
 		// check how many pages should be displayed
-		String pageCount = selenium.getXpathCount(format(LOC_BUTTON_NUMBERED_PAGE_PREFORMATTED, 0)).toString();
-		assertEquals(pageCount, MSG_COUNT_ASSIGNEE_PAGES);
+		int pageCount = getJQueryCount(format(LOC_BUTTON_NUMBERED_PAGE_PREFORMATTED, 0));
+		assertEquals(pageCount, Integer.parseInt(MSG_COUNT_ASSIGNEE_PAGES));
 
 		// checks how many columns should be displayed
-		String cellCount = selenium.getXpathCount(format(LOC_TD_KEY_PREFORMATTED, 0)).toString();
-		assertEquals(cellCount, MSG_COUNT_ASSIGNEE_ROWS);
+		int cellCount = getJQueryCount(format(LOC_TD_KEY_PREFORMATTED, 0));
+		assertEquals(cellCount, Integer.parseInt(MSG_COUNT_ASSIGNEE_ROWS));
 
 		// checks that assignee column contains assignee name
 		String assigneeName = selenium.getText(LOC_TD_ASSIGNEE_PREFORMATTED);

Modified: branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/java/org/jboss/richfaces/integrationTest/editor/AdvancedEditorTestCase.java
===================================================================
--- branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/java/org/jboss/richfaces/integrationTest/editor/AdvancedEditorTestCase.java	2009-11-12 03:25:11 UTC (rev 15870)
+++ branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/java/org/jboss/richfaces/integrationTest/editor/AdvancedEditorTestCase.java	2009-11-12 12:07:03 UTC (rev 15871)
@@ -141,8 +141,8 @@
     private final String LOC_ADV_IMAGE_DLG_VSPACE = getLoc("ADV_IMAGE_DLG_VSPACE");
     private final String LOC_ADV_IMAGE_DLG_HSPACE = getLoc("ADV_IMAGE_DLG_HSPACE");
     private final String LOC_ADV_IMAGE_DLG_INSERT_BUTTON = getLoc("ADV_IMAGE_DLG_INSERT_BUTTON");
-    private final String LOC_ADV_CUSTOM_CHAR_BUTTON = getLoc("ADV_CUSTOM_CHAR_BUTTON");
-    private final String LOC_ADV_CUSTOM_CHAR_DLG_M_N = getLoc("ADV_CUSTOM_CHAR_DLG_M_N");
+//    private final String LOC_ADV_CUSTOM_CHAR_BUTTON = getLoc("ADV_CUSTOM_CHAR_BUTTON");
+//    private final String LOC_ADV_CUSTOM_CHAR_DLG_M_N = getLoc("ADV_CUSTOM_CHAR_DLG_M_N");
 
     /**
      * Tests the bold button. It types "aaaa", presses enter followed by the

Modified: branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/java/org/jboss/richfaces/integrationTest/extendedDataTable/AbstractExtendedDataTableTestCase.java
===================================================================
--- branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/java/org/jboss/richfaces/integrationTest/extendedDataTable/AbstractExtendedDataTableTestCase.java	2009-11-12 03:25:11 UTC (rev 15870)
+++ branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/java/org/jboss/richfaces/integrationTest/extendedDataTable/AbstractExtendedDataTableTestCase.java	2009-11-12 12:07:03 UTC (rev 15871)
@@ -23,7 +23,6 @@
 
 import org.jboss.richfaces.integrationTest.AbstractDataIterationTestCase;
 import org.jboss.test.selenium.waiting.Condition;
-import org.jboss.test.selenium.waiting.Wait;
 import org.testng.annotations.BeforeMethod;
 
 /**
@@ -36,8 +35,12 @@
 	protected final String LOC_TH_CAPITAL = getLoc("TH_CAPITAL");
 	protected final String LOC_TH_TIME_ZONE = getLoc("TH_TIME_ZONE");
 	protected final String LOC_TH_FLAG = getLoc("TH_FLAG");
-	protected final String LOC_TH_RELATIVE = getLoc("TH_RELATIVE");
-	protected final String LOC_TD_PREFORMATTED = getLoc("TD_PREFORMATTED");
+	
+    protected final String LOC_SPAN_STATE = getLoc("SPAN_STATE");
+    protected final String LOC_SPAN_CAPITAL = getLoc("SPAN_CAPITAL");
+    protected final String LOC_SPAN_TIME_ZONE = getLoc("SPAN_TIME_ZONE");
+    
+    protected final String LOC_TD_PREFORMATTED = getLoc("TD_PREFORMATTED");
 	private final String LOC_TABLE_EXTENDED = getLoc("TABLE_EXTENDED");
 	private final String LOC_DIV_SPLASH_SCREEN = getLoc("DIV_SPLASH_SCREEN");
 	private final String LOC_INPUT_COLUMN_FILTER = getLoc("INPUT_COLUMN_FILTER");
@@ -92,7 +95,7 @@
 	 * @return the actual position (sequence) of column in table
 	 */
 	protected int getColumnIndex(String columnHeader) {
-		return 1 + selenium.getElementIndex(format(LOC_TH_RELATIVE, columnHeader)).intValue();
+	    return 1 + selenium.getElementIndex(columnHeader).intValue();
 	}
 
 	/**
@@ -108,8 +111,9 @@
 	protected String preformatColumn(String columnHeader) {
 		int columnIndex = getColumnIndex(columnHeader);
 		String columnPreformatted = format(LOC_TD_PREFORMATTED, Integer.MAX_VALUE, columnIndex);
-		return columnPreformatted.replaceFirst(format("\\[{0,number}\\]", Integer.MAX_VALUE), "{0,choice,0#|1#[{0}]}");
-	}
+		columnPreformatted = columnPreformatted.replaceFirst(format(":nth-child\\({0}\\)", Integer.MAX_VALUE), "{0,choice,0#|1#:nth-child({0})}");
+		return columnPreformatted;
+    }
 
 	/**
 	 * Preformat filtering input's locator for column given by its columnHeader

Modified: branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/java/org/jboss/richfaces/integrationTest/extendedDataTable/DraggingTestCase.java
===================================================================
--- branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/java/org/jboss/richfaces/integrationTest/extendedDataTable/DraggingTestCase.java	2009-11-12 03:25:11 UTC (rev 15870)
+++ branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/java/org/jboss/richfaces/integrationTest/extendedDataTable/DraggingTestCase.java	2009-11-12 12:07:03 UTC (rev 15871)
@@ -37,11 +37,8 @@
  */
 public class DraggingTestCase extends AbstractExtendedDataTableTestCase {
 
-	private final String LOC_DIV_DROP_ZONE_LEFT_RELATIVE = getLoc("DIV_DROP_ZONE_LEFT_RELATIVE");
-	private final String LOC_DIV_DROP_ZONE_STATE = format(LOC_DIV_DROP_ZONE_LEFT_RELATIVE, LOC_TH_STATE);
-	private final String LOC_DIV_DROP_ZONE_RIGHT_RELATIVE = getLoc("DIV_DROP_ZONE_RIGHT_RELATIVE");
-	private final String LOC_DIV_DROP_ZONE_CAPITAL = format(LOC_DIV_DROP_ZONE_RIGHT_RELATIVE, LOC_TH_CAPITAL);
-	private final String LOC_COLUMN_TO_ITS_CONTENT_RELATIVE = getLoc("COLUMN_TO_ITS_CONTENT_RELATIVE");
+	private final String LOC_DIV_DROP_ZONE_STATE = format(getLoc("DIV_DROP_ZONE_LEFT_RELATIVE"), LOC_TH_STATE);
+	private final String LOC_DIV_DROP_ZONE_CAPITAL = format(getLoc("DIV_DROP_ZONE_RIGHT_RELATIVE"), LOC_TH_CAPITAL);
 	private final String LOC_IMAGE_SRC_FLAG_PREFORMATTED = getLoc("IMAGE_SRC_FLAG_PREFORMATTED");
 	private final String[] LOC_TH_DRAGGING_TESTS = new String[] { LOC_TH_STATE, LOC_TH_CAPITAL, LOC_TH_FLAG,
 			LOC_TH_TIME_ZONE };
@@ -67,30 +64,28 @@
 		waitForSplash();
 
 		int associationHash = getAssociationMap().hashCode();
-
+		
 		// sort by capital
 		selenium.click(LOC_TH_CAPITAL);
 		waitForSplash();
-
+		
 		assertEquals(associationHash, getAssociationMap().hashCode());
-
+		
 		// change column order - drag timezone column to state
-		new Drag(selenium, LOC_TH_TIME_ZONE, LOC_DIV_DROP_ZONE_STATE).drop();
+		new Drag(selenium, LOC_SPAN_TIME_ZONE, LOC_DIV_DROP_ZONE_STATE).drop();
 		waitForSplash();
-
+		
 		assertEquals(associationHash, getAssociationMap().hashCode());
-
 		assertEquals(getColumnIndex(LOC_TH_FLAG), 1);
 		assertEquals(getColumnIndex(LOC_TH_TIME_ZONE), 2);
 		assertEquals(getColumnIndex(LOC_TH_STATE), 3);
 		assertEquals(getColumnIndex(LOC_TH_CAPITAL), 4);
-
+		
 		// change column order - drag state column to capital
-		new Drag(selenium, LOC_TH_STATE, LOC_DIV_DROP_ZONE_CAPITAL).drop();
+		new Drag(selenium, LOC_SPAN_STATE, LOC_DIV_DROP_ZONE_CAPITAL).drop();
 		waitForSplash();
 
 		assertEquals(associationHash, getAssociationMap().hashCode());
-
 		assertEquals(getColumnIndex(LOC_TH_FLAG), 1);
 		assertEquals(getColumnIndex(LOC_TH_TIME_ZONE), 2);
 		assertEquals(getColumnIndex(LOC_TH_CAPITAL), 3);
@@ -110,13 +105,13 @@
 			}
 		}.transform(LOC_TH_DRAGGING_TESTS);
 
-		int rows = selenium.getXpathCount(format(columnsPreformatted[0], 0)).intValue();
-
+		int rows = getJQueryCount(format(columnsPreformatted[0], 0));
+		
 		for (int row = 1; row <= rows; row++) {
-			String key = selenium.getText(format(columnsPreformatted[0], row));
+		    String key = selenium.getText(format(columnsPreformatted[0], row));
 			Vector<String> values = new Vector<String>(columnsPreformatted.length - 1);
 			for (int column = 1; column < columnsPreformatted.length; column++) {
-				String columnsContentDiv = format(LOC_COLUMN_TO_ITS_CONTENT_RELATIVE, columnsPreformatted[column]);
+				String columnsContentDiv = columnsPreformatted[column];
 				String value = getImgSrcOrText(format(columnsContentDiv, row));
 				values.add(column - 1, value);
 			}

Modified: branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/java/org/jboss/richfaces/integrationTest/extendedDataTable/FilteringTestCase.java
===================================================================
--- branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/java/org/jboss/richfaces/integrationTest/extendedDataTable/FilteringTestCase.java	2009-11-12 03:25:11 UTC (rev 15870)
+++ branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/java/org/jboss/richfaces/integrationTest/extendedDataTable/FilteringTestCase.java	2009-11-12 12:07:03 UTC (rev 15871)
@@ -76,7 +76,7 @@
 		String statePrefix = selenium.getValue(inputFilterState);
 		String capitalPrefix = selenium.getValue(inputFilterCapital);
 
-		int rows = selenium.getXpathCount(format(cellsState, 0)).intValue();
+		int rows = getJQueryCount(format(cellsState, 0));
 
 		for (int row = 1; row <= rows; row++) {
 			if (statePrefix.length() > 0) {

Modified: branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/java/org/jboss/richfaces/integrationTest/extendedDataTable/GroupingTestCase.java
===================================================================
--- branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/java/org/jboss/richfaces/integrationTest/extendedDataTable/GroupingTestCase.java	2009-11-12 03:25:11 UTC (rev 15870)
+++ branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/java/org/jboss/richfaces/integrationTest/extendedDataTable/GroupingTestCase.java	2009-11-12 12:07:03 UTC (rev 15871)
@@ -35,8 +35,7 @@
 	private final String LOC_MENU_ITEM_GROUP_BY_COLUMN = getLoc("MENU_ITEM_GROUP_BY_COLUMN");
 	private final String LOC_TD_GROUP_PREFORMATTED = getLoc("TD_GROUP_PREFORMATTED");
 	private final String LOC_TR_PREFORMATTED = getLoc("TR_PREFORMATTED");
-	private final String LOC_COLUMN_HEADER = format(LOC_TH_RELATIVE, LOC_TH_STATE);
-	private final String LOC_BUTTON_MENU = format(LOC_DIV_CONTEXT_MENU_FOR_COLUMN_RELATIVE, LOC_COLUMN_HEADER);
+	private final String LOC_BUTTON_MENU = format(LOC_DIV_CONTEXT_MENU_FOR_COLUMN_RELATIVE, LOC_TH_STATE);
 
 	private final String MSG_TR_CLASS = getMsg("TR_CLASS");
 
@@ -47,30 +46,27 @@
 	@Test
 	public void testGrouping() {
 		// use grouping by state
-		selenium.fireEvent(LOC_COLUMN_HEADER, Event.MOUSEOVER);
+		selenium.fireEvent(LOC_TH_STATE, Event.MOUSEOVER);
 		selenium.clickAt(LOC_BUTTON_MENU, "1,1");
 
 		waitForElement(LOC_MENU_ITEM_GROUP_BY_COLUMN);
 		selenium.click(LOC_MENU_ITEM_GROUP_BY_COLUMN);
 		waitForSplash();
-
-		final int rows = selenium.getXpathCount(format(LOC_TR_PREFORMATTED, 0)).intValue();
+		
+		final int rows = getJQueryCount(format(LOC_TR_PREFORMATTED, 0)) -1;
+		
 		String expectedGroup = null;
 
-		for (int row = 1, group = 0, tabular = 0; row <= rows; row++) {
-			if (belongsClass(MSG_TR_CLASS, format(LOC_TR_PREFORMATTED, row))) {
+		for (int row = 1; row <= rows; row++) {
+		    if (belongsClass(MSG_TR_CLASS, format(LOC_TR_PREFORMATTED, row))) {
 				// table row is type group
-				group++;
-
-				expectedGroup = selenium.getText(format(LOC_TD_GROUP_PREFORMATTED, group));
+				expectedGroup = selenium.getText(format(LOC_TD_GROUP_PREFORMATTED, row)).replace("State Name: ", "").replace("(1)", "");
 			} else {
 				// table row is regular data row
-				tabular++;
-
 				assertNotNull(expectedGroup, format("First row in grouped table has to belong to class '{0}'",
 						MSG_TR_CLASS));
 
-				String actualGroup = selenium.getText(format(preformatColumn(LOC_COLUMN_HEADER), tabular));
+				String actualGroup = selenium.getText(format(preformatColumn(LOC_TH_STATE), row));
 
 				assertEquals(actualGroup, expectedGroup, format("Cell ('{0}', row {1}) doesn't belong to group '{2}'",
 						actualGroup, row, expectedGroup));

Modified: branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/java/org/jboss/richfaces/integrationTest/extendedDataTable/SelectingTestCase.java
===================================================================
--- branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/java/org/jboss/richfaces/integrationTest/extendedDataTable/SelectingTestCase.java	2009-11-12 03:25:11 UTC (rev 15870)
+++ branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/java/org/jboss/richfaces/integrationTest/extendedDataTable/SelectingTestCase.java	2009-11-12 12:07:03 UTC (rev 15871)
@@ -24,6 +24,7 @@
 import org.apache.commons.lang.ArrayUtils;
 import org.apache.commons.lang.StringUtils;
 import org.jboss.test.selenium.waiting.Condition;
+import org.jboss.test.selenium.waiting.Wait;
 import org.testng.annotations.Test;
 
 /**
@@ -32,151 +33,159 @@
  */
 public class SelectingTestCase extends AbstractExtendedDataTableTestCase {
 
-	private final String LOC_TR_SELECTED = getLoc("TR_SELECTED");
-	private final String LOC_SELECT_SELECTION_MODE = getLoc("SELECT_SELECTION_MODE");
+    private final String LOC_TR_SELECTED = getLoc("TR_SELECTED");
+    private final String LOC_SELECT_SELECTION_MODE = getLoc("SELECT_SELECTION_MODE");
 
-	private final String MSG_OPTION_SELECTION_NONE = getMsg("OPTION_SELECTION_NONE");
-	private final String MSG_OPTION_SELECTION_SINGLE = getMsg("OPTION_SELECTION_SINGLE");
-	private final String MSG_OPTION_SELECTION_MULTI = getMsg("OPTION_SELECTION_MULTI");
-	private final String MSG_INPUT_SINGLE_ROW = getMsg("INPUT_SINGLE_ROW");
-	private final String MSG_INPUT_MULTIPLE_ROWS = getMsg("INPUT_MULTIPLE_ROWS");
-	private final String MSG_OUTPUT_MODE_NONE = getMsg("OUTPUT_MODE_NONE");
-	private final String MSG_OUTPUT_SINGLE_ROW_IN_SINGLE_MODE = getMsg("OUTPUT_SINGLE_ROW_IN_SINGLE_MODE");
-	private final String MSG_OUTPUT_MULTIPLE_ROWS_IN_SINGLE_MODE = getMsg("OUTPUT_MULTIPLE_ROWS_IN_SINGLE_MODE");
-	private final String MSG_OUTPUT_SINGLE_ROW_IN_MULTI_MODE = getMsg("OUTPUT_SINGLE_ROW_IN_MULTI_MODE");
-	private final String MSG_OUTPUT_MULTIPLE_ROWS_IN_MULTI_MODE = getMsg("OUTPUT_MULTIPLE_ROWS_IN_MULTI_MODE");
+    private final String MSG_OPTION_SELECTION_NONE = getMsg("OPTION_SELECTION_NONE");
+    private final String MSG_OPTION_SELECTION_SINGLE = getMsg("OPTION_SELECTION_SINGLE");
+    private final String MSG_OPTION_SELECTION_MULTI = getMsg("OPTION_SELECTION_MULTI");
+    private final String MSG_INPUT_SINGLE_ROW = getMsg("INPUT_SINGLE_ROW");
+    private final String MSG_INPUT_MULTIPLE_ROWS = getMsg("INPUT_MULTIPLE_ROWS");
+    private final String MSG_OUTPUT_MODE_NONE = getMsg("OUTPUT_MODE_NONE");
+    private final String MSG_OUTPUT_SINGLE_ROW_IN_SINGLE_MODE = getMsg("OUTPUT_SINGLE_ROW_IN_SINGLE_MODE");
+    private final String MSG_OUTPUT_MULTIPLE_ROWS_IN_SINGLE_MODE = getMsg("OUTPUT_MULTIPLE_ROWS_IN_SINGLE_MODE");
+    private final String MSG_OUTPUT_SINGLE_ROW_IN_MULTI_MODE = getMsg("OUTPUT_SINGLE_ROW_IN_MULTI_MODE");
+    private final String MSG_OUTPUT_MULTIPLE_ROWS_IN_MULTI_MODE = getMsg("OUTPUT_MULTIPLE_ROWS_IN_MULTI_MODE");
 
-	/**
-	 * Checks single and multiple selection in selection-mode "none". Checks
-	 * that no rows will select.
-	 */
-	@Test
-	public void testSelectionModeNone() {
-		selectMode(LOC_SELECT_SELECTION_MODE, MSG_OPTION_SELECTION_NONE);
+    private static int rows = -1;
 
-		int[] rows, selectedRows;
+    /**
+     * Checks single and multiple selection in selection-mode "none". Checks
+     * that no rows will select.
+     */
+    @Test
+    public void testSelectionModeNone() {
+        selectMode(LOC_SELECT_SELECTION_MODE, MSG_OPTION_SELECTION_NONE);
 
-		rows = getRowSelection(MSG_INPUT_SINGLE_ROW);
-		multiSelection(rows);
-		selectedRows = getRowSelection(MSG_OUTPUT_MODE_NONE);
-		checkSelection(selectedRows);
+        int[] rows, selectedRows;
 
-		loadPage();
+        rows = getRowSelection(MSG_INPUT_SINGLE_ROW);
+        multiSelection(rows);
+        selectedRows = getRowSelection(MSG_OUTPUT_MODE_NONE);
+        checkSelection(selectedRows);
 
-		selectMode(LOC_SELECT_SELECTION_MODE, MSG_OPTION_SELECTION_NONE);
+        loadPage();
 
-		rows = getRowSelection(MSG_INPUT_MULTIPLE_ROWS);
-		multiSelection(rows);
-		selectedRows = getRowSelection(MSG_OUTPUT_MODE_NONE);
-		checkSelection(selectedRows);
-	}
+        selectMode(LOC_SELECT_SELECTION_MODE, MSG_OPTION_SELECTION_NONE);
 
-	/**
-	 * Checks single and multiple row selection in selection-mode "single".
-	 * Checks that only first selected row is selected right.
-	 */
-	@Test
-	public void testSelectionModeSingle() {
-		selectMode(LOC_SELECT_SELECTION_MODE, MSG_OPTION_SELECTION_SINGLE);
+        rows = getRowSelection(MSG_INPUT_MULTIPLE_ROWS);
+        multiSelection(rows);
+        selectedRows = getRowSelection(MSG_OUTPUT_MODE_NONE);
+        checkSelection(selectedRows);
+    }
 
-		int[] rows, selectedRows;
+    /**
+     * Checks single and multiple row selection in selection-mode "single".
+     * Checks that only first selected row is selected right.
+     */
+    @Test
+    public void testSelectionModeSingle() {
+        selectMode(LOC_SELECT_SELECTION_MODE, MSG_OPTION_SELECTION_SINGLE);
 
-		rows = getRowSelection(MSG_INPUT_SINGLE_ROW);
-		multiSelection(rows);
-		selectedRows = getRowSelection(MSG_OUTPUT_SINGLE_ROW_IN_SINGLE_MODE);
-		checkSelection(selectedRows);
+        int[] rows, selectedRows;
 
-		loadPage();
+        rows = getRowSelection(MSG_INPUT_SINGLE_ROW);
+        multiSelection(rows);
+        selectedRows = getRowSelection(MSG_OUTPUT_SINGLE_ROW_IN_SINGLE_MODE);
+        checkSelection(selectedRows);
 
-		selectMode(LOC_SELECT_SELECTION_MODE, MSG_OPTION_SELECTION_SINGLE);
+        loadPage();
 
-		rows = getRowSelection(MSG_INPUT_MULTIPLE_ROWS);
-		multiSelection(rows);
-		selectedRows = getRowSelection(MSG_OUTPUT_MULTIPLE_ROWS_IN_SINGLE_MODE);
-		checkSelection(selectedRows);
-	}
+        selectMode(LOC_SELECT_SELECTION_MODE, MSG_OPTION_SELECTION_SINGLE);
 
-	/**
-	 * Checks single and multiple row selection in selection-mode "multi".
-	 * Checks that all selected rows will be selected right.
-	 */
-	@Test
-	public void testSelectionModeMulti() {
-		selectMode(LOC_SELECT_SELECTION_MODE, MSG_OPTION_SELECTION_MULTI);
+        rows = getRowSelection(MSG_INPUT_MULTIPLE_ROWS);
+        multiSelection(rows);
+        selectedRows = getRowSelection(MSG_OUTPUT_MULTIPLE_ROWS_IN_SINGLE_MODE);
+        checkSelection(selectedRows);
+    }
 
-		int[] rows, selectedRows;
+    /**
+     * Checks single and multiple row selection in selection-mode "multi".
+     * Checks that all selected rows will be selected right.
+     */
+    @Test
+    public void testSelectionModeMulti() {
+        selectMode(LOC_SELECT_SELECTION_MODE, MSG_OPTION_SELECTION_MULTI);
 
-		rows = getRowSelection(MSG_INPUT_SINGLE_ROW);
-		multiSelection(rows);
-		selectedRows = getRowSelection(MSG_OUTPUT_SINGLE_ROW_IN_MULTI_MODE);
-		checkSelection(selectedRows);
+        int[] rows, selectedRows;
 
-		loadPage();
+        rows = getRowSelection(MSG_INPUT_SINGLE_ROW);
+        multiSelection(rows);
+        selectedRows = getRowSelection(MSG_OUTPUT_SINGLE_ROW_IN_MULTI_MODE);
+        checkSelection(selectedRows);
 
-		selectMode(LOC_SELECT_SELECTION_MODE, MSG_OPTION_SELECTION_MULTI);
+        loadPage();
 
-		rows = getRowSelection(MSG_INPUT_MULTIPLE_ROWS);
-		multiSelection(rows);
-		selectedRows = getRowSelection(MSG_OUTPUT_MULTIPLE_ROWS_IN_MULTI_MODE);
-		checkSelection(selectedRows);
-	}
+        selectMode(LOC_SELECT_SELECTION_MODE, MSG_OPTION_SELECTION_MULTI);
 
-	private void checkSelection(int[] rows) {
-		checkSelection(rows, true);
-		checkSelection(rows, false);
-	}
+        rows = getRowSelection(MSG_INPUT_MULTIPLE_ROWS);
+        multiSelection(rows);
+        selectedRows = getRowSelection(MSG_OUTPUT_MULTIPLE_ROWS_IN_MULTI_MODE);
+        checkSelection(selectedRows);
+    }
 
-	private void multiSelection(int[] rows) {
-		int column = 2;
+    private void checkSelection(int[] selectedRows) {
+        if (rows == -1) {
+            rows = getJQueryCount(LOC_TR_SELECTED);
+        }
 
-		for (int i = 0; i < rows.length; i++) {
-			final int row = rows[i];
-			String cell = format(LOC_TD_PREFORMATTED, row, column);
+        int[] notSelectedRows = new int[rows];
 
-			if (i > 0) {
-				selenium.controlKeyDown();
-			}
+        // create an array with all rows
+        for (int i = 0; i < rows; i++) {
+            notSelectedRows[i] = i + 1;
+        }
 
-			selenium.click(cell);
+        // create an array with not selected rows
+        for (int row : selectedRows) {
+            notSelectedRows = ArrayUtils.removeElement(notSelectedRows, row);
+        }
 
-			if (i > 0) {
-				selenium.controlKeyUp();
-			}
-		}
-	}
+        for (final int row : selectedRows) {
+            Wait.timeout(3000).interval(100).failWith(format("Row nr. {0} should be selected.", row)).until(
+                    new Condition() {
+                        public boolean isTrue() {
+                            return selenium.isElementPresent(format(LOC_TR_SELECTED, row));
+                        }
+                    });
+        }
+        for (final int row : notSelectedRows) {
+            Wait.timeout(3000).interval(100).failWith(format("Row nr. {0} should not be selected.", row)).until(
+                    new Condition() {
+                        public boolean isTrue() {
+                            return !selenium.isElementPresent(format(LOC_TR_SELECTED, row));
+                        }
+                    });
+        }
+    }
 
-	private void checkSelection(int[] rows, boolean positiveComparison) {
+    private void multiSelection(int[] rows) {
+        int column = 2;
 
-		final String condition;
+        for (int i = 0; i < rows.length; i++) {
+            final int row = rows[i];
+            String cell = format(LOC_TD_PREFORMATTED, row, column);
 
-		if (rows.length == 0) {
-			condition = "";
-		} else {
-			String comparison = (positiveComparison) ? "position()=" : "position()!=";
-			String conjuction = (positiveComparison) ? " or " : " and ";
-			condition = " and (" + comparison + StringUtils.join(ArrayUtils.toObject(rows), conjuction + comparison)
-					+ ")";
-		}
+            if (i > 0) {
+                selenium.controlKeyDown();
+            }
 
-		final int expectedCount = (positiveComparison) ? rows.length : 0;
+            selenium.click(cell);
 
-		waitGuiInteraction.timeout(2000).failWith(
-				"In spite of waiting for GUI rendering finish there is wrong number of selected rows").until(
-				new Condition() {
-					public boolean isTrue() {
-						return expectedCount == selenium.getXpathCount(format(LOC_TR_SELECTED, condition)).intValue();
-					}
-				});
-	}
+            if (i > 0) {
+                selenium.controlKeyUp();
+            }
+        }
+    }
 
-	private int[] getRowSelection(String message) {
-		String[] tokens = StringUtils.splitPreserveAllTokens(message, ',');
-		int[] rows = new int[tokens.length];
+    private int[] getRowSelection(String message) {
+        String[] tokens = StringUtils.splitPreserveAllTokens(message, ',');
+        int[] rows = new int[tokens.length];
 
-		for (int i = 0; i < tokens.length; i++) {
-			rows[i] = Integer.valueOf(tokens[i]);
-		}
+        for (int i = 0; i < tokens.length; i++) {
+            rows[i] = Integer.valueOf(tokens[i]);
+        }
 
-		return rows;
-	}
+        return rows;
+    }
 }

Modified: branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/java/org/jboss/richfaces/integrationTest/extendedDataTable/SortingTestCase.java
===================================================================
--- branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/java/org/jboss/richfaces/integrationTest/extendedDataTable/SortingTestCase.java	2009-11-12 03:25:11 UTC (rev 15870)
+++ branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/java/org/jboss/richfaces/integrationTest/extendedDataTable/SortingTestCase.java	2009-11-12 12:07:03 UTC (rev 15871)
@@ -31,6 +31,7 @@
 public class SortingTestCase extends AbstractExtendedDataTableTestCase {
 
 	private final String[] LOC_TH_SORTING_TESTS = new String[] { LOC_TH_STATE, LOC_TH_CAPITAL };
+	private final String[] LOC_TH_LABELS = new String[] { LOC_SPAN_STATE, LOC_SPAN_CAPITAL };
 	private final String LOC_SELECT_SORT_MODE = getLoc("SELECT_SORT_MODE");
 	
 	private final String MSG_OPTION_SORT_SINGLE = getMsg("OPTION_SORT_SINGLE");
@@ -46,8 +47,10 @@
 
 		for (String columnHeader : LOC_TH_SORTING_TESTS) {
 			// two iterations -- one for ascending and one for descending order
+		    String columnText = columnHeader.equals(LOC_TH_STATE) ? LOC_SPAN_STATE : LOC_SPAN_CAPITAL;
+		    
 			for (int i = 0; i < 2; i++) {
-				selenium.click(columnHeader);
+				selenium.click(columnText);
 				waitForSplash();
 
 				String columnPreformatted = preformatColumn(columnHeader);
@@ -71,12 +74,12 @@
 
 		// two iterations -- one for ascending and one for descending order
 		for (int i = 0; i < 2; i++) {
-			selenium.click(LOC_TH_SORTING_TESTS[0]);
+			selenium.click(LOC_TH_LABELS[0]);
 			waitForSplash();
-
+			
 			// two iterations -- one for ascending and one for descending order
 			for (int j = 0; j < 2; j++) {
-				selenium.click(LOC_TH_SORTING_TESTS[1]);
+				selenium.click(LOC_TH_LABELS[1]);
 				waitForSplash();
 
 				checkSortingForColumnOrder(columnsPreformatted);

Modified: branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/java/org/jboss/richfaces/integrationTest/repeat/RepeatTestCase.java
===================================================================
--- branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/java/org/jboss/richfaces/integrationTest/repeat/RepeatTestCase.java	2009-11-12 03:25:11 UTC (rev 15870)
+++ branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/java/org/jboss/richfaces/integrationTest/repeat/RepeatTestCase.java	2009-11-12 12:07:03 UTC (rev 15871)
@@ -48,7 +48,7 @@
 	 */
 	@Test
 	public void functionalTest() {
-		int rows = selenium.getXpathCount(format(LOC_INPUT_PROPOSED_PRICE_PREFORMATTED, 0)).intValue();
+		int rows = getJQueryCount(format(LOC_INPUT_PROPOSED_PRICE_PREFORMATTED, 0));
 
 		String[] grossMargins = new String[rows];
 
@@ -86,7 +86,7 @@
 			}
 
 			// select some option in reason
-			int options = selenium.getXpathCount(locSelectReason + "/*[@value]").intValue();
+			int options = getJQueryCount(locSelectReason + "/*[@value]");
 			assertTrue(options > 0);
 			selenium.select(locSelectReason, format("index={0}", row % options));
 

Modified: branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/java/org/jboss/richfaces/integrationTest/tableFiltering/TableFilteringTestCase.java
===================================================================
--- branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/java/org/jboss/richfaces/integrationTest/tableFiltering/TableFilteringTestCase.java	2009-11-12 03:25:11 UTC (rev 15870)
+++ branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/java/org/jboss/richfaces/integrationTest/tableFiltering/TableFilteringTestCase.java	2009-11-12 12:07:03 UTC (rev 15871)
@@ -141,7 +141,7 @@
 		String statePrefix = selenium.getValue(LOC_INPUT_STATE);
 		String capitalPrefix = selenium.getValue(LOC_INPUT_CAPITAL);
 
-		int rows = selenium.getXpathCount(format(LOC_TD_STATE_PREFORMATTED, 0)).intValue();
+		int rows = getJQueryCount(format(LOC_TD_STATE_PREFORMATTED, 0));
 
 		for (int row = 1; row <= rows; row++) {
 			if (statePrefix.length() > 0) {
@@ -159,7 +159,7 @@
 		String statePrefix = selenium.getValue(LOC_INPUT_STATE);
 		String selectedTimezone = selenium.getText(LOC_OPTION_SELECTED_TIMEZONE);
 
-		int rows = selenium.getXpathCount(format(LOC_TD_STATE_PREFORMATTED, 0)).intValue();
+		int rows = getJQueryCount(format(LOC_TD_STATE_PREFORMATTED, 0));
 
 		for (int row = 1; row <= rows; row++) {
 			if (statePrefix.length() > 0) {

Modified: branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/java/org/jboss/richfaces/integrationTest/tableSorting/TableSortingTestCase.java
===================================================================
--- branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/java/org/jboss/richfaces/integrationTest/tableSorting/TableSortingTestCase.java	2009-11-12 03:25:11 UTC (rev 15870)
+++ branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/java/org/jboss/richfaces/integrationTest/tableSorting/TableSortingTestCase.java	2009-11-12 12:07:03 UTC (rev 15871)
@@ -126,12 +126,11 @@
 					});
 			
 			selenium.select(locSelectColumn, msgColumnName);
-
 			selenium.select(locSelectOrder, msgColumnOrder);
-
+			
 			Wait.failWith("Sort table button never got enabled").until(new Condition() {
 				public boolean isTrue() {
-					return !selenium.isElementPresent(format("{0}/@disabled", LOC_BUTTON_SORT));
+					return !selenium.isElementPresent(format("{0}[disabled]", LOC_BUTTON_SORT));
 				}
 			});
 		}

Modified: branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/java/org/jboss/richfaces/integrationTest/tree/TreeTestCase.java
===================================================================
--- branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/java/org/jboss/richfaces/integrationTest/tree/TreeTestCase.java	2009-11-12 03:25:11 UTC (rev 15870)
+++ branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/java/org/jboss/richfaces/integrationTest/tree/TreeTestCase.java	2009-11-12 12:07:03 UTC (rev 15871)
@@ -92,64 +92,64 @@
         abstractTestTree(2);
     }
 
-//    /**
-//     * Tests the "View Source" in the first example -- Ajax switch type. It
-//     * checks that the source code is not visible, clicks on the link, and
-//     * checks 8 lines of source code.
-//     */
-//    @Test
-//    public void testAjaxExampleSource() {
-//        String[] strings = new String[] {
-//                "<ui:composition xmlns=\"http://www.w3.org/1999/xhtml\"",
-//                "<h:form>",
-//                "<rich:tree style=\"width:300px\" value=\"#{library.data}\" var=\"item\" nodeFace=\"#{item.type}\">",
-//                "<rich:treeNode type=\"artist\" iconLeaf=\"/images/tree/singer.gif\" icon=\"/images/tree/singer.gif\">",
-//                "<h:outputText value=\"#{item.name}\" />", "</rich:treeNode>",
-//                "<rich:treeNode type=\"album\" iconLeaf=\"/images/tree/disc.gif\" icon=\"/images/tree/disc.gif\">",
-//                "<rich:treeNode type=\"song\" iconLeaf=\"/images/tree/song.gif\" icon=\"/images/tree/song.gif\">", };
-//
-//        abstractTestSource(1, "View Source", strings);
-//    }
-//
-//    /**
-//     * Tests the "View Source" in the second example -- client switch type. It
-//     * checks that the source code is not visible, clicks on the link, and
-//     * checks 8 lines of source code.
-//     */
-//    @Test
-//    public void testClientExampleSource() {
-//        String[] strings = new String[] {
-//                "<ui:composition xmlns=\"http://www.w3.org/1999/xhtml\"",
-//                "<h:form>",
-//                "<rich:tree switchType=\"client\" style=\"width:300px\" value=\"#{library.data}\" var=\"item\" nodeFace=\"#{item.type}\">",
-//                "<rich:treeNode type=\"artist\" iconLeaf=\"/images/tree/singer.gif\" icon=\"/images/tree/singer.gif\">",
-//                "<h:outputText value=\"#{item.name}\" />", "</rich:treeNode>",
-//                "<rich:treeNode type=\"album\" iconLeaf=\"/images/tree/disc.gif\" icon=\"/images/tree/disc.gif\">",
-//                "<rich:treeNode type=\"song\" iconLeaf=\"/images/tree/song.gif\" icon=\"/images/tree/song.gif\">", };
-//
-//        abstractTestSource(2, "View Source", strings);
-//    }
-//
-//    /**
-//     * Tests the "View Source" in the third example -- server switch type. It
-//     * checks that the source code is not visible, clicks on the link, and
-//     * checks 8 lines of source code.
-//     */
-//    @Test
-//    public void testServerExampleSource() {
-//        String[] strings = new String[] {
-//                "<ui:composition xmlns=\"http://www.w3.org/1999/xhtml\"",
-//                "<h:form>",
-//                "<rich:tree switchType=\"server\" style=\"width:300px\" value=\"#{library.data}\" var=\"item\" nodeFace=\"#{item.type}\">",
-//                "<rich:treeNode type=\"artist\" iconLeaf=\"/images/tree/singer.gif\" icon=\"/images/tree/singer.gif\">",
-//                "<h:outputText value=\"#{item.name}\" />", "</rich:treeNode>",
-//                "<rich:treeNode type=\"album\" iconLeaf=\"/images/tree/disc.gif\" icon=\"/images/tree/disc.gif\">",
-//                "<rich:treeNode type=\"song\" iconLeaf=\"/images/tree/song.gif\" icon=\"/images/tree/song.gif\">", };
-//
-//        abstractTestSource(3, "View Source", strings);
-//    }
+    /**
+     * Tests the "View Source" in the first example -- Ajax switch type. It
+     * checks that the source code is not visible, clicks on the link, and
+     * checks 8 lines of source code.
+     */
+    @Test
+    public void testAjaxExampleSource() {
+        String[] strings = new String[] {
+                "<ui:composition xmlns=\"http://www.w3.org/1999/xhtml\"",
+                "<h:form>",
+                "<rich:tree style=\"width:300px\" value=\"#{library.data}\" var=\"item\" nodeFace=\"#{item.type}\">",
+                "<rich:treeNode type=\"artist\" iconLeaf=\"/images/tree/singer.gif\" icon=\"/images/tree/singer.gif\">",
+                "<h:outputText value=\"#{item.name}\" />", "</rich:treeNode>",
+                "<rich:treeNode type=\"album\" iconLeaf=\"/images/tree/disc.gif\" icon=\"/images/tree/disc.gif\">",
+                "<rich:treeNode type=\"song\" iconLeaf=\"/images/tree/song.gif\" icon=\"/images/tree/song.gif\">", };
 
+        abstractTestSource(1, "View Source", strings);
+    }
+
     /**
+     * Tests the "View Source" in the second example -- client switch type. It
+     * checks that the source code is not visible, clicks on the link, and
+     * checks 8 lines of source code.
+     */
+    @Test
+    public void testClientExampleSource() {
+        String[] strings = new String[] {
+                "<ui:composition xmlns=\"http://www.w3.org/1999/xhtml\"",
+                "<h:form>",
+                "<rich:tree switchType=\"client\" style=\"width:300px\" value=\"#{library.data}\" var=\"item\" nodeFace=\"#{item.type}\">",
+                "<rich:treeNode type=\"artist\" iconLeaf=\"/images/tree/singer.gif\" icon=\"/images/tree/singer.gif\">",
+                "<h:outputText value=\"#{item.name}\" />", "</rich:treeNode>",
+                "<rich:treeNode type=\"album\" iconLeaf=\"/images/tree/disc.gif\" icon=\"/images/tree/disc.gif\">",
+                "<rich:treeNode type=\"song\" iconLeaf=\"/images/tree/song.gif\" icon=\"/images/tree/song.gif\">", };
+
+        abstractTestSource(2, "View Source", strings);
+    }
+
+    /**
+     * Tests the "View Source" in the third example -- server switch type. It
+     * checks that the source code is not visible, clicks on the link, and
+     * checks 8 lines of source code.
+     */
+    @Test
+    public void testServerExampleSource() {
+        String[] strings = new String[] {
+                "<ui:composition xmlns=\"http://www.w3.org/1999/xhtml\"",
+                "<h:form>",
+                "<rich:tree switchType=\"server\" style=\"width:300px\" value=\"#{library.data}\" var=\"item\" nodeFace=\"#{item.type}\">",
+                "<rich:treeNode type=\"artist\" iconLeaf=\"/images/tree/singer.gif\" icon=\"/images/tree/singer.gif\">",
+                "<h:outputText value=\"#{item.name}\" />", "</rich:treeNode>",
+                "<rich:treeNode type=\"album\" iconLeaf=\"/images/tree/disc.gif\" icon=\"/images/tree/disc.gif\">",
+                "<rich:treeNode type=\"song\" iconLeaf=\"/images/tree/song.gif\" icon=\"/images/tree/song.gif\">", };
+
+        abstractTestSource(3, "View Source", strings);
+    }
+
+    /**
      * Tests selected tree. First it tries to expand "Chris Rea" node, checks
      * its only child node, verifies that child's icon is displayed and expands
      * it. Then it checks the number of nodes in "Chris Rea/The Road To Hell"

Modified: branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/resources/org/jboss/richfaces/integrationTest/ajaxValidator/locators.properties
===================================================================
--- branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/resources/org/jboss/richfaces/integrationTest/ajaxValidator/locators.properties	2009-11-12 03:25:11 UTC (rev 15870)
+++ branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/resources/org/jboss/richfaces/integrationTest/ajaxValidator/locators.properties	2009-11-12 12:07:03 UTC (rev 15871)
@@ -1,4 +1,4 @@
-VALIDATION_MESSAGE_RELATIVE=//input[@id\='{0}']/../../td[3]/*[1][@class\='rich-message']
+VALIDATION_MESSAGE_RELATIVE=jquery=fieldset tr:has(input[id={0}]) span[class=rich-message]
 INPUT_NAME=ajaxValidatorForm\:name
 INPUT_AGE=ajaxValidatorForm\:age
 INPUT_HIBERNATE_NAME=ajaxValidatorForm2\:name

Modified: branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/resources/org/jboss/richfaces/integrationTest/beanValidator/locators.properties
===================================================================
--- branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/resources/org/jboss/richfaces/integrationTest/beanValidator/locators.properties	2009-11-12 03:25:11 UTC (rev 15870)
+++ branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/resources/org/jboss/richfaces/integrationTest/beanValidator/locators.properties	2009-11-12 12:07:03 UTC (rev 15871)
@@ -1,6 +1,6 @@
-FIELDSET_HEADER=//legend[text()\='Title']
-BUTTON_SUBMIT=//input[@type\='button' and @value\='Submit']
-VALIDATION_MESSAGE_RELATIVE=//input[@id\='{0}']/../../td[3]/*[1][@class\='rich-message']
+FIELDSET_HEADER=jquery=fieldset > legend
+BUTTON_SUBMIT=jquery=input[value=Submit]
+VALIDATION_MESSAGE_RELATIVE=jquery=fieldset tr:has(input[id={0}]) span[class=rich-message]
 INPUT_NAME=beanValidatorForm\:name
 INPUT_AGE=beanValidatorForm\:age
 INPUT_EMAIL=beanValidatorForm\:email

Modified: branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/resources/org/jboss/richfaces/integrationTest/columns/locators.properties
===================================================================
--- branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/resources/org/jboss/richfaces/integrationTest/columns/locators.properties	2009-11-12 03:25:11 UTC (rev 15870)
+++ branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/resources/org/jboss/richfaces/integrationTest/columns/locators.properties	2009-11-12 12:07:03 UTC (rev 15871)
@@ -1,3 +1,3 @@
-TABLE=//form/*[contains(@class,'rich-table')]
-TH_PREFORMATTED=//*[contains(@class,'rich-table-subheadercell')]{0,choice,0\#|1\#[{0}]}
-TD_PREFORMATTED=//*[contains(@class,'rich-table-row')]{0,choice,0\#|1\#[{0}]}/*[contains(@class,'rich-table-cell')]{1,choice,0\#|1\#[{1}]}
+TABLE=jquery=table.rich-table
+TH_PREFORMATTED=jquery\=th.rich-table-subheadercell{0,choice,-1\#|0\#\:nth-child({0})}
+TD_PREFORMATTED=jquery\=tr.rich-table-row{0,choice,0\#|1\#\:nth-child({0})} > td{1,choice,0\#|1\#\:nth-child({1})}

Modified: branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/resources/org/jboss/richfaces/integrationTest/commandButton/locators.properties
===================================================================
--- branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/resources/org/jboss/richfaces/integrationTest/commandButton/locators.properties	2009-11-12 03:25:11 UTC (rev 15870)
+++ branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/resources/org/jboss/richfaces/integrationTest/commandButton/locators.properties	2009-11-12 12:07:03 UTC (rev 15871)
@@ -1,3 +1,3 @@
-INPUT_TEXT=//input[@type\='text']
-BUTTON_SAY_HELLO=//input[@type\='button']
-OUTPUT_TEXT=//*[@id\='out']
+INPUT_TEXT=jquery=input[type=text]
+BUTTON_SAY_HELLO=jquery=input[type=button]
+OUTPUT_TEXT=jquery=span#out

Modified: branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/resources/org/jboss/richfaces/integrationTest/commandLink/locators.properties
===================================================================
--- branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/resources/org/jboss/richfaces/integrationTest/commandLink/locators.properties	2009-11-12 03:25:11 UTC (rev 15870)
+++ branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/resources/org/jboss/richfaces/integrationTest/commandLink/locators.properties	2009-11-12 12:07:03 UTC (rev 15871)
@@ -1,3 +1,3 @@
-INPUT_TEXT=//input[@type\='text']
-LINK_SAY_HELLO=//a[text()\='Say Hello']
-OUTPUT_TEXT=//*[@id\='out']
+INPUT_TEXT=jquery=input[type=text]
+LINK_SAY_HELLO=jquery=table.gridhello a
+OUTPUT_TEXT=jquery=span#out

Modified: branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/resources/org/jboss/richfaces/integrationTest/data-iteration--locators.properties
===================================================================
--- branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/resources/org/jboss/richfaces/integrationTest/data-iteration--locators.properties	2009-11-12 03:25:11 UTC (rev 15870)
+++ branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/resources/org/jboss/richfaces/integrationTest/data-iteration--locators.properties	2009-11-12 12:07:03 UTC (rev 15871)
@@ -1,7 +1,7 @@
-data-table-common--table=//form/*[contains(@class,'rich-table')]
-data-scroller--button--first-page=//*[contains(@class,'rich-datascr')][1]//*[contains(@class,'rich-dtascroller-table')]//*[contains(@class,'rich-datascr-button')][1]
-data-scroller--button--last-page=//*[contains(@class,'rich-datascr')][1]//*[contains(@class,'rich-dtascroller-table')]//*[contains(@class,'rich-datascr-button')][6]
-data-scroller--button--previous-page=//*[contains(@class,'rich-datascr')][1]//*[contains(@class,'rich-dtascroller-table')]//*[contains(@class,'rich-datascr-button')][2]
-data-scroller--button--next-page=//*[contains(@class,'rich-datascr')][1]//*[contains(@class,'rich-dtascroller-table')]//*[contains(@class,'rich-datascr-button')][5]
-data-scroller--button--numbered-page-preformatted=//*[contains(@class,'rich-datascr')][1]//*[contains(@class,'rich-dtascroller-table')]//*[contains(@class,'rich-datascr-act') or contains(@class,'rich-datascr-inact')]{0,choice,0\#|1\#[{0}]}
-data-scroller--output--active-page=//*[contains(@class,'rich-datascr')][1]//*[contains(@class,'rich-datascr-act')]
+data-table-common--table=jquery=form table.rich-table
+data-scroller--button--first-page=jquery=div[class*=rich-datascr]:eq(0) > table td[class*=rich-datascr-button]:eq(0)
+data-scroller--button--last-page=jquery=div[class*=rich-datascr]:eq(0) > table td[class*=rich-datascr-button]:eq(5)
+data-scroller--button--previous-page=jquery=div[class*=rich-datascr]:eq(0) > table td[class*=rich-datascr-button]:eq(1)
+data-scroller--button--next-page=jquery=div[class*=rich-datascr]:eq(0) > table td[class*=rich-datascr-button]:eq(4)
+data-scroller--button--numbered-page-preformatted=jquery\=div[class*\=rich-datascr]\:eq(0) > table td{0,choice,-1\#|0\#\:textEquals({0})}
+data-scroller--output--active-page=jquery=td[class*=rich-datascr-act]
\ No newline at end of file

Modified: branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/resources/org/jboss/richfaces/integrationTest/dataFilterSlider/locators.properties
===================================================================
--- branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/resources/org/jboss/richfaces/integrationTest/dataFilterSlider/locators.properties	2009-11-12 03:25:11 UTC (rev 15870)
+++ branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/resources/org/jboss/richfaces/integrationTest/dataFilterSlider/locators.properties	2009-11-12 12:07:03 UTC (rev 15871)
@@ -1,7 +1,8 @@
-FIELDSET_HEADER=//legend[text()\='DataFilterSlider example']
-TD_MILEAGE_PREFORMATTED=//*[contains(@class,'rich-table-row')]{0,choice,0\#|1\#[{0}]}/*[contains(@class,'rich-table-cell')][4]
-TD_BRAND_PREFORMATTED=//*[contains(@class,'rich-table-row')]{0,choice,0\#|1\#[{0}]}/*[contains(@class,'rich-table-cell')][1]
-LINK_BRAND_PREFORMATTED=//a[text()\='{0}']
-INPUT_MAX_PRICE=//*[@type\='text' and contains(@class,'rich-dataFilterSlider-input-field')]
-DIV_SLIDER_HANDLE=//*[contains(@class,'rich-dataFilterSlider-handle')]
-DIV_SLIDER_TRACK=//*[contains(@class,'rich-dataFilterSlider-track')]
+FIELDSET_HEADER=jquery=fieldset > legend
+TABLE_ROWS=jquery=tr[class*=rich-table-row]
+TD_MILEAGE_PREFORMATTED=jquery\=tr.rich-table-row{0,choice,0\#|1\#\:nth-child({0})} > td\:eq(3)
+TD_BRAND_PREFORMATTED=jquery\=tr.rich-table-row{0,choice,0\#|1\#\:nth-child({0})} > td\:eq(0)
+LINK_BRAND_PREFORMATTED=jquery=td.column-index > a:textEquals({0})
+INPUT_MAX_PRICE=jquery=input.rich-dataFilterSlider-input-field
+DIV_SLIDER_HANDLE=jquery=div.rich-dataFilterSlider-handle
+DIV_SLIDER_TRACK=jquery=div.rich-dataFilterSlider-track

Modified: branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/resources/org/jboss/richfaces/integrationTest/dataGrid/locators.properties
===================================================================
--- branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/resources/org/jboss/richfaces/integrationTest/dataGrid/locators.properties	2009-11-12 03:25:11 UTC (rev 15870)
+++ branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/resources/org/jboss/richfaces/integrationTest/dataGrid/locators.properties	2009-11-12 12:07:03 UTC (rev 15871)
@@ -1 +1 @@
-TD_GRID_PREFORMATTED=//*[contains(@class,'rich-table-row')]{0,choice,0\#|1\#[{0}]}/*[contains(@class,'rich-table-cell')]{1,choice,0\#|1\#[{1}]}
+TD_GRID_PREFORMATTED=jquery\=tr.rich-table-row{0,choice,0\#|1\#\:nth-child({0})} > td{1,choice,0\#|1\#\:nth-child({1})}

Modified: branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/resources/org/jboss/richfaces/integrationTest/dataList/locators.properties
===================================================================
--- branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/resources/org/jboss/richfaces/integrationTest/dataList/locators.properties	2009-11-12 03:25:11 UTC (rev 15870)
+++ branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/resources/org/jboss/richfaces/integrationTest/dataList/locators.properties	2009-11-12 12:07:03 UTC (rev 15871)
@@ -1 +1 @@
-FIELDSET_HEADER=//legend[text()\='Example']
+FIELDSET_HEADER=jquery=fieldset > legend

Modified: branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/resources/org/jboss/richfaces/integrationTest/dataScroller/locators.properties
===================================================================
--- branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/resources/org/jboss/richfaces/integrationTest/dataScroller/locators.properties	2009-11-12 03:25:11 UTC (rev 15870)
+++ branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/resources/org/jboss/richfaces/integrationTest/dataScroller/locators.properties	2009-11-12 12:07:03 UTC (rev 15871)
@@ -1 +1 @@
-FIELDSET_HEADER=//legend[text()\='Table pagination using Data Scroller example']
+FIELDSET_HEADER=jquery=fieldset > legend

Modified: branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/resources/org/jboss/richfaces/integrationTest/dataTable/locators-DataTableTestCase.properties
===================================================================
--- branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/resources/org/jboss/richfaces/integrationTest/dataTable/locators-DataTableTestCase.properties	2009-11-12 03:25:11 UTC (rev 15870)
+++ branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/resources/org/jboss/richfaces/integrationTest/dataTable/locators-DataTableTestCase.properties	2009-11-12 12:07:03 UTC (rev 15871)
@@ -1,2 +1,2 @@
-FIELDSET_HEADER=//legend[text()\='DataTable Column/ColumnGroup example']
-TABLE=//legend[text()\='DataTable Column/ColumnGroup example']/../div/table
+FIELDSET_HEADER=jquery=legend:textEquals(DataTable Column/ColumnGroup example)
+TABLE=jquery=table.rich-table

Modified: branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/resources/org/jboss/richfaces/integrationTest/dataTable/locators-EditTableWithModalPanelTestCase.properties
===================================================================
--- branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/resources/org/jboss/richfaces/integrationTest/dataTable/locators-EditTableWithModalPanelTestCase.properties	2009-11-12 03:25:11 UTC (rev 15870)
+++ branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/resources/org/jboss/richfaces/integrationTest/dataTable/locators-EditTableWithModalPanelTestCase.properties	2009-11-12 12:07:03 UTC (rev 15871)
@@ -1,9 +1,9 @@
-LINK_EDIT=//form/*[contains(@class,'rich-table')]/*/*[contains(@class,'rich-table-row')][{0}]/*[contains(@class,'rich-table-cell')][7]/*[contains(@id,'editlink')]
-LINK_DELETE=//form/*[contains(@class,'rich-table')]/*/*[contains(@class,'rich-table-row')][{0}]/*[contains(@class,'rich-table-cell')][7]/*[contains(@id,'deletelink')]
-OUTPUT_PRICE_PREFORMATTED=//form/*[contains(@class,'rich-table')]/*/*[contains(@class,'rich-table-row')][{0}]/*[contains(@class,'rich-table-cell')][3]
-INPUT_PRICE=//*[text()\='Price']/../*[2]/*[@type\='text']
-BUTTON_EDIT_STORE=//*[@type\='button' and @value\='Store']
-BUTTON_DELETE_YES=//*[@type\='button' and @value\='Yes']
-BUTTON_DELETE_CANCEL=//*[@type\='button' and @value\='Cancel']
-PANEL_EDIT=//*[@id\='editPanelContainer']
-PANEL_DELETE=//*[@id\='deletePanelContainer']
\ No newline at end of file
+LINK_EDIT=jquery=tr[class*=rich-table-row]:nth-child({0}) > td:eq(6) > a[id$=editlink]
+LINK_DELETE=jquery=tr[class*=rich-table-row]:nth-child({0}) > td:eq(6) > a[id$=deletelink]
+OUTPUT_PRICE_PREFORMATTED=jquery=tr[class*=rich-table-row]:nth-child({0}) > td:eq(2)
+INPUT_PRICE=jquery=table#editPanelContentTable tr tr tr:eq(2) input
+BUTTON_EDIT_STORE=jquery=table#editPanelContentTable input[value=Store]
+BUTTON_DELETE_YES=jquery=#deletePanelContainer input[value=Yes]
+BUTTON_DELETE_CANCEL=jquery=#deletePanelContainer input[value=Cancel]
+PANEL_EDIT=editPanelContainer
+PANEL_DELETE=deletePanelContainer
\ No newline at end of file

Modified: branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/resources/org/jboss/richfaces/integrationTest/dataTable/locators-ExtendedDataModelTestCase.properties
===================================================================
--- branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/resources/org/jboss/richfaces/integrationTest/dataTable/locators-ExtendedDataModelTestCase.properties	2009-11-12 03:25:11 UTC (rev 15870)
+++ branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/resources/org/jboss/richfaces/integrationTest/dataTable/locators-ExtendedDataModelTestCase.properties	2009-11-12 12:07:03 UTC (rev 15871)
@@ -1,4 +1,4 @@
-TD_HIGHEST_BID=//*[contains(@id,'auction\:tb')]/*[contains(@class,'rich-table-row')][7]/*[contains(@class,'rich-table-cell')][2]
-TD_CELL_AMOUNT=//*[contains(@id,'auction\:tb')]/*[contains(@class,'rich-table-row')][7]/*[contains(@class,'rich-table-cell')][4]
-INPUT_YOUR_BID=//*[contains(@id,'auction\:tb')]/*[contains(@class,'rich-table-row')][7]/*[contains(@class,'rich-table-cell')][3]/*[@type\='text']
-LINK_PLACE_BID=//*[contains(@id,'auction\:tb')]/*[contains(@class,'rich-table-row')][7]/*[contains(@class,'rich-table-cell')][3]/*[text()\='Place a bid\!']
+TD_HIGHEST_BID=jquery=tr[class*=rich-table-row]:eq(6) > td:eq(1)
+TD_CELL_AMOUNT=jquery=tr[class*=rich-table-row]:eq(6) > td:eq(3)
+INPUT_YOUR_BID=jquery=tr[class*=rich-table-row]:eq(6) > td:eq(2) > input
+LINK_PLACE_BID=jquery=tr[class*=rich-table-row]:eq(6) > td:eq(2) > a

Modified: branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/resources/org/jboss/richfaces/integrationTest/dataTable/locators-ModifiableDataModelTestCase.properties
===================================================================
--- branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/resources/org/jboss/richfaces/integrationTest/dataTable/locators-ModifiableDataModelTestCase.properties	2009-11-12 03:25:11 UTC (rev 15870)
+++ branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/resources/org/jboss/richfaces/integrationTest/dataTable/locators-ModifiableDataModelTestCase.properties	2009-11-12 12:07:03 UTC (rev 15871)
@@ -1,4 +1,4 @@
-TH_KEY=//*[contains(@id,'column1header') and contains(@class,'rich-table-subheadercell')]
-TD_KEY_PREFORMATTED=//form/*[contains(@class,'rich-table')]/*/*[contains(@class,'rich-table-row')]{0,choice,0\#|1\#[{0}]}/*[contains(@class,'rich-table-cell')][2]
-INPUT_ASSIGNEE=//*[contains(@id,'column2header') and contains(@class,'rich-table-subheadercell')]/*/*[@type\='text']
-TD_ASSIGNEE_PREFORMATTED=//form/*[contains(@class,'rich-table')]/*/*[contains(@class,'rich-table-row')][1]/*[contains(@class,'rich-table-cell')][3]
+TH_KEY=jquery=th[id$=column1header]
+TD_KEY_PREFORMATTED=jquery\=tr[class*\=rich-table-row]{0,choice,0\#|1\#\:nth-child({0})} > td\:eq(1)
+INPUT_ASSIGNEE=jquery=th[id$=column2header] input
+TD_ASSIGNEE_PREFORMATTED=jquery=tr[class*=rich-table-row]:eq(0) > td:eq(2)

Modified: branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/resources/org/jboss/richfaces/integrationTest/extendedDataTable/locators-DraggingTestCase.properties
===================================================================
--- branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/resources/org/jboss/richfaces/integrationTest/extendedDataTable/locators-DraggingTestCase.properties	2009-11-12 03:25:11 UTC (rev 15870)
+++ branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/resources/org/jboss/richfaces/integrationTest/extendedDataTable/locators-DraggingTestCase.properties	2009-11-12 12:07:03 UTC (rev 15871)
@@ -1,4 +1,3 @@
-DIV_DROP_ZONE_LEFT_RELATIVE={0}/../../../*[contains(@class,'extdt-hdrop') and contains(@id,'left')]
-DIV_DROP_ZONE_RIGHT_RELATIVE={0}/../../../*[contains(@class,'extdt-hdrop') and contains(@id,'right')]
-COLUMN_TO_ITS_CONTENT_RELATIVE={0}/*
-IMAGE_SRC_FLAG_PREFORMATTED={0}/*/@src
\ No newline at end of file
+DIV_DROP_ZONE_LEFT_RELATIVE={0} > span:eq(1)
+DIV_DROP_ZONE_RIGHT_RELATIVE={0} > span:eq(2)
+IMAGE_SRC_FLAG_PREFORMATTED={0} img at src
\ No newline at end of file

Modified: branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/resources/org/jboss/richfaces/integrationTest/extendedDataTable/locators-GroupingTestCase.properties
===================================================================
--- branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/resources/org/jboss/richfaces/integrationTest/extendedDataTable/locators-GroupingTestCase.properties	2009-11-12 03:25:11 UTC (rev 15870)
+++ branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/resources/org/jboss/richfaces/integrationTest/extendedDataTable/locators-GroupingTestCase.properties	2009-11-12 12:07:03 UTC (rev 15871)
@@ -1,4 +1,4 @@
-DIV_CONTEXT_MENU_FOR_COLUMN_RELATIVE={0}/*[contains(@class,'extdt-menu-div')]
-MENU_ITEM_GROUP_BY_COLUMN=//*[contains(@class,'rich-menu-item-label') and text()\='Group by this column']
-TD_GROUP_PREFORMATTED=//*[contains(@class,'rich-table')]//*[contains(@class,'extdt-group-row')]{0,choice,0\#|1\#[{0}]}/*/text()
-TR_PREFORMATTED=//*[contains(@class,'rich-table')]/*[contains(@id,'table\:tb')]/*[contains(@class,'row')]{0,choice,0\#|1\#[{0}]}
+DIV_CONTEXT_MENU_FOR_COLUMN_RELATIVE={0} div[id$=menuDiv]
+MENU_ITEM_GROUP_BY_COLUMN=jquery=span[class*=rich-menu-item-label]:textEquals(Group by this column)
+TD_GROUP_PREFORMATTED=jquery\=tr[class*\=row]{0,choice,-1\#|0\#\:nth-child({0})}
+TR_PREFORMATTED=jquery\=tr[class*\=row]{0,choice,0\#|1\#\:nth-child({0})}

Modified: branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/resources/org/jboss/richfaces/integrationTest/extendedDataTable/locators-SelectingTestCase.properties
===================================================================
--- branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/resources/org/jboss/richfaces/integrationTest/extendedDataTable/locators-SelectingTestCase.properties	2009-11-12 03:25:11 UTC (rev 15870)
+++ branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/resources/org/jboss/richfaces/integrationTest/extendedDataTable/locators-SelectingTestCase.properties	2009-11-12 12:07:03 UTC (rev 15871)
@@ -1,2 +1,2 @@
-TR_SELECTED=//*[contains(@class,'extdt-maindiv')]//*[contains(@class,'rich-extdt-firstrow') and contains(@class,'rich-sdt-row-selected') {0}]
-SELECT_SELECTION_MODE=//*[text()\='Selection Mode\:']/../td[2]/select
+TR_SELECTED=jquery=tr[class*=row][class*=row-selected]{0,choice,0\#|1\#:nth-child({0})}
+SELECT_SELECTION_MODE=jquery=td.top:eq(1) select:eq(1)

Modified: branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/resources/org/jboss/richfaces/integrationTest/extendedDataTable/locators-SortingTestCase.properties
===================================================================
--- branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/resources/org/jboss/richfaces/integrationTest/extendedDataTable/locators-SortingTestCase.properties	2009-11-12 03:25:11 UTC (rev 15870)
+++ branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/resources/org/jboss/richfaces/integrationTest/extendedDataTable/locators-SortingTestCase.properties	2009-11-12 12:07:03 UTC (rev 15871)
@@ -1 +1 @@
-SELECT_SORT_MODE=//*[text()\='Sort Mode\:']/../td[2]/select
+SELECT_SORT_MODE=jquery=td.top:eq(1) select:eq(0)

Modified: branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/resources/org/jboss/richfaces/integrationTest/extendedDataTable/locators.properties
===================================================================
--- branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/resources/org/jboss/richfaces/integrationTest/extendedDataTable/locators.properties	2009-11-12 03:25:11 UTC (rev 15870)
+++ branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/resources/org/jboss/richfaces/integrationTest/extendedDataTable/locators.properties	2009-11-12 12:07:03 UTC (rev 15871)
@@ -1,9 +1,11 @@
-TH_STATE=//*[contains(@class,'extdt-sortable-header') and text()\='State Name']
-TH_CAPITAL=//*[contains(@class,'extdt-sortable-header') and text()\='State Capital']
-TH_TIME_ZONE=//*[contains(@class,'extdt-sortable-header') and text()\='Time Zone']
-TH_FLAG=//*[contains(@class,'extdt-sortable-header') and text()\='Flag']
-TD_PREFORMATTED=//*[contains(@class,'extdt-maindiv')]//*[contains(@class,'rich-extdt-firstrow')]{0,choice,0\#|1\#[{0}]}/*[contains(@class,'rich-extdt-cell')]{1,choice,0\#|1\#[{1}]}
-TABLE_EXTENDED=//*[contains(@class,'extdt-maindiv')]
-TH_RELATIVE={0}/../../..
-INPUT_COLUMN_FILTER=//*[contains(@class,'extdt-maindiv')]//*[contains(@class,'extdt-table-filterrow')]//*[contains(@class,'rich-extdt-subheadercell')][{0}]//*[@type\='text']
-DIV_SPLASH_SCREEN=//*[@class\='extdt-ss-vsbl']
\ No newline at end of file
+TH_STATE=jquery=th:has(span:textEquals(State Name))
+TH_CAPITAL=jquery=th:has(span:textEquals(State Capital))
+TH_TIME_ZONE=jquery=th:has(span:textEquals(Time Zone))
+TH_FLAG=jquery=th:has(span:textEquals(Flag))
+SPAN_STATE=jquery=span:textEquals('State Name')
+SPAN_CAPITAL=jquery=span:textEquals('State Capital')
+SPAN_TIME_ZONE=jquery=span:textEquals('Time Zone')
+TD_PREFORMATTED=jquery\=tr[class*\=row]{0,choice,0\#|1\#\:nth-child({0})} > td{1,choice,0\#|1\#\:nth-child({1})}
+TABLE_EXTENDED=jquery=div[class*=extdt-maindiv]
+INPUT_COLUMN_FILTER=jquery=tr[class*=extdt-table-filterrow] > th:nth-child({0}) input
+DIV_SPLASH_SCREEN=jquery=div[class*=extdt-ss-vsbl]
\ No newline at end of file

Modified: branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/resources/org/jboss/richfaces/integrationTest/repeat/locators.properties
===================================================================
--- branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/resources/org/jboss/richfaces/integrationTest/repeat/locators.properties	2009-11-12 03:25:11 UTC (rev 15870)
+++ branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/resources/org/jboss/richfaces/integrationTest/repeat/locators.properties	2009-11-12 12:07:03 UTC (rev 15871)
@@ -1,5 +1,5 @@
-FIELDSET_HEADER=//legend[text()\='Repeat example']
-INPUT_PROPOSED_PRICE_PREFORMATTED=//*[contains(@class,'rich-table')]/tbody/tr{0,choice,0\#|1\#[{0}]}/td[2]/input[@type\='text']
-SELECT_REASON_PREFORMATTED=//*[contains(@class,'rich-table')]/tbody/tr[{0}]/td[4]/*[contains(@id,'reason')]
-OUTPUT_SALES_COST_PREFORMATTED=//*[contains(@class,'rich-table')]/tbody/tr{0,choice,0\#|1\#[{0}]}/td[3]
-OUTPUT_GROSS_MARGIN_PREFORMATTED=//*[contains(@class,'rich-table')]/tbody/tr{0,choice,0\#|1\#[{0}]}/td[5]
+FIELDSET_HEADER=jquery=legend
+INPUT_PROPOSED_PRICE_PREFORMATTED=jquery\=table.rich-table tr{0,choice,0\#|1\#\:nth-child({0})} td\:eq(1) input 
+SELECT_REASON_PREFORMATTED=jquery\=table.rich-table tr{0,choice,0\#|1\#\:nth-child({0})} td\:eq(3) select
+OUTPUT_SALES_COST_PREFORMATTED=jquery\=table.rich-table tr{0,choice,0\#|1\#\:nth-child({0})} td\:eq(2)
+OUTPUT_GROSS_MARGIN_PREFORMATTED=jquery\=table.rich-table tr{0,choice,0\#|1\#\:nth-child({0})} td\:eq(4)

Modified: branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/resources/org/jboss/richfaces/integrationTest/tableFiltering/locators.properties
===================================================================
--- branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/resources/org/jboss/richfaces/integrationTest/tableFiltering/locators.properties	2009-11-12 03:25:11 UTC (rev 15870)
+++ branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/resources/org/jboss/richfaces/integrationTest/tableFiltering/locators.properties	2009-11-12 12:07:03 UTC (rev 15871)
@@ -1,6 +1,6 @@
-INPUT_STATE=//form/*[contains(@class,'rich-table')]//*[contains(@class,'rich-table-subheadercell')][1]//*[@type\='text']
-INPUT_CAPITAL=//form/*[contains(@class,'rich-table')]//*[contains(@class,'rich-table-subheadercell')][2]//*[@type\='text']
-TD_STATE_PREFORMATTED=//*[contains(@class,'rich-table-row')]{0,choice,0\#|1\#[{0}]}/*[contains(@class,'rich-table-cell')][1]
-TD_CAPITAL_PREFORMATTED=//*[contains(@class,'rich-table-row')]{0,choice,0\#|1\#[{0}]}/*[contains(@class,'rich-table-cell')][2]
-SELECT_TIMEZONE=//form/*[contains(@class,'rich-table')]//*[contains(@class,'rich-table-subheadercell')][2]/*/*
-OPTION_SELECTED_TIMEZONE=//form/*[contains(@class,'rich-table')]//*[contains(@class,'rich-table-subheadercell')][2]/*/*/*[@selected]
\ No newline at end of file
+INPUT_STATE=jquery=table.rich-table th:nth-child(1) input
+INPUT_CAPITAL=jquery=table.rich-table th:nth-child(2) input
+TD_STATE_PREFORMATTED=jquery\=tr.rich-table-row{0,choice,0\#|1\#\:nth-child({0})} > td\:eq(0)
+TD_CAPITAL_PREFORMATTED=jquery\=tr.rich-table-row{0,choice,0\#|1\#\:nth-child({0})} > td\:eq(1)
+SELECT_TIMEZONE=jquery=th[class*=subheadercell]:eq(1) select
+OPTION_SELECTED_TIMEZONE=jquery=th[class*=subheadercell]:eq(1) option[selected]
\ No newline at end of file

Modified: branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/resources/org/jboss/richfaces/integrationTest/tableSorting/locators.properties
===================================================================
--- branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/resources/org/jboss/richfaces/integrationTest/tableSorting/locators.properties	2009-11-12 03:25:11 UTC (rev 15870)
+++ branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/resources/org/jboss/richfaces/integrationTest/tableSorting/locators.properties	2009-11-12 12:07:03 UTC (rev 15871)
@@ -1,13 +1,14 @@
 # Built-in Sorting
-TH_STATE=//form/*[contains(@class,'rich-table')]//*[contains(@class,'rich-table-subheadercell')][1]
-TH_CAPITAL=//form/*[contains(@class,'rich-table')]//*[contains(@class,'rich-table-subheadercell')][2]
-IMG_SRC_SORT_ICON_RELATIVE={0}//*[contains(@class,'rich-sort-icon')]/@src
-TD_STATE_PREFORMATTED=//*[contains(@class,'rich-table-row')]{0,choice,0\#|1\#[{0}]}/*[contains(@class,'rich-table-cell')][1]
-TD_CAPITAL_PREFORMATTED=//*[contains(@class,'rich-table-row')]{0,choice,0\#|1\#[{0}]}/*[contains(@class,'rich-table-cell')][2]
+TH_STATE=jquery=th[class*=subheadercell]:eq(0)
+TH_CAPITAL=jquery=th[class*=subheadercell]:eq(1)
+IMG_SRC_SORT_ICON_RELATIVE={0} img at src
+TD_STATE_PREFORMATTED=jquery\=tr[class*\=rich-table-row]{0,choice,0\#|1\#\:nth-child({0})} > td\:eq(0)
+TD_CAPITAL_PREFORMATTED=jquery\=tr[class*\=rich-table-row]{0,choice,0\#|1\#\:nth-child({0})} > td\:eq(1)
+
 # External Sorting
-SELECT_COLUMN_PREFORMATTED=//*[@class\='equals' and text()\='{0}']/../*[2]/*
-SELECT_ORDER_PREFORMATTED=//*[@class\='equals' and text()\='{0}']/../*[3]/*
-BUTTON_SORT=//*[@type\='button' and @value\='Sort Table']
-TD_PREFORMATTED_1=//*[contains(@class,'rich-table-row')]{0,choice,0\#|1\#[{0}]}/*[contains(@class,'rich-table-cell')][1]
-TD_PREFORMATTED_2=//*[contains(@class,'rich-table-row')]{0,choice,0\#|1\#[{0}]}/*[contains(@class,'rich-table-cell')][2]
-TD_PREFORMATTED_3=//*[contains(@class,'rich-table-row')]{0,choice,0\#|1\#[{0}]}/*[contains(@class,'rich-table-cell')][4]
+SELECT_COLUMN_PREFORMATTED=jquery=form tr:has(td:textEquals({0})) select:eq(0)
+SELECT_ORDER_PREFORMATTED=jquery=form tr:has(td:textEquals({0})) select:eq(1)
+BUTTON_SORT=jquery=input[value=Sort Table]
+TD_PREFORMATTED_1=jquery\=tr[class*\=rich-table-row]{0,choice,0\#|1\#\:nth-child({0})} > td\:eq(0)
+TD_PREFORMATTED_2=jquery\=tr[class*\=rich-table-row]{0,choice,0\#|1\#\:nth-child({0})} > td\:eq(1)
+TD_PREFORMATTED_3=jquery\=tr[class*\=rich-table-row]{0,choice,0\#|1\#\:nth-child({0})} > td\:eq(3)

Modified: branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/resources/org/jboss/richfaces/integrationTest/tree/messages.properties
===================================================================
--- branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/resources/org/jboss/richfaces/integrationTest/tree/messages.properties	2009-11-12 03:25:11 UTC (rev 15870)
+++ branches/community/3.3.X/samples/richfaces-demo/functional-test/src/test/resources/org/jboss/richfaces/integrationTest/tree/messages.properties	2009-11-12 12:07:03 UTC (rev 15871)
@@ -1,17 +1,17 @@
 # TreeTestCase -- first tab
-NODE_1_1_1_LABEL=Yes Sir, I Can Boogie
-NODE_1_1_2_LABEL=Sorry, i`m A Lady
-NODE_1_1_3_LABEL=A Quien Le Importa
-NODE_1_1_4_LABEL=The Devil Send You To Laredo
-NODE_1_1_5_LABEL=Ni Mas Ni Menos
-NODE_1_1_6_LABEL=Parlez-vous Francais?
-NODE_1_1_7_LABEL=Que Naadie Sepa Mi Sufrir
-NODE_1_1_8_LABEL=Borriquito
-NODE_1_1_9_LABEL=Love Me Please Love Me
-NODE_1_1_10_LABEL=Paloma Blanca
-NODE_1_1_11_LABEL=Me Tienes Desenganada
-NODE_1_1_LABEL=Grand Collection
-CHILDREN_COUNT_1_1=14
+NODE_1_1_1_LABEL=The Road To Hell (Part 1)
+NODE_1_1_2_LABEL=The Road To Hell (Part 2)
+NODE_1_1_3_LABEL=You Must Be Evil
+NODE_1_1_4_LABEL=Texas
+NODE_1_1_5_LABEL=Looking For A Rainbow
+NODE_1_1_6_LABEL=Your Warm And Tender Love
+NODE_1_1_7_LABEL=Daytona
+NODE_1_1_8_LABEL=That`s What They Always Say
+NODE_1_1_9_LABEL=Let`s Dance
+NODE_1_1_10_LABEL=I Just Wanna Be With You
+NODE_1_1_11_LABEL=Tell Me There`s A Heaven
+NODE_1_1_LABEL=The Road To Hell
+CHILDREN_COUNT_1_1=11
 CHILDREN_COUNT_TOP=4
 
 



More information about the richfaces-svn-commits mailing list