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

Side by Side Diff: chrome/browser/extensions/api/system_display/display_info_provider_chromeos_unittest.cc

Issue 138003007: [Cleanup] Screen cleanup (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: make sure screen_for_shutdown is reset everytime Created 6 years, 11 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 2013 The Chromium Authors. All rights reserved. 1 // Copyright 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 "chrome/browser/extensions/api/system_display/display_info_provider.h" 5 #include "chrome/browser/extensions/api/system_display/display_info_provider.h"
6 6
7 #include "ash/display/display_controller.h" 7 #include "ash/display/display_controller.h"
8 #include "ash/display/display_manager.h" 8 #include "ash/display/display_manager.h"
9 #include "ash/screen_ash.h" 9 #include "ash/screen_util.h"
10 #include "ash/shell.h" 10 #include "ash/shell.h"
11 #include "ash/test/ash_test_base.h" 11 #include "ash/test/ash_test_base.h"
12 #include "ash/test/display_manager_test_api.h" 12 #include "ash/test/display_manager_test_api.h"
13 #include "base/strings/string_number_conversions.h" 13 #include "base/strings/string_number_conversions.h"
14 #include "base/strings/stringprintf.h" 14 #include "base/strings/stringprintf.h"
15 #include "ui/gfx/display.h" 15 #include "ui/gfx/display.h"
16 #include "ui/gfx/rect.h" 16 #include "ui/gfx/rect.h"
17 17
18 namespace extensions { 18 namespace extensions {
19 namespace { 19 namespace {
(...skipping 285 matching lines...) Expand 10 before | Expand all | Expand 10 after
305 result = DisplayInfoProvider::Get()->GetAllDisplaysInfo(); 305 result = DisplayInfoProvider::Get()->GetAllDisplaysInfo();
306 ASSERT_EQ(2u, result.size()); 306 ASSERT_EQ(2u, result.size());
307 EXPECT_EQ("0,0 600x600", SystemInfoDisplayBoundsToString(result[0]->bounds)); 307 EXPECT_EQ("0,0 600x600", SystemInfoDisplayBoundsToString(result[0]->bounds));
308 EXPECT_EQ("80,600 400x520", 308 EXPECT_EQ("80,600 400x520",
309 SystemInfoDisplayBoundsToString(result[1]->bounds)); 309 SystemInfoDisplayBoundsToString(result[1]->bounds));
310 } 310 }
311 311
312 TEST_F(DisplayInfoProviderChromeosTest, SetBoundsOriginLeftExact) { 312 TEST_F(DisplayInfoProviderChromeosTest, SetBoundsOriginLeftExact) {
313 UpdateDisplay("1200x600,520x400"); 313 UpdateDisplay("1200x600,520x400");
314 314
315 const gfx::Display& secondary = ash::ScreenAsh::GetSecondaryDisplay(); 315 const gfx::Display& secondary = ash::ScreenUtil::GetSecondaryDisplay();
316 api::system_display::DisplayProperties info; 316 api::system_display::DisplayProperties info;
317 info.bounds_origin_x.reset(new int(-520)); 317 info.bounds_origin_x.reset(new int(-520));
318 info.bounds_origin_y.reset(new int(50)); 318 info.bounds_origin_y.reset(new int(50));
319 319
320 bool success = false; 320 bool success = false;
321 std::string error; 321 std::string error;
322 CallSetDisplayUnitInfo(base::Int64ToString(secondary.id()), info, 322 CallSetDisplayUnitInfo(base::Int64ToString(secondary.id()), info,
323 &success, &error); 323 &success, &error);
324 324
325 ASSERT_TRUE(success); 325 ASSERT_TRUE(success);
326 ASSERT_TRUE(error.empty()); 326 ASSERT_TRUE(error.empty());
327 327
328 EXPECT_EQ("-520,50 520x400", secondary.bounds().ToString()); 328 EXPECT_EQ("-520,50 520x400", secondary.bounds().ToString());
329 } 329 }
330 330
331 TEST_F(DisplayInfoProviderChromeosTest, SetBoundsOriginRightExact) { 331 TEST_F(DisplayInfoProviderChromeosTest, SetBoundsOriginRightExact) {
332 UpdateDisplay("1200x600,520x400"); 332 UpdateDisplay("1200x600,520x400");
333 333
334 const gfx::Display& secondary = ash::ScreenAsh::GetSecondaryDisplay(); 334 const gfx::Display& secondary = ash::ScreenUtil::GetSecondaryDisplay();
335 api::system_display::DisplayProperties info; 335 api::system_display::DisplayProperties info;
336 info.bounds_origin_x.reset(new int(1200)); 336 info.bounds_origin_x.reset(new int(1200));
337 info.bounds_origin_y.reset(new int(100)); 337 info.bounds_origin_y.reset(new int(100));
338 338
339 bool success = false; 339 bool success = false;
340 std::string error; 340 std::string error;
341 CallSetDisplayUnitInfo(base::Int64ToString(secondary.id()), info, 341 CallSetDisplayUnitInfo(base::Int64ToString(secondary.id()), info,
342 &success, &error); 342 &success, &error);
343 343
344 ASSERT_TRUE(success); 344 ASSERT_TRUE(success);
345 ASSERT_TRUE(error.empty()); 345 ASSERT_TRUE(error.empty());
346 346
347 EXPECT_EQ("1200,100 520x400", secondary.bounds().ToString()); 347 EXPECT_EQ("1200,100 520x400", secondary.bounds().ToString());
348 } 348 }
349 349
350 TEST_F(DisplayInfoProviderChromeosTest, SetBoundsOriginTopExact) { 350 TEST_F(DisplayInfoProviderChromeosTest, SetBoundsOriginTopExact) {
351 UpdateDisplay("1200x600,520x400"); 351 UpdateDisplay("1200x600,520x400");
352 352
353 const gfx::Display& secondary = ash::ScreenAsh::GetSecondaryDisplay(); 353 const gfx::Display& secondary = ash::ScreenUtil::GetSecondaryDisplay();
354 api::system_display::DisplayProperties info; 354 api::system_display::DisplayProperties info;
355 info.bounds_origin_x.reset(new int(1100)); 355 info.bounds_origin_x.reset(new int(1100));
356 info.bounds_origin_y.reset(new int(-400)); 356 info.bounds_origin_y.reset(new int(-400));
357 357
358 bool success = false; 358 bool success = false;
359 std::string error; 359 std::string error;
360 CallSetDisplayUnitInfo(base::Int64ToString(secondary.id()), info, 360 CallSetDisplayUnitInfo(base::Int64ToString(secondary.id()), info,
361 &success, &error); 361 &success, &error);
362 362
363 ASSERT_TRUE(success); 363 ASSERT_TRUE(success);
364 ASSERT_TRUE(error.empty()); 364 ASSERT_TRUE(error.empty());
365 365
366 EXPECT_EQ("1100,-400 520x400", secondary.bounds().ToString()); 366 EXPECT_EQ("1100,-400 520x400", secondary.bounds().ToString());
367 } 367 }
368 368
369 TEST_F(DisplayInfoProviderChromeosTest, SetBoundsOriginBottomExact) { 369 TEST_F(DisplayInfoProviderChromeosTest, SetBoundsOriginBottomExact) {
370 UpdateDisplay("1200x600,520x400"); 370 UpdateDisplay("1200x600,520x400");
371 371
372 const gfx::Display& secondary = ash::ScreenAsh::GetSecondaryDisplay(); 372 const gfx::Display& secondary = ash::ScreenUtil::GetSecondaryDisplay();
373 api::system_display::DisplayProperties info; 373 api::system_display::DisplayProperties info;
374 info.bounds_origin_x.reset(new int(-350)); 374 info.bounds_origin_x.reset(new int(-350));
375 info.bounds_origin_y.reset(new int(600)); 375 info.bounds_origin_y.reset(new int(600));
376 376
377 bool success = false; 377 bool success = false;
378 std::string error; 378 std::string error;
379 CallSetDisplayUnitInfo(base::Int64ToString(secondary.id()), info, 379 CallSetDisplayUnitInfo(base::Int64ToString(secondary.id()), info,
380 &success, &error); 380 &success, &error);
381 381
382 ASSERT_TRUE(success); 382 ASSERT_TRUE(success);
383 ASSERT_TRUE(error.empty()); 383 ASSERT_TRUE(error.empty());
384 384
385 EXPECT_EQ("-350,600 520x400", secondary.bounds().ToString()); 385 EXPECT_EQ("-350,600 520x400", secondary.bounds().ToString());
386 } 386 }
387 387
388 TEST_F(DisplayInfoProviderChromeosTest, SetBoundsOriginSameCenter) { 388 TEST_F(DisplayInfoProviderChromeosTest, SetBoundsOriginSameCenter) {
389 UpdateDisplay("1200x600,520x400"); 389 UpdateDisplay("1200x600,520x400");
390 390
391 const gfx::Display& secondary = ash::ScreenAsh::GetSecondaryDisplay(); 391 const gfx::Display& secondary = ash::ScreenUtil::GetSecondaryDisplay();
392 api::system_display::DisplayProperties info; 392 api::system_display::DisplayProperties info;
393 info.bounds_origin_x.reset(new int(340)); 393 info.bounds_origin_x.reset(new int(340));
394 info.bounds_origin_y.reset(new int(100)); 394 info.bounds_origin_y.reset(new int(100));
395 395
396 bool success = false; 396 bool success = false;
397 std::string error; 397 std::string error;
398 CallSetDisplayUnitInfo(base::Int64ToString(secondary.id()), info, 398 CallSetDisplayUnitInfo(base::Int64ToString(secondary.id()), info,
399 &success, &error); 399 &success, &error);
400 400
401 ASSERT_TRUE(success); 401 ASSERT_TRUE(success);
402 ASSERT_TRUE(error.empty()); 402 ASSERT_TRUE(error.empty());
403 403
404 EXPECT_EQ("1200,100 520x400", secondary.bounds().ToString()); 404 EXPECT_EQ("1200,100 520x400", secondary.bounds().ToString());
405 } 405 }
406 406
407 TEST_F(DisplayInfoProviderChromeosTest, SetBoundsOriginLeftOutside) { 407 TEST_F(DisplayInfoProviderChromeosTest, SetBoundsOriginLeftOutside) {
408 UpdateDisplay("1200x600,520x400"); 408 UpdateDisplay("1200x600,520x400");
409 409
410 const gfx::Display& secondary = ash::ScreenAsh::GetSecondaryDisplay(); 410 const gfx::Display& secondary = ash::ScreenUtil::GetSecondaryDisplay();
411 api::system_display::DisplayProperties info; 411 api::system_display::DisplayProperties info;
412 info.bounds_origin_x.reset(new int(-1040)); 412 info.bounds_origin_x.reset(new int(-1040));
413 info.bounds_origin_y.reset(new int(100)); 413 info.bounds_origin_y.reset(new int(100));
414 414
415 bool success = false; 415 bool success = false;
416 std::string error; 416 std::string error;
417 CallSetDisplayUnitInfo(base::Int64ToString(secondary.id()), info, 417 CallSetDisplayUnitInfo(base::Int64ToString(secondary.id()), info,
418 &success, &error); 418 &success, &error);
419 419
420 ASSERT_TRUE(success); 420 ASSERT_TRUE(success);
421 ASSERT_TRUE(error.empty()); 421 ASSERT_TRUE(error.empty());
422 422
423 EXPECT_EQ("-520,100 520x400", secondary.bounds().ToString()); 423 EXPECT_EQ("-520,100 520x400", secondary.bounds().ToString());
424 } 424 }
425 425
426 TEST_F(DisplayInfoProviderChromeosTest, SetBoundsOriginTopOutside) { 426 TEST_F(DisplayInfoProviderChromeosTest, SetBoundsOriginTopOutside) {
427 UpdateDisplay("1200x600,520x400"); 427 UpdateDisplay("1200x600,520x400");
428 428
429 const gfx::Display& secondary = ash::ScreenAsh::GetSecondaryDisplay(); 429 const gfx::Display& secondary = ash::ScreenUtil::GetSecondaryDisplay();
430 api::system_display::DisplayProperties info; 430 api::system_display::DisplayProperties info;
431 info.bounds_origin_x.reset(new int(-360)); 431 info.bounds_origin_x.reset(new int(-360));
432 info.bounds_origin_y.reset(new int(-301)); 432 info.bounds_origin_y.reset(new int(-301));
433 433
434 bool success = false; 434 bool success = false;
435 std::string error; 435 std::string error;
436 CallSetDisplayUnitInfo(base::Int64ToString(secondary.id()), info, 436 CallSetDisplayUnitInfo(base::Int64ToString(secondary.id()), info,
437 &success, &error); 437 &success, &error);
438 438
439 ASSERT_TRUE(success); 439 ASSERT_TRUE(success);
440 ASSERT_TRUE(error.empty()); 440 ASSERT_TRUE(error.empty());
441 441
442 EXPECT_EQ("-360,-400 520x400", secondary.bounds().ToString()); 442 EXPECT_EQ("-360,-400 520x400", secondary.bounds().ToString());
443 } 443 }
444 444
445 TEST_F(DisplayInfoProviderChromeosTest, 445 TEST_F(DisplayInfoProviderChromeosTest,
446 SetBoundsOriginLeftButSharesBottomSide) { 446 SetBoundsOriginLeftButSharesBottomSide) {
447 UpdateDisplay("1200x600,1000x100"); 447 UpdateDisplay("1200x600,1000x100");
448 448
449 const gfx::Display& secondary = ash::ScreenAsh::GetSecondaryDisplay(); 449 const gfx::Display& secondary = ash::ScreenUtil::GetSecondaryDisplay();
450 api::system_display::DisplayProperties info; 450 api::system_display::DisplayProperties info;
451 info.bounds_origin_x.reset(new int(-650)); 451 info.bounds_origin_x.reset(new int(-650));
452 info.bounds_origin_y.reset(new int(700)); 452 info.bounds_origin_y.reset(new int(700));
453 453
454 bool success = false; 454 bool success = false;
455 std::string error; 455 std::string error;
456 CallSetDisplayUnitInfo(base::Int64ToString(secondary.id()), info, 456 CallSetDisplayUnitInfo(base::Int64ToString(secondary.id()), info,
457 &success, &error); 457 &success, &error);
458 458
459 ASSERT_TRUE(success); 459 ASSERT_TRUE(success);
460 ASSERT_TRUE(error.empty()); 460 ASSERT_TRUE(error.empty());
461 461
462 EXPECT_EQ("-650,600 1000x100", secondary.bounds().ToString()); 462 EXPECT_EQ("-650,600 1000x100", secondary.bounds().ToString());
463 } 463 }
464 464
465 TEST_F(DisplayInfoProviderChromeosTest, 465 TEST_F(DisplayInfoProviderChromeosTest,
466 SetBoundsOriginRightButSharesTopSide) { 466 SetBoundsOriginRightButSharesTopSide) {
467 UpdateDisplay("1200x600,1000x100"); 467 UpdateDisplay("1200x600,1000x100");
468 468
469 const gfx::Display& secondary = ash::ScreenAsh::GetSecondaryDisplay(); 469 const gfx::Display& secondary = ash::ScreenUtil::GetSecondaryDisplay();
470 api::system_display::DisplayProperties info; 470 api::system_display::DisplayProperties info;
471 info.bounds_origin_x.reset(new int(850)); 471 info.bounds_origin_x.reset(new int(850));
472 info.bounds_origin_y.reset(new int(-150)); 472 info.bounds_origin_y.reset(new int(-150));
473 473
474 bool success = false; 474 bool success = false;
475 std::string error; 475 std::string error;
476 CallSetDisplayUnitInfo(base::Int64ToString(secondary.id()), info, 476 CallSetDisplayUnitInfo(base::Int64ToString(secondary.id()), info,
477 &success, &error); 477 &success, &error);
478 478
479 ASSERT_TRUE(success); 479 ASSERT_TRUE(success);
480 ASSERT_TRUE(error.empty()); 480 ASSERT_TRUE(error.empty());
481 481
482 EXPECT_EQ("850,-100 1000x100", secondary.bounds().ToString()); 482 EXPECT_EQ("850,-100 1000x100", secondary.bounds().ToString());
483 } 483 }
484 484
485 TEST_F(DisplayInfoProviderChromeosTest, 485 TEST_F(DisplayInfoProviderChromeosTest,
486 SetBoundsOriginTopButSharesLeftSide) { 486 SetBoundsOriginTopButSharesLeftSide) {
487 UpdateDisplay("1200x600,1000x100/l"); 487 UpdateDisplay("1200x600,1000x100/l");
488 488
489 const gfx::Display& secondary = ash::ScreenAsh::GetSecondaryDisplay(); 489 const gfx::Display& secondary = ash::ScreenUtil::GetSecondaryDisplay();
490 api::system_display::DisplayProperties info; 490 api::system_display::DisplayProperties info;
491 info.bounds_origin_x.reset(new int(-150)); 491 info.bounds_origin_x.reset(new int(-150));
492 info.bounds_origin_y.reset(new int(-650)); 492 info.bounds_origin_y.reset(new int(-650));
493 493
494 bool success = false; 494 bool success = false;
495 std::string error; 495 std::string error;
496 CallSetDisplayUnitInfo(base::Int64ToString(secondary.id()), info, 496 CallSetDisplayUnitInfo(base::Int64ToString(secondary.id()), info,
497 &success, &error); 497 &success, &error);
498 498
499 ASSERT_TRUE(success); 499 ASSERT_TRUE(success);
500 ASSERT_TRUE(error.empty()); 500 ASSERT_TRUE(error.empty());
501 501
502 EXPECT_EQ("-100,-650 100x1000", secondary.bounds().ToString()); 502 EXPECT_EQ("-100,-650 100x1000", secondary.bounds().ToString());
503 } 503 }
504 504
505 TEST_F(DisplayInfoProviderChromeosTest, 505 TEST_F(DisplayInfoProviderChromeosTest,
506 SetBoundsOriginBottomButSharesRightSide) { 506 SetBoundsOriginBottomButSharesRightSide) {
507 UpdateDisplay("1200x600,1000x100/l"); 507 UpdateDisplay("1200x600,1000x100/l");
508 508
509 const gfx::Display& secondary = ash::ScreenAsh::GetSecondaryDisplay(); 509 const gfx::Display& secondary = ash::ScreenUtil::GetSecondaryDisplay();
510 api::system_display::DisplayProperties info; 510 api::system_display::DisplayProperties info;
511 info.bounds_origin_x.reset(new int(1350)); 511 info.bounds_origin_x.reset(new int(1350));
512 info.bounds_origin_y.reset(new int(450)); 512 info.bounds_origin_y.reset(new int(450));
513 513
514 bool success = false; 514 bool success = false;
515 std::string error; 515 std::string error;
516 CallSetDisplayUnitInfo(base::Int64ToString(secondary.id()), info, 516 CallSetDisplayUnitInfo(base::Int64ToString(secondary.id()), info,
517 &success, &error); 517 &success, &error);
518 518
519 ASSERT_TRUE(success); 519 ASSERT_TRUE(success);
520 ASSERT_TRUE(error.empty()); 520 ASSERT_TRUE(error.empty());
521 521
522 EXPECT_EQ("1200,450 100x1000", secondary.bounds().ToString()); 522 EXPECT_EQ("1200,450 100x1000", secondary.bounds().ToString());
523 } 523 }
524 524
525 TEST_F(DisplayInfoProviderChromeosTest, SetBoundsOriginPrimaryHiDPI) { 525 TEST_F(DisplayInfoProviderChromeosTest, SetBoundsOriginPrimaryHiDPI) {
526 UpdateDisplay("1200x600*2,500x500"); 526 UpdateDisplay("1200x600*2,500x500");
527 527
528 const gfx::Display& secondary = ash::ScreenAsh::GetSecondaryDisplay(); 528 const gfx::Display& secondary = ash::ScreenUtil::GetSecondaryDisplay();
529 api::system_display::DisplayProperties info; 529 api::system_display::DisplayProperties info;
530 info.bounds_origin_x.reset(new int(250)); 530 info.bounds_origin_x.reset(new int(250));
531 info.bounds_origin_y.reset(new int(-100)); 531 info.bounds_origin_y.reset(new int(-100));
532 532
533 bool success = false; 533 bool success = false;
534 std::string error; 534 std::string error;
535 CallSetDisplayUnitInfo(base::Int64ToString(secondary.id()), info, 535 CallSetDisplayUnitInfo(base::Int64ToString(secondary.id()), info,
536 &success, &error); 536 &success, &error);
537 537
538 ASSERT_TRUE(success); 538 ASSERT_TRUE(success);
539 ASSERT_TRUE(error.empty()); 539 ASSERT_TRUE(error.empty());
540 540
541 EXPECT_EQ("600,-100 500x500", secondary.bounds().ToString()); 541 EXPECT_EQ("600,-100 500x500", secondary.bounds().ToString());
542 } 542 }
543 543
544 TEST_F(DisplayInfoProviderChromeosTest, SetBoundsOriginSecondaryHiDPI) { 544 TEST_F(DisplayInfoProviderChromeosTest, SetBoundsOriginSecondaryHiDPI) {
545 UpdateDisplay("1200x600,600x1000*2"); 545 UpdateDisplay("1200x600,600x1000*2");
546 546
547 const gfx::Display& secondary = ash::ScreenAsh::GetSecondaryDisplay(); 547 const gfx::Display& secondary = ash::ScreenUtil::GetSecondaryDisplay();
548 api::system_display::DisplayProperties info; 548 api::system_display::DisplayProperties info;
549 info.bounds_origin_x.reset(new int(450)); 549 info.bounds_origin_x.reset(new int(450));
550 info.bounds_origin_y.reset(new int(-100)); 550 info.bounds_origin_y.reset(new int(-100));
551 551
552 bool success = false; 552 bool success = false;
553 std::string error; 553 std::string error;
554 CallSetDisplayUnitInfo(base::Int64ToString(secondary.id()), info, 554 CallSetDisplayUnitInfo(base::Int64ToString(secondary.id()), info,
555 &success, &error); 555 &success, &error);
556 556
557 ASSERT_TRUE(success); 557 ASSERT_TRUE(success);
558 ASSERT_TRUE(error.empty()); 558 ASSERT_TRUE(error.empty());
559 559
560 EXPECT_EQ("450,-500 300x500", secondary.bounds().ToString()); 560 EXPECT_EQ("450,-500 300x500", secondary.bounds().ToString());
561 } 561 }
562 562
563 TEST_F(DisplayInfoProviderChromeosTest, SetBoundsOriginOutOfBounds) { 563 TEST_F(DisplayInfoProviderChromeosTest, SetBoundsOriginOutOfBounds) {
564 UpdateDisplay("1200x600,600x1000*2"); 564 UpdateDisplay("1200x600,600x1000*2");
565 565
566 const gfx::Display& secondary = ash::ScreenAsh::GetSecondaryDisplay(); 566 const gfx::Display& secondary = ash::ScreenUtil::GetSecondaryDisplay();
567 api::system_display::DisplayProperties info; 567 api::system_display::DisplayProperties info;
568 info.bounds_origin_x.reset(new int(0x200001)); 568 info.bounds_origin_x.reset(new int(0x200001));
569 info.bounds_origin_y.reset(new int(-100)); 569 info.bounds_origin_y.reset(new int(-100));
570 570
571 bool success = false; 571 bool success = false;
572 std::string error; 572 std::string error;
573 CallSetDisplayUnitInfo(base::Int64ToString(secondary.id()), info, 573 CallSetDisplayUnitInfo(base::Int64ToString(secondary.id()), info,
574 &success, &error); 574 &success, &error);
575 575
576 ASSERT_FALSE(success); 576 ASSERT_FALSE(success);
577 ASSERT_EQ("Bounds origin x out of bounds.", error); 577 ASSERT_EQ("Bounds origin x out of bounds.", error);
578 578
579 EXPECT_EQ("1200,0 300x500", secondary.bounds().ToString()); 579 EXPECT_EQ("1200,0 300x500", secondary.bounds().ToString());
580 } 580 }
581 581
582 TEST_F(DisplayInfoProviderChromeosTest, SetBoundsOriginOutOfBoundsNegative) { 582 TEST_F(DisplayInfoProviderChromeosTest, SetBoundsOriginOutOfBoundsNegative) {
583 UpdateDisplay("1200x600,600x1000*2"); 583 UpdateDisplay("1200x600,600x1000*2");
584 584
585 const gfx::Display& secondary = ash::ScreenAsh::GetSecondaryDisplay(); 585 const gfx::Display& secondary = ash::ScreenUtil::GetSecondaryDisplay();
586 api::system_display::DisplayProperties info; 586 api::system_display::DisplayProperties info;
587 info.bounds_origin_x.reset(new int(300)); 587 info.bounds_origin_x.reset(new int(300));
588 info.bounds_origin_y.reset(new int(-0x200001)); 588 info.bounds_origin_y.reset(new int(-0x200001));
589 589
590 bool success = false; 590 bool success = false;
591 std::string error; 591 std::string error;
592 CallSetDisplayUnitInfo(base::Int64ToString(secondary.id()), info, 592 CallSetDisplayUnitInfo(base::Int64ToString(secondary.id()), info,
593 &success, &error); 593 &success, &error);
594 594
595 ASSERT_FALSE(success); 595 ASSERT_FALSE(success);
596 ASSERT_EQ("Bounds origin y out of bounds.", error); 596 ASSERT_EQ("Bounds origin y out of bounds.", error);
597 597
598 EXPECT_EQ("1200,0 300x500", secondary.bounds().ToString()); 598 EXPECT_EQ("1200,0 300x500", secondary.bounds().ToString());
599 } 599 }
600 600
601 TEST_F(DisplayInfoProviderChromeosTest, SetBoundsOriginMaxValues) { 601 TEST_F(DisplayInfoProviderChromeosTest, SetBoundsOriginMaxValues) {
602 UpdateDisplay("1200x4600,600x1000*2"); 602 UpdateDisplay("1200x4600,600x1000*2");
603 603
604 const gfx::Display& secondary = ash::ScreenAsh::GetSecondaryDisplay(); 604 const gfx::Display& secondary = ash::ScreenUtil::GetSecondaryDisplay();
605 api::system_display::DisplayProperties info; 605 api::system_display::DisplayProperties info;
606 info.bounds_origin_x.reset(new int(200000)); 606 info.bounds_origin_x.reset(new int(200000));
607 info.bounds_origin_y.reset(new int(10)); 607 info.bounds_origin_y.reset(new int(10));
608 608
609 bool success = false; 609 bool success = false;
610 std::string error; 610 std::string error;
611 CallSetDisplayUnitInfo(base::Int64ToString(secondary.id()), info, 611 CallSetDisplayUnitInfo(base::Int64ToString(secondary.id()), info,
612 &success, &error); 612 &success, &error);
613 613
614 ASSERT_TRUE(success); 614 ASSERT_TRUE(success);
615 EXPECT_TRUE(error.empty()); 615 EXPECT_TRUE(error.empty());
616 616
617 EXPECT_EQ("1200,10 300x500", secondary.bounds().ToString()); 617 EXPECT_EQ("1200,10 300x500", secondary.bounds().ToString());
618 } 618 }
619 619
620 TEST_F(DisplayInfoProviderChromeosTest, SetBoundsOriginOnPrimary) { 620 TEST_F(DisplayInfoProviderChromeosTest, SetBoundsOriginOnPrimary) {
621 UpdateDisplay("1200x600,600x1000*2"); 621 UpdateDisplay("1200x600,600x1000*2");
622 622
623 const gfx::Display& secondary = ash::ScreenAsh::GetSecondaryDisplay(); 623 const gfx::Display& secondary = ash::ScreenUtil::GetSecondaryDisplay();
624 api::system_display::DisplayProperties info; 624 api::system_display::DisplayProperties info;
625 info.bounds_origin_x.reset(new int(300)); 625 info.bounds_origin_x.reset(new int(300));
626 info.is_primary.reset(new bool(true)); 626 info.is_primary.reset(new bool(true));
627 627
628 bool success = false; 628 bool success = false;
629 std::string error; 629 std::string error;
630 CallSetDisplayUnitInfo(base::Int64ToString(secondary.id()), info, 630 CallSetDisplayUnitInfo(base::Int64ToString(secondary.id()), info,
631 &success, &error); 631 &success, &error);
632 632
633 ASSERT_FALSE(success); 633 ASSERT_FALSE(success);
634 ASSERT_EQ("Bounds origin not allowed for the primary display.", error); 634 ASSERT_EQ("Bounds origin not allowed for the primary display.", error);
635 635
636 EXPECT_EQ("1200,0 300x500", secondary.bounds().ToString()); 636 EXPECT_EQ("1200,0 300x500", secondary.bounds().ToString());
637 // The operation failed because the primary property would be set before 637 // The operation failed because the primary property would be set before
638 // setting bounds. The primary display shouldn't have been changed, though. 638 // setting bounds. The primary display shouldn't have been changed, though.
639 EXPECT_NE(ash::DisplayController::GetPrimaryDisplay().id(), secondary.id()); 639 EXPECT_NE(ash::Shell::GetScreen()->GetPrimaryDisplay().id(), secondary.id());
640 } 640 }
641 641
642 TEST_F(DisplayInfoProviderChromeosTest, SetBoundsOriginWithMirroring) { 642 TEST_F(DisplayInfoProviderChromeosTest, SetBoundsOriginWithMirroring) {
643 UpdateDisplay("1200x600,600x1000*2"); 643 UpdateDisplay("1200x600,600x1000*2");
644 644
645 const gfx::Display& secondary = ash::ScreenAsh::GetSecondaryDisplay(); 645 const gfx::Display& secondary = ash::ScreenUtil::GetSecondaryDisplay();
646 const gfx::Display& primary = GetDisplayController()->GetPrimaryDisplay(); 646 const gfx::Display& primary = ash::Shell::GetScreen()->GetPrimaryDisplay();
647 647
648 api::system_display::DisplayProperties info; 648 api::system_display::DisplayProperties info;
649 info.bounds_origin_x.reset(new int(300)); 649 info.bounds_origin_x.reset(new int(300));
650 info.mirroring_source_id.reset( 650 info.mirroring_source_id.reset(
651 new std::string(base::Int64ToString(primary.id()))); 651 new std::string(base::Int64ToString(primary.id())));
652 652
653 bool success = false; 653 bool success = false;
654 std::string error; 654 std::string error;
655 CallSetDisplayUnitInfo(base::Int64ToString(secondary.id()), info, 655 CallSetDisplayUnitInfo(base::Int64ToString(secondary.id()), info,
656 &success, &error); 656 &success, &error);
657 657
658 ASSERT_FALSE(success); 658 ASSERT_FALSE(success);
659 ASSERT_EQ("No other parameter should be set alongside mirroringSourceId.", 659 ASSERT_EQ("No other parameter should be set alongside mirroringSourceId.",
660 error); 660 error);
661 } 661 }
662 662
663 TEST_F(DisplayInfoProviderChromeosTest, SetRotation) { 663 TEST_F(DisplayInfoProviderChromeosTest, SetRotation) {
664 UpdateDisplay("1200x600,600x1000*2"); 664 UpdateDisplay("1200x600,600x1000*2");
665 665
666 const gfx::Display& secondary = ash::ScreenAsh::GetSecondaryDisplay(); 666 const gfx::Display& secondary = ash::ScreenUtil::GetSecondaryDisplay();
667 api::system_display::DisplayProperties info; 667 api::system_display::DisplayProperties info;
668 info.rotation.reset(new int(90)); 668 info.rotation.reset(new int(90));
669 669
670 bool success = false; 670 bool success = false;
671 std::string error; 671 std::string error;
672 CallSetDisplayUnitInfo(base::Int64ToString(secondary.id()), info, 672 CallSetDisplayUnitInfo(base::Int64ToString(secondary.id()), info,
673 &success, &error); 673 &success, &error);
674 674
675 ASSERT_TRUE(success); 675 ASSERT_TRUE(success);
676 EXPECT_TRUE(error.empty()); 676 EXPECT_TRUE(error.empty());
(...skipping 15 matching lines...) Expand all
692 // Switch primary display. 692 // Switch primary display.
693 info.is_primary.reset(new bool(true)); 693 info.is_primary.reset(new bool(true));
694 CallSetDisplayUnitInfo(base::Int64ToString(secondary.id()), info, 694 CallSetDisplayUnitInfo(base::Int64ToString(secondary.id()), info,
695 &success, &error); 695 &success, &error);
696 696
697 ASSERT_TRUE(success); 697 ASSERT_TRUE(success);
698 EXPECT_TRUE(error.empty()); 698 EXPECT_TRUE(error.empty());
699 699
700 EXPECT_EQ("0,0 300x500", secondary.bounds().ToString()); 700 EXPECT_EQ("0,0 300x500", secondary.bounds().ToString());
701 EXPECT_EQ(gfx::Display::ROTATE_180, secondary.rotation()); 701 EXPECT_EQ(gfx::Display::ROTATE_180, secondary.rotation());
702 EXPECT_EQ(ash::DisplayController::GetPrimaryDisplay().id(), secondary.id()); 702 EXPECT_EQ(ash::Shell::GetScreen()->GetPrimaryDisplay().id(), secondary.id());
703 703
704 info.rotation.reset(new int(0)); 704 info.rotation.reset(new int(0));
705 CallSetDisplayUnitInfo(base::Int64ToString(secondary.id()), info, 705 CallSetDisplayUnitInfo(base::Int64ToString(secondary.id()), info,
706 &success, &error); 706 &success, &error);
707 707
708 ASSERT_TRUE(success); 708 ASSERT_TRUE(success);
709 EXPECT_TRUE(error.empty()); 709 EXPECT_TRUE(error.empty());
710 710
711 EXPECT_EQ("0,0 300x500", secondary.bounds().ToString()); 711 EXPECT_EQ("0,0 300x500", secondary.bounds().ToString());
712 EXPECT_EQ(gfx::Display::ROTATE_0, secondary.rotation()); 712 EXPECT_EQ(gfx::Display::ROTATE_0, secondary.rotation());
713 EXPECT_EQ(ash::DisplayController::GetPrimaryDisplay().id(), secondary.id()); 713 EXPECT_EQ(ash::Shell::GetScreen()->GetPrimaryDisplay().id(), secondary.id());
714 } 714 }
715 715
716 TEST_F(DisplayInfoProviderChromeosTest, SetInvalidRotation) { 716 TEST_F(DisplayInfoProviderChromeosTest, SetInvalidRotation) {
717 UpdateDisplay("1200x600,600x1000*2"); 717 UpdateDisplay("1200x600,600x1000*2");
718 718
719 const gfx::Display& secondary = ash::ScreenAsh::GetSecondaryDisplay(); 719 const gfx::Display& secondary = ash::ScreenUtil::GetSecondaryDisplay();
720 api::system_display::DisplayProperties info; 720 api::system_display::DisplayProperties info;
721 info.rotation.reset(new int(91)); 721 info.rotation.reset(new int(91));
722 722
723 bool success = false; 723 bool success = false;
724 std::string error; 724 std::string error;
725 CallSetDisplayUnitInfo(base::Int64ToString(secondary.id()), info, 725 CallSetDisplayUnitInfo(base::Int64ToString(secondary.id()), info,
726 &success, &error); 726 &success, &error);
727 727
728 ASSERT_FALSE(success); 728 ASSERT_FALSE(success);
729 EXPECT_EQ("Invalid rotation.", error); 729 EXPECT_EQ("Invalid rotation.", error);
730 } 730 }
731 731
732 TEST_F(DisplayInfoProviderChromeosTest, SetNegativeOverscan) { 732 TEST_F(DisplayInfoProviderChromeosTest, SetNegativeOverscan) {
733 UpdateDisplay("1200x600,600x1000*2"); 733 UpdateDisplay("1200x600,600x1000*2");
734 734
735 const gfx::Display& secondary = ash::ScreenAsh::GetSecondaryDisplay(); 735 const gfx::Display& secondary = ash::ScreenUtil::GetSecondaryDisplay();
736 api::system_display::DisplayProperties info; 736 api::system_display::DisplayProperties info;
737 info.overscan.reset(new api::system_display::Insets); 737 info.overscan.reset(new api::system_display::Insets);
738 info.overscan->left= -10; 738 info.overscan->left= -10;
739 739
740 bool success = false; 740 bool success = false;
741 std::string error; 741 std::string error;
742 CallSetDisplayUnitInfo(base::Int64ToString(secondary.id()), info, 742 CallSetDisplayUnitInfo(base::Int64ToString(secondary.id()), info,
743 &success, &error); 743 &success, &error);
744 744
745 ASSERT_FALSE(success); 745 ASSERT_FALSE(success);
(...skipping 42 matching lines...) Expand 10 before | Expand all | Expand 10 after
788 788
789 ASSERT_TRUE(success); 789 ASSERT_TRUE(success);
790 EXPECT_TRUE(error.empty()); 790 EXPECT_TRUE(error.empty());
791 791
792 EXPECT_EQ("1200,0 300x500", secondary.bounds().ToString()); 792 EXPECT_EQ("1200,0 300x500", secondary.bounds().ToString());
793 } 793 }
794 794
795 TEST_F(DisplayInfoProviderChromeosTest, SetOverscanLargerThanHorizontalBounds) { 795 TEST_F(DisplayInfoProviderChromeosTest, SetOverscanLargerThanHorizontalBounds) {
796 UpdateDisplay("1200x600,600x1000*2"); 796 UpdateDisplay("1200x600,600x1000*2");
797 797
798 const gfx::Display& secondary = ash::ScreenAsh::GetSecondaryDisplay(); 798 const gfx::Display& secondary = ash::ScreenUtil::GetSecondaryDisplay();
799 api::system_display::DisplayProperties info; 799 api::system_display::DisplayProperties info;
800 info.overscan.reset(new api::system_display::Insets); 800 info.overscan.reset(new api::system_display::Insets);
801 // Horizontal overscan is 151, which would make the bounds width 149. 801 // Horizontal overscan is 151, which would make the bounds width 149.
802 info.overscan->left= 50; 802 info.overscan->left= 50;
803 info.overscan->top = 10; 803 info.overscan->top = 10;
804 info.overscan->right = 101; 804 info.overscan->right = 101;
805 info.overscan->bottom = 20; 805 info.overscan->bottom = 20;
806 806
807 bool success = false; 807 bool success = false;
808 std::string error; 808 std::string error;
809 CallSetDisplayUnitInfo(base::Int64ToString(secondary.id()), info, 809 CallSetDisplayUnitInfo(base::Int64ToString(secondary.id()), info,
810 &success, &error); 810 &success, &error);
811 811
812 ASSERT_FALSE(success); 812 ASSERT_FALSE(success);
813 EXPECT_EQ("Horizontal overscan is more than half of the screen width.", 813 EXPECT_EQ("Horizontal overscan is more than half of the screen width.",
814 error); 814 error);
815 } 815 }
816 816
817 TEST_F(DisplayInfoProviderChromeosTest, SetOverscanLargerThanVerticalBounds) { 817 TEST_F(DisplayInfoProviderChromeosTest, SetOverscanLargerThanVerticalBounds) {
818 UpdateDisplay("1200x600,600x1000"); 818 UpdateDisplay("1200x600,600x1000");
819 819
820 const gfx::Display& secondary = ash::ScreenAsh::GetSecondaryDisplay(); 820 const gfx::Display& secondary = ash::ScreenUtil::GetSecondaryDisplay();
821 api::system_display::DisplayProperties info; 821 api::system_display::DisplayProperties info;
822 info.overscan.reset(new api::system_display::Insets); 822 info.overscan.reset(new api::system_display::Insets);
823 // Vertical overscan is 501, which would make the bounds height 499. 823 // Vertical overscan is 501, which would make the bounds height 499.
824 info.overscan->left= 20; 824 info.overscan->left= 20;
825 info.overscan->top = 250; 825 info.overscan->top = 250;
826 info.overscan->right = 101; 826 info.overscan->right = 101;
827 info.overscan->bottom = 251; 827 info.overscan->bottom = 251;
828 828
829 bool success = false; 829 bool success = false;
830 std::string error; 830 std::string error;
831 CallSetDisplayUnitInfo(base::Int64ToString(secondary.id()), info, 831 CallSetDisplayUnitInfo(base::Int64ToString(secondary.id()), info,
832 &success, &error); 832 &success, &error);
833 833
834 ASSERT_FALSE(success); 834 ASSERT_FALSE(success);
835 EXPECT_EQ("Vertical overscan is more than half of the screen height.", 835 EXPECT_EQ("Vertical overscan is more than half of the screen height.",
836 error); 836 error);
837 } 837 }
838 838
839 TEST_F(DisplayInfoProviderChromeosTest, SetOverscan) { 839 TEST_F(DisplayInfoProviderChromeosTest, SetOverscan) {
840 UpdateDisplay("1200x600,600x1000*2"); 840 UpdateDisplay("1200x600,600x1000*2");
841 841
842 const gfx::Display& secondary = ash::ScreenAsh::GetSecondaryDisplay(); 842 const gfx::Display& secondary = ash::ScreenUtil::GetSecondaryDisplay();
843 api::system_display::DisplayProperties info; 843 api::system_display::DisplayProperties info;
844 info.overscan.reset(new api::system_display::Insets); 844 info.overscan.reset(new api::system_display::Insets);
845 info.overscan->left= 20; 845 info.overscan->left= 20;
846 info.overscan->top = 199; 846 info.overscan->top = 199;
847 info.overscan->right = 130; 847 info.overscan->right = 130;
848 info.overscan->bottom = 51; 848 info.overscan->bottom = 51;
849 849
850 bool success = false; 850 bool success = false;
851 std::string error; 851 std::string error;
852 CallSetDisplayUnitInfo(base::Int64ToString(secondary.id()), info, 852 CallSetDisplayUnitInfo(base::Int64ToString(secondary.id()), info,
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after
884 CallSetDisplayUnitInfo(base::Int64ToString(internal_display_id), info, 884 CallSetDisplayUnitInfo(base::Int64ToString(internal_display_id), info,
885 &success, &error); 885 &success, &error);
886 886
887 ASSERT_FALSE(success); 887 ASSERT_FALSE(success);
888 EXPECT_EQ("Overscan changes not allowed for the internal monitor.", 888 EXPECT_EQ("Overscan changes not allowed for the internal monitor.",
889 error); 889 error);
890 } 890 }
891 891
892 } // namespace 892 } // namespace
893 } // namespace extensions 893 } // namespace extensions
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698