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

Side by Side Diff: ui/views/corewm/tooltip_controller_unittest.cc

Issue 2489903002: Disables tooltip tests for aura-mus-client (Closed)
Patch Set: tweak Created 4 years, 1 month 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
« no previous file with comments | « no previous file | ui/views/mus/views_aura_mus_test_suite.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2013 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/views/corewm/tooltip_controller.h" 5 #include "ui/views/corewm/tooltip_controller.h"
6 6
7 #include "base/macros.h" 7 #include "base/macros.h"
8 #include "base/strings/utf_string_conversions.h" 8 #include "base/strings/utf_string_conversions.h"
9 #include "build/build_config.h" 9 #include "build/build_config.h"
10 #include "ui/aura/client/cursor_client.h" 10 #include "ui/aura/client/cursor_client.h"
(...skipping 66 matching lines...) Expand 10 before | Expand all | Expand 10 after
77 } // namespace 77 } // namespace
78 78
79 class TooltipControllerTest : public ViewsTestBase { 79 class TooltipControllerTest : public ViewsTestBase {
80 public: 80 public:
81 TooltipControllerTest() : view_(NULL) {} 81 TooltipControllerTest() : view_(NULL) {}
82 ~TooltipControllerTest() override {} 82 ~TooltipControllerTest() override {}
83 83
84 void SetUp() override { 84 void SetUp() override {
85 ViewsTestBase::SetUp(); 85 ViewsTestBase::SetUp();
86 86
87 // TODO: these tests use GetContext(). That should go away for aura-mus
88 // client. http://crbug.com/663781.
89 if (IsAuraMusClient())
90 return;
91
87 aura::Window* root_window = GetContext(); 92 aura::Window* root_window = GetContext();
88 93
89 new wm::DefaultActivationClient(root_window); 94 new wm::DefaultActivationClient(root_window);
90 #if defined(OS_CHROMEOS) 95 #if defined(OS_CHROMEOS)
91 controller_.reset( 96 controller_.reset(
92 new TooltipController(std::unique_ptr<views::corewm::Tooltip>( 97 new TooltipController(std::unique_ptr<views::corewm::Tooltip>(
93 new views::corewm::TooltipAura))); 98 new views::corewm::TooltipAura)));
94 root_window->AddPreTargetHandler(controller_.get()); 99 root_window->AddPreTargetHandler(controller_.get());
95 SetTooltipClient(root_window, controller_.get()); 100 SetTooltipClient(root_window, controller_.get());
96 #endif 101 #endif
97 widget_.reset(CreateWidget(root_window)); 102 widget_.reset(CreateWidget(root_window));
98 widget_->SetContentsView(new View); 103 widget_->SetContentsView(new View);
99 view_ = new TooltipTestView; 104 view_ = new TooltipTestView;
100 widget_->GetContentsView()->AddChildView(view_); 105 widget_->GetContentsView()->AddChildView(view_);
101 view_->SetBoundsRect(widget_->GetContentsView()->GetLocalBounds()); 106 view_->SetBoundsRect(widget_->GetContentsView()->GetLocalBounds());
102 helper_.reset(new TooltipControllerTestHelper( 107 helper_.reset(new TooltipControllerTestHelper(
103 GetController(widget_.get()))); 108 GetController(widget_.get())));
104 generator_.reset(new ui::test::EventGenerator(GetRootWindow())); 109 generator_.reset(new ui::test::EventGenerator(GetRootWindow()));
105 } 110 }
106 111
107 void TearDown() override { 112 void TearDown() override {
113 if (!IsAuraMusClient()) {
108 #if defined(OS_CHROMEOS) 114 #if defined(OS_CHROMEOS)
109 aura::Window* root_window = GetContext(); 115 aura::Window* root_window = GetContext();
110 root_window->RemovePreTargetHandler(controller_.get()); 116 root_window->RemovePreTargetHandler(controller_.get());
111 aura::client::SetTooltipClient(root_window, NULL); 117 aura::client::SetTooltipClient(root_window, NULL);
112 controller_.reset(); 118 controller_.reset();
113 #endif 119 #endif
114 generator_.reset(); 120 generator_.reset();
115 helper_.reset(); 121 helper_.reset();
116 widget_.reset(); 122 widget_.reset();
123 }
117 ViewsTestBase::TearDown(); 124 ViewsTestBase::TearDown();
118 } 125 }
119 126
120 protected: 127 protected:
121 aura::Window* GetWindow() { 128 aura::Window* GetWindow() {
122 return widget_->GetNativeWindow(); 129 return widget_->GetNativeWindow();
123 } 130 }
124 131
125 aura::Window* GetRootWindow() { 132 aura::Window* GetRootWindow() {
126 return GetWindow()->GetRootWindow(); 133 return GetWindow()->GetRootWindow();
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after
158 std::unique_ptr<TooltipController> controller_; 165 std::unique_ptr<TooltipController> controller_;
159 166
160 #if defined(OS_WIN) 167 #if defined(OS_WIN)
161 ui::ScopedOleInitializer ole_initializer_; 168 ui::ScopedOleInitializer ole_initializer_;
162 #endif 169 #endif
163 170
164 DISALLOW_COPY_AND_ASSIGN(TooltipControllerTest); 171 DISALLOW_COPY_AND_ASSIGN(TooltipControllerTest);
165 }; 172 };
166 173
167 TEST_F(TooltipControllerTest, ViewTooltip) { 174 TEST_F(TooltipControllerTest, ViewTooltip) {
175 // TODO: these tests use GetContext(). That should go away for aura-mus
176 // client. http://crbug.com/663781.
177 if (IsAuraMusClient())
178 return;
179
168 view_->set_tooltip_text(ASCIIToUTF16("Tooltip Text")); 180 view_->set_tooltip_text(ASCIIToUTF16("Tooltip Text"));
169 EXPECT_EQ(base::string16(), helper_->GetTooltipText()); 181 EXPECT_EQ(base::string16(), helper_->GetTooltipText());
170 EXPECT_EQ(NULL, helper_->GetTooltipWindow()); 182 EXPECT_EQ(NULL, helper_->GetTooltipWindow());
171 generator_->MoveMouseToCenterOf(GetWindow()); 183 generator_->MoveMouseToCenterOf(GetWindow());
172 184
173 EXPECT_EQ(GetWindow(), GetRootWindow()->GetEventHandlerForPoint( 185 EXPECT_EQ(GetWindow(), GetRootWindow()->GetEventHandlerForPoint(
174 generator_->current_location())); 186 generator_->current_location()));
175 base::string16 expected_tooltip = ASCIIToUTF16("Tooltip Text"); 187 base::string16 expected_tooltip = ASCIIToUTF16("Tooltip Text");
176 EXPECT_EQ(expected_tooltip, aura::client::GetTooltipText(GetWindow())); 188 EXPECT_EQ(expected_tooltip, aura::client::GetTooltipText(GetWindow()));
177 EXPECT_EQ(base::string16(), helper_->GetTooltipText()); 189 EXPECT_EQ(base::string16(), helper_->GetTooltipText());
178 EXPECT_EQ(GetWindow(), helper_->GetTooltipWindow()); 190 EXPECT_EQ(GetWindow(), helper_->GetTooltipWindow());
179 191
180 // Fire tooltip timer so tooltip becomes visible. 192 // Fire tooltip timer so tooltip becomes visible.
181 helper_->FireTooltipTimer(); 193 helper_->FireTooltipTimer();
182 194
183 EXPECT_TRUE(helper_->IsTooltipVisible()); 195 EXPECT_TRUE(helper_->IsTooltipVisible());
184 generator_->MoveMouseBy(1, 0); 196 generator_->MoveMouseBy(1, 0);
185 197
186 EXPECT_TRUE(helper_->IsTooltipVisible()); 198 EXPECT_TRUE(helper_->IsTooltipVisible());
187 EXPECT_EQ(expected_tooltip, aura::client::GetTooltipText(GetWindow())); 199 EXPECT_EQ(expected_tooltip, aura::client::GetTooltipText(GetWindow()));
188 EXPECT_EQ(expected_tooltip, helper_->GetTooltipText()); 200 EXPECT_EQ(expected_tooltip, helper_->GetTooltipText());
189 EXPECT_EQ(GetWindow(), helper_->GetTooltipWindow()); 201 EXPECT_EQ(GetWindow(), helper_->GetTooltipWindow());
190 } 202 }
191 203
192 TEST_F(TooltipControllerTest, TooltipsInMultipleViews) { 204 TEST_F(TooltipControllerTest, TooltipsInMultipleViews) {
205 // TODO: these tests use GetContext(). That should go away for aura-mus
206 // client. http://crbug.com/663781.
207 if (IsAuraMusClient())
208 return;
209
193 view_->set_tooltip_text(ASCIIToUTF16("Tooltip Text")); 210 view_->set_tooltip_text(ASCIIToUTF16("Tooltip Text"));
194 EXPECT_EQ(base::string16(), helper_->GetTooltipText()); 211 EXPECT_EQ(base::string16(), helper_->GetTooltipText());
195 EXPECT_EQ(NULL, helper_->GetTooltipWindow()); 212 EXPECT_EQ(NULL, helper_->GetTooltipWindow());
196 213
197 PrepareSecondView(); 214 PrepareSecondView();
198 aura::Window* window = GetWindow(); 215 aura::Window* window = GetWindow();
199 aura::Window* root_window = GetRootWindow(); 216 aura::Window* root_window = GetRootWindow();
200 217
201 // Fire tooltip timer so tooltip becomes visible. 218 // Fire tooltip timer so tooltip becomes visible.
202 generator_->MoveMouseRelativeTo(window, view_->bounds().CenterPoint()); 219 generator_->MoveMouseRelativeTo(window, view_->bounds().CenterPoint());
(...skipping 15 matching lines...) Expand all
218 EXPECT_EQ(window, root_window->GetEventHandlerForPoint( 235 EXPECT_EQ(window, root_window->GetEventHandlerForPoint(
219 generator_->current_location())); 236 generator_->current_location()));
220 base::string16 expected_tooltip; // = "" 237 base::string16 expected_tooltip; // = ""
221 EXPECT_EQ(expected_tooltip, aura::client::GetTooltipText(window)); 238 EXPECT_EQ(expected_tooltip, aura::client::GetTooltipText(window));
222 EXPECT_EQ(expected_tooltip, helper_->GetTooltipText()); 239 EXPECT_EQ(expected_tooltip, helper_->GetTooltipText());
223 EXPECT_EQ(window, helper_->GetTooltipWindow()); 240 EXPECT_EQ(window, helper_->GetTooltipWindow());
224 } 241 }
225 } 242 }
226 243
227 TEST_F(TooltipControllerTest, EnableOrDisableTooltips) { 244 TEST_F(TooltipControllerTest, EnableOrDisableTooltips) {
245 // TODO: these tests use GetContext(). That should go away for aura-mus
246 // client. http://crbug.com/663781.
247 if (IsAuraMusClient())
248 return;
249
228 view_->set_tooltip_text(ASCIIToUTF16("Tooltip Text")); 250 view_->set_tooltip_text(ASCIIToUTF16("Tooltip Text"));
229 EXPECT_EQ(base::string16(), helper_->GetTooltipText()); 251 EXPECT_EQ(base::string16(), helper_->GetTooltipText());
230 EXPECT_EQ(NULL, helper_->GetTooltipWindow()); 252 EXPECT_EQ(NULL, helper_->GetTooltipWindow());
231 253
232 generator_->MoveMouseRelativeTo(GetWindow(), view_->bounds().CenterPoint()); 254 generator_->MoveMouseRelativeTo(GetWindow(), view_->bounds().CenterPoint());
233 base::string16 expected_tooltip = ASCIIToUTF16("Tooltip Text"); 255 base::string16 expected_tooltip = ASCIIToUTF16("Tooltip Text");
234 256
235 // Fire tooltip timer so tooltip becomes visible. 257 // Fire tooltip timer so tooltip becomes visible.
236 helper_->FireTooltipTimer(); 258 helper_->FireTooltipTimer();
237 EXPECT_TRUE(helper_->IsTooltipVisible()); 259 EXPECT_TRUE(helper_->IsTooltipVisible());
238 260
239 // Disable tooltips and check again. 261 // Disable tooltips and check again.
240 helper_->controller()->SetTooltipsEnabled(false); 262 helper_->controller()->SetTooltipsEnabled(false);
241 EXPECT_FALSE(helper_->IsTooltipVisible()); 263 EXPECT_FALSE(helper_->IsTooltipVisible());
242 helper_->FireTooltipTimer(); 264 helper_->FireTooltipTimer();
243 EXPECT_FALSE(helper_->IsTooltipVisible()); 265 EXPECT_FALSE(helper_->IsTooltipVisible());
244 266
245 // Enable tooltips back and check again. 267 // Enable tooltips back and check again.
246 helper_->controller()->SetTooltipsEnabled(true); 268 helper_->controller()->SetTooltipsEnabled(true);
247 EXPECT_FALSE(helper_->IsTooltipVisible()); 269 EXPECT_FALSE(helper_->IsTooltipVisible());
248 helper_->FireTooltipTimer(); 270 helper_->FireTooltipTimer();
249 EXPECT_TRUE(helper_->IsTooltipVisible()); 271 EXPECT_TRUE(helper_->IsTooltipVisible());
250 } 272 }
251 273
252 // Verifies tooltip isn't shown if tooltip text consists entirely of whitespace. 274 // Verifies tooltip isn't shown if tooltip text consists entirely of whitespace.
253 TEST_F(TooltipControllerTest, DontShowEmptyTooltips) { 275 TEST_F(TooltipControllerTest, DontShowEmptyTooltips) {
276 // TODO: these tests use GetContext(). That should go away for aura-mus
277 // client. http://crbug.com/663781.
278 if (IsAuraMusClient())
279 return;
280
254 view_->set_tooltip_text(ASCIIToUTF16(" ")); 281 view_->set_tooltip_text(ASCIIToUTF16(" "));
255 EXPECT_EQ(base::string16(), helper_->GetTooltipText()); 282 EXPECT_EQ(base::string16(), helper_->GetTooltipText());
256 EXPECT_EQ(NULL, helper_->GetTooltipWindow()); 283 EXPECT_EQ(NULL, helper_->GetTooltipWindow());
257 284
258 generator_->MoveMouseRelativeTo(GetWindow(), view_->bounds().CenterPoint()); 285 generator_->MoveMouseRelativeTo(GetWindow(), view_->bounds().CenterPoint());
259 286
260 helper_->FireTooltipTimer(); 287 helper_->FireTooltipTimer();
261 EXPECT_FALSE(helper_->IsTooltipVisible()); 288 EXPECT_FALSE(helper_->IsTooltipVisible());
262 } 289 }
263 290
264 TEST_F(TooltipControllerTest, TooltipHidesOnKeyPressAndStaysHiddenUntilChange) { 291 TEST_F(TooltipControllerTest, TooltipHidesOnKeyPressAndStaysHiddenUntilChange) {
292 // TODO: these tests use GetContext(). That should go away for aura-mus
293 // client. http://crbug.com/663781.
294 if (IsAuraMusClient())
295 return;
296
265 view_->set_tooltip_text(ASCIIToUTF16("Tooltip Text for view 1")); 297 view_->set_tooltip_text(ASCIIToUTF16("Tooltip Text for view 1"));
266 EXPECT_EQ(base::string16(), helper_->GetTooltipText()); 298 EXPECT_EQ(base::string16(), helper_->GetTooltipText());
267 EXPECT_EQ(NULL, helper_->GetTooltipWindow()); 299 EXPECT_EQ(NULL, helper_->GetTooltipWindow());
268 300
269 TooltipTestView* view2 = PrepareSecondView(); 301 TooltipTestView* view2 = PrepareSecondView();
270 view2->set_tooltip_text(ASCIIToUTF16("Tooltip Text for view 2")); 302 view2->set_tooltip_text(ASCIIToUTF16("Tooltip Text for view 2"));
271 303
272 aura::Window* window = GetWindow(); 304 aura::Window* window = GetWindow();
273 305
274 // Fire tooltip timer so tooltip becomes visible. 306 // Fire tooltip timer so tooltip becomes visible.
(...skipping 29 matching lines...) Expand all
304 helper_->FireTooltipTimer(); 336 helper_->FireTooltipTimer();
305 EXPECT_TRUE(helper_->IsTooltipVisible()); 337 EXPECT_TRUE(helper_->IsTooltipVisible());
306 EXPECT_TRUE(helper_->IsTooltipShownTimerRunning()); 338 EXPECT_TRUE(helper_->IsTooltipShownTimerRunning());
307 base::string16 expected_tooltip = ASCIIToUTF16("Tooltip Text for view 2"); 339 base::string16 expected_tooltip = ASCIIToUTF16("Tooltip Text for view 2");
308 EXPECT_EQ(expected_tooltip, aura::client::GetTooltipText(window)); 340 EXPECT_EQ(expected_tooltip, aura::client::GetTooltipText(window));
309 EXPECT_EQ(expected_tooltip, helper_->GetTooltipText()); 341 EXPECT_EQ(expected_tooltip, helper_->GetTooltipText());
310 EXPECT_EQ(window, helper_->GetTooltipWindow()); 342 EXPECT_EQ(window, helper_->GetTooltipWindow());
311 } 343 }
312 344
313 TEST_F(TooltipControllerTest, TooltipHidesOnTimeoutAndStaysHiddenUntilChange) { 345 TEST_F(TooltipControllerTest, TooltipHidesOnTimeoutAndStaysHiddenUntilChange) {
346 // TODO: these tests use GetContext(). That should go away for aura-mus
347 // client. http://crbug.com/663781.
348 if (IsAuraMusClient())
349 return;
350
314 view_->set_tooltip_text(ASCIIToUTF16("Tooltip Text for view 1")); 351 view_->set_tooltip_text(ASCIIToUTF16("Tooltip Text for view 1"));
315 EXPECT_EQ(base::string16(), helper_->GetTooltipText()); 352 EXPECT_EQ(base::string16(), helper_->GetTooltipText());
316 EXPECT_EQ(NULL, helper_->GetTooltipWindow()); 353 EXPECT_EQ(NULL, helper_->GetTooltipWindow());
317 354
318 TooltipTestView* view2 = PrepareSecondView(); 355 TooltipTestView* view2 = PrepareSecondView();
319 view2->set_tooltip_text(ASCIIToUTF16("Tooltip Text for view 2")); 356 view2->set_tooltip_text(ASCIIToUTF16("Tooltip Text for view 2"));
320 357
321 aura::Window* window = GetWindow(); 358 aura::Window* window = GetWindow();
322 359
323 // Fire tooltip timer so tooltip becomes visible. 360 // Fire tooltip timer so tooltip becomes visible.
(...skipping 29 matching lines...) Expand all
353 EXPECT_TRUE(helper_->IsTooltipVisible()); 390 EXPECT_TRUE(helper_->IsTooltipVisible());
354 EXPECT_TRUE(helper_->IsTooltipShownTimerRunning()); 391 EXPECT_TRUE(helper_->IsTooltipShownTimerRunning());
355 base::string16 expected_tooltip = ASCIIToUTF16("Tooltip Text for view 2"); 392 base::string16 expected_tooltip = ASCIIToUTF16("Tooltip Text for view 2");
356 EXPECT_EQ(expected_tooltip, aura::client::GetTooltipText(window)); 393 EXPECT_EQ(expected_tooltip, aura::client::GetTooltipText(window));
357 EXPECT_EQ(expected_tooltip, helper_->GetTooltipText()); 394 EXPECT_EQ(expected_tooltip, helper_->GetTooltipText());
358 EXPECT_EQ(window, helper_->GetTooltipWindow()); 395 EXPECT_EQ(window, helper_->GetTooltipWindow());
359 } 396 }
360 397
361 // Verifies a mouse exit event hides the tooltips. 398 // Verifies a mouse exit event hides the tooltips.
362 TEST_F(TooltipControllerTest, HideOnExit) { 399 TEST_F(TooltipControllerTest, HideOnExit) {
400 // TODO: these tests use GetContext(). That should go away for aura-mus
401 // client. http://crbug.com/663781.
402 if (IsAuraMusClient())
403 return;
404
363 view_->set_tooltip_text(ASCIIToUTF16("Tooltip Text")); 405 view_->set_tooltip_text(ASCIIToUTF16("Tooltip Text"));
364 generator_->MoveMouseToCenterOf(GetWindow()); 406 generator_->MoveMouseToCenterOf(GetWindow());
365 base::string16 expected_tooltip = ASCIIToUTF16("Tooltip Text"); 407 base::string16 expected_tooltip = ASCIIToUTF16("Tooltip Text");
366 EXPECT_EQ(expected_tooltip, aura::client::GetTooltipText(GetWindow())); 408 EXPECT_EQ(expected_tooltip, aura::client::GetTooltipText(GetWindow()));
367 EXPECT_EQ(base::string16(), helper_->GetTooltipText()); 409 EXPECT_EQ(base::string16(), helper_->GetTooltipText());
368 EXPECT_EQ(GetWindow(), helper_->GetTooltipWindow()); 410 EXPECT_EQ(GetWindow(), helper_->GetTooltipWindow());
369 411
370 // Fire tooltip timer so tooltip becomes visible. 412 // Fire tooltip timer so tooltip becomes visible.
371 helper_->FireTooltipTimer(); 413 helper_->FireTooltipTimer();
372 414
373 EXPECT_TRUE(helper_->IsTooltipVisible()); 415 EXPECT_TRUE(helper_->IsTooltipVisible());
374 generator_->SendMouseExit(); 416 generator_->SendMouseExit();
375 EXPECT_FALSE(helper_->IsTooltipVisible()); 417 EXPECT_FALSE(helper_->IsTooltipVisible());
376 } 418 }
377 419
378 TEST_F(TooltipControllerTest, ReshowOnClickAfterEnterExit) { 420 TEST_F(TooltipControllerTest, ReshowOnClickAfterEnterExit) {
421 // TODO: these tests use GetContext(). That should go away for aura-mus
422 // client. http://crbug.com/663781.
423 if (IsAuraMusClient())
424 return;
425
379 // Owned by |view_|. 426 // Owned by |view_|.
380 TooltipTestView* v1 = new TooltipTestView; 427 TooltipTestView* v1 = new TooltipTestView;
381 TooltipTestView* v2 = new TooltipTestView; 428 TooltipTestView* v2 = new TooltipTestView;
382 view_->AddChildView(v1); 429 view_->AddChildView(v1);
383 view_->AddChildView(v2); 430 view_->AddChildView(v2);
384 gfx::Rect view_bounds(view_->GetLocalBounds()); 431 gfx::Rect view_bounds(view_->GetLocalBounds());
385 view_bounds.set_height(view_bounds.height() / 2); 432 view_bounds.set_height(view_bounds.height() / 2);
386 v1->SetBoundsRect(view_bounds); 433 v1->SetBoundsRect(view_bounds);
387 view_bounds.set_y(view_bounds.height()); 434 view_bounds.set_y(view_bounds.height());
388 v2->SetBoundsRect(view_bounds); 435 v2->SetBoundsRect(view_bounds);
(...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after
427 474
428 } // namespace 475 } // namespace
429 476
430 class TooltipControllerCaptureTest : public TooltipControllerTest { 477 class TooltipControllerCaptureTest : public TooltipControllerTest {
431 public: 478 public:
432 TooltipControllerCaptureTest() {} 479 TooltipControllerCaptureTest() {}
433 ~TooltipControllerCaptureTest() override {} 480 ~TooltipControllerCaptureTest() override {}
434 481
435 void SetUp() override { 482 void SetUp() override {
436 TooltipControllerTest::SetUp(); 483 TooltipControllerTest::SetUp();
484 // TODO: these tests use GetContext(). That should go away for aura-mus
485 // client. http://crbug.com/663781.
486 if (IsAuraMusClient())
487 return;
488
437 aura::client::SetScreenPositionClient(GetRootWindow(), 489 aura::client::SetScreenPositionClient(GetRootWindow(),
438 &screen_position_client_); 490 &screen_position_client_);
439 } 491 }
440 492
441 void TearDown() override { 493 void TearDown() override {
442 aura::client::SetScreenPositionClient(GetRootWindow(), NULL); 494 if (!IsAuraMusClient())
495 aura::client::SetScreenPositionClient(GetRootWindow(), NULL);
443 TooltipControllerTest::TearDown(); 496 TooltipControllerTest::TearDown();
444 } 497 }
445 498
446 private: 499 private:
447 wm::DefaultScreenPositionClient screen_position_client_; 500 wm::DefaultScreenPositionClient screen_position_client_;
448 std::unique_ptr<display::Screen> desktop_screen_; 501 std::unique_ptr<display::Screen> desktop_screen_;
449 502
450 DISALLOW_COPY_AND_ASSIGN(TooltipControllerCaptureTest); 503 DISALLOW_COPY_AND_ASSIGN(TooltipControllerCaptureTest);
451 }; 504 };
452 505
453 // Verifies when capture is released the TooltipController resets state. 506 // Verifies when capture is released the TooltipController resets state.
454 // Flaky on all builders. http://crbug.com/388268 507 // Flaky on all builders. http://crbug.com/388268
455 TEST_F(TooltipControllerCaptureTest, DISABLED_CloseOnCaptureLost) { 508 TEST_F(TooltipControllerCaptureTest, DISABLED_CloseOnCaptureLost) {
509 // TODO: these tests use GetContext(). That should go away for aura-mus
510 // client. http://crbug.com/663781.
511 if (IsAuraMusClient())
512 return;
513
456 view_->GetWidget()->SetCapture(view_); 514 view_->GetWidget()->SetCapture(view_);
457 RunPendingMessages(); 515 RunPendingMessages();
458 view_->set_tooltip_text(ASCIIToUTF16("Tooltip Text")); 516 view_->set_tooltip_text(ASCIIToUTF16("Tooltip Text"));
459 generator_->MoveMouseToCenterOf(GetWindow()); 517 generator_->MoveMouseToCenterOf(GetWindow());
460 base::string16 expected_tooltip = ASCIIToUTF16("Tooltip Text"); 518 base::string16 expected_tooltip = ASCIIToUTF16("Tooltip Text");
461 EXPECT_EQ(expected_tooltip, aura::client::GetTooltipText(GetWindow())); 519 EXPECT_EQ(expected_tooltip, aura::client::GetTooltipText(GetWindow()));
462 EXPECT_EQ(base::string16(), helper_->GetTooltipText()); 520 EXPECT_EQ(base::string16(), helper_->GetTooltipText());
463 EXPECT_EQ(GetWindow(), helper_->GetTooltipWindow()); 521 EXPECT_EQ(GetWindow(), helper_->GetTooltipWindow());
464 522
465 // Fire tooltip timer so tooltip becomes visible. 523 // Fire tooltip timer so tooltip becomes visible.
466 helper_->FireTooltipTimer(); 524 helper_->FireTooltipTimer();
467 525
468 EXPECT_TRUE(helper_->IsTooltipVisible()); 526 EXPECT_TRUE(helper_->IsTooltipVisible());
469 view_->GetWidget()->ReleaseCapture(); 527 view_->GetWidget()->ReleaseCapture();
470 EXPECT_FALSE(helper_->IsTooltipVisible()); 528 EXPECT_FALSE(helper_->IsTooltipVisible());
471 EXPECT_TRUE(helper_->GetTooltipWindow() == NULL); 529 EXPECT_TRUE(helper_->GetTooltipWindow() == NULL);
472 } 530 }
473 531
474 // Disabled on linux as DesktopScreenX11::GetWindowAtScreenPoint() doesn't 532 // Disabled on linux as DesktopScreenX11::GetWindowAtScreenPoint() doesn't
475 // consider z-order. 533 // consider z-order.
476 // Disabled on Windows due to failing bots. http://crbug.com/604479 534 // Disabled on Windows due to failing bots. http://crbug.com/604479
477 #if (defined(OS_LINUX) && !defined(OS_CHROMEOS)) || defined(OS_WIN) 535 #if (defined(OS_LINUX) && !defined(OS_CHROMEOS)) || defined(OS_WIN)
478 #define MAYBE_Capture DISABLED_Capture 536 #define MAYBE_Capture DISABLED_Capture
479 #else 537 #else
480 #define MAYBE_Capture Capture 538 #define MAYBE_Capture Capture
481 #endif 539 #endif
482 // Verifies the correct window is found for tooltips when there is a capture. 540 // Verifies the correct window is found for tooltips when there is a capture.
483 TEST_F(TooltipControllerCaptureTest, MAYBE_Capture) { 541 TEST_F(TooltipControllerCaptureTest, MAYBE_Capture) {
484 // Currently, capture in one test affects capture in other tests. 542 // Currently, capture in one test affects capture in other tests.
485 if (IsMus()) 543 // TODO: these tests use GetContext(). That should go away for aura-mus
544 // client. http://crbug.com/663781.
545 if (IsMus() || IsAuraMusClient())
486 return; 546 return;
487 547
488 const base::string16 tooltip_text(ASCIIToUTF16("1")); 548 const base::string16 tooltip_text(ASCIIToUTF16("1"));
489 const base::string16 tooltip_text2(ASCIIToUTF16("2")); 549 const base::string16 tooltip_text2(ASCIIToUTF16("2"));
490 550
491 widget_->SetBounds(gfx::Rect(0, 0, 200, 200)); 551 widget_->SetBounds(gfx::Rect(0, 0, 200, 200));
492 view_->set_tooltip_text(tooltip_text); 552 view_->set_tooltip_text(tooltip_text);
493 553
494 std::unique_ptr<views::Widget> widget2(CreateWidget(GetContext())); 554 std::unique_ptr<views::Widget> widget2(CreateWidget(GetContext()));
495 widget2->SetContentsView(new View); 555 widget2->SetContentsView(new View);
(...skipping 143 matching lines...) Expand 10 before | Expand all | Expand 10 after
639 699
640 // Use for tests that need both views and a TestTooltip. 700 // Use for tests that need both views and a TestTooltip.
641 class TooltipControllerTest3 : public ViewsTestBase { 701 class TooltipControllerTest3 : public ViewsTestBase {
642 public: 702 public:
643 TooltipControllerTest3() : test_tooltip_(new TestTooltip) {} 703 TooltipControllerTest3() : test_tooltip_(new TestTooltip) {}
644 ~TooltipControllerTest3() override {} 704 ~TooltipControllerTest3() override {}
645 705
646 void SetUp() override { 706 void SetUp() override {
647 ViewsTestBase::SetUp(); 707 ViewsTestBase::SetUp();
648 708
709 // TODO: these tests use GetContext(). That should go away for aura-mus
710 // client. http://crbug.com/663781.
711 if (IsAuraMusClient())
712 return;
713
649 aura::Window* root_window = GetContext(); 714 aura::Window* root_window = GetContext();
650 new wm::DefaultActivationClient(root_window); 715 new wm::DefaultActivationClient(root_window);
651 716
652 widget_.reset(CreateWidget(root_window)); 717 widget_.reset(CreateWidget(root_window));
653 widget_->SetContentsView(new View); 718 widget_->SetContentsView(new View);
654 view_ = new TooltipTestView; 719 view_ = new TooltipTestView;
655 widget_->GetContentsView()->AddChildView(view_); 720 widget_->GetContentsView()->AddChildView(view_);
656 view_->SetBoundsRect(widget_->GetContentsView()->GetLocalBounds()); 721 view_->SetBoundsRect(widget_->GetContentsView()->GetLocalBounds());
657 722
658 generator_.reset(new ui::test::EventGenerator(GetRootWindow())); 723 generator_.reset(new ui::test::EventGenerator(GetRootWindow()));
659 controller_.reset(new TooltipController( 724 controller_.reset(new TooltipController(
660 std::unique_ptr<views::corewm::Tooltip>(test_tooltip_))); 725 std::unique_ptr<views::corewm::Tooltip>(test_tooltip_)));
661 GetRootWindow()->RemovePreTargetHandler( 726 GetRootWindow()->RemovePreTargetHandler(
662 static_cast<TooltipController*>(aura::client::GetTooltipClient( 727 static_cast<TooltipController*>(aura::client::GetTooltipClient(
663 widget_->GetNativeWindow()->GetRootWindow()))); 728 widget_->GetNativeWindow()->GetRootWindow())));
664 GetRootWindow()->AddPreTargetHandler(controller_.get()); 729 GetRootWindow()->AddPreTargetHandler(controller_.get());
665 helper_.reset(new TooltipControllerTestHelper(controller_.get())); 730 helper_.reset(new TooltipControllerTestHelper(controller_.get()));
666 SetTooltipClient(GetRootWindow(), controller_.get()); 731 SetTooltipClient(GetRootWindow(), controller_.get());
667 } 732 }
668 733
669 void TearDown() override { 734 void TearDown() override {
670 GetRootWindow()->RemovePreTargetHandler(controller_.get()); 735 if (!IsAuraMusClient()) {
671 aura::client::SetTooltipClient(GetRootWindow(), NULL); 736 GetRootWindow()->RemovePreTargetHandler(controller_.get());
737 aura::client::SetTooltipClient(GetRootWindow(), NULL);
672 738
673 controller_.reset(); 739 controller_.reset();
674 generator_.reset(); 740 generator_.reset();
675 helper_.reset(); 741 helper_.reset();
676 widget_.reset(); 742 widget_.reset();
743 }
677 ViewsTestBase::TearDown(); 744 ViewsTestBase::TearDown();
678 } 745 }
679 746
680 aura::Window* GetWindow() { return widget_->GetNativeWindow(); } 747 aura::Window* GetWindow() { return widget_->GetNativeWindow(); }
681 748
682 protected: 749 protected:
683 // Owned by |controller_|. 750 // Owned by |controller_|.
684 TestTooltip* test_tooltip_; 751 TestTooltip* test_tooltip_;
685 std::unique_ptr<TooltipControllerTestHelper> helper_; 752 std::unique_ptr<TooltipControllerTestHelper> helper_;
686 std::unique_ptr<ui::test::EventGenerator> generator_; 753 std::unique_ptr<ui::test::EventGenerator> generator_;
687 std::unique_ptr<views::Widget> widget_; 754 std::unique_ptr<views::Widget> widget_;
688 TooltipTestView* view_; 755 TooltipTestView* view_;
689 756
690 private: 757 private:
691 std::unique_ptr<TooltipController> controller_; 758 std::unique_ptr<TooltipController> controller_;
692 759
693 #if defined(OS_WIN) 760 #if defined(OS_WIN)
694 ui::ScopedOleInitializer ole_initializer_; 761 ui::ScopedOleInitializer ole_initializer_;
695 #endif 762 #endif
696 763
697 aura::Window* GetRootWindow() { return GetWindow()->GetRootWindow(); } 764 aura::Window* GetRootWindow() { return GetWindow()->GetRootWindow(); }
698 765
699 DISALLOW_COPY_AND_ASSIGN(TooltipControllerTest3); 766 DISALLOW_COPY_AND_ASSIGN(TooltipControllerTest3);
700 }; 767 };
701 768
702 TEST_F(TooltipControllerTest3, TooltipPositionChangesOnTwoViewsWithSameLabel) { 769 TEST_F(TooltipControllerTest3, TooltipPositionChangesOnTwoViewsWithSameLabel) {
770 // TODO: these tests use GetContext(). That should go away for aura-mus
771 // client. http://crbug.com/663781.
772 if (IsAuraMusClient())
773 return;
774
703 // Owned by |view_|. 775 // Owned by |view_|.
704 // These two views have the same tooltip text 776 // These two views have the same tooltip text
705 TooltipTestView* v1 = new TooltipTestView; 777 TooltipTestView* v1 = new TooltipTestView;
706 TooltipTestView* v2 = new TooltipTestView; 778 TooltipTestView* v2 = new TooltipTestView;
707 // v1_1 is a view inside v1 that has an identical tooltip text to that of v1 779 // v1_1 is a view inside v1 that has an identical tooltip text to that of v1
708 // and v2 780 // and v2
709 TooltipTestView* v1_1 = new TooltipTestView; 781 TooltipTestView* v1_1 = new TooltipTestView;
710 // v2_1 is a view inside v2 that has an identical tooltip text to that of v1 782 // v2_1 is a view inside v2 that has an identical tooltip text to that of v1
711 // and v2 783 // and v2
712 TooltipTestView* v2_1 = new TooltipTestView; 784 TooltipTestView* v2_1 = new TooltipTestView;
(...skipping 87 matching lines...) Expand 10 before | Expand all | Expand 10 after
800 helper_->FireTooltipTimer(); 872 helper_->FireTooltipTimer();
801 tooltip_bounds1 = test_tooltip_->location(); 873 tooltip_bounds1 = test_tooltip_->location();
802 874
803 EXPECT_NE(tooltip_bounds1_1, tooltip_bounds1); 875 EXPECT_NE(tooltip_bounds1_1, tooltip_bounds1);
804 EXPECT_EQ(reference_string, helper_->GetTooltipText()); 876 EXPECT_EQ(reference_string, helper_->GetTooltipText());
805 } 877 }
806 878
807 } // namespace test 879 } // namespace test
808 } // namespace corewm 880 } // namespace corewm
809 } // namespace views 881 } // namespace views
OLDNEW
« no previous file with comments | « no previous file | ui/views/mus/views_aura_mus_test_suite.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698