| Index: ui/app_list/views/app_list_view_unittest.cc
|
| diff --git a/ui/app_list/views/app_list_view_unittest.cc b/ui/app_list/views/app_list_view_unittest.cc
|
| index ef39edd41ce21996e0054222cdf212ea04e73273..d17f7d1b3d20949cae157b510ff3175b85a907df 100644
|
| --- a/ui/app_list/views/app_list_view_unittest.cc
|
| +++ b/ui/app_list/views/app_list_view_unittest.cc
|
| @@ -18,6 +18,7 @@
|
| #include "ui/app_list/views/apps_grid_view.h"
|
| #include "ui/app_list/views/contents_view.h"
|
| #include "ui/app_list/views/search_box_view.h"
|
| +#include "ui/app_list/views/search_result_list_view.h"
|
| #include "ui/app_list/views/start_page_view.h"
|
| #include "ui/app_list/views/test/apps_grid_view_test_api.h"
|
| #include "ui/app_list/views/tile_item_view.h"
|
| @@ -76,9 +77,12 @@ class AppListViewTestContext {
|
| // Tests displaying of the experimental app list and shows the start page.
|
| void RunStartPageTest();
|
|
|
| - // Tests that changing the App List profile.
|
| + // Tests changing the App List profile.
|
| void RunProfileChangeTest();
|
|
|
| + // Tests displaying of the search results.
|
| + void RunSearchResultsTest();
|
| +
|
| // A standard set of checks on a view, e.g., ensuring it is drawn and visible.
|
| static void CheckView(views::View* subview);
|
|
|
| @@ -355,6 +359,56 @@ void AppListViewTestContext::RunProfileChangeTest() {
|
| Close();
|
| }
|
|
|
| +void AppListViewTestContext::RunSearchResultsTest() {
|
| + EXPECT_FALSE(view_->GetWidget()->IsVisible());
|
| + EXPECT_EQ(-1, GetPaginationModel()->total_pages());
|
| + AppListTestModel* model = delegate_->GetTestModel();
|
| + model->PopulateApps(3);
|
| +
|
| + Show();
|
| +
|
| + AppListMainView* main_view = view_->app_list_main_view();
|
| + ContentsView* contents_view = main_view->contents_view();
|
| + contents_view->SetActivePage(
|
| + contents_view->GetPageIndexForNamedPage(ContentsView::NAMED_PAGE_APPS));
|
| + EXPECT_TRUE(IsViewAtOrigin(contents_view->apps_container_view()));
|
| + EXPECT_TRUE(main_view->search_box_view()->visible());
|
| +
|
| + // Show the search results.
|
| + contents_view->ShowSearchResults(true);
|
| + contents_view->Layout();
|
| + EXPECT_TRUE(contents_view->IsShowingSearchResults());
|
| + EXPECT_TRUE(main_view->search_box_view()->visible());
|
| +
|
| + if (test_type_ == EXPERIMENTAL) {
|
| + EXPECT_TRUE(
|
| + contents_view->IsNamedPageActive(ContentsView::NAMED_PAGE_START));
|
| + EXPECT_TRUE(IsViewAtOrigin(contents_view->start_page_view()));
|
| + } else {
|
| + EXPECT_TRUE(contents_view->IsNamedPageActive(
|
| + ContentsView::NAMED_PAGE_SEARCH_RESULTS));
|
| + EXPECT_TRUE(IsViewAtOrigin(contents_view->search_results_view()));
|
| + }
|
| +
|
| + // Hide the search results.
|
| + contents_view->ShowSearchResults(false);
|
| + contents_view->Layout();
|
| + EXPECT_FALSE(contents_view->IsShowingSearchResults());
|
| + if (test_type_ == EXPERIMENTAL) {
|
| + EXPECT_TRUE(
|
| + contents_view->IsNamedPageActive(ContentsView::NAMED_PAGE_START));
|
| + EXPECT_TRUE(IsViewAtOrigin(contents_view->start_page_view()));
|
| + EXPECT_FALSE(main_view->search_box_view()->visible());
|
| + } else {
|
| + EXPECT_TRUE(
|
| + contents_view->IsNamedPageActive(ContentsView::NAMED_PAGE_APPS));
|
| + EXPECT_TRUE(IsViewAtOrigin(contents_view->apps_container_view()));
|
| + EXPECT_TRUE(main_view->search_box_view()->visible());
|
| + }
|
| +
|
| + Close();
|
| +}
|
| +
|
| class AppListViewTestAura : public views::ViewsTestBase,
|
| public ::testing::WithParamInterface<int> {
|
| public:
|
| @@ -477,6 +531,15 @@ TEST_P(AppListViewTestDesktop, ProfileChangeTest) {
|
| EXPECT_NO_FATAL_FAILURE(test_context_->RunProfileChangeTest());
|
| }
|
|
|
| +// Tests that the correct views are displayed for showing search results.
|
| +TEST_P(AppListViewTestAura, SearchResultsTest) {
|
| + EXPECT_NO_FATAL_FAILURE(test_context_->RunSearchResultsTest());
|
| +}
|
| +
|
| +TEST_P(AppListViewTestDesktop, SearchResultsTest) {
|
| + EXPECT_NO_FATAL_FAILURE(test_context_->RunSearchResultsTest());
|
| +}
|
| +
|
| INSTANTIATE_TEST_CASE_P(AppListViewTestAuraInstance,
|
| AppListViewTestAura,
|
| ::testing::Range<int>(TEST_TYPE_START, TEST_TYPE_END));
|
|
|