| 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 901bcf2f7261a4dd5f0bf8ce6f5551021b9e0ab2..fc12c8758a3017842239ac719a9cecdd1405b2fd 100644
|
| --- a/ui/app_list/views/app_list_view_unittest.cc
|
| +++ b/ui/app_list/views/app_list_view_unittest.cc
|
| @@ -23,6 +23,7 @@
|
| #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/search_result_page_view.h"
|
| #include "ui/app_list/views/search_result_tile_item_view.h"
|
| #include "ui/app_list/views/start_page_view.h"
|
| #include "ui/app_list/views/test/apps_grid_view_test_api.h"
|
| @@ -125,12 +126,13 @@ class AppListViewTestContext {
|
| }
|
|
|
| private:
|
| - // Switches the active launcher page in the contents view and lays out to
|
| - // ensure all launcher pages are in the correct position.
|
| - void ShowContentsViewPageAndVerify(AppListModel::State state);
|
| + // Switches the launcher to |state| and lays out to ensure all launcher pages
|
| + // are in the correct position. Checks that the state is where it should be
|
| + // and returns false on failure.
|
| + bool SetAppListState(AppListModel::State state);
|
|
|
| - // Tests that the app list is in |state|.
|
| - void VerifyPageActive(AppListModel::State state);
|
| + // Returns whether the app list showing |state|.
|
| + bool IsStateShown(AppListModel::State state);
|
|
|
| // Shows the app list and waits until a paint occurs.
|
| void Show();
|
| @@ -215,24 +217,24 @@ void AppListViewTestContext::CheckView(views::View* subview) {
|
| EXPECT_TRUE(subview->IsDrawn());
|
| }
|
|
|
| -void AppListViewTestContext::ShowContentsViewPageAndVerify(
|
| - AppListModel::State state) {
|
| +bool AppListViewTestContext::SetAppListState(AppListModel::State state) {
|
| ContentsView* contents_view = view_->app_list_main_view()->contents_view();
|
| int index = contents_view->GetPageIndexForState(state);
|
| contents_view->SetActivePage(index);
|
| contents_view->Layout();
|
| - VerifyPageActive(state);
|
| + return IsStateShown(state);
|
| }
|
|
|
| -void AppListViewTestContext::VerifyPageActive(AppListModel::State state) {
|
| +bool AppListViewTestContext::IsStateShown(AppListModel::State state) {
|
| ContentsView* contents_view = view_->app_list_main_view()->contents_view();
|
| int index = contents_view->GetPageIndexForState(state);
|
| + bool success = true;
|
| for (int i = 0; i < contents_view->NumLauncherPages(); ++i) {
|
| - EXPECT_EQ(i == index,
|
| - contents_view->GetDefaultContentsBounds() ==
|
| - contents_view->GetPageView(i)->bounds());
|
| + success = success &&
|
| + (i == index) == (contents_view->GetDefaultContentsBounds() ==
|
| + contents_view->GetPageView(i)->bounds());
|
| }
|
| - EXPECT_EQ(state, delegate_->GetTestModel()->state());
|
| + return success && state == delegate_->GetTestModel()->state();
|
| }
|
|
|
| void AppListViewTestContext::Show() {
|
| @@ -367,7 +369,7 @@ void AppListViewTestContext::RunStartPageTest() {
|
| EXPECT_NO_FATAL_FAILURE(CheckView(start_page_view));
|
|
|
| // Show the start page view.
|
| - ShowContentsViewPageAndVerify(AppListModel::STATE_START);
|
| + EXPECT_TRUE(SetAppListState(AppListModel::STATE_START));
|
| EXPECT_FALSE(main_view->search_box_view()->visible());
|
| gfx::Size view_size(view_->GetPreferredSize());
|
|
|
| @@ -375,7 +377,7 @@ void AppListViewTestContext::RunStartPageTest() {
|
| // apps grid view.
|
| SimulateClick(start_page_view->all_apps_button());
|
| main_view->contents_view()->Layout();
|
| - VerifyPageActive(AppListModel::STATE_APPS);
|
| + EXPECT_TRUE(IsStateShown(AppListModel::STATE_APPS));
|
| EXPECT_TRUE(main_view->search_box_view()->visible());
|
|
|
| // Hiding and showing the search box should not affect the app list's
|
| @@ -506,35 +508,30 @@ void AppListViewTestContext::RunSearchResultsTest() {
|
|
|
| AppListMainView* main_view = view_->app_list_main_view();
|
| ContentsView* contents_view = main_view->contents_view();
|
| - ShowContentsViewPageAndVerify(AppListModel::STATE_APPS);
|
| + EXPECT_TRUE(SetAppListState(AppListModel::STATE_APPS));
|
| 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(contents_view->IsStateActive(AppListModel::STATE_SEARCH_RESULTS));
|
| EXPECT_TRUE(main_view->search_box_view()->visible());
|
|
|
| const gfx::Rect default_contents_bounds =
|
| contents_view->GetDefaultContentsBounds();
|
| + EXPECT_EQ(AppListModel::STATE_SEARCH_RESULTS,
|
| + delegate_->GetTestModel()->state());
|
| if (test_type_ == EXPERIMENTAL) {
|
| - EXPECT_TRUE(contents_view->IsStateActive(AppListModel::STATE_START));
|
| - EXPECT_EQ(AppListModel::STATE_START, delegate_->GetTestModel()->state());
|
| EXPECT_EQ(default_contents_bounds,
|
| - contents_view->start_page_view()->bounds());
|
| + contents_view->search_results_page_view()->bounds());
|
| } else {
|
| - EXPECT_TRUE(
|
| - contents_view->IsStateActive(AppListModel::STATE_SEARCH_RESULTS));
|
| - EXPECT_EQ(AppListModel::STATE_SEARCH_RESULTS,
|
| - delegate_->GetTestModel()->state());
|
| EXPECT_EQ(default_contents_bounds,
|
| - contents_view->search_results_view()->bounds());
|
| + contents_view->search_results_list_view()->bounds());
|
| }
|
|
|
| // Hide the search results.
|
| contents_view->ShowSearchResults(false);
|
| contents_view->Layout();
|
| - EXPECT_FALSE(contents_view->IsShowingSearchResults());
|
|
|
| // Check that we return to the page that we were on before the search.
|
| EXPECT_TRUE(contents_view->IsStateActive(AppListModel::STATE_APPS));
|
| @@ -544,8 +541,7 @@ void AppListViewTestContext::RunSearchResultsTest() {
|
| EXPECT_TRUE(main_view->search_box_view()->visible());
|
|
|
| if (test_type_ == EXPERIMENTAL) {
|
| - ShowContentsViewPageAndVerify(AppListModel::STATE_START);
|
| -
|
| + EXPECT_TRUE(SetAppListState(AppListModel::STATE_START));
|
| // Check that typing into the dummy search box triggers the search page.
|
| base::string16 search_text = base::UTF8ToUTF16("test");
|
| SearchBoxView* dummy_search_box =
|
| @@ -555,17 +551,17 @@ void AppListViewTestContext::RunSearchResultsTest() {
|
| contents_view->Layout();
|
| // Check that the current search is using |search_text|.
|
| EXPECT_EQ(search_text, delegate_->GetTestModel()->search_box()->text());
|
| - EXPECT_TRUE(contents_view->IsShowingSearchResults());
|
| - EXPECT_FALSE(dummy_search_box->IsDrawn());
|
| EXPECT_TRUE(main_view->search_box_view()->visible());
|
| EXPECT_EQ(search_text, main_view->search_box_view()->search_box()->text());
|
| - EXPECT_TRUE(contents_view->IsStateActive(AppListModel::STATE_START));
|
| - EXPECT_EQ(AppListModel::STATE_START, delegate_->GetTestModel()->state());
|
| + EXPECT_TRUE(
|
| + contents_view->IsStateActive(AppListModel::STATE_SEARCH_RESULTS));
|
| + EXPECT_EQ(AppListModel::STATE_SEARCH_RESULTS,
|
| + delegate_->GetTestModel()->state());
|
| EXPECT_EQ(default_contents_bounds,
|
| - contents_view->start_page_view()->bounds());
|
| + contents_view->search_results_page_view()->bounds());
|
|
|
| // Check that typing into the real search box triggers the search page.
|
| - ShowContentsViewPageAndVerify(AppListModel::STATE_APPS);
|
| + EXPECT_TRUE(SetAppListState(AppListModel::STATE_APPS));
|
| EXPECT_EQ(default_contents_bounds,
|
| contents_view->apps_container_view()->bounds());
|
|
|
| @@ -576,14 +572,15 @@ void AppListViewTestContext::RunSearchResultsTest() {
|
| EXPECT_EQ(new_search_text, delegate_->GetTestModel()->search_box()->text());
|
| EXPECT_EQ(new_search_text,
|
| main_view->search_box_view()->search_box()->text());
|
| - EXPECT_TRUE(contents_view->IsShowingSearchResults());
|
| - EXPECT_FALSE(dummy_search_box->IsDrawn());
|
| + contents_view->Layout();
|
| + EXPECT_TRUE(
|
| + contents_view->IsStateActive(AppListModel::STATE_SEARCH_RESULTS));
|
| EXPECT_TRUE(main_view->search_box_view()->visible());
|
| EXPECT_TRUE(dummy_search_box->search_box()->text().empty());
|
|
|
| // Check that the dummy search box is clear when reshowing the start page.
|
| - ShowContentsViewPageAndVerify(AppListModel::STATE_APPS);
|
| - ShowContentsViewPageAndVerify(AppListModel::STATE_START);
|
| + EXPECT_TRUE(SetAppListState(AppListModel::STATE_APPS));
|
| + EXPECT_TRUE(SetAppListState(AppListModel::STATE_START));
|
| EXPECT_TRUE(dummy_search_box->IsDrawn());
|
| EXPECT_TRUE(dummy_search_box->search_box()->text().empty());
|
| }
|
|
|