Examples of SearchResultsPane


Examples of org.xwiki.extension.test.po.SearchResultsPane

    @Test
    public void testPagination()
    {
        ExtensionAdministrationPage adminPage = ExtensionAdministrationPage.gotoPage().clickCoreExtensionsSection();

        SearchResultsPane searchResults = adminPage.getSearchResults();
        Assert.assertNull(searchResults.getNoResultsMessage());
        Assert.assertEquals(20, searchResults.getDisplayedResultsCount());

        PaginationFilterPane pagination = searchResults.getPagination();
        Assert.assertEquals(1 + pagination.getResultsCount() / 20, pagination.getPageCount());
        Assert.assertEquals("1 - 20", pagination.getCurrentRange());
        Assert.assertEquals(1, pagination.getCurrentPageIndex());
        Assert.assertFalse(pagination.hasPreviousPage());
        Assert.assertTrue(pagination.hasNextPage());
        Assert.assertTrue(pagination.getPageCount() > 5);
        Assert.assertTrue(pagination.getResultsCount() > 100);
        String firstExtensionName = searchResults.getExtension(0).getName();

        pagination = pagination.gotoPage(4);
        searchResults = new SearchResultsPane();
        Assert.assertEquals(20, searchResults.getDisplayedResultsCount());
        Assert.assertEquals("61 - 80", pagination.getCurrentRange());
        Assert.assertEquals(4, pagination.getCurrentPageIndex());
        Assert.assertTrue(pagination.hasNextPage());
        String secondExtensionName = searchResults.getExtension(0).getName();
        Assert.assertFalse(firstExtensionName.equals(secondExtensionName));

        pagination = pagination.previousPage();
        searchResults = new SearchResultsPane();
        Assert.assertEquals(20, searchResults.getDisplayedResultsCount());
        Assert.assertEquals("41 - 60", pagination.getCurrentRange());
        Assert.assertEquals(3, pagination.getCurrentPageIndex());
        String thirdExtensionName = searchResults.getExtension(0).getName();
        Assert.assertFalse(firstExtensionName.equals(thirdExtensionName));
        Assert.assertFalse(secondExtensionName.equals(thirdExtensionName));

        pagination = pagination.nextPage();
        searchResults = new SearchResultsPane();
        Assert.assertEquals(20, searchResults.getDisplayedResultsCount());
        Assert.assertEquals("61 - 80", pagination.getCurrentRange());
        Assert.assertEquals(4, pagination.getCurrentPageIndex());
        Assert.assertEquals(secondExtensionName, searchResults.getExtension(0).getName());

        pagination = pagination.gotoPage(pagination.getPageCount());
        searchResults = new SearchResultsPane();
        Assert.assertEquals(pagination.getResultsCount() % 20, searchResults.getDisplayedResultsCount());
        Assert.assertEquals(pagination.getPageCount(), pagination.getCurrentPageIndex());
        Assert.assertFalse(pagination.hasNextPage());
        Assert.assertTrue(pagination.hasPreviousPage());
    }
View Full Code Here

Examples of org.xwiki.extension.test.po.SearchResultsPane

        // Check if the tip is displayed.
        Assert.assertEquals("search extension...", searchBar.getSearchInput().getAttribute("placeholder"));
        // Check that the input is empty
        Assert.assertEquals("", searchBar.getSearchInput().getAttribute("value"));

        SearchResultsPane searchResults = searchBar.search("XWiki Rendering");
        Assert.assertTrue(searchResults.getPagination().getResultsCount() < coreExtensionCount);

        // Make sure the search input is not cleared.
        searchBar = new SimpleSearchPane();
        Assert.assertEquals("XWiki Rendering", searchBar.getSearchInput().getAttribute("value"));

        Assert.assertNull(searchResults.getNoResultsMessage());

        // Check that the result matches the search query.
        ExtensionPane extension = searchResults.getExtension(RandomUtils.nextInt(20));
        Assert.assertTrue(extension.getName().toLowerCase().contains("rendering"));
        Assert.assertEquals("core", extension.getStatus());

        // Test search query with no results.
        searchResults = new SimpleSearchPane().search("blahblah");
        Assert.assertEquals(0, searchResults.getDisplayedResultsCount());
        Assert.assertNull(searchResults.getPagination());
        Assert.assertEquals("There were no extensions found matching 'blahblah'. Try different keywords. "
            + "Alternatively, if you know the identifier and the version of the extension you're "
            + "looking for, you can use the Advanced Search form above.", searchResults.getNoResultsMessage());

        // Test a search query with only a few results (only one page).
        searchResults = searchBar.search("restlet");
        Assert.assertNull(searchResults.getNoResultsMessage());
        Assert.assertNull(searchResults.getPagination());
        Assert.assertTrue(searchResults.getDisplayedResultsCount() > 1);

        extension = searchResults.getExtension(0);
        Assert.assertEquals("core", extension.getStatus());
        Assert.assertTrue(extension.getName().toLowerCase().contains("restlet"));
    }
View Full Code Here

Examples of org.xwiki.extension.test.po.SearchResultsPane

    @Test
    public void testAdvancedSearch()
    {
        ExtensionAdministrationPage adminPage = ExtensionAdministrationPage.gotoPage().clickCoreExtensionsSection();

        SearchResultsPane searchResults = adminPage.getSearchBar().search("restlet");
        String version = searchResults.getExtension(0).getVersion();

        searchResults = new SimpleSearchPane().clickAdvancedSearch().search("org.restlet.jse:org.restlet", version);
        Assert.assertEquals(1, searchResults.getDisplayedResultsCount());
        Assert.assertNull(searchResults.getNoResultsMessage());
        ExtensionPane extension = searchResults.getExtension(0);
        Assert.assertEquals("core", extension.getStatus());
        Assert.assertTrue(extension.getName().toLowerCase().contains("restlet"));
        Assert.assertEquals(version, extension.getVersion());

        searchResults = new SimpleSearchPane().clickAdvancedSearch().search("foo", "bar");
        Assert.assertEquals(0, searchResults.getDisplayedResultsCount());
        Assert.assertNull(searchResults.getPagination());
        Assert.assertEquals("We couldn't find any extension with id 'foo' and version 'bar'. "
            + "Make sure you have the right extension repositories configured.", searchResults.getNoResultsMessage());

        // Test cancel advanced search.
        AdvancedSearchPane advancedSearchPane = new SimpleSearchPane().clickAdvancedSearch();
        advancedSearchPane.getIdInput().sendKeys("id");
        Assert.assertTrue(advancedSearchPane.getVersionInput().isDisplayed());
View Full Code Here

Examples of org.xwiki.extension.test.po.SearchResultsPane

        adminPage = adminPage.clickInstalledExtensionsSection();
        repositorySelect = adminPage.getSearchBar().getRepositorySelect();
        Assert.assertEquals("Installed extensions", repositorySelect.getFirstSelectedOption().getText());

        // Check that a remote extension appears only in the list of "All Extensions".
        SearchResultsPane searchResults = adminPage.getSearchBar().search("alice");
        Assert.assertNull(searchResults.getExtension(extensionId));

        new SimpleSearchPane().getRepositorySelect().selectByVisibleText("All Extensions");
        adminPage = new ExtensionAdministrationPage();
        adminPage.waitUntilPageIsLoaded();
        // The value of the search input must be preserved when we switch the repository.
        Assert.assertEquals("alice", adminPage.getSearchBar().getSearchInput().getAttribute("value"));
        Assert.assertNotNull(adminPage.getSearchResults().getExtension(extensionId));
        Assert.assertNull(new SimpleSearchPane().selectRepository("local").getExtension(extensionId));

        // Check that an installed extension appears also in "Installed Extensions" and "Local Extensions".
        getExtensionTestUtils().install(extensionId);
        adminPage = ExtensionAdministrationPage.gotoPage().clickInstalledExtensionsSection();
        searchResults = adminPage.getSearchBar().search("alice");
        Assert.assertNotNull(searchResults.getExtension(extensionId));
        Assert.assertNotNull(new SimpleSearchPane().selectRepository("local").getExtension(extensionId));
        Assert.assertNotNull(new SimpleSearchPane().selectRepository("").getExtension(extensionId));

        // Check local extension.
        getExtensionTestUtils().uninstall(extensionId.getId(), true);
        adminPage = ExtensionAdministrationPage.gotoPage().clickInstalledExtensionsSection();
        searchResults = adminPage.getSearchBar().search("alice");
        Assert.assertNull(searchResults.getExtension(extensionId));
        Assert.assertNotNull(new SimpleSearchPane().selectRepository("local").getExtension(extensionId));
        Assert.assertNotNull(new SimpleSearchPane().selectRepository("").getExtension(extensionId));
    }
View Full Code Here

Examples of org.xwiki.extension.test.po.SearchResultsPane

        Assert.assertTrue(content.contains("Bob says hi!"));

        // Check the list of installed extensions.
        adminPage = ExtensionAdministrationPage.gotoPage().clickInstalledExtensionsSection();

        SearchResultsPane searchResults = adminPage.getSearchBar().search("bob");
        Assert.assertEquals(1, searchResults.getDisplayedResultsCount());
        extensionPane = searchResults.getExtension(0);
        Assert.assertEquals("installed", extensionPane.getStatus());
        Assert.assertEquals("Installed", extensionPane.getStatusMessage());
        Assert.assertEquals(dependencyId, extensionPane.getId());
        Assert.assertNotNull(extensionPane.getUninstallButton());

        searchResults = new SimpleSearchPane().search("alice");
        Assert.assertEquals(1, searchResults.getDisplayedResultsCount());
        extensionPane = searchResults.getExtension(0);
        Assert.assertEquals("installed", extensionPane.getStatus());
        Assert.assertEquals("Installed", extensionPane.getStatusMessage());
        Assert.assertEquals(extensionId, extensionPane.getId());
        Assert.assertNotNull(extensionPane.getUninstallButton());
View Full Code Here

Examples of org.xwiki.extension.test.po.SearchResultsPane

        Assert.assertFalse(getUtil().pageExists("ExtensionTest", "Alice"));
        Assert.assertTrue(getUtil().pageExists("ExtensionTest", "Bob"));

        // Check the list of installed extensions. It should contain only the second extension.
        adminPage = ExtensionAdministrationPage.gotoPage().clickInstalledExtensionsSection();
        SearchResultsPane searchResults = adminPage.getSearchBar().search("alice");
        Assert.assertEquals(0, searchResults.getDisplayedResultsCount());
        Assert.assertNotNull(searchResults.getNoResultsMessage());

        searchResults = new SimpleSearchPane().search("bob");
        Assert.assertEquals(1, searchResults.getDisplayedResultsCount());
        extensionPane = searchResults.getExtension(0);
        Assert.assertEquals("installed", extensionPane.getStatus());
        Assert.assertEquals(dependencyId, extensionPane.getId());
    }
View Full Code Here

Examples of org.xwiki.extension.test.po.SearchResultsPane

        queryParameters.put("XWiki.WikiMacroClass_0_code", "{{info}}Alice says hello!{{/info}}");
        getUtil().gotoPage("ExtensionTest", "Alice", "save", queryParameters);

        // Initiate the upgrade process.
        ExtensionAdministrationPage adminPage = ExtensionAdministrationPage.gotoPage().clickAddExtensionsSection();
        SearchResultsPane searchResults =
            adminPage.getSearchBar().clickAdvancedSearch().search(extensionId, newVersion);
        ExtensionPane extensionPane = searchResults.getExtension(0);
        extensionPane = extensionPane.upgrade().confirm();

        // Check the merge conflict UI.
        Assert.assertEquals("loading", extensionPane.getStatus());
        Assert.assertNull(extensionPane.getStatusMessage());

        ProgressBarPane progressBar = extensionPane.getProgressBar();
        Assert.assertEquals(83, progressBar.getPercent());
        Assert.assertEquals("Conflict between [@@ -1,1 +1,1 @@] and [@@ -1,1 +1,1 @@]", progressBar.getMessage());

        ExtensionProgressPane progressPane = extensionPane.openProgressSection();
        WebElement jobLogLabel = progressPane.getJobLogLabel();
        Assert.assertEquals("INSTALL LOG".toLowerCase(), jobLogLabel.getText().toLowerCase());
        // The job log is collapsed when the job is waiting for user input so we need to expand it before asserting its
        // content (otherwise #getText() returns the empty string because the text is not visible).
        jobLogLabel.click();
        List<LogItemPane> upgradeLog = progressPane.getJobLog();
        LogItemPane lastLogItem = upgradeLog.get(upgradeLog.size() - 1);
        Assert.assertEquals("loading", lastLogItem.getLevel());
        Assert.assertEquals(progressBar.getMessage(), lastLogItem.getMessage());

        MergeConflictPane mergeConflictPane = progressPane.getMergeConflict();
        ChangesPane changesPane = mergeConflictPane.getChanges();
        Assert.assertFalse(changesPane.getContentChanges().isEmpty());
        Assert.assertEquals("@@ -1,1 +1,1 @@\n-<del>Test</del> macro.\n+<ins>A</ins> <ins>cool </ins>macro.",
            changesPane.getObjectChanges("XWiki.WikiMacroClass", 0, "Macro description"));

        mergeConflictPane.getFromVersionSelect().selectByVisibleText("Previous version");
        mergeConflictPane.getToVersionSelect().selectByVisibleText("Current version");
        mergeConflictPane = mergeConflictPane.clickShowChanges();

        changesPane = mergeConflictPane.getChanges();
        StringBuilder expectedDiff = new StringBuilder();
        expectedDiff.append("@@ -1,9 +1,9 @@\n");
        expectedDiff.append("-= Usage =\n");
        expectedDiff.append("+=<ins>=</ins> Usage =<ins>=</ins>\n");
        expectedDiff.append(" \n");
        expectedDiff.append("-{{code}}\n");
        expectedDiff.append("+{{code<ins> language=\"none\"</ins>}}\n");
        expectedDiff.append(" {{alice/}}\n");
        expectedDiff.append(" {{/code}}\n");
        expectedDiff.append(" \n");
        expectedDiff.append("-= <del>Res</del>u<del>l</del>t =\n");
        expectedDiff.append("+=<ins>=</ins> <ins>O</ins>ut<ins>put</ins> =<ins>=</ins>\n");
        expectedDiff.append(" \n");
        expectedDiff.append(" {{alice/}}");
        Assert.assertEquals(expectedDiff.toString(), changesPane.getContentChanges());
        Assert.assertEquals(1, changesPane.getObjectChangeSummaries().size());
        Assert.assertEquals(
            "@@ -1,1 +1,1 @@\n-Alice says hello!\n+<ins>{{info}}</ins>Alice says hello!<ins>{{/info}}</ins>",
            changesPane.getObjectChanges("XWiki.WikiMacroClass", 0, "Macro code"));

        // Finish the merge.
        mergeConflictPane.getVersionToKeepSelect().selectByValue("NEXT");
        // FIXME: We get the extension pane from the search results because it is reloaded when we compare the versions.
        extensionPane = searchResults.getExtension(0).confirm();

        Assert.assertEquals("installed", extensionPane.getStatus());
        Assert.assertNull(extensionPane.getProgressBar());
        upgradeLog = extensionPane.openProgressSection().getJobLog();
        lastLogItem = upgradeLog.get(upgradeLog.size() - 1);
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. 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.