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

Side by Side Diff: ui/display/chromeos/update_display_configuration_task_unittest.cc

Issue 1861593002: chromeos: Turn off displays on suspend (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: chromeos: Add functions for configuring cached displays Created 4 years, 7 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
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/display/chromeos/update_display_configuration_task.h" 5 #include "ui/display/chromeos/update_display_configuration_task.h"
6 6
7 #include <stddef.h> 7 #include <stddef.h>
8 8
9 #include <utility> 9 #include <utility>
10 10
(...skipping 202 matching lines...) Expand 10 before | Expand all | Expand 10 after
213 private: 213 private:
214 DISALLOW_COPY_AND_ASSIGN(UpdateDisplayConfigurationTaskTest); 214 DISALLOW_COPY_AND_ASSIGN(UpdateDisplayConfigurationTaskTest);
215 }; 215 };
216 216
217 } // namespace 217 } // namespace
218 218
219 TEST_F(UpdateDisplayConfigurationTaskTest, HeadlessConfiguration) { 219 TEST_F(UpdateDisplayConfigurationTaskTest, HeadlessConfiguration) {
220 { 220 {
221 UpdateDisplayConfigurationTask task( 221 UpdateDisplayConfigurationTask task(
222 &delegate_, &layout_manager_, MULTIPLE_DISPLAY_STATE_HEADLESS, 222 &delegate_, &layout_manager_, MULTIPLE_DISPLAY_STATE_HEADLESS,
223 chromeos::DISPLAY_POWER_ALL_ON, 0, 0, false, 223 chromeos::DISPLAY_POWER_ALL_ON, 0, 0, false, false,
224 base::Bind(&UpdateDisplayConfigurationTaskTest::ResponseCallback, 224 base::Bind(&UpdateDisplayConfigurationTaskTest::ResponseCallback,
225 base::Unretained(this))); 225 base::Unretained(this)));
226 task.Run(); 226 task.Run();
227 } 227 }
228 228
229 EXPECT_TRUE(configured_); 229 EXPECT_TRUE(configured_);
230 EXPECT_TRUE(configuration_status_); 230 EXPECT_TRUE(configuration_status_);
231 EXPECT_EQ(MULTIPLE_DISPLAY_STATE_HEADLESS, display_state_); 231 EXPECT_EQ(MULTIPLE_DISPLAY_STATE_HEADLESS, display_state_);
232 EXPECT_EQ(chromeos::DISPLAY_POWER_ALL_ON, power_state_); 232 EXPECT_EQ(chromeos::DISPLAY_POWER_ALL_ON, power_state_);
233 EXPECT_EQ(JoinActions(kGrab, kUngrab, NULL), log_.GetActionsAndClear()); 233 EXPECT_EQ(JoinActions(kGrab, kUngrab, NULL), log_.GetActionsAndClear());
234 } 234 }
235 235
236 TEST_F(UpdateDisplayConfigurationTaskTest, SingleConfiguration) { 236 TEST_F(UpdateDisplayConfigurationTaskTest, SingleConfiguration) {
237 UpdateDisplays(1); 237 UpdateDisplays(1);
238 238
239 { 239 {
240 UpdateDisplayConfigurationTask task( 240 UpdateDisplayConfigurationTask task(
241 &delegate_, &layout_manager_, MULTIPLE_DISPLAY_STATE_SINGLE, 241 &delegate_, &layout_manager_, MULTIPLE_DISPLAY_STATE_SINGLE,
242 chromeos::DISPLAY_POWER_ALL_ON, 0, 0, false, 242 chromeos::DISPLAY_POWER_ALL_ON, 0, 0, false, false,
243 base::Bind(&UpdateDisplayConfigurationTaskTest::ResponseCallback, 243 base::Bind(&UpdateDisplayConfigurationTaskTest::ResponseCallback,
244 base::Unretained(this))); 244 base::Unretained(this)));
245 task.Run(); 245 task.Run();
246 } 246 }
247 247
248 EXPECT_TRUE(configured_); 248 EXPECT_TRUE(configured_);
249 EXPECT_TRUE(configuration_status_); 249 EXPECT_TRUE(configuration_status_);
250 EXPECT_EQ(MULTIPLE_DISPLAY_STATE_SINGLE, display_state_); 250 EXPECT_EQ(MULTIPLE_DISPLAY_STATE_SINGLE, display_state_);
251 EXPECT_EQ(chromeos::DISPLAY_POWER_ALL_ON, power_state_); 251 EXPECT_EQ(chromeos::DISPLAY_POWER_ALL_ON, power_state_);
252 EXPECT_EQ(JoinActions( 252 EXPECT_EQ(JoinActions(
253 kGrab, GetFramebufferAction(small_mode_.size(), &displays_[0], 253 kGrab, GetFramebufferAction(small_mode_.size(), &displays_[0],
254 nullptr).c_str(), 254 nullptr).c_str(),
255 GetCrtcAction(displays_[0], &small_mode_, gfx::Point()).c_str(), 255 GetCrtcAction(displays_[0], &small_mode_, gfx::Point()).c_str(),
256 kUngrab, NULL), 256 kUngrab, NULL),
257 log_.GetActionsAndClear()); 257 log_.GetActionsAndClear());
258 } 258 }
259 259
260 TEST_F(UpdateDisplayConfigurationTaskTest, ExtendedConfiguration) { 260 TEST_F(UpdateDisplayConfigurationTaskTest, ExtendedConfiguration) {
261 UpdateDisplays(2); 261 UpdateDisplays(2);
262 262
263 { 263 {
264 UpdateDisplayConfigurationTask task( 264 UpdateDisplayConfigurationTask task(
265 &delegate_, &layout_manager_, MULTIPLE_DISPLAY_STATE_DUAL_EXTENDED, 265 &delegate_, &layout_manager_, MULTIPLE_DISPLAY_STATE_DUAL_EXTENDED,
266 chromeos::DISPLAY_POWER_ALL_ON, 0, 0, false, 266 chromeos::DISPLAY_POWER_ALL_ON, 0, 0, false, false,
267 base::Bind(&UpdateDisplayConfigurationTaskTest::ResponseCallback, 267 base::Bind(&UpdateDisplayConfigurationTaskTest::ResponseCallback,
268 base::Unretained(this))); 268 base::Unretained(this)));
269 task.Run(); 269 task.Run();
270 } 270 }
271 271
272 EXPECT_TRUE(configured_); 272 EXPECT_TRUE(configured_);
273 EXPECT_TRUE(configuration_status_); 273 EXPECT_TRUE(configuration_status_);
274 EXPECT_EQ(MULTIPLE_DISPLAY_STATE_DUAL_EXTENDED, display_state_); 274 EXPECT_EQ(MULTIPLE_DISPLAY_STATE_DUAL_EXTENDED, display_state_);
275 EXPECT_EQ(chromeos::DISPLAY_POWER_ALL_ON, power_state_); 275 EXPECT_EQ(chromeos::DISPLAY_POWER_ALL_ON, power_state_);
276 EXPECT_EQ( 276 EXPECT_EQ(
277 JoinActions( 277 JoinActions(
278 kGrab, GetFramebufferAction(gfx::Size(big_mode_.size().width(), 278 kGrab, GetFramebufferAction(gfx::Size(big_mode_.size().width(),
279 small_mode_.size().height() + 279 small_mode_.size().height() +
280 big_mode_.size().height()), 280 big_mode_.size().height()),
281 &displays_[0], &displays_[1]).c_str(), 281 &displays_[0], &displays_[1]).c_str(),
282 GetCrtcAction(displays_[0], &small_mode_, gfx::Point()).c_str(), 282 GetCrtcAction(displays_[0], &small_mode_, gfx::Point()).c_str(),
283 GetCrtcAction(displays_[1], &big_mode_, 283 GetCrtcAction(displays_[1], &big_mode_,
284 gfx::Point(0, small_mode_.size().height())).c_str(), 284 gfx::Point(0, small_mode_.size().height())).c_str(),
285 kUngrab, NULL), 285 kUngrab, NULL),
286 log_.GetActionsAndClear()); 286 log_.GetActionsAndClear());
287 } 287 }
288 288
289 TEST_F(UpdateDisplayConfigurationTaskTest, MirrorConfiguration) { 289 TEST_F(UpdateDisplayConfigurationTaskTest, MirrorConfiguration) {
290 UpdateDisplays(2); 290 UpdateDisplays(2);
291 291
292 { 292 {
293 UpdateDisplayConfigurationTask task( 293 UpdateDisplayConfigurationTask task(
294 &delegate_, &layout_manager_, MULTIPLE_DISPLAY_STATE_DUAL_MIRROR, 294 &delegate_, &layout_manager_, MULTIPLE_DISPLAY_STATE_DUAL_MIRROR,
295 chromeos::DISPLAY_POWER_ALL_ON, 0, 0, false, 295 chromeos::DISPLAY_POWER_ALL_ON, 0, 0, false, false,
296 base::Bind(&UpdateDisplayConfigurationTaskTest::ResponseCallback, 296 base::Bind(&UpdateDisplayConfigurationTaskTest::ResponseCallback,
297 base::Unretained(this))); 297 base::Unretained(this)));
298 task.Run(); 298 task.Run();
299 } 299 }
300 300
301 EXPECT_TRUE(configured_); 301 EXPECT_TRUE(configured_);
302 EXPECT_TRUE(configuration_status_); 302 EXPECT_TRUE(configuration_status_);
303 EXPECT_EQ(MULTIPLE_DISPLAY_STATE_DUAL_MIRROR, display_state_); 303 EXPECT_EQ(MULTIPLE_DISPLAY_STATE_DUAL_MIRROR, display_state_);
304 EXPECT_EQ(chromeos::DISPLAY_POWER_ALL_ON, power_state_); 304 EXPECT_EQ(chromeos::DISPLAY_POWER_ALL_ON, power_state_);
305 EXPECT_EQ(JoinActions( 305 EXPECT_EQ(JoinActions(
306 kGrab, GetFramebufferAction(small_mode_.size(), &displays_[0], 306 kGrab, GetFramebufferAction(small_mode_.size(), &displays_[0],
307 &displays_[1]).c_str(), 307 &displays_[1]).c_str(),
308 GetCrtcAction(displays_[0], &small_mode_, gfx::Point()).c_str(), 308 GetCrtcAction(displays_[0], &small_mode_, gfx::Point()).c_str(),
309 GetCrtcAction(displays_[1], &small_mode_, gfx::Point()).c_str(), 309 GetCrtcAction(displays_[1], &small_mode_, gfx::Point()).c_str(),
310 kUngrab, NULL), 310 kUngrab, NULL),
311 log_.GetActionsAndClear()); 311 log_.GetActionsAndClear());
312 } 312 }
313 313
314 TEST_F(UpdateDisplayConfigurationTaskTest, FailMirrorConfiguration) { 314 TEST_F(UpdateDisplayConfigurationTaskTest, FailMirrorConfiguration) {
315 layout_manager_.set_should_mirror(false); 315 layout_manager_.set_should_mirror(false);
316 UpdateDisplays(2); 316 UpdateDisplays(2);
317 317
318 { 318 {
319 UpdateDisplayConfigurationTask task( 319 UpdateDisplayConfigurationTask task(
320 &delegate_, &layout_manager_, MULTIPLE_DISPLAY_STATE_DUAL_MIRROR, 320 &delegate_, &layout_manager_, MULTIPLE_DISPLAY_STATE_DUAL_MIRROR,
321 chromeos::DISPLAY_POWER_ALL_ON, 0, 0, false, 321 chromeos::DISPLAY_POWER_ALL_ON, 0, 0, false, false,
322 base::Bind(&UpdateDisplayConfigurationTaskTest::ResponseCallback, 322 base::Bind(&UpdateDisplayConfigurationTaskTest::ResponseCallback,
323 base::Unretained(this))); 323 base::Unretained(this)));
324 task.Run(); 324 task.Run();
325 } 325 }
326 326
327 EXPECT_TRUE(configured_); 327 EXPECT_TRUE(configured_);
328 EXPECT_FALSE(configuration_status_); 328 EXPECT_FALSE(configuration_status_);
329 EXPECT_EQ(JoinActions(kGrab, kUngrab, NULL), log_.GetActionsAndClear()); 329 EXPECT_EQ(JoinActions(kGrab, kUngrab, NULL), log_.GetActionsAndClear());
330 } 330 }
331 331
332 TEST_F(UpdateDisplayConfigurationTaskTest, FailExtendedConfiguration) { 332 TEST_F(UpdateDisplayConfigurationTaskTest, FailExtendedConfiguration) {
333 delegate_.set_max_configurable_pixels(1); 333 delegate_.set_max_configurable_pixels(1);
334 UpdateDisplays(2); 334 UpdateDisplays(2);
335 335
336 { 336 {
337 UpdateDisplayConfigurationTask task( 337 UpdateDisplayConfigurationTask task(
338 &delegate_, &layout_manager_, MULTIPLE_DISPLAY_STATE_DUAL_EXTENDED, 338 &delegate_, &layout_manager_, MULTIPLE_DISPLAY_STATE_DUAL_EXTENDED,
339 chromeos::DISPLAY_POWER_ALL_ON, 0, 0, false, 339 chromeos::DISPLAY_POWER_ALL_ON, 0, 0, false, false,
340 base::Bind(&UpdateDisplayConfigurationTaskTest::ResponseCallback, 340 base::Bind(&UpdateDisplayConfigurationTaskTest::ResponseCallback,
341 base::Unretained(this))); 341 base::Unretained(this)));
342 task.Run(); 342 task.Run();
343 } 343 }
344 344
345 EXPECT_TRUE(configured_); 345 EXPECT_TRUE(configured_);
346 EXPECT_FALSE(configuration_status_); 346 EXPECT_FALSE(configuration_status_);
347 EXPECT_EQ( 347 EXPECT_EQ(
348 JoinActions( 348 JoinActions(
349 kGrab, GetFramebufferAction(gfx::Size(big_mode_.size().width(), 349 kGrab, GetFramebufferAction(gfx::Size(big_mode_.size().width(),
350 small_mode_.size().height() + 350 small_mode_.size().height() +
351 big_mode_.size().height()), 351 big_mode_.size().height()),
352 &displays_[0], &displays_[1]).c_str(), 352 &displays_[0], &displays_[1]).c_str(),
353 GetCrtcAction(displays_[0], &small_mode_, gfx::Point()).c_str(), 353 GetCrtcAction(displays_[0], &small_mode_, gfx::Point()).c_str(),
354 GetCrtcAction(displays_[1], &big_mode_, 354 GetCrtcAction(displays_[1], &big_mode_,
355 gfx::Point(0, small_mode_.size().height())).c_str(), 355 gfx::Point(0, small_mode_.size().height())).c_str(),
356 GetCrtcAction(displays_[1], &small_mode_, 356 GetCrtcAction(displays_[1], &small_mode_,
357 gfx::Point(0, small_mode_.size().height())).c_str(), 357 gfx::Point(0, small_mode_.size().height())).c_str(),
358 kUngrab, NULL), 358 kUngrab, NULL),
359 log_.GetActionsAndClear()); 359 log_.GetActionsAndClear());
360 } 360 }
361 361
362 TEST_F(UpdateDisplayConfigurationTaskTest, SingleChangePowerConfiguration) { 362 TEST_F(UpdateDisplayConfigurationTaskTest, SingleChangePowerConfiguration) {
363 UpdateDisplays(1); 363 UpdateDisplays(1);
364 364
365 { 365 {
366 UpdateDisplayConfigurationTask task( 366 UpdateDisplayConfigurationTask task(
367 &delegate_, &layout_manager_, MULTIPLE_DISPLAY_STATE_SINGLE, 367 &delegate_, &layout_manager_, MULTIPLE_DISPLAY_STATE_SINGLE,
368 chromeos::DISPLAY_POWER_ALL_ON, 0, 0, false, 368 chromeos::DISPLAY_POWER_ALL_ON, 0, 0, false, false,
369 base::Bind(&UpdateDisplayConfigurationTaskTest::ResponseCallback, 369 base::Bind(&UpdateDisplayConfigurationTaskTest::ResponseCallback,
370 base::Unretained(this))); 370 base::Unretained(this)));
371 task.Run(); 371 task.Run();
372 } 372 }
373 373
374 EXPECT_TRUE(configured_); 374 EXPECT_TRUE(configured_);
375 EXPECT_TRUE(configuration_status_); 375 EXPECT_TRUE(configuration_status_);
376 EXPECT_EQ(MULTIPLE_DISPLAY_STATE_SINGLE, display_state_); 376 EXPECT_EQ(MULTIPLE_DISPLAY_STATE_SINGLE, display_state_);
377 EXPECT_EQ(chromeos::DISPLAY_POWER_ALL_ON, power_state_); 377 EXPECT_EQ(chromeos::DISPLAY_POWER_ALL_ON, power_state_);
378 EXPECT_EQ(JoinActions( 378 EXPECT_EQ(JoinActions(
379 kGrab, GetFramebufferAction(small_mode_.size(), &displays_[0], 379 kGrab, GetFramebufferAction(small_mode_.size(), &displays_[0],
380 nullptr).c_str(), 380 nullptr).c_str(),
381 GetCrtcAction(displays_[0], &small_mode_, gfx::Point()).c_str(), 381 GetCrtcAction(displays_[0], &small_mode_, gfx::Point()).c_str(),
382 kUngrab, NULL), 382 kUngrab, NULL),
383 log_.GetActionsAndClear()); 383 log_.GetActionsAndClear());
384 384
385 // Turn power off 385 // Turn power off
386 { 386 {
387 UpdateDisplayConfigurationTask task( 387 UpdateDisplayConfigurationTask task(
388 &delegate_, &layout_manager_, MULTIPLE_DISPLAY_STATE_SINGLE, 388 &delegate_, &layout_manager_, MULTIPLE_DISPLAY_STATE_SINGLE,
389 chromeos::DISPLAY_POWER_ALL_OFF, 0, 0, false, 389 chromeos::DISPLAY_POWER_ALL_OFF, 0, 0, false, false,
390 base::Bind(&UpdateDisplayConfigurationTaskTest::ResponseCallback, 390 base::Bind(&UpdateDisplayConfigurationTaskTest::ResponseCallback,
391 base::Unretained(this))); 391 base::Unretained(this)));
392 task.Run(); 392 task.Run();
393 } 393 }
394 394
395 EXPECT_TRUE(configuration_status_); 395 EXPECT_TRUE(configuration_status_);
396 EXPECT_EQ(MULTIPLE_DISPLAY_STATE_SINGLE, display_state_); 396 EXPECT_EQ(MULTIPLE_DISPLAY_STATE_SINGLE, display_state_);
397 EXPECT_EQ(chromeos::DISPLAY_POWER_ALL_OFF, power_state_); 397 EXPECT_EQ(chromeos::DISPLAY_POWER_ALL_OFF, power_state_);
398 EXPECT_EQ( 398 EXPECT_EQ(
399 JoinActions(kGrab, GetFramebufferAction(small_mode_.size(), &displays_[0], 399 JoinActions(kGrab, GetFramebufferAction(small_mode_.size(), &displays_[0],
400 nullptr).c_str(), 400 nullptr).c_str(),
401 GetCrtcAction(displays_[0], nullptr, gfx::Point()).c_str(), 401 GetCrtcAction(displays_[0], nullptr, gfx::Point()).c_str(),
402 kUngrab, NULL), 402 kUngrab, NULL),
403 log_.GetActionsAndClear()); 403 log_.GetActionsAndClear());
404 } 404 }
405 405
406 TEST_F(UpdateDisplayConfigurationTaskTest, NoopSoftwareMirrorConfiguration) { 406 TEST_F(UpdateDisplayConfigurationTaskTest, NoopSoftwareMirrorConfiguration) {
407 layout_manager_.set_should_mirror(false); 407 layout_manager_.set_should_mirror(false);
408 layout_manager_.set_software_mirroring_controller( 408 layout_manager_.set_software_mirroring_controller(
409 base::WrapUnique(new TestSoftwareMirroringController())); 409 base::WrapUnique(new TestSoftwareMirroringController()));
410 UpdateDisplays(2); 410 UpdateDisplays(2);
411 411
412 { 412 {
413 UpdateDisplayConfigurationTask task( 413 UpdateDisplayConfigurationTask task(
414 &delegate_, &layout_manager_, MULTIPLE_DISPLAY_STATE_DUAL_EXTENDED, 414 &delegate_, &layout_manager_, MULTIPLE_DISPLAY_STATE_DUAL_EXTENDED,
415 chromeos::DISPLAY_POWER_ALL_ON, 0, 0, false, 415 chromeos::DISPLAY_POWER_ALL_ON, 0, 0, false, false,
416 base::Bind(&UpdateDisplayConfigurationTaskTest::ResponseCallback, 416 base::Bind(&UpdateDisplayConfigurationTaskTest::ResponseCallback,
417 base::Unretained(this))); 417 base::Unretained(this)));
418 task.Run(); 418 task.Run();
419 } 419 }
420 420
421 log_.GetActionsAndClear(); 421 log_.GetActionsAndClear();
422 422
423 { 423 {
424 UpdateDisplayConfigurationTask task( 424 UpdateDisplayConfigurationTask task(
425 &delegate_, &layout_manager_, MULTIPLE_DISPLAY_STATE_DUAL_MIRROR, 425 &delegate_, &layout_manager_, MULTIPLE_DISPLAY_STATE_DUAL_MIRROR,
426 chromeos::DISPLAY_POWER_ALL_ON, 0, 0, false, 426 chromeos::DISPLAY_POWER_ALL_ON, 0, 0, false, false,
427 base::Bind(&UpdateDisplayConfigurationTaskTest::ResponseCallback, 427 base::Bind(&UpdateDisplayConfigurationTaskTest::ResponseCallback,
428 base::Unretained(this))); 428 base::Unretained(this)));
429 task.Run(); 429 task.Run();
430 } 430 }
431 431
432 EXPECT_TRUE(configuration_status_); 432 EXPECT_TRUE(configuration_status_);
433 EXPECT_EQ(MULTIPLE_DISPLAY_STATE_DUAL_EXTENDED, display_state_); 433 EXPECT_EQ(MULTIPLE_DISPLAY_STATE_DUAL_EXTENDED, display_state_);
434 EXPECT_TRUE(layout_manager_.GetSoftwareMirroringController() 434 EXPECT_TRUE(layout_manager_.GetSoftwareMirroringController()
435 ->SoftwareMirroringEnabled()); 435 ->SoftwareMirroringEnabled());
436 EXPECT_EQ(JoinActions(kGrab, kUngrab, NULL), log_.GetActionsAndClear()); 436 EXPECT_EQ(JoinActions(kGrab, kUngrab, NULL), log_.GetActionsAndClear());
437 } 437 }
438 438
439 TEST_F(UpdateDisplayConfigurationTaskTest, 439 TEST_F(UpdateDisplayConfigurationTaskTest,
440 ForceConfigurationWhileGoingToSoftwareMirror) { 440 ForceConfigurationWhileGoingToSoftwareMirror) {
441 layout_manager_.set_should_mirror(false); 441 layout_manager_.set_should_mirror(false);
442 layout_manager_.set_software_mirroring_controller( 442 layout_manager_.set_software_mirroring_controller(
443 base::WrapUnique(new TestSoftwareMirroringController())); 443 base::WrapUnique(new TestSoftwareMirroringController()));
444 UpdateDisplays(2); 444 UpdateDisplays(2);
445 445
446 { 446 {
447 UpdateDisplayConfigurationTask task( 447 UpdateDisplayConfigurationTask task(
448 &delegate_, &layout_manager_, MULTIPLE_DISPLAY_STATE_DUAL_EXTENDED, 448 &delegate_, &layout_manager_, MULTIPLE_DISPLAY_STATE_DUAL_EXTENDED,
449 chromeos::DISPLAY_POWER_ALL_ON, 0, 0, false, 449 chromeos::DISPLAY_POWER_ALL_ON, 0, 0, false, false,
450 base::Bind(&UpdateDisplayConfigurationTaskTest::ResponseCallback, 450 base::Bind(&UpdateDisplayConfigurationTaskTest::ResponseCallback,
451 base::Unretained(this))); 451 base::Unretained(this)));
452 task.Run(); 452 task.Run();
453 } 453 }
454 454
455 log_.GetActionsAndClear(); 455 log_.GetActionsAndClear();
456 456
457 { 457 {
458 UpdateDisplayConfigurationTask task( 458 UpdateDisplayConfigurationTask task(
459 &delegate_, &layout_manager_, MULTIPLE_DISPLAY_STATE_DUAL_MIRROR, 459 &delegate_, &layout_manager_, MULTIPLE_DISPLAY_STATE_DUAL_MIRROR,
460 chromeos::DISPLAY_POWER_ALL_ON, 0, 0, true /* force_configure */, 460 chromeos::DISPLAY_POWER_ALL_ON, 0, 0, true /* force_configure */,
461 base::Bind(&UpdateDisplayConfigurationTaskTest::ResponseCallback, 461 false, base::Bind(&UpdateDisplayConfigurationTaskTest::ResponseCallback,
462 base::Unretained(this))); 462 base::Unretained(this)));
463 task.Run(); 463 task.Run();
464 } 464 }
465 465
466 EXPECT_TRUE(configuration_status_); 466 EXPECT_TRUE(configuration_status_);
467 EXPECT_EQ(MULTIPLE_DISPLAY_STATE_DUAL_EXTENDED, display_state_); 467 EXPECT_EQ(MULTIPLE_DISPLAY_STATE_DUAL_EXTENDED, display_state_);
468 EXPECT_TRUE(layout_manager_.GetSoftwareMirroringController() 468 EXPECT_TRUE(layout_manager_.GetSoftwareMirroringController()
469 ->SoftwareMirroringEnabled()); 469 ->SoftwareMirroringEnabled());
470 EXPECT_EQ( 470 EXPECT_EQ(
471 JoinActions( 471 JoinActions(
472 kGrab, GetFramebufferAction(gfx::Size(big_mode_.size().width(), 472 kGrab, GetFramebufferAction(gfx::Size(big_mode_.size().width(),
473 small_mode_.size().height() + 473 small_mode_.size().height() +
474 big_mode_.size().height()), 474 big_mode_.size().height()),
475 &displays_[0], &displays_[1]).c_str(), 475 &displays_[0], &displays_[1]).c_str(),
476 GetCrtcAction(displays_[0], &small_mode_, gfx::Point()).c_str(), 476 GetCrtcAction(displays_[0], &small_mode_, gfx::Point()).c_str(),
477 GetCrtcAction(displays_[1], &big_mode_, 477 GetCrtcAction(displays_[1], &big_mode_,
478 gfx::Point(0, small_mode_.size().height())).c_str(), 478 gfx::Point(0, small_mode_.size().height())).c_str(),
479 kUngrab, NULL), 479 kUngrab, NULL),
480 log_.GetActionsAndClear()); 480 log_.GetActionsAndClear());
481 } 481 }
482 482
483 } // namespace test 483 } // namespace test
484 } // namespace ui 484 } // namespace ui
OLDNEW
« no previous file with comments | « ui/display/chromeos/update_display_configuration_task.cc ('k') | ui/display/chromeos/x11/native_display_delegate_x11.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698