Package org.seleniuminspector.openfaces

Examples of org.seleniuminspector.openfaces.DataTableInspector


     @Test
    public void testJSFC_2478Fix() {
        testAppFunctionalPage("/requests/JSFC-2478.jsf");

        /* check DataTable without select all checkbox tag */
        DataTableInspector withoutSelectAllCheckboxDataTable = dataTable("formID:withoutSelectAllCheckboxDataTableID");
        for (int rowIndex = 0; rowIndex < 8; rowIndex++) {
            withoutSelectAllCheckboxDataTable.bodyRow(rowIndex).cell(0).click();
            withoutSelectAllCheckboxDataTable.bodyRow(rowIndex).cell(0).assertChecked(true);
        }
        for (int rowIndex = 0; rowIndex < 8; rowIndex++) {
            withoutSelectAllCheckboxDataTable.bodyRow(rowIndex).cell(0).click();
            withoutSelectAllCheckboxDataTable.bodyRow(rowIndex).cell(0).assertChecked(false);
        }

        /* check DataTable with select all checkbox tag */
        DataTableInspector withSelectAllCheckboxDataTable = dataTable("formID:withSelectAllCheckboxDataTableID");
        element("formID:withSelectAllCheckboxDataTableID:selectAllHeaderID").click();
        for (int rowIndex = 0; rowIndex < 8; rowIndex++) {
            withSelectAllCheckboxDataTable.bodyRow(rowIndex).cell(0).assertChecked(true);
        }
        element("formID:withSelectAllCheckboxDataTableID:selectAllFooterID").click();
        for (int rowIndex = 0; rowIndex < 8; rowIndex++) {
            withSelectAllCheckboxDataTable.bodyRow(rowIndex).cell(0).assertChecked(false);
        }
    }
View Full Code Here


    private void filteringComboBox(LoadingMode loadingMode) {
        testAppFunctionalPage("/components/datatable/datatableFilteringComboBox.jsf");

        TabSetInspector loadingModes = tabSet("formID:loadingModes");

        DataTableInspector filterableDataTable = dataTable("formID:filterableDataTable_comboBox");
        if (loadingMode instanceof ServerLoadingMode) {
            loadingModes.tabs().get(1).clickAndWait();
        }

        filterableDataTable.setLoadingMode(loadingMode);
        filterableDataTable.column(0).filter(ComboBoxFilterInspector.class, "formID:filterableDataTable_comboBox:filter1").makeFiltering("col3_row1");

        element("formID:filterableDataTable_comboBox:filterableDataTable_comboBox_firstHeader")
                .assertText("first column header");
        element("formID:filterableDataTable_comboBox:filterableDataTable_comboBox_secondHeader")
                .assertText("second column header");
View Full Code Here

    private void filteringDropDown(LoadingMode loadingMode) {
        testAppFunctionalPage("/components/datatable/datatableFilteringDropDownField.jsf");

        TabSetInspector loadingModes = tabSet("formID:loadingModes");
        DataTableInspector filterableDataTable = dataTable("formID:filterableDataTable_dropDownField");
        if (loadingMode instanceof ServerLoadingMode) {
            loadingModes.tabs().get(1).clickAndWait();
        }
        filterableDataTable.setLoadingMode(loadingMode);

        filterableDataTable.column(0).filter(DropDownFieldFilterInspector.class, "formID:filterableDataTable_dropDownField:filter1").makeFiltering("col3_row1");

        element("formID:filterableDataTable_dropDownField:filterableDataTable_dropDownField_firstHeader")
                .assertText("first column header");
        element("formID:filterableDataTable_dropDownField:filterableDataTable_dropDownField_secondHeader")
                .assertText("second column header");
View Full Code Here

        TabSetInspector loadingModes = tabSet("formID:loadingModes");
        if (loadingMode instanceof ServerLoadingMode) {
            loadingModes.tabs().get(1).clickAndWait();
        }

        DataTableInspector combinationDataTable = dataTable("formID:featuresCombinationDataTableID");
        if (loadingMode instanceof ServerLoadingMode) {
            combinationDataTable.setLoadingMode(ServerLoadingMode.getInstance());
        }

        //perform filtering using comboBox filter kind
        combinationDataTable.column(2).filter(ComboBoxFilterInspector.class, "formID:featuresCombinationDataTableID:filter2").makeFiltering("criterion_1,2,3");

        //get reference data for checking filtered data
        List referenceDataAfterComboboxFilter = DataTableUtils.getFilteredValuesFeaturesCombinationTable("criterion_1,2,3");
        //get actual data

        int rowsQuantity = combinationDataTable.rowCount();
        List<DataTableUtils.FeaturesCombinationTestDataTableItem> actualDataAfterComboboxFiltering = new ArrayList<DataTableUtils.FeaturesCombinationTestDataTableItem>();
        for (int i = 0; i < rowsQuantity; i++) {
            ElementInspector firstBody = element("formID:featuresCombinationDataTableID:" + i + ":featuresCombinationDataTableID_firstBody");
            ElementInspector secondBody = element("formID:featuresCombinationDataTableID:" + i + ":featuresCombinationDataTableID_secondBody");
            ElementInspector thirdBody = element("formID:featuresCombinationDataTableID:" + i + ":featuresCombinationDataTableID_thirdBody");
            ElementInspector fourthBody = element("formID:featuresCombinationDataTableID:" + i + ":featuresCombinationDataTableID_fourthBody");

            actualDataAfterComboboxFiltering.add(new DataTableUtils.FeaturesCombinationTestDataTableItem(firstBody.text(),
                    secondBody.text(), thirdBody.text(), fourthBody.text()));

            DataTableUtils.FeaturesCombinationTestDataTableItem featuresCombinationTestDataTableItem =
                    (DataTableUtils.FeaturesCombinationTestDataTableItem) referenceDataAfterComboboxFilter.get(i);
            firstBody.assertText(featuresCombinationTestDataTableItem.getFirstColumn());
            secondBody.assertText(featuresCombinationTestDataTableItem.getSecondColumn());
            thirdBody.assertText(featuresCombinationTestDataTableItem.getThirdColumn());
            fourthBody.assertText(featuresCombinationTestDataTableItem.getFourthColumn());
        }

        //select first row
        element("formID:featuresCombinationDataTableID:0:featuresCombinationDataTableID_firstBody").click();
        combinationDataTable.checkSelectedIndex(0);

        //sort by first column
        combinationDataTable.column(1).makeSorting();
        //check data after sorting by first column
        checkDataAfterSorting(rowsQuantity, actualDataAfterComboboxFiltering);
        //check selection after sorting by first column
        combinationDataTable.checkSelectedIndex(0);

        //sort by second column
        combinationDataTable.column(2).makeSorting();
        //check data after sorting by second column
        checkDataAfterSorting(rowsQuantity, actualDataAfterComboboxFiltering);
        //check selection after sorting by second column
        combinationDataTable.checkSelectedIndex(0);

        //sort by third column
        combinationDataTable.column(3).makeSorting();
        combinationDataTable.column(3).makeSorting();
        //check data after sorting by third column
        Collections.reverse(actualDataAfterComboboxFiltering);
        checkDataAfterSorting(rowsQuantity, actualDataAfterComboboxFiltering);
        //check selection after sorting by third column
        combinationDataTable.checkSelectedIndex(2);

        //sort by fourth column
        combinationDataTable.column(4).makeSorting();
        //check data after sorting by fourth column
        Collections.reverse(actualDataAfterComboboxFiltering);
        checkDataAfterSorting(rowsQuantity, actualDataAfterComboboxFiltering);
        //check selection after sorting by fourth column
        combinationDataTable.checkSelectedIndex(0);

        /* perform filtering using dropDown filter */
        combinationDataTable.column(2).filter(ComboBoxFilterInspector.class, "formID:featuresCombinationDataTableID:filter2").makeFiltering("<All>");

        combinationDataTable.checkSelectedIndex(0);
        combinationDataTable.column(3).filter(DropDownFieldFilterInspector.class, "formID:featuresCombinationDataTableID:filter3").makeFiltering("criterion_1,4,7");

        combinationDataTable.checkSelectedIndex(0);

        //get reference data for checking filtered data
        List referenceDataAfterDropDownFilter = DataTableUtils.getFilteredValuesFeaturesCombinationTable("criterion_1,4,7");
        int rowsQuantityDropDown = combinationDataTable.rowCount();
        for (int i = 0; i < rowsQuantityDropDown; i++) {
            DataTableUtils.FeaturesCombinationTestDataTableItem featuresCombinationTestDataTableItem = (DataTableUtils.FeaturesCombinationTestDataTableItem) referenceDataAfterDropDownFilter.get(i);
            element("formID:featuresCombinationDataTableID:" + i + ":featuresCombinationDataTableID_firstBody")
                    .assertText(featuresCombinationTestDataTableItem.getFirstColumn());
            element("formID:featuresCombinationDataTableID:" + i + ":featuresCombinationDataTableID_secondBody")
                    .assertText(featuresCombinationTestDataTableItem.getSecondColumn());
            element("formID:featuresCombinationDataTableID:" + i + ":featuresCombinationDataTableID_thirdBody")
                    .assertText(featuresCombinationTestDataTableItem.getThirdColumn());
            element("formID:featuresCombinationDataTableID:" + i + ":featuresCombinationDataTableID_fourthBody")
                    .assertText(featuresCombinationTestDataTableItem.getFourthColumn());
        }

        /* perform filtering using searchField filter */
        combinationDataTable.checkSelectedIndex(0);

        combinationDataTable.column(1).filter(InputTextFilterInspector.class, "formID:featuresCombinationDataTableID:filter1").makeFiltering("id_1");

        combinationDataTable.checkSelectedIndex(0);

        //get reference data for checking filtered data
        List<DataTableUtils.FeaturesCombinationTestDataTableItem> referenceDataAfterSearchFieldFilter = DataTableUtils.getFilteredValuesFeaturesCombinationTable("id_1");
        DataTableUtils.FeaturesCombinationTestDataTableItem featuresCombinationTestDataTableItem = referenceDataAfterSearchFieldFilter.get(0);
        element("formID:featuresCombinationDataTableID:0:featuresCombinationDataTableID_firstBody")
View Full Code Here

        List<DataTableUtils.TestDataTableItem> hintLabelDataTableValues = new ArrayList<DataTableUtils.TestDataTableItem>(DataTableUtils.TWO_STRING_COLUMN_LIST);

        /* sorting, pagination, single selection */

        //check is hinLabel in first column header visible
        DataTableInspector hintLabelDataTable = dataTable("fn:hintLabelDataTable");
        HintLabelInspector headerHintLabel1 = hintLabel("fn:hintLabelDataTable:header_hintLabel_1");
        headerHintLabel1.checkVisibilityAndContent("Header hint label value 1", "Header hint label title 1");
        hintLabel("fn:hintLabelDataTable:header_hintLabel_2")
                .checkVisibilityAndContent("Header hint label value 2", "Header hint label title 2");

        // todo: check header cells when iterating over each page

        //click at hinlLabel placed in the header to perform sorting

        hintLabelDataTable.column(1).makeSorting();


        for (int pageNo = 1; pageNo <= 2; pageNo++) {
            //execute pagination from first to third page verify data on every page
            List<DataTableUtils.TestDataTableItem> currentPageValues = DataTableUtils.getCurrentPageFromReferenceValues(hintLabelDataTableValues, pageNo);
            for (int rowIndex = 0; rowIndex < 3; rowIndex++) {
                DataTableUtils.TestDataTableItem currentReferenceRow = currentPageValues.get(rowIndex);

                HintLabelInspector bodyHintLabel1 = hintLabel("fn:hintLabelDataTable:" + rowIndex + ":body_hinLabel_1");
                bodyHintLabel1.clickAndWait();
                bodyHintLabel1.hint().mouseOut();
                bodyHintLabel1.checkVisibilityAndContent(currentReferenceRow.getFirstColumn(), currentReferenceRow.getSecondColumn());
                bodyHintLabel1.hint().mouseOut();
                hintLabel("fn:hintLabelDataTable:" + rowIndex + ":body_hinLabel_2")
                        .checkVisibilityAndContent(currentReferenceRow.getSecondColumn(), currentReferenceRow.getFirstColumn());

                // check is single selection performed well
                bodyHintLabel1.clickAndWait();
                bodyHintLabel1.hint().mouseOut();
                hintLabelDataTable.checkSelectedIndex(rowIndex);
            }
            // check footer hintLabels
            hintLabel("fn:hintLabelDataTable:footer_hintLabel_1")
                    .checkVisibilityAndContent("Footer hint label value 1", "Footer hint label title 1");
            hintLabel("fn:hintLabelDataTable:footer_hintLabel_2")
                    .checkVisibilityAndContent("Footer hint label value 2", "Footer hint label title 2");

            dataTablePaginator("fn:hintLabelDataTable:hintLabelDataTablePaginator").nextPage()
                    .clickAndWait();
        }

        /* filtering and filtered data verification */
        final String filterCriterion = "col4_row1";
        hintLabelDataTable.column(2).filter(InputTextFilterInspector.class, "fn:hintLabelDataTable:filter1").makeFiltering(filterCriterion);
        HintLabelInspector hintLabel = hintLabel("fn:hintLabelDataTable:0:body_hinLabel_2");
        hintLabel.mouseOver();
        sleep(250);
        hintLabel.assertText(filterCriterion);
        hintLabel.hint().assertText("col3_row1");
View Full Code Here

     @Test
    public void testDataTableInside() throws InterruptedException {
        testAppFunctionalPage("/components/foldingpanel/dataTableIn.jsf");
        foldingPanel("fn:dataTableFoldingPanel").toggle().clickAndWait(OpenFacesAjaxLoadingMode.getInstance());

        DataTableInspector dataTable = dataTable("fn:dataTableID");
        dataTable.makeAndCheckSingleSelection(1, 1);
        dataTable.column(0).makeSorting();
        dataTablePaginator("fn:dataTableID:dataTablePaginator_A4J").makePagination(3);
        dataTable.column(1).filter(InputTextFilterInspector.class, "fn:dataTableID:filter1").makeFiltering("col2_row1");
    }
View Full Code Here

     @Test
    public void testSingleSelectionAndKeyboardNavigation() {
        testAppFunctionalPage("/components/datatable/datatableSingleSelection.jsf");

        //check keyboard navigation for single selection
        DataTableInspector singleSelectionDataTable = dataTable("formID:singleSelectionDataTable");
        Actions click= new Actions(getDriver()).moveToElement(
                    getDriver().findElement(By.xpath(singleSelectionDataTable.bodyRow(0).getXPath())))
                    .click();
        click.build().perform();
        for (int i = 0; i < 8; i++) {
            Actions keyDown = new Actions(getDriver()).sendKeys(Keys.ARROW_DOWN);
            keyDown.build().perform();
            singleSelectionDataTable.checkSelectedIndex(i + 1);
        }

        //check selection with the mouse help
        Random rand = new Random();
        for (int i = 0; i < 10; i++) {
            singleSelectionDataTable.makeAndCheckSingleSelection(0, rand.nextInt(8));
        }

        //check rowData and rowIndex attributes
        DataTableInspector withRowDataTable = dataTable("formID:withRowDataID");
        withRowDataTable.checkSelectedIndex(0);
        DataTableInspector withRowIndexTable = dataTable("formID:withRowIndexID");
        withRowIndexTable.checkSelectedIndex(3);
        element("formID:withRowDataID:2:withRowData_firstBody").click();
        element("formID:withRowIndexID:0:withRowIndex_firstBody").click();
        element("formID:submitID").clickAndWait();
        withRowDataTable.checkSelectedIndex(2);
        withRowIndexTable.checkSelectedIndex(0);
    }
View Full Code Here

    //todo: row selection checking with 'Ctrl' key is absent
     @Test
    public void testMultipleSelectionAndKeyboardNavigation() {
        testAppFunctionalPage("/components/datatable/datatableMultipleSelection.jsf");

        DataTableInspector multipleSelectionDataTable = dataTable("formID:multipleSelectionDataTable");

        //check keyboard navigation for multiple selection
        multipleSelectionDataTable.bodyRow(0).click();
        for (int i = 0; i < 9; i++) {
            createEvent(multipleSelectionDataTable, null, EventType.KEY, "keypress", 40, true);
        }

        multipleSelectionDataTable.checkSelectedIndexes(0, 1, 2, 3, 4, 5, 6, 7, 8);
        for (int i = 0; i < 9; i++) {
            createEvent(multipleSelectionDataTable, null, EventType.KEY, "keypress", 38, true);
        }

        multipleSelectionDataTable.checkSelectedIndexes(0);
        //check selection with the mouse help
        for (int i = 0; i < 9; i++) {
            element("formID:multipleSelectionDataTable:" + i + ":multipleSelectionDataTable_firstBody").click();
        }

        multipleSelectionDataTable.checkSelectedIndexes(8);

        for (int i = 1; i < 9; i++) {
            element("formID:multipleSelectionDataTable:" + i + ":multipleSelectionDataTable_firstBody").click();
            multipleSelectionDataTable.checkSelectedIndexes(i);
        }

        //check rowDatas and rowIndexes attributes
        DataTableInspector withRowDataDataTable = dataTable("formID:withRowDatasDataTableID");
        withRowDataDataTable.checkSelectedIndexes(4, 2);
        DataTableInspector withRowIndexesDataTable = dataTable("formID:withRowIndexesDataTableID");
        withRowIndexesDataTable.checkSelectedIndexes(1, 3, 5);

        element("formID:withRowDatasDataTableID:0:withRowDatasDataTableID_firstBody").click();
        for (int i = 0; i < 3; i++) {
            createEvent(withRowDataDataTable, null, EventType.KEY, "keypress", 40, true);
        }
        element("formID:withRowIndexesDataTableID:0:withRowIndexesDataTable_firstBody").click();
        for (int i = 0; i < 3; i++) {
            createEvent(withRowIndexesDataTable, null, EventType.KEY, "keypress", 40, true);
        }
        withRowDataDataTable.checkSelectedIndexes(0, 1, 2, 3);
        withRowIndexesDataTable.checkSelectedIndexes(0, 1, 2, 3);
    }
View Full Code Here

     @Test
    public void testSelectAllCheckboxInsideCheckboxColumnFunctionality() {
        testAppFunctionalPage("/components/datatable/datatableSelectAllCheckbox_chb.jsf");

        DataTableInspector dataTable = dataTable("formID:checkboxColumnDataTable");

        element("formID:checkboxColumnDataTable:selectAllHeaderID").click();
        for (int rowIndex = 0; rowIndex < 8; rowIndex++) {
            dataTable.bodyRow(rowIndex).cell(0).assertChecked(true);
//      assertTableSelectionChecked("formID:checkboxColumnDataTable", rowIndex, 0);
        }
        element("formID:checkboxColumnDataTable:selectAllFooterID").click();
        for (int rowIndex = 0; rowIndex < 8; rowIndex++) {
            dataTable.bodyRow(rowIndex).cell(0).assertChecked(false);
        }
    }
View Full Code Here

     @Test
    public void testSelectAllCheckboxInsideSelectionColumnFunctionality() {
        testAppFunctionalPage("/components/datatable/datatableSelectAllCheckbox__sel.jsf");

        DataTableInspector selectionColumnDataTable = dataTable("formID:selectionColumnDataTableID");

        ElementInspector selectAllHeader = element("formID:selectionColumnDataTableID:selectAllHeaderID");
        selectAllHeader.click();
        for (int rowIndex = 0; rowIndex < 8; rowIndex++) {
            selectionColumnDataTable.bodyRow(rowIndex).cell(0).assertChecked(true);
        }
        selectionColumnDataTable.checkSelectedIndexes(0, 1, 2, 3, 4, 5, 6, 7, 8);

        element("formID:selectionColumnDataTableID:selectAllFooterID").click();
        for (int rowIndex = 0; rowIndex < 8; rowIndex++) {
            selectionColumnDataTable.bodyRow(rowIndex).cell(0).assertChecked(false);
        }
        selectionColumnDataTable.evalExpression("selectAllRows();");
        String isHeaderChecked = selectAllHeader.evalExpression("isSelected();");
        assertEquals(isHeaderChecked, "true");
        String isFooterChecked = selectAllHeader.evalExpression("isSelected();");
        assertEquals(isFooterChecked, "true");
    }
View Full Code Here

TOP

Related Classes of org.seleniuminspector.openfaces.DataTableInspector

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.