Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(229)

Side by Side Diff: ui/app_list/views/app_list_view_unittest.cc

Issue 439703002: Allow app list tiles to show search results in the experimental app list. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: fix athena Created 6 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "ui/app_list/views/app_list_view.h" 5 #include "ui/app_list/views/app_list_view.h"
6 6
7 #include "base/command_line.h" 7 #include "base/command_line.h"
8 #include "base/run_loop.h" 8 #include "base/run_loop.h"
9 #include "base/strings/string_util.h" 9 #include "base/strings/string_util.h"
10 #include "base/strings/utf_string_conversions.h" 10 #include "base/strings/utf_string_conversions.h"
(...skipping 15 matching lines...) Expand all
26 #include "ui/app_list/views/test/apps_grid_view_test_api.h" 26 #include "ui/app_list/views/test/apps_grid_view_test_api.h"
27 #include "ui/app_list/views/tile_item_view.h" 27 #include "ui/app_list/views/tile_item_view.h"
28 #include "ui/views/controls/textfield/textfield.h" 28 #include "ui/views/controls/textfield/textfield.h"
29 #include "ui/views/test/views_test_base.h" 29 #include "ui/views/test/views_test_base.h"
30 #include "ui/views/views_delegate.h" 30 #include "ui/views/views_delegate.h"
31 #include "ui/views/widget/desktop_aura/desktop_native_widget_aura.h" 31 #include "ui/views/widget/desktop_aura/desktop_native_widget_aura.h"
32 32
33 namespace app_list { 33 namespace app_list {
34 namespace test { 34 namespace test {
35 35
36 namespace {
37
38 enum TestType { 36 enum TestType {
39 TEST_TYPE_START = 0, 37 TEST_TYPE_START = 0,
40 NORMAL = TEST_TYPE_START, 38 NORMAL = TEST_TYPE_START,
41 LANDSCAPE, 39 LANDSCAPE,
42 EXPERIMENTAL, 40 EXPERIMENTAL,
43 TEST_TYPE_END, 41 TEST_TYPE_END,
44 }; 42 };
45 43
46 bool IsViewAtOrigin(views::View* view) {
47 return view->bounds().origin().IsOrigin();
48 }
49
50 size_t GetVisibleTileItemViews(const std::vector<TileItemView*>& tiles) {
51 size_t count = 0;
52 for (std::vector<TileItemView*>::const_iterator it = tiles.begin();
53 it != tiles.end();
54 ++it) {
55 if ((*it)->visible())
56 count++;
57 }
58 return count;
59 }
60
61 // Choose a set that is 3 regular app list pages and 2 landscape app list pages.
62 const int kInitialItems = 34;
63
64 // Allows the same tests to run with different contexts: either an Ash-style 44 // Allows the same tests to run with different contexts: either an Ash-style
65 // root window or a desktop window tree host. 45 // root window or a desktop window tree host.
66 class AppListViewTestContext { 46 class AppListViewTestContext {
67 public: 47 public:
68 AppListViewTestContext(int test_type, gfx::NativeView parent); 48 AppListViewTestContext(int test_type, gfx::NativeView parent);
69 ~AppListViewTestContext(); 49 ~AppListViewTestContext();
70 50
71 // Test displaying the app list and performs a standard set of checks on its 51 // Test displaying the app list and performs a standard set of checks on its
72 // top level views. Then closes the window. 52 // top level views. Then closes the window.
73 void RunDisplayTest(); 53 void RunDisplayTest();
(...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after
119 PaginationModel* GetPaginationModel(); 99 PaginationModel* GetPaginationModel();
120 100
121 const TestType test_type_; 101 const TestType test_type_;
122 scoped_ptr<base::RunLoop> run_loop_; 102 scoped_ptr<base::RunLoop> run_loop_;
123 app_list::AppListView* view_; // Owned by native widget. 103 app_list::AppListView* view_; // Owned by native widget.
124 app_list::test::AppListTestViewDelegate* delegate_; // Owned by |view_|; 104 app_list::test::AppListTestViewDelegate* delegate_; // Owned by |view_|;
125 105
126 DISALLOW_COPY_AND_ASSIGN(AppListViewTestContext); 106 DISALLOW_COPY_AND_ASSIGN(AppListViewTestContext);
127 }; 107 };
128 108
109 namespace {
110
111 bool IsViewAtOrigin(views::View* view) {
112 return view->bounds().origin().IsOrigin();
113 }
114
115 size_t GetVisibleTileItemViews(const std::vector<TileItemView*>& tiles) {
116 size_t count = 0;
117 for (std::vector<TileItemView*>::const_iterator it = tiles.begin();
118 it != tiles.end();
119 ++it) {
120 if ((*it)->visible())
121 count++;
122 }
123 return count;
124 }
125
126 // Choose a set that is 3 regular app list pages and 2 landscape app list pages.
127 const int kInitialItems = 34;
128
129 class TestTileSearchResult : public SearchResult {
130 public:
131 TestTileSearchResult() { set_display_type(DISPLAY_TILE); }
132 virtual ~TestTileSearchResult() {}
133
134 private:
135 DISALLOW_COPY_AND_ASSIGN(TestTileSearchResult);
136 };
137
129 // Extend the regular AppListTestViewDelegate to communicate back to the test 138 // Extend the regular AppListTestViewDelegate to communicate back to the test
130 // context. Note the test context doesn't simply inherit this, because the 139 // context. Note the test context doesn't simply inherit this, because the
131 // delegate is owned by the view. 140 // delegate is owned by the view.
132 class UnitTestViewDelegate : public app_list::test::AppListTestViewDelegate { 141 class UnitTestViewDelegate : public app_list::test::AppListTestViewDelegate {
133 public: 142 public:
134 UnitTestViewDelegate(AppListViewTestContext* parent) : parent_(parent) {} 143 UnitTestViewDelegate(AppListViewTestContext* parent) : parent_(parent) {}
135 144
136 // Overridden from app_list::AppListViewDelegate: 145 // Overridden from app_list::AppListViewDelegate:
137 virtual bool ShouldCenterWindow() const OVERRIDE { 146 virtual bool ShouldCenterWindow() const OVERRIDE {
138 return app_list::switches::IsCenteredAppListEnabled(); 147 return app_list::switches::IsCenteredAppListEnabled();
139 } 148 }
140 149
141 // Overridden from app_list::test::AppListTestViewDelegate: 150 // Overridden from app_list::test::AppListTestViewDelegate:
142 virtual void ViewClosing() OVERRIDE { parent_->NativeWidgetClosing(); } 151 virtual void ViewClosing() OVERRIDE { parent_->NativeWidgetClosing(); }
143 152
144 private: 153 private:
145 AppListViewTestContext* parent_; 154 AppListViewTestContext* parent_;
146 155
147 DISALLOW_COPY_AND_ASSIGN(UnitTestViewDelegate); 156 DISALLOW_COPY_AND_ASSIGN(UnitTestViewDelegate);
148 }; 157 };
149 158
159 class AppListViewTestAura : public views::ViewsTestBase,
160 public ::testing::WithParamInterface<int> {
161 public:
162 AppListViewTestAura() {}
163 virtual ~AppListViewTestAura() {}
164
165 // testing::Test overrides:
166 virtual void SetUp() OVERRIDE {
167 views::ViewsTestBase::SetUp();
168
169 // On Ash (only) the app list is placed into an aura::Window "container",
170 // which is also used to determine the context. In tests, use the ash root
171 // window as the parent. This only works on aura where the root window is a
172 // NativeView as well as a NativeWindow.
173 gfx::NativeView container = NULL;
174 #if defined(USE_AURA)
175 container = GetContext();
176 #endif
177
178 test_context_.reset(new AppListViewTestContext(GetParam(), container));
179 }
180
181 virtual void TearDown() OVERRIDE {
182 test_context_.reset();
183 views::ViewsTestBase::TearDown();
184 }
185
186 protected:
187 scoped_ptr<AppListViewTestContext> test_context_;
188
189 private:
190 DISALLOW_COPY_AND_ASSIGN(AppListViewTestAura);
191 };
192
193 class AppListViewTestDesktop : public views::ViewsTestBase,
194 public ::testing::WithParamInterface<int> {
195 public:
196 AppListViewTestDesktop() {}
197 virtual ~AppListViewTestDesktop() {}
198
199 // testing::Test overrides:
200 virtual void SetUp() OVERRIDE {
201 set_views_delegate(new AppListViewTestViewsDelegate(this));
202 views::ViewsTestBase::SetUp();
203 test_context_.reset(new AppListViewTestContext(GetParam(), NULL));
204 }
205
206 virtual void TearDown() OVERRIDE {
207 test_context_.reset();
208 views::ViewsTestBase::TearDown();
209 }
210
211 protected:
212 scoped_ptr<AppListViewTestContext> test_context_;
213
214 private:
215 class AppListViewTestViewsDelegate : public views::TestViewsDelegate {
216 public:
217 AppListViewTestViewsDelegate(AppListViewTestDesktop* parent)
218 : parent_(parent) {}
219
220 // Overridden from views::ViewsDelegate:
221 virtual void OnBeforeWidgetInit(
222 views::Widget::InitParams* params,
223 views::internal::NativeWidgetDelegate* delegate) OVERRIDE;
224
225 private:
226 AppListViewTestDesktop* parent_;
227
228 DISALLOW_COPY_AND_ASSIGN(AppListViewTestViewsDelegate);
229 };
230
231 DISALLOW_COPY_AND_ASSIGN(AppListViewTestDesktop);
232 };
233
234 void AppListViewTestDesktop::AppListViewTestViewsDelegate::OnBeforeWidgetInit(
235 views::Widget::InitParams* params,
236 views::internal::NativeWidgetDelegate* delegate) {
237 // Mimic the logic in ChromeViewsDelegate::OnBeforeWidgetInit(). Except, for
238 // ChromeOS, use the root window from the AuraTestHelper rather than depending
239 // on ash::Shell:GetPrimaryRootWindow(). Also assume non-ChromeOS is never the
240 // Ash desktop, as that is covered by AppListViewTestAura.
241 #if defined(OS_CHROMEOS)
242 if (!params->parent && !params->context)
243 params->context = parent_->GetContext();
244 #elif defined(USE_AURA)
245 if (params->parent == NULL && params->context == NULL && !params->child)
246 params->native_widget = new views::DesktopNativeWidgetAura(delegate);
247 #endif
248 }
249
250 } // namespace
251
150 AppListViewTestContext::AppListViewTestContext(int test_type, 252 AppListViewTestContext::AppListViewTestContext(int test_type,
151 gfx::NativeView parent) 253 gfx::NativeView parent)
152 : test_type_(static_cast<TestType>(test_type)) { 254 : test_type_(static_cast<TestType>(test_type)) {
153 switch (test_type_) { 255 switch (test_type_) {
154 case NORMAL: 256 case NORMAL:
155 break; 257 break;
156 case LANDSCAPE: 258 case LANDSCAPE:
157 base::CommandLine::ForCurrentProcess()->AppendSwitch( 259 base::CommandLine::ForCurrentProcess()->AppendSwitch(
158 switches::kEnableCenteredAppList); 260 switches::kEnableCenteredAppList);
159 break; 261 break;
(...skipping 146 matching lines...) Expand 10 before | Expand all | Expand 10 after
306 EXPECT_NO_FATAL_FAILURE(CheckView(main_view)); 408 EXPECT_NO_FATAL_FAILURE(CheckView(main_view));
307 EXPECT_NO_FATAL_FAILURE(CheckView(main_view->contents_view())); 409 EXPECT_NO_FATAL_FAILURE(CheckView(main_view->contents_view()));
308 if (test_type_ == EXPERIMENTAL) { 410 if (test_type_ == EXPERIMENTAL) {
309 EXPECT_NO_FATAL_FAILURE(CheckView(start_page_view)); 411 EXPECT_NO_FATAL_FAILURE(CheckView(start_page_view));
310 412
311 // Show the start page view. 413 // Show the start page view.
312 ContentsView* contents_view = main_view->contents_view(); 414 ContentsView* contents_view = main_view->contents_view();
313 ShowContentsViewPageAndVerify(contents_view->GetPageIndexForNamedPage( 415 ShowContentsViewPageAndVerify(contents_view->GetPageIndexForNamedPage(
314 ContentsView::NAMED_PAGE_START)); 416 ContentsView::NAMED_PAGE_START));
315 EXPECT_FALSE(main_view->search_box_view()->visible()); 417 EXPECT_FALSE(main_view->search_box_view()->visible());
316 EXPECT_EQ(3u, GetVisibleTileItemViews(start_page_view->tile_views()));
317 418
318 gfx::Size view_size(view_->GetPreferredSize()); 419 gfx::Size view_size(view_->GetPreferredSize());
319 ShowContentsViewPageAndVerify( 420 ShowContentsViewPageAndVerify(
320 contents_view->GetPageIndexForNamedPage(ContentsView::NAMED_PAGE_APPS)); 421 contents_view->GetPageIndexForNamedPage(ContentsView::NAMED_PAGE_APPS));
321 EXPECT_TRUE(main_view->search_box_view()->visible()); 422 EXPECT_TRUE(main_view->search_box_view()->visible());
322 423
323 // Hiding and showing the search box should not affect the app list's 424 // Hiding and showing the search box should not affect the app list's
324 // preferred size. This is a regression test for http://crbug.com/386912. 425 // preferred size. This is a regression test for http://crbug.com/386912.
325 EXPECT_EQ(view_size.ToString(), view_->GetPreferredSize().ToString()); 426 EXPECT_EQ(view_size.ToString(), view_->GetPreferredSize().ToString());
326 427
327 // Check tiles hide and show on deletion and addition. 428 // Check tiles hide and show on deletion and addition.
328 model->CreateAndAddItem("Test app"); 429 model->results()->Add(new TestTileSearchResult());
329 EXPECT_EQ(4u, GetVisibleTileItemViews(start_page_view->tile_views())); 430 start_page_view->Update();
330 model->DeleteItem(model->GetItemName(0)); 431 EXPECT_EQ(1u, GetVisibleTileItemViews(start_page_view->tile_views()));
331 EXPECT_EQ(3u, GetVisibleTileItemViews(start_page_view->tile_views())); 432 model->results()->RemoveAll();
433 start_page_view->Update();
434 EXPECT_EQ(0u, GetVisibleTileItemViews(start_page_view->tile_views()));
332 } else { 435 } else {
333 EXPECT_EQ(NULL, start_page_view); 436 EXPECT_EQ(NULL, start_page_view);
334 } 437 }
335 438
336 Close(); 439 Close();
337 } 440 }
338 441
339 void AppListViewTestContext::RunPageSwitchingAnimationTest() { 442 void AppListViewTestContext::RunPageSwitchingAnimationTest() {
340 if (test_type_ == EXPERIMENTAL) { 443 if (test_type_ == EXPERIMENTAL) {
341 Show(); 444 Show();
(...skipping 61 matching lines...) Expand 10 before | Expand all | Expand 10 after
403 506
404 StartPageView* start_page_view = 507 StartPageView* start_page_view =
405 view_->app_list_main_view()->contents_view()->start_page_view(); 508 view_->app_list_main_view()->contents_view()->start_page_view();
406 ContentsSwitcherView* contents_switcher_view = 509 ContentsSwitcherView* contents_switcher_view =
407 view_->app_list_main_view()->contents_switcher_view(); 510 view_->app_list_main_view()->contents_switcher_view();
408 if (test_type_ == EXPERIMENTAL) { 511 if (test_type_ == EXPERIMENTAL) {
409 EXPECT_NO_FATAL_FAILURE(CheckView(contents_switcher_view)); 512 EXPECT_NO_FATAL_FAILURE(CheckView(contents_switcher_view));
410 EXPECT_EQ(view_->app_list_main_view()->contents_view(), 513 EXPECT_EQ(view_->app_list_main_view()->contents_view(),
411 contents_switcher_view->contents_view()); 514 contents_switcher_view->contents_view());
412 EXPECT_NO_FATAL_FAILURE(CheckView(start_page_view)); 515 EXPECT_NO_FATAL_FAILURE(CheckView(start_page_view));
413 EXPECT_EQ(1u, GetVisibleTileItemViews(start_page_view->tile_views()));
414 } else { 516 } else {
415 EXPECT_EQ(NULL, contents_switcher_view); 517 EXPECT_EQ(NULL, contents_switcher_view);
416 EXPECT_EQ(NULL, start_page_view); 518 EXPECT_EQ(NULL, start_page_view);
417 } 519 }
418 520
419 // New model updates should be processed by the start page view. 521 // New model updates should be processed by the start page view.
420 delegate_->GetTestModel()->CreateAndAddItem("Test App"); 522 delegate_->GetTestModel()->results()->Add(new TestTileSearchResult());
421 if (test_type_ == EXPERIMENTAL) 523 if (test_type_ == EXPERIMENTAL) {
422 EXPECT_EQ(2u, GetVisibleTileItemViews(start_page_view->tile_views())); 524 start_page_view->Update();
525 EXPECT_EQ(1u, GetVisibleTileItemViews(start_page_view->tile_views()));
526 }
423 527
424 // Old model updates should be ignored. 528 // Old model updates should be ignored.
425 original_test_model->CreateAndAddItem("Test App 2"); 529 original_test_model->results()->Add(new TestTileSearchResult());
426 if (test_type_ == EXPERIMENTAL) 530 original_test_model->results()->Add(new TestTileSearchResult());
427 EXPECT_EQ(2u, GetVisibleTileItemViews(start_page_view->tile_views())); 531 if (test_type_ == EXPERIMENTAL) {
532 start_page_view->Update();
533 EXPECT_EQ(1u, GetVisibleTileItemViews(start_page_view->tile_views()));
534 }
428 535
429 Close(); 536 Close();
430 } 537 }
431 538
432 void AppListViewTestContext::RunSearchResultsTest() { 539 void AppListViewTestContext::RunSearchResultsTest() {
433 EXPECT_FALSE(view_->GetWidget()->IsVisible()); 540 EXPECT_FALSE(view_->GetWidget()->IsVisible());
434 EXPECT_EQ(-1, GetPaginationModel()->total_pages()); 541 EXPECT_EQ(-1, GetPaginationModel()->total_pages());
435 AppListTestModel* model = delegate_->GetTestModel(); 542 AppListTestModel* model = delegate_->GetTestModel();
436 model->PopulateApps(3); 543 model->PopulateApps(3);
437 544
(...skipping 74 matching lines...) Expand 10 before | Expand all | Expand 10 after
512 contents_view->GetPageIndexForNamedPage(ContentsView::NAMED_PAGE_APPS)); 619 contents_view->GetPageIndexForNamedPage(ContentsView::NAMED_PAGE_APPS));
513 ShowContentsViewPageAndVerify(contents_view->GetPageIndexForNamedPage( 620 ShowContentsViewPageAndVerify(contents_view->GetPageIndexForNamedPage(
514 ContentsView::NAMED_PAGE_START)); 621 ContentsView::NAMED_PAGE_START));
515 EXPECT_TRUE(dummy_search_box->IsDrawn()); 622 EXPECT_TRUE(dummy_search_box->IsDrawn());
516 EXPECT_TRUE(dummy_search_box->search_box()->text().empty()); 623 EXPECT_TRUE(dummy_search_box->search_box()->text().empty());
517 } 624 }
518 625
519 Close(); 626 Close();
520 } 627 }
521 628
522 class AppListViewTestAura : public views::ViewsTestBase,
523 public ::testing::WithParamInterface<int> {
524 public:
525 AppListViewTestAura() {}
526 virtual ~AppListViewTestAura() {}
527
528 // testing::Test overrides:
529 virtual void SetUp() OVERRIDE {
530 views::ViewsTestBase::SetUp();
531
532 // On Ash (only) the app list is placed into an aura::Window "container",
533 // which is also used to determine the context. In tests, use the ash root
534 // window as the parent. This only works on aura where the root window is a
535 // NativeView as well as a NativeWindow.
536 gfx::NativeView container = NULL;
537 #if defined(USE_AURA)
538 container = GetContext();
539 #endif
540
541 test_context_.reset(new AppListViewTestContext(GetParam(), container));
542 }
543
544 virtual void TearDown() OVERRIDE {
545 test_context_.reset();
546 views::ViewsTestBase::TearDown();
547 }
548
549 protected:
550 scoped_ptr<AppListViewTestContext> test_context_;
551
552 private:
553 DISALLOW_COPY_AND_ASSIGN(AppListViewTestAura);
554 };
555
556 class AppListViewTestDesktop : public views::ViewsTestBase,
557 public ::testing::WithParamInterface<int> {
558 public:
559 AppListViewTestDesktop() {}
560 virtual ~AppListViewTestDesktop() {}
561
562 // testing::Test overrides:
563 virtual void SetUp() OVERRIDE {
564 set_views_delegate(new AppListViewTestViewsDelegate(this));
565 views::ViewsTestBase::SetUp();
566 test_context_.reset(new AppListViewTestContext(GetParam(), NULL));
567 }
568
569 virtual void TearDown() OVERRIDE {
570 test_context_.reset();
571 views::ViewsTestBase::TearDown();
572 }
573
574 protected:
575 scoped_ptr<AppListViewTestContext> test_context_;
576
577 private:
578 class AppListViewTestViewsDelegate : public views::TestViewsDelegate {
579 public:
580 AppListViewTestViewsDelegate(AppListViewTestDesktop* parent)
581 : parent_(parent) {}
582
583 // Overridden from views::ViewsDelegate:
584 virtual void OnBeforeWidgetInit(
585 views::Widget::InitParams* params,
586 views::internal::NativeWidgetDelegate* delegate) OVERRIDE;
587
588 private:
589 AppListViewTestDesktop* parent_;
590
591 DISALLOW_COPY_AND_ASSIGN(AppListViewTestViewsDelegate);
592 };
593
594 DISALLOW_COPY_AND_ASSIGN(AppListViewTestDesktop);
595 };
596
597 void AppListViewTestDesktop::AppListViewTestViewsDelegate::OnBeforeWidgetInit(
598 views::Widget::InitParams* params,
599 views::internal::NativeWidgetDelegate* delegate) {
600 // Mimic the logic in ChromeViewsDelegate::OnBeforeWidgetInit(). Except, for
601 // ChromeOS, use the root window from the AuraTestHelper rather than depending
602 // on ash::Shell:GetPrimaryRootWindow(). Also assume non-ChromeOS is never the
603 // Ash desktop, as that is covered by AppListViewTestAura.
604 #if defined(OS_CHROMEOS)
605 if (!params->parent && !params->context)
606 params->context = parent_->GetContext();
607 #elif defined(USE_AURA)
608 if (params->parent == NULL && params->context == NULL && !params->child)
609 params->native_widget = new views::DesktopNativeWidgetAura(delegate);
610 #endif
611 }
612
613 } // namespace
614
615 // Tests showing the app list with basic test model in an ash-style root window. 629 // Tests showing the app list with basic test model in an ash-style root window.
616 TEST_P(AppListViewTestAura, Display) { 630 TEST_P(AppListViewTestAura, Display) {
617 EXPECT_NO_FATAL_FAILURE(test_context_->RunDisplayTest()); 631 EXPECT_NO_FATAL_FAILURE(test_context_->RunDisplayTest());
618 } 632 }
619 633
620 // Tests showing the app list on the desktop. Note on ChromeOS, this will still 634 // Tests showing the app list on the desktop. Note on ChromeOS, this will still
621 // use the regular root window. 635 // use the regular root window.
622 TEST_P(AppListViewTestDesktop, Display) { 636 TEST_P(AppListViewTestDesktop, Display) {
623 EXPECT_NO_FATAL_FAILURE(test_context_->RunDisplayTest()); 637 EXPECT_NO_FATAL_FAILURE(test_context_->RunDisplayTest());
624 } 638 }
(...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after
672 INSTANTIATE_TEST_CASE_P(AppListViewTestAuraInstance, 686 INSTANTIATE_TEST_CASE_P(AppListViewTestAuraInstance,
673 AppListViewTestAura, 687 AppListViewTestAura,
674 ::testing::Range<int>(TEST_TYPE_START, TEST_TYPE_END)); 688 ::testing::Range<int>(TEST_TYPE_START, TEST_TYPE_END));
675 689
676 INSTANTIATE_TEST_CASE_P(AppListViewTestDesktopInstance, 690 INSTANTIATE_TEST_CASE_P(AppListViewTestDesktopInstance,
677 AppListViewTestDesktop, 691 AppListViewTestDesktop,
678 ::testing::Range<int>(TEST_TYPE_START, TEST_TYPE_END)); 692 ::testing::Range<int>(TEST_TYPE_START, TEST_TYPE_END));
679 693
680 } // namespace test 694 } // namespace test
681 } // namespace app_list 695 } // namespace app_list
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698