OLD | NEW |
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 "chrome/browser/chromeos/login/users/avatar/user_image_manager.h" |
| 6 |
5 #include <stdint.h> | 7 #include <stdint.h> |
6 | 8 |
7 #include <map> | 9 #include <map> |
| 10 #include <memory> |
8 #include <string> | 11 #include <string> |
9 #include <vector> | 12 #include <vector> |
10 | 13 |
11 #include "base/command_line.h" | 14 #include "base/command_line.h" |
12 #include "base/compiler_specific.h" | 15 #include "base/compiler_specific.h" |
13 #include "base/files/file_path.h" | 16 #include "base/files/file_path.h" |
14 #include "base/files/file_util.h" | 17 #include "base/files/file_util.h" |
15 #include "base/json/json_writer.h" | 18 #include "base/json/json_writer.h" |
16 #include "base/macros.h" | 19 #include "base/macros.h" |
17 #include "base/memory/linked_ptr.h" | 20 #include "base/memory/linked_ptr.h" |
18 #include "base/memory/ref_counted.h" | 21 #include "base/memory/ref_counted.h" |
19 #include "base/memory/ref_counted_memory.h" | 22 #include "base/memory/ref_counted_memory.h" |
20 #include "base/memory/scoped_ptr.h" | |
21 #include "base/path_service.h" | 23 #include "base/path_service.h" |
22 #include "base/run_loop.h" | 24 #include "base/run_loop.h" |
23 #include "base/thread_task_runner_handle.h" | 25 #include "base/thread_task_runner_handle.h" |
24 #include "base/time/time.h" | 26 #include "base/time/time.h" |
25 #include "base/values.h" | 27 #include "base/values.h" |
26 #include "chrome/browser/browser_process.h" | 28 #include "chrome/browser/browser_process.h" |
27 #include "chrome/browser/chrome_notification_types.h" | 29 #include "chrome/browser/chrome_notification_types.h" |
28 #include "chrome/browser/chromeos/login/login_manager_test.h" | 30 #include "chrome/browser/chromeos/login/login_manager_test.h" |
29 #include "chrome/browser/chromeos/login/startup_utils.h" | 31 #include "chrome/browser/chromeos/login/startup_utils.h" |
30 #include "chrome/browser/chromeos/login/users/avatar/user_image_manager.h" | |
31 #include "chrome/browser/chromeos/login/users/avatar/user_image_manager_impl.h" | 32 #include "chrome/browser/chromeos/login/users/avatar/user_image_manager_impl.h" |
32 #include "chrome/browser/chromeos/login/users/avatar/user_image_manager_test_uti
l.h" | 33 #include "chrome/browser/chromeos/login/users/avatar/user_image_manager_test_uti
l.h" |
33 #include "chrome/browser/chromeos/login/users/chrome_user_manager.h" | 34 #include "chrome/browser/chromeos/login/users/chrome_user_manager.h" |
34 #include "chrome/browser/chromeos/login/users/default_user_image/default_user_im
ages.h" | 35 #include "chrome/browser/chromeos/login/users/default_user_image/default_user_im
ages.h" |
35 #include "chrome/browser/chromeos/login/users/mock_user_manager.h" | 36 #include "chrome/browser/chromeos/login/users/mock_user_manager.h" |
36 #include "chrome/browser/chromeos/login/users/scoped_user_manager_enabler.h" | 37 #include "chrome/browser/chromeos/login/users/scoped_user_manager_enabler.h" |
37 #include "chrome/browser/chromeos/policy/cloud_external_data_manager_base_test_u
til.h" | 38 #include "chrome/browser/chromeos/policy/cloud_external_data_manager_base_test_u
til.h" |
38 #include "chrome/browser/chromeos/policy/user_cloud_policy_manager_chromeos.h" | 39 #include "chrome/browser/chromeos/policy/user_cloud_policy_manager_chromeos.h" |
39 #include "chrome/browser/chromeos/policy/user_cloud_policy_manager_factory_chrom
eos.h" | 40 #include "chrome/browser/chromeos/policy/user_cloud_policy_manager_factory_chrom
eos.h" |
40 #include "chrome/browser/chromeos/profiles/profile_helper.h" | 41 #include "chrome/browser/chromeos/profiles/profile_helper.h" |
(...skipping 224 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
265 run_loop_.reset(new base::RunLoop); | 266 run_loop_.reset(new base::RunLoop); |
266 run_loop_->Run(); | 267 run_loop_->Run(); |
267 } | 268 } |
268 } | 269 } |
269 | 270 |
270 base::FilePath test_data_dir_; | 271 base::FilePath test_data_dir_; |
271 base::FilePath user_data_dir_; | 272 base::FilePath user_data_dir_; |
272 | 273 |
273 PrefService* local_state_; | 274 PrefService* local_state_; |
274 | 275 |
275 scoped_ptr<gfx::ImageSkia> decoded_image_; | 276 std::unique_ptr<gfx::ImageSkia> decoded_image_; |
276 | 277 |
277 scoped_ptr<base::RunLoop> run_loop_; | 278 std::unique_ptr<base::RunLoop> run_loop_; |
278 | 279 |
279 const AccountId test_account_id1_ = AccountId::FromUserEmail(kTestUser1); | 280 const AccountId test_account_id1_ = AccountId::FromUserEmail(kTestUser1); |
280 const AccountId test_account_id2_ = AccountId::FromUserEmail(kTestUser2); | 281 const AccountId test_account_id2_ = AccountId::FromUserEmail(kTestUser2); |
281 const AccountId enterprise_account_id_ = | 282 const AccountId enterprise_account_id_ = |
282 AccountId::FromUserEmail(kEnterpriseUser1); | 283 AccountId::FromUserEmail(kEnterpriseUser1); |
283 const cryptohome::Identification cryptohome_id_ = | 284 const cryptohome::Identification cryptohome_id_ = |
284 cryptohome::Identification(enterprise_account_id_); | 285 cryptohome::Identification(enterprise_account_id_); |
285 | 286 |
286 private: | 287 private: |
287 DISALLOW_COPY_AND_ASSIGN(UserImageManagerTest); | 288 DISALLOW_COPY_AND_ASSIGN(UserImageManagerTest); |
(...skipping 86 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
374 user_manager::UserImage::CreateAndEncode(custom_image)); | 375 user_manager::UserImage::CreateAndEncode(custom_image)); |
375 run_loop_->Run(); | 376 run_loop_->Run(); |
376 | 377 |
377 EXPECT_FALSE(user->HasDefaultImage()); | 378 EXPECT_FALSE(user->HasDefaultImage()); |
378 EXPECT_EQ(user_manager::User::USER_IMAGE_EXTERNAL, user->image_index()); | 379 EXPECT_EQ(user_manager::User::USER_IMAGE_EXTERNAL, user->image_index()); |
379 EXPECT_TRUE(test::AreImagesEqual(custom_image, user->GetImage())); | 380 EXPECT_TRUE(test::AreImagesEqual(custom_image, user->GetImage())); |
380 ExpectUserImageInfo(test_account_id1_, | 381 ExpectUserImageInfo(test_account_id1_, |
381 user_manager::User::USER_IMAGE_EXTERNAL, | 382 user_manager::User::USER_IMAGE_EXTERNAL, |
382 GetUserImagePath(test_account_id1_, "jpg")); | 383 GetUserImagePath(test_account_id1_, "jpg")); |
383 | 384 |
384 const scoped_ptr<gfx::ImageSkia> saved_image = | 385 const std::unique_ptr<gfx::ImageSkia> saved_image = |
385 test::ImageLoader(GetUserImagePath(test_account_id1_, "jpg")).Load(); | 386 test::ImageLoader(GetUserImagePath(test_account_id1_, "jpg")).Load(); |
386 ASSERT_TRUE(saved_image); | 387 ASSERT_TRUE(saved_image); |
387 | 388 |
388 // Check image dimensions. Images can't be compared since JPEG is lossy. | 389 // Check image dimensions. Images can't be compared since JPEG is lossy. |
389 EXPECT_EQ(custom_image.width(), saved_image->width()); | 390 EXPECT_EQ(custom_image.width(), saved_image->width()); |
390 EXPECT_EQ(custom_image.height(), saved_image->height()); | 391 EXPECT_EQ(custom_image.height(), saved_image->height()); |
391 } | 392 } |
392 | 393 |
393 IN_PROC_BROWSER_TEST_F(UserImageManagerTest, PRE_SaveUserImageFromFile) { | 394 IN_PROC_BROWSER_TEST_F(UserImageManagerTest, PRE_SaveUserImageFromFile) { |
394 RegisterUser(test_account_id1_.GetUserEmail()); | 395 RegisterUser(test_account_id1_.GetUserEmail()); |
395 } | 396 } |
396 | 397 |
397 // Verifies that SaveUserImageFromFile() correctly sets and persists the chosen | 398 // Verifies that SaveUserImageFromFile() correctly sets and persists the chosen |
398 // user image. | 399 // user image. |
399 IN_PROC_BROWSER_TEST_F(UserImageManagerTest, SaveUserImageFromFile) { | 400 IN_PROC_BROWSER_TEST_F(UserImageManagerTest, SaveUserImageFromFile) { |
400 const user_manager::User* user = | 401 const user_manager::User* user = |
401 user_manager::UserManager::Get()->FindUser(test_account_id1_); | 402 user_manager::UserManager::Get()->FindUser(test_account_id1_); |
402 ASSERT_TRUE(user); | 403 ASSERT_TRUE(user); |
403 | 404 |
404 const base::FilePath custom_image_path = | 405 const base::FilePath custom_image_path = |
405 test_data_dir_.Append(test::kUserAvatarImage1RelativePath); | 406 test_data_dir_.Append(test::kUserAvatarImage1RelativePath); |
406 const scoped_ptr<gfx::ImageSkia> custom_image = | 407 const std::unique_ptr<gfx::ImageSkia> custom_image = |
407 test::ImageLoader(custom_image_path).Load(); | 408 test::ImageLoader(custom_image_path).Load(); |
408 ASSERT_TRUE(custom_image); | 409 ASSERT_TRUE(custom_image); |
409 | 410 |
410 run_loop_.reset(new base::RunLoop); | 411 run_loop_.reset(new base::RunLoop); |
411 UserImageManager* user_image_manager = | 412 UserImageManager* user_image_manager = |
412 ChromeUserManager::Get()->GetUserImageManager(test_account_id1_); | 413 ChromeUserManager::Get()->GetUserImageManager(test_account_id1_); |
413 user_image_manager->SaveUserImageFromFile(custom_image_path); | 414 user_image_manager->SaveUserImageFromFile(custom_image_path); |
414 run_loop_->Run(); | 415 run_loop_->Run(); |
415 | 416 |
416 EXPECT_FALSE(user->HasDefaultImage()); | 417 EXPECT_FALSE(user->HasDefaultImage()); |
417 EXPECT_EQ(user_manager::User::USER_IMAGE_EXTERNAL, user->image_index()); | 418 EXPECT_EQ(user_manager::User::USER_IMAGE_EXTERNAL, user->image_index()); |
418 EXPECT_TRUE(test::AreImagesEqual(*custom_image, user->GetImage())); | 419 EXPECT_TRUE(test::AreImagesEqual(*custom_image, user->GetImage())); |
419 ExpectUserImageInfo(test_account_id1_, | 420 ExpectUserImageInfo(test_account_id1_, |
420 user_manager::User::USER_IMAGE_EXTERNAL, | 421 user_manager::User::USER_IMAGE_EXTERNAL, |
421 GetUserImagePath(test_account_id1_, "jpg")); | 422 GetUserImagePath(test_account_id1_, "jpg")); |
422 | 423 |
423 const scoped_ptr<gfx::ImageSkia> saved_image = | 424 const std::unique_ptr<gfx::ImageSkia> saved_image = |
424 test::ImageLoader(GetUserImagePath(test_account_id1_, "jpg")).Load(); | 425 test::ImageLoader(GetUserImagePath(test_account_id1_, "jpg")).Load(); |
425 ASSERT_TRUE(saved_image); | 426 ASSERT_TRUE(saved_image); |
426 | 427 |
427 // Check image dimensions. Images can't be compared since JPEG is lossy. | 428 // Check image dimensions. Images can't be compared since JPEG is lossy. |
428 EXPECT_EQ(custom_image->width(), saved_image->width()); | 429 EXPECT_EQ(custom_image->width(), saved_image->width()); |
429 EXPECT_EQ(custom_image->height(), saved_image->height()); | 430 EXPECT_EQ(custom_image->height(), saved_image->height()); |
430 } | 431 } |
431 | 432 |
432 IN_PROC_BROWSER_TEST_F(UserImageManagerTest, | 433 IN_PROC_BROWSER_TEST_F(UserImageManagerTest, |
433 PRE_SaveUserImageFromProfileImage) { | 434 PRE_SaveUserImageFromProfileImage) { |
(...skipping 25 matching lines...) Expand all Loading... |
459 | 460 |
460 const gfx::ImageSkia& profile_image = | 461 const gfx::ImageSkia& profile_image = |
461 user_image_manager->DownloadedProfileImage(); | 462 user_image_manager->DownloadedProfileImage(); |
462 | 463 |
463 EXPECT_FALSE(user->HasDefaultImage()); | 464 EXPECT_FALSE(user->HasDefaultImage()); |
464 EXPECT_EQ(user_manager::User::USER_IMAGE_PROFILE, user->image_index()); | 465 EXPECT_EQ(user_manager::User::USER_IMAGE_PROFILE, user->image_index()); |
465 EXPECT_TRUE(test::AreImagesEqual(profile_image, user->GetImage())); | 466 EXPECT_TRUE(test::AreImagesEqual(profile_image, user->GetImage())); |
466 ExpectUserImageInfo(test_account_id1_, user_manager::User::USER_IMAGE_PROFILE, | 467 ExpectUserImageInfo(test_account_id1_, user_manager::User::USER_IMAGE_PROFILE, |
467 GetUserImagePath(test_account_id1_, "jpg")); | 468 GetUserImagePath(test_account_id1_, "jpg")); |
468 | 469 |
469 const scoped_ptr<gfx::ImageSkia> saved_image = | 470 const std::unique_ptr<gfx::ImageSkia> saved_image = |
470 test::ImageLoader(GetUserImagePath(test_account_id1_, "jpg")).Load(); | 471 test::ImageLoader(GetUserImagePath(test_account_id1_, "jpg")).Load(); |
471 ASSERT_TRUE(saved_image); | 472 ASSERT_TRUE(saved_image); |
472 | 473 |
473 // Check image dimensions. Images can't be compared since JPEG is lossy. | 474 // Check image dimensions. Images can't be compared since JPEG is lossy. |
474 EXPECT_EQ(profile_image.width(), saved_image->width()); | 475 EXPECT_EQ(profile_image.width(), saved_image->width()); |
475 EXPECT_EQ(profile_image.height(), saved_image->height()); | 476 EXPECT_EQ(profile_image.height(), saved_image->height()); |
476 } | 477 } |
477 | 478 |
478 IN_PROC_BROWSER_TEST_F(UserImageManagerTest, | 479 IN_PROC_BROWSER_TEST_F(UserImageManagerTest, |
479 PRE_ProfileImageDownloadDoesNotClobber) { | 480 PRE_ProfileImageDownloadDoesNotClobber) { |
(...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
524 class UserImageManagerPolicyTest : public UserImageManagerTest, | 525 class UserImageManagerPolicyTest : public UserImageManagerTest, |
525 public policy::CloudPolicyStore::Observer { | 526 public policy::CloudPolicyStore::Observer { |
526 protected: | 527 protected: |
527 UserImageManagerPolicyTest() | 528 UserImageManagerPolicyTest() |
528 : fake_session_manager_client_(new chromeos::FakeSessionManagerClient) { | 529 : fake_session_manager_client_(new chromeos::FakeSessionManagerClient) { |
529 } | 530 } |
530 | 531 |
531 // UserImageManagerTest overrides: | 532 // UserImageManagerTest overrides: |
532 void SetUpInProcessBrowserTestFixture() override { | 533 void SetUpInProcessBrowserTestFixture() override { |
533 DBusThreadManager::GetSetterForTesting()->SetSessionManagerClient( | 534 DBusThreadManager::GetSetterForTesting()->SetSessionManagerClient( |
534 scoped_ptr<SessionManagerClient>(fake_session_manager_client_)); | 535 std::unique_ptr<SessionManagerClient>(fake_session_manager_client_)); |
535 UserImageManagerTest::SetUpInProcessBrowserTestFixture(); | 536 UserImageManagerTest::SetUpInProcessBrowserTestFixture(); |
536 } | 537 } |
537 | 538 |
538 void SetUpOnMainThread() override { | 539 void SetUpOnMainThread() override { |
539 UserImageManagerTest::SetUpOnMainThread(); | 540 UserImageManagerTest::SetUpOnMainThread(); |
540 | 541 |
541 base::FilePath user_keys_dir; | 542 base::FilePath user_keys_dir; |
542 ASSERT_TRUE(PathService::Get(chromeos::DIR_USER_POLICY_KEYS, | 543 ASSERT_TRUE(PathService::Get(chromeos::DIR_USER_POLICY_KEYS, |
543 &user_keys_dir)); | 544 &user_keys_dir)); |
544 const std::string sanitized_username = | 545 const std::string sanitized_username = |
(...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
585 ->GetURL(std::string("/") + relative_path) | 586 ->GetURL(std::string("/") + relative_path) |
586 .spec(), | 587 .spec(), |
587 image_data), | 588 image_data), |
588 &policy); | 589 &policy); |
589 return policy; | 590 return policy; |
590 } | 591 } |
591 | 592 |
592 policy::UserPolicyBuilder user_policy_; | 593 policy::UserPolicyBuilder user_policy_; |
593 FakeSessionManagerClient* fake_session_manager_client_; | 594 FakeSessionManagerClient* fake_session_manager_client_; |
594 | 595 |
595 scoped_ptr<gfx::ImageSkia> policy_image_; | 596 std::unique_ptr<gfx::ImageSkia> policy_image_; |
596 | 597 |
597 private: | 598 private: |
598 DISALLOW_COPY_AND_ASSIGN(UserImageManagerPolicyTest); | 599 DISALLOW_COPY_AND_ASSIGN(UserImageManagerPolicyTest); |
599 }; | 600 }; |
600 | 601 |
601 IN_PROC_BROWSER_TEST_F(UserImageManagerPolicyTest, PRE_SetAndClear) { | 602 IN_PROC_BROWSER_TEST_F(UserImageManagerPolicyTest, PRE_SetAndClear) { |
602 RegisterUser(enterprise_account_id_.GetUserEmail()); | 603 RegisterUser(enterprise_account_id_.GetUserEmail()); |
603 chromeos::StartupUtils::MarkOobeCompleted(); | 604 chromeos::StartupUtils::MarkOobeCompleted(); |
604 } | 605 } |
605 | 606 |
(...skipping 23 matching lines...) Expand all Loading... |
629 store->Load(); | 630 store->Load(); |
630 run_loop_->Run(); | 631 run_loop_->Run(); |
631 | 632 |
632 EXPECT_FALSE(user->HasDefaultImage()); | 633 EXPECT_FALSE(user->HasDefaultImage()); |
633 EXPECT_EQ(user_manager::User::USER_IMAGE_EXTERNAL, user->image_index()); | 634 EXPECT_EQ(user_manager::User::USER_IMAGE_EXTERNAL, user->image_index()); |
634 EXPECT_TRUE(test::AreImagesEqual(*policy_image_, user->GetImage())); | 635 EXPECT_TRUE(test::AreImagesEqual(*policy_image_, user->GetImage())); |
635 ExpectUserImageInfo(enterprise_account_id_, | 636 ExpectUserImageInfo(enterprise_account_id_, |
636 user_manager::User::USER_IMAGE_EXTERNAL, | 637 user_manager::User::USER_IMAGE_EXTERNAL, |
637 GetUserImagePath(enterprise_account_id_, "jpg")); | 638 GetUserImagePath(enterprise_account_id_, "jpg")); |
638 | 639 |
639 scoped_ptr<gfx::ImageSkia> saved_image = | 640 std::unique_ptr<gfx::ImageSkia> saved_image = |
640 test::ImageLoader(GetUserImagePath(enterprise_account_id_, "jpg")).Load(); | 641 test::ImageLoader(GetUserImagePath(enterprise_account_id_, "jpg")).Load(); |
641 ASSERT_TRUE(saved_image); | 642 ASSERT_TRUE(saved_image); |
642 | 643 |
643 // Check image dimensions. Images can't be compared since JPEG is lossy. | 644 // Check image dimensions. Images can't be compared since JPEG is lossy. |
644 EXPECT_EQ(policy_image_->width(), saved_image->width()); | 645 EXPECT_EQ(policy_image_->width(), saved_image->width()); |
645 EXPECT_EQ(policy_image_->height(), saved_image->height()); | 646 EXPECT_EQ(policy_image_->height(), saved_image->height()); |
646 | 647 |
647 // Clear policy. Verify that the user image switches to a random default | 648 // Clear policy. Verify that the user image switches to a random default |
648 // image. | 649 // image. |
649 user_policy_.payload().Clear(); | 650 user_policy_.payload().Clear(); |
(...skipping 86 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
736 store->Load(); | 737 store->Load(); |
737 run_loop_->Run(); | 738 run_loop_->Run(); |
738 | 739 |
739 EXPECT_FALSE(user->HasDefaultImage()); | 740 EXPECT_FALSE(user->HasDefaultImage()); |
740 EXPECT_EQ(user_manager::User::USER_IMAGE_EXTERNAL, user->image_index()); | 741 EXPECT_EQ(user_manager::User::USER_IMAGE_EXTERNAL, user->image_index()); |
741 EXPECT_TRUE(test::AreImagesEqual(*policy_image_, user->GetImage())); | 742 EXPECT_TRUE(test::AreImagesEqual(*policy_image_, user->GetImage())); |
742 ExpectUserImageInfo(enterprise_account_id_, | 743 ExpectUserImageInfo(enterprise_account_id_, |
743 user_manager::User::USER_IMAGE_EXTERNAL, | 744 user_manager::User::USER_IMAGE_EXTERNAL, |
744 GetUserImagePath(enterprise_account_id_, "jpg")); | 745 GetUserImagePath(enterprise_account_id_, "jpg")); |
745 | 746 |
746 scoped_ptr<gfx::ImageSkia> saved_image = | 747 std::unique_ptr<gfx::ImageSkia> saved_image = |
747 test::ImageLoader(GetUserImagePath(enterprise_account_id_, "jpg")).Load(); | 748 test::ImageLoader(GetUserImagePath(enterprise_account_id_, "jpg")).Load(); |
748 ASSERT_TRUE(saved_image); | 749 ASSERT_TRUE(saved_image); |
749 | 750 |
750 // Check image dimensions. Images can't be compared since JPEG is lossy. | 751 // Check image dimensions. Images can't be compared since JPEG is lossy. |
751 EXPECT_EQ(policy_image_->width(), saved_image->width()); | 752 EXPECT_EQ(policy_image_->width(), saved_image->width()); |
752 EXPECT_EQ(policy_image_->height(), saved_image->height()); | 753 EXPECT_EQ(policy_image_->height(), saved_image->height()); |
753 } | 754 } |
754 | 755 |
755 IN_PROC_BROWSER_TEST_F(UserImageManagerPolicyTest, | 756 IN_PROC_BROWSER_TEST_F(UserImageManagerPolicyTest, |
756 PRE_UserDoesNotOverridePolicy) { | 757 PRE_UserDoesNotOverridePolicy) { |
(...skipping 26 matching lines...) Expand all Loading... |
783 store->Load(); | 784 store->Load(); |
784 run_loop_->Run(); | 785 run_loop_->Run(); |
785 | 786 |
786 EXPECT_FALSE(user->HasDefaultImage()); | 787 EXPECT_FALSE(user->HasDefaultImage()); |
787 EXPECT_EQ(user_manager::User::USER_IMAGE_EXTERNAL, user->image_index()); | 788 EXPECT_EQ(user_manager::User::USER_IMAGE_EXTERNAL, user->image_index()); |
788 EXPECT_TRUE(test::AreImagesEqual(*policy_image_, user->GetImage())); | 789 EXPECT_TRUE(test::AreImagesEqual(*policy_image_, user->GetImage())); |
789 ExpectUserImageInfo(enterprise_account_id_, | 790 ExpectUserImageInfo(enterprise_account_id_, |
790 user_manager::User::USER_IMAGE_EXTERNAL, | 791 user_manager::User::USER_IMAGE_EXTERNAL, |
791 GetUserImagePath(enterprise_account_id_, "jpg")); | 792 GetUserImagePath(enterprise_account_id_, "jpg")); |
792 | 793 |
793 scoped_ptr<gfx::ImageSkia> saved_image = | 794 std::unique_ptr<gfx::ImageSkia> saved_image = |
794 test::ImageLoader(GetUserImagePath(enterprise_account_id_, "jpg")).Load(); | 795 test::ImageLoader(GetUserImagePath(enterprise_account_id_, "jpg")).Load(); |
795 ASSERT_TRUE(saved_image); | 796 ASSERT_TRUE(saved_image); |
796 | 797 |
797 // Check image dimensions. Images can't be compared since JPEG is lossy. | 798 // Check image dimensions. Images can't be compared since JPEG is lossy. |
798 EXPECT_EQ(policy_image_->width(), saved_image->width()); | 799 EXPECT_EQ(policy_image_->width(), saved_image->width()); |
799 EXPECT_EQ(policy_image_->height(), saved_image->height()); | 800 EXPECT_EQ(policy_image_->height(), saved_image->height()); |
800 | 801 |
801 // Choose a different user image. Verify that the user image does not change | 802 // Choose a different user image. Verify that the user image does not change |
802 // as policy takes precedence. | 803 // as policy takes precedence. |
803 UserImageManager* user_image_manager = | 804 UserImageManager* user_image_manager = |
(...skipping 11 matching lines...) Expand all Loading... |
815 saved_image = | 816 saved_image = |
816 test::ImageLoader(GetUserImagePath(enterprise_account_id_, "jpg")).Load(); | 817 test::ImageLoader(GetUserImagePath(enterprise_account_id_, "jpg")).Load(); |
817 ASSERT_TRUE(saved_image); | 818 ASSERT_TRUE(saved_image); |
818 | 819 |
819 // Check image dimensions. Images can't be compared since JPEG is lossy. | 820 // Check image dimensions. Images can't be compared since JPEG is lossy. |
820 EXPECT_EQ(policy_image_->width(), saved_image->width()); | 821 EXPECT_EQ(policy_image_->width(), saved_image->width()); |
821 EXPECT_EQ(policy_image_->height(), saved_image->height()); | 822 EXPECT_EQ(policy_image_->height(), saved_image->height()); |
822 } | 823 } |
823 | 824 |
824 } // namespace chromeos | 825 } // namespace chromeos |
OLD | NEW |