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

Side by Side Diff: chrome/browser/chromeos/login/users/avatar/user_image_manager_browsertest.cc

Issue 398753004: [cros] Move User class to user_manager component. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: rebase Created 6 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include <map> 5 #include <map>
6 #include <string> 6 #include <string>
7 #include <vector> 7 #include <vector>
8 8
9 #include "base/basictypes.h" 9 #include "base/basictypes.h"
10 #include "base/compiler_specific.h" 10 #include "base/compiler_specific.h"
(...skipping 13 matching lines...) Expand all
24 #include "base/time/time.h" 24 #include "base/time/time.h"
25 #include "base/values.h" 25 #include "base/values.h"
26 #include "chrome/browser/browser_process.h" 26 #include "chrome/browser/browser_process.h"
27 #include "chrome/browser/chrome_notification_types.h" 27 #include "chrome/browser/chrome_notification_types.h"
28 #include "chrome/browser/chromeos/login/login_manager_test.h" 28 #include "chrome/browser/chromeos/login/login_manager_test.h"
29 #include "chrome/browser/chromeos/login/startup_utils.h" 29 #include "chrome/browser/chromeos/login/startup_utils.h"
30 #include "chrome/browser/chromeos/login/users/avatar/user_image_manager.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" 31 #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" 32 #include "chrome/browser/chromeos/login/users/avatar/user_image_manager_test_uti l.h"
33 #include "chrome/browser/chromeos/login/users/mock_user_manager.h" 33 #include "chrome/browser/chromeos/login/users/mock_user_manager.h"
34 #include "chrome/browser/chromeos/login/users/user.h"
35 #include "chrome/browser/chromeos/login/users/user_manager.h" 34 #include "chrome/browser/chromeos/login/users/user_manager.h"
36 #include "chrome/browser/chromeos/policy/cloud_external_data_manager_base_test_u til.h" 35 #include "chrome/browser/chromeos/policy/cloud_external_data_manager_base_test_u til.h"
37 #include "chrome/browser/chromeos/policy/user_cloud_policy_manager_chromeos.h" 36 #include "chrome/browser/chromeos/policy/user_cloud_policy_manager_chromeos.h"
38 #include "chrome/browser/chromeos/policy/user_cloud_policy_manager_factory_chrom eos.h" 37 #include "chrome/browser/chromeos/policy/user_cloud_policy_manager_factory_chrom eos.h"
39 #include "chrome/browser/chromeos/profiles/profile_helper.h" 38 #include "chrome/browser/chromeos/profiles/profile_helper.h"
40 #include "chrome/browser/profiles/profile.h" 39 #include "chrome/browser/profiles/profile.h"
41 #include "chrome/browser/profiles/profile_downloader.h" 40 #include "chrome/browser/profiles/profile_downloader.h"
42 #include "chrome/common/chrome_paths.h" 41 #include "chrome/common/chrome_paths.h"
43 #include "chrome/test/base/in_process_browser_test.h" 42 #include "chrome/test/base/in_process_browser_test.h"
44 #include "chrome/test/base/testing_browser_process.h" 43 #include "chrome/test/base/testing_browser_process.h"
45 #include "chromeos/chromeos_paths.h" 44 #include "chromeos/chromeos_paths.h"
46 #include "chromeos/dbus/cryptohome_client.h" 45 #include "chromeos/dbus/cryptohome_client.h"
47 #include "chromeos/dbus/dbus_thread_manager.h" 46 #include "chromeos/dbus/dbus_thread_manager.h"
48 #include "chromeos/dbus/fake_dbus_thread_manager.h" 47 #include "chromeos/dbus/fake_dbus_thread_manager.h"
49 #include "chromeos/dbus/fake_session_manager_client.h" 48 #include "chromeos/dbus/fake_session_manager_client.h"
50 #include "chromeos/dbus/session_manager_client.h" 49 #include "chromeos/dbus/session_manager_client.h"
51 #include "components/policy/core/common/cloud/cloud_policy_core.h" 50 #include "components/policy/core/common/cloud/cloud_policy_core.h"
52 #include "components/policy/core/common/cloud/cloud_policy_store.h" 51 #include "components/policy/core/common/cloud/cloud_policy_store.h"
53 #include "components/policy/core/common/cloud/policy_builder.h" 52 #include "components/policy/core/common/cloud/policy_builder.h"
53 #include "components/user_manager/user.h"
54 #include "components/user_manager/user_image/default_user_images.h" 54 #include "components/user_manager/user_image/default_user_images.h"
55 #include "components/user_manager/user_image/user_image.h" 55 #include "components/user_manager/user_image/user_image.h"
56 #include "content/public/browser/notification_service.h" 56 #include "content/public/browser/notification_service.h"
57 #include "content/public/browser/notification_source.h" 57 #include "content/public/browser/notification_source.h"
58 #include "content/public/test/test_utils.h" 58 #include "content/public/test/test_utils.h"
59 #include "crypto/rsa_private_key.h" 59 #include "crypto/rsa_private_key.h"
60 #include "google_apis/gaia/gaia_oauth_client.h" 60 #include "google_apis/gaia/gaia_oauth_client.h"
61 #include "google_apis/gaia/oauth2_token_service.h" 61 #include "google_apis/gaia/oauth2_token_service.h"
62 #include "net/test/embedded_test_server/embedded_test_server.h" 62 #include "net/test/embedded_test_server/embedded_test_server.h"
63 #include "net/url_request/test_url_fetcher_factory.h" 63 #include "net/url_request/test_url_fetcher_factory.h"
64 #include "net/url_request/url_fetcher_delegate.h" 64 #include "net/url_request/url_fetcher_delegate.h"
65 #include "net/url_request/url_request_status.h" 65 #include "net/url_request/url_request_status.h"
66 #include "policy/proto/cloud_policy.pb.h" 66 #include "policy/proto/cloud_policy.pb.h"
67 #include "testing/gtest/include/gtest/gtest.h" 67 #include "testing/gtest/include/gtest/gtest.h"
68 #include "third_party/skia/include/core/SkBitmap.h" 68 #include "third_party/skia/include/core/SkBitmap.h"
69 #include "ui/base/layout.h" 69 #include "ui/base/layout.h"
70 #include "ui/base/resource/resource_bundle.h" 70 #include "ui/base/resource/resource_bundle.h"
71 #include "ui/gfx/image/image_skia.h" 71 #include "ui/gfx/image/image_skia.h"
72 #include "url/gurl.h" 72 #include "url/gurl.h"
73 73
74 namespace chromeos { 74 namespace chromeos {
75 75
76 namespace { 76 namespace {
77 77
78 const char kTestUser1[] = "test-user@example.com"; 78 const char kTestUser1[] = "test-user@example.com";
79 const char kTestUser2[] = "test-user2@example.com"; 79 const char kTestUser2[] = "test-user2@example.com";
80 80
81 policy::CloudPolicyStore* GetStoreForUser(const User* user) { 81 policy::CloudPolicyStore* GetStoreForUser(const user_manager::User* user) {
82 Profile* profile = ProfileHelper::Get()->GetProfileByUser(user); 82 Profile* profile = ProfileHelper::Get()->GetProfileByUser(user);
83 if (!profile) { 83 if (!profile) {
84 ADD_FAILURE(); 84 ADD_FAILURE();
85 return NULL; 85 return NULL;
86 } 86 }
87 policy::UserCloudPolicyManagerChromeOS* policy_manager = 87 policy::UserCloudPolicyManagerChromeOS* policy_manager =
88 policy::UserCloudPolicyManagerFactoryChromeOS::GetForProfile(profile); 88 policy::UserCloudPolicyManagerFactoryChromeOS::GetForProfile(profile);
89 if (!policy_manager) { 89 if (!policy_manager) {
90 ADD_FAILURE(); 90 ADD_FAILURE();
91 return NULL; 91 return NULL;
(...skipping 106 matching lines...) Expand 10 before | Expand all | Expand 10 after
198 int resource_id) { 198 int resource_id) {
199 base::FilePath image_path = GetUserImagePath(username, "png"); 199 base::FilePath image_path = GetUserImagePath(username, "png");
200 scoped_refptr<base::RefCountedStaticMemory> image_data( 200 scoped_refptr<base::RefCountedStaticMemory> image_data(
201 ResourceBundle::GetSharedInstance().LoadDataResourceBytesForScale( 201 ResourceBundle::GetSharedInstance().LoadDataResourceBytesForScale(
202 resource_id, ui::SCALE_FACTOR_100P)); 202 resource_id, ui::SCALE_FACTOR_100P));
203 int written = base::WriteFile( 203 int written = base::WriteFile(
204 image_path, 204 image_path,
205 reinterpret_cast<const char*>(image_data->front()), 205 reinterpret_cast<const char*>(image_data->front()),
206 image_data->size()); 206 image_data->size());
207 EXPECT_EQ(static_cast<int>(image_data->size()), written); 207 EXPECT_EQ(static_cast<int>(image_data->size()), written);
208 SetOldUserImageInfo(username, User::kExternalImageIndex, image_path); 208 SetOldUserImageInfo(
209 username, user_manager::User::USER_IMAGE_EXTERNAL, image_path);
209 } 210 }
210 211
211 // Returns the image path for user |username| with specified |extension|. 212 // Returns the image path for user |username| with specified |extension|.
212 base::FilePath GetUserImagePath(const std::string& username, 213 base::FilePath GetUserImagePath(const std::string& username,
213 const std::string& extension) { 214 const std::string& extension) {
214 return user_data_dir_.Append(username).AddExtension(extension); 215 return user_data_dir_.Append(username).AddExtension(extension);
215 } 216 }
216 217
217 // Completes the download of all non-image profile data for the user 218 // Completes the download of all non-image profile data for the user
218 // |username|. This method must only be called after a profile data 219 // |username|. This method must only be called after a profile data
(...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after
266 pref_change_registrar.Add("UserDisplayName", run_loop.QuitClosure()); 267 pref_change_registrar.Add("UserDisplayName", run_loop.QuitClosure());
267 net::TestURLFetcher* fetcher = url_fetcher_factory->GetFetcherByID(0); 268 net::TestURLFetcher* fetcher = url_fetcher_factory->GetFetcherByID(0);
268 ASSERT_TRUE(fetcher); 269 ASSERT_TRUE(fetcher);
269 fetcher->SetResponseString(profile_image_data); 270 fetcher->SetResponseString(profile_image_data);
270 fetcher->set_status(net::URLRequestStatus(net::URLRequestStatus::SUCCESS, 271 fetcher->set_status(net::URLRequestStatus(net::URLRequestStatus::SUCCESS,
271 net::OK)); 272 net::OK));
272 fetcher->set_response_code(200); 273 fetcher->set_response_code(200);
273 fetcher->delegate()->OnURLFetchComplete(fetcher); 274 fetcher->delegate()->OnURLFetchComplete(fetcher);
274 run_loop.Run(); 275 run_loop.Run();
275 276
276 const User* user = UserManager::Get()->GetLoggedInUser(); 277 const user_manager::User* user = UserManager::Get()->GetLoggedInUser();
277 ASSERT_TRUE(user); 278 ASSERT_TRUE(user);
278 UserImageManagerImpl* uim = reinterpret_cast<UserImageManagerImpl*>( 279 UserImageManagerImpl* uim = reinterpret_cast<UserImageManagerImpl*>(
279 UserManager::Get()->GetUserImageManager(user->email())); 280 UserManager::Get()->GetUserImageManager(user->email()));
280 if (uim->job_.get()) { 281 if (uim->job_.get()) {
281 run_loop_.reset(new base::RunLoop); 282 run_loop_.reset(new base::RunLoop);
282 run_loop_->Run(); 283 run_loop_->Run();
283 } 284 }
284 } 285 }
285 286
286 base::FilePath test_data_dir_; 287 base::FilePath test_data_dir_;
(...skipping 55 matching lines...) Expand 10 before | Expand all | Expand 10 after
342 // Setup a user with non-JPEG image. 343 // Setup a user with non-JPEG image.
343 ScopedUserManagerEnabler(new MockUserManager); 344 ScopedUserManagerEnabler(new MockUserManager);
344 SaveUserImagePNG(kTestUser1, 345 SaveUserImagePNG(kTestUser1,
345 user_manager::kDefaultImageResourceIDs 346 user_manager::kDefaultImageResourceIDs
346 [user_manager::kFirstDefaultImageIndex]); 347 [user_manager::kFirstDefaultImageIndex]);
347 } 348 }
348 349
349 IN_PROC_BROWSER_TEST_F(UserImageManagerTest, PRE_NonJPEGImageFromFile) { 350 IN_PROC_BROWSER_TEST_F(UserImageManagerTest, PRE_NonJPEGImageFromFile) {
350 UserManager::Get()->GetUsers(); // Load users. 351 UserManager::Get()->GetUsers(); // Load users.
351 // Old info preserved. 352 // Old info preserved.
352 ExpectOldUserImageInfo(kTestUser1, User::kExternalImageIndex, 353 ExpectOldUserImageInfo(kTestUser1,
354 user_manager::User::USER_IMAGE_EXTERNAL,
353 GetUserImagePath(kTestUser1, "png")); 355 GetUserImagePath(kTestUser1, "png"));
354 const User* user = UserManager::Get()->FindUser(kTestUser1); 356 const user_manager::User* user = UserManager::Get()->FindUser(kTestUser1);
355 EXPECT_TRUE(user->image_is_stub()); 357 EXPECT_TRUE(user->image_is_stub());
356 358
357 base::RunLoop run_loop; 359 base::RunLoop run_loop;
358 PrefChangeRegistrar pref_change_registrar_; 360 PrefChangeRegistrar pref_change_registrar_;
359 pref_change_registrar_.Init(local_state_); 361 pref_change_registrar_.Init(local_state_);
360 pref_change_registrar_.Add("UserImages", run_loop.QuitClosure()); 362 pref_change_registrar_.Add("UserImages", run_loop.QuitClosure());
361 LogIn(kTestUser1); 363 LogIn(kTestUser1);
362 364
363 // Wait for migration. 365 // Wait for migration.
364 run_loop.Run(); 366 run_loop.Run();
365 367
366 // Image info is migrated and the image is converted to JPG. 368 // Image info is migrated and the image is converted to JPG.
367 ExpectNewUserImageInfo(kTestUser1, User::kExternalImageIndex, 369 ExpectNewUserImageInfo(kTestUser1,
370 user_manager::User::USER_IMAGE_EXTERNAL,
368 GetUserImagePath(kTestUser1, "jpg")); 371 GetUserImagePath(kTestUser1, "jpg"));
369 user = UserManager::Get()->GetLoggedInUser(); 372 user = UserManager::Get()->GetLoggedInUser();
370 ASSERT_TRUE(user); 373 ASSERT_TRUE(user);
371 EXPECT_FALSE(user->image_is_safe_format()); 374 EXPECT_FALSE(user->image_is_safe_format());
372 // Check image dimensions. 375 // Check image dimensions.
373 const gfx::ImageSkia& saved_image = 376 const gfx::ImageSkia& saved_image =
374 user_manager::GetDefaultImage(user_manager::kFirstDefaultImageIndex); 377 user_manager::GetDefaultImage(user_manager::kFirstDefaultImageIndex);
375 EXPECT_EQ(saved_image.width(), user->GetImage().width()); 378 EXPECT_EQ(saved_image.width(), user->GetImage().width());
376 EXPECT_EQ(saved_image.height(), user->GetImage().height()); 379 EXPECT_EQ(saved_image.height(), user->GetImage().height());
377 } 380 }
378 381
379 IN_PROC_BROWSER_TEST_F(UserImageManagerTest, NonJPEGImageFromFile) { 382 IN_PROC_BROWSER_TEST_F(UserImageManagerTest, NonJPEGImageFromFile) {
380 UserManager::Get()->GetUsers(); // Load users. 383 UserManager::Get()->GetUsers(); // Load users.
381 const User* user = UserManager::Get()->FindUser(kTestUser1); 384 const user_manager::User* user = UserManager::Get()->FindUser(kTestUser1);
382 ASSERT_TRUE(user); 385 ASSERT_TRUE(user);
383 // Wait for image load. 386 // Wait for image load.
384 if (user->image_index() == User::kInvalidImageIndex) { 387 if (user->image_index() == user_manager::User::USER_IMAGE_INVALID) {
385 content::WindowedNotificationObserver( 388 content::WindowedNotificationObserver(
386 chrome::NOTIFICATION_LOGIN_USER_IMAGE_CHANGED, 389 chrome::NOTIFICATION_LOGIN_USER_IMAGE_CHANGED,
387 content::NotificationService::AllSources()).Wait(); 390 content::NotificationService::AllSources()).Wait();
388 } 391 }
389 // Now the migrated image is used. 392 // Now the migrated image is used.
390 EXPECT_TRUE(user->image_is_safe_format()); 393 EXPECT_TRUE(user->image_is_safe_format());
391 // Check image dimensions. Images can't be compared since JPEG is lossy. 394 // Check image dimensions. Images can't be compared since JPEG is lossy.
392 const gfx::ImageSkia& saved_image = 395 const gfx::ImageSkia& saved_image =
393 user_manager::GetDefaultImage(user_manager::kFirstDefaultImageIndex); 396 user_manager::GetDefaultImage(user_manager::kFirstDefaultImageIndex);
394 EXPECT_EQ(saved_image.width(), user->GetImage().width()); 397 EXPECT_EQ(saved_image.width(), user->GetImage().width());
395 EXPECT_EQ(saved_image.height(), user->GetImage().height()); 398 EXPECT_EQ(saved_image.height(), user->GetImage().height());
396 } 399 }
397 400
398 IN_PROC_BROWSER_TEST_F(UserImageManagerTest, PRE_SaveUserDefaultImageIndex) { 401 IN_PROC_BROWSER_TEST_F(UserImageManagerTest, PRE_SaveUserDefaultImageIndex) {
399 RegisterUser(kTestUser1); 402 RegisterUser(kTestUser1);
400 } 403 }
401 404
402 // Verifies that SaveUserDefaultImageIndex() correctly sets and persists the 405 // Verifies that SaveUserDefaultImageIndex() correctly sets and persists the
403 // chosen user image. 406 // chosen user image.
404 IN_PROC_BROWSER_TEST_F(UserImageManagerTest, SaveUserDefaultImageIndex) { 407 IN_PROC_BROWSER_TEST_F(UserImageManagerTest, SaveUserDefaultImageIndex) {
405 const User* user = UserManager::Get()->FindUser(kTestUser1); 408 const user_manager::User* user = UserManager::Get()->FindUser(kTestUser1);
406 ASSERT_TRUE(user); 409 ASSERT_TRUE(user);
407 410
408 const gfx::ImageSkia& default_image = 411 const gfx::ImageSkia& default_image =
409 user_manager::GetDefaultImage(user_manager::kFirstDefaultImageIndex); 412 user_manager::GetDefaultImage(user_manager::kFirstDefaultImageIndex);
410 413
411 UserImageManager* user_image_manager = 414 UserImageManager* user_image_manager =
412 UserManager::Get()->GetUserImageManager(kTestUser1); 415 UserManager::Get()->GetUserImageManager(kTestUser1);
413 user_image_manager->SaveUserDefaultImageIndex( 416 user_image_manager->SaveUserDefaultImageIndex(
414 user_manager::kFirstDefaultImageIndex); 417 user_manager::kFirstDefaultImageIndex);
415 418
416 EXPECT_TRUE(user->HasDefaultImage()); 419 EXPECT_TRUE(user->HasDefaultImage());
417 EXPECT_EQ(user_manager::kFirstDefaultImageIndex, user->image_index()); 420 EXPECT_EQ(user_manager::kFirstDefaultImageIndex, user->image_index());
418 EXPECT_TRUE(test::AreImagesEqual(default_image, user->GetImage())); 421 EXPECT_TRUE(test::AreImagesEqual(default_image, user->GetImage()));
419 ExpectNewUserImageInfo( 422 ExpectNewUserImageInfo(
420 kTestUser1, user_manager::kFirstDefaultImageIndex, base::FilePath()); 423 kTestUser1, user_manager::kFirstDefaultImageIndex, base::FilePath());
421 } 424 }
422 425
423 IN_PROC_BROWSER_TEST_F(UserImageManagerTest, PRE_SaveUserImage) { 426 IN_PROC_BROWSER_TEST_F(UserImageManagerTest, PRE_SaveUserImage) {
424 RegisterUser(kTestUser1); 427 RegisterUser(kTestUser1);
425 } 428 }
426 429
427 // Verifies that SaveUserImage() correctly sets and persists the chosen user 430 // Verifies that SaveUserImage() correctly sets and persists the chosen user
428 // image. 431 // image.
429 IN_PROC_BROWSER_TEST_F(UserImageManagerTest, SaveUserImage) { 432 IN_PROC_BROWSER_TEST_F(UserImageManagerTest, SaveUserImage) {
430 const User* user = UserManager::Get()->FindUser(kTestUser1); 433 const user_manager::User* user = UserManager::Get()->FindUser(kTestUser1);
431 ASSERT_TRUE(user); 434 ASSERT_TRUE(user);
432 435
433 SkBitmap custom_image_bitmap; 436 SkBitmap custom_image_bitmap;
434 custom_image_bitmap.allocN32Pixels(10, 10); 437 custom_image_bitmap.allocN32Pixels(10, 10);
435 custom_image_bitmap.setImmutable(); 438 custom_image_bitmap.setImmutable();
436 const gfx::ImageSkia custom_image = 439 const gfx::ImageSkia custom_image =
437 gfx::ImageSkia::CreateFrom1xBitmap(custom_image_bitmap); 440 gfx::ImageSkia::CreateFrom1xBitmap(custom_image_bitmap);
438 441
439 run_loop_.reset(new base::RunLoop); 442 run_loop_.reset(new base::RunLoop);
440 UserImageManager* user_image_manager = 443 UserImageManager* user_image_manager =
441 UserManager::Get()->GetUserImageManager(kTestUser1); 444 UserManager::Get()->GetUserImageManager(kTestUser1);
442 user_image_manager->SaveUserImage( 445 user_image_manager->SaveUserImage(
443 user_manager::UserImage::CreateAndEncode(custom_image)); 446 user_manager::UserImage::CreateAndEncode(custom_image));
444 run_loop_->Run(); 447 run_loop_->Run();
445 448
446 EXPECT_FALSE(user->HasDefaultImage()); 449 EXPECT_FALSE(user->HasDefaultImage());
447 EXPECT_EQ(User::kExternalImageIndex, user->image_index()); 450 EXPECT_EQ(user_manager::User::USER_IMAGE_EXTERNAL, user->image_index());
448 EXPECT_TRUE(test::AreImagesEqual(custom_image, user->GetImage())); 451 EXPECT_TRUE(test::AreImagesEqual(custom_image, user->GetImage()));
449 ExpectNewUserImageInfo(kTestUser1, 452 ExpectNewUserImageInfo(kTestUser1,
450 User::kExternalImageIndex, 453 user_manager::User::USER_IMAGE_EXTERNAL,
451 GetUserImagePath(kTestUser1, "jpg")); 454 GetUserImagePath(kTestUser1, "jpg"));
452 455
453 const scoped_ptr<gfx::ImageSkia> saved_image = 456 const scoped_ptr<gfx::ImageSkia> saved_image =
454 test::ImageLoader(GetUserImagePath(kTestUser1, "jpg")).Load(); 457 test::ImageLoader(GetUserImagePath(kTestUser1, "jpg")).Load();
455 ASSERT_TRUE(saved_image); 458 ASSERT_TRUE(saved_image);
456 459
457 // Check image dimensions. Images can't be compared since JPEG is lossy. 460 // Check image dimensions. Images can't be compared since JPEG is lossy.
458 EXPECT_EQ(custom_image.width(), saved_image->width()); 461 EXPECT_EQ(custom_image.width(), saved_image->width());
459 EXPECT_EQ(custom_image.height(), saved_image->height()); 462 EXPECT_EQ(custom_image.height(), saved_image->height());
460 } 463 }
461 464
462 IN_PROC_BROWSER_TEST_F(UserImageManagerTest, PRE_SaveUserImageFromFile) { 465 IN_PROC_BROWSER_TEST_F(UserImageManagerTest, PRE_SaveUserImageFromFile) {
463 RegisterUser(kTestUser1); 466 RegisterUser(kTestUser1);
464 } 467 }
465 468
466 // Verifies that SaveUserImageFromFile() correctly sets and persists the chosen 469 // Verifies that SaveUserImageFromFile() correctly sets and persists the chosen
467 // user image. 470 // user image.
468 IN_PROC_BROWSER_TEST_F(UserImageManagerTest, SaveUserImageFromFile) { 471 IN_PROC_BROWSER_TEST_F(UserImageManagerTest, SaveUserImageFromFile) {
469 const User* user = UserManager::Get()->FindUser(kTestUser1); 472 const user_manager::User* user = UserManager::Get()->FindUser(kTestUser1);
470 ASSERT_TRUE(user); 473 ASSERT_TRUE(user);
471 474
472 const base::FilePath custom_image_path = 475 const base::FilePath custom_image_path =
473 test_data_dir_.Append(test::kUserAvatarImage1RelativePath); 476 test_data_dir_.Append(test::kUserAvatarImage1RelativePath);
474 const scoped_ptr<gfx::ImageSkia> custom_image = 477 const scoped_ptr<gfx::ImageSkia> custom_image =
475 test::ImageLoader(custom_image_path).Load(); 478 test::ImageLoader(custom_image_path).Load();
476 ASSERT_TRUE(custom_image); 479 ASSERT_TRUE(custom_image);
477 480
478 run_loop_.reset(new base::RunLoop); 481 run_loop_.reset(new base::RunLoop);
479 UserImageManager* user_image_manager = 482 UserImageManager* user_image_manager =
480 UserManager::Get()->GetUserImageManager(kTestUser1); 483 UserManager::Get()->GetUserImageManager(kTestUser1);
481 user_image_manager->SaveUserImageFromFile(custom_image_path); 484 user_image_manager->SaveUserImageFromFile(custom_image_path);
482 run_loop_->Run(); 485 run_loop_->Run();
483 486
484 EXPECT_FALSE(user->HasDefaultImage()); 487 EXPECT_FALSE(user->HasDefaultImage());
485 EXPECT_EQ(User::kExternalImageIndex, user->image_index()); 488 EXPECT_EQ(user_manager::User::USER_IMAGE_EXTERNAL, user->image_index());
486 EXPECT_TRUE(test::AreImagesEqual(*custom_image, user->GetImage())); 489 EXPECT_TRUE(test::AreImagesEqual(*custom_image, user->GetImage()));
487 ExpectNewUserImageInfo(kTestUser1, 490 ExpectNewUserImageInfo(kTestUser1,
488 User::kExternalImageIndex, 491 user_manager::User::USER_IMAGE_EXTERNAL,
489 GetUserImagePath(kTestUser1, "jpg")); 492 GetUserImagePath(kTestUser1, "jpg"));
490 493
491 const scoped_ptr<gfx::ImageSkia> saved_image = 494 const scoped_ptr<gfx::ImageSkia> saved_image =
492 test::ImageLoader(GetUserImagePath(kTestUser1, "jpg")).Load(); 495 test::ImageLoader(GetUserImagePath(kTestUser1, "jpg")).Load();
493 ASSERT_TRUE(saved_image); 496 ASSERT_TRUE(saved_image);
494 497
495 // Check image dimensions. Images can't be compared since JPEG is lossy. 498 // Check image dimensions. Images can't be compared since JPEG is lossy.
496 EXPECT_EQ(custom_image->width(), saved_image->width()); 499 EXPECT_EQ(custom_image->width(), saved_image->width());
497 EXPECT_EQ(custom_image->height(), saved_image->height()); 500 EXPECT_EQ(custom_image->height(), saved_image->height());
498 } 501 }
499 502
500 IN_PROC_BROWSER_TEST_F(UserImageManagerTest, 503 IN_PROC_BROWSER_TEST_F(UserImageManagerTest,
501 PRE_SaveUserImageFromProfileImage) { 504 PRE_SaveUserImageFromProfileImage) {
502 RegisterUser(kTestUser1); 505 RegisterUser(kTestUser1);
503 chromeos::StartupUtils::MarkOobeCompleted(); 506 chromeos::StartupUtils::MarkOobeCompleted();
504 } 507 }
505 508
506 // Verifies that SaveUserImageFromProfileImage() correctly downloads, sets and 509 // Verifies that SaveUserImageFromProfileImage() correctly downloads, sets and
507 // persists the chosen user image. 510 // persists the chosen user image.
508 IN_PROC_BROWSER_TEST_F(UserImageManagerTest, SaveUserImageFromProfileImage) { 511 IN_PROC_BROWSER_TEST_F(UserImageManagerTest, SaveUserImageFromProfileImage) {
509 const User* user = UserManager::Get()->FindUser(kTestUser1); 512 const user_manager::User* user = UserManager::Get()->FindUser(kTestUser1);
510 ASSERT_TRUE(user); 513 ASSERT_TRUE(user);
511 514
512 UserImageManagerImpl::IgnoreProfileDataDownloadDelayForTesting(); 515 UserImageManagerImpl::IgnoreProfileDataDownloadDelayForTesting();
513 LoginUser(kTestUser1); 516 LoginUser(kTestUser1);
514 517
515 run_loop_.reset(new base::RunLoop); 518 run_loop_.reset(new base::RunLoop);
516 UserImageManager* user_image_manager = 519 UserImageManager* user_image_manager =
517 UserManager::Get()->GetUserImageManager(kTestUser1); 520 UserManager::Get()->GetUserImageManager(kTestUser1);
518 user_image_manager->SaveUserImageFromProfileImage(); 521 user_image_manager->SaveUserImageFromProfileImage();
519 run_loop_->Run(); 522 run_loop_->Run();
520 523
521 net::TestURLFetcherFactory url_fetcher_factory; 524 net::TestURLFetcherFactory url_fetcher_factory;
522 CompleteProfileMetadataDownload(kTestUser1, &url_fetcher_factory); 525 CompleteProfileMetadataDownload(kTestUser1, &url_fetcher_factory);
523 CompleteProfileImageDownload(&url_fetcher_factory); 526 CompleteProfileImageDownload(&url_fetcher_factory);
524 527
525 const gfx::ImageSkia& profile_image = 528 const gfx::ImageSkia& profile_image =
526 user_image_manager->DownloadedProfileImage(); 529 user_image_manager->DownloadedProfileImage();
527 530
528 EXPECT_FALSE(user->HasDefaultImage()); 531 EXPECT_FALSE(user->HasDefaultImage());
529 EXPECT_EQ(User::kProfileImageIndex, user->image_index()); 532 EXPECT_EQ(user_manager::User::USER_IMAGE_PROFILE, user->image_index());
530 EXPECT_TRUE(test::AreImagesEqual(profile_image, user->GetImage())); 533 EXPECT_TRUE(test::AreImagesEqual(profile_image, user->GetImage()));
531 ExpectNewUserImageInfo(kTestUser1, 534 ExpectNewUserImageInfo(kTestUser1,
532 User::kProfileImageIndex, 535 user_manager::User::USER_IMAGE_PROFILE,
533 GetUserImagePath(kTestUser1, "jpg")); 536 GetUserImagePath(kTestUser1, "jpg"));
534 537
535 const scoped_ptr<gfx::ImageSkia> saved_image = 538 const scoped_ptr<gfx::ImageSkia> saved_image =
536 test::ImageLoader(GetUserImagePath(kTestUser1, "jpg")).Load(); 539 test::ImageLoader(GetUserImagePath(kTestUser1, "jpg")).Load();
537 ASSERT_TRUE(saved_image); 540 ASSERT_TRUE(saved_image);
538 541
539 // Check image dimensions. Images can't be compared since JPEG is lossy. 542 // Check image dimensions. Images can't be compared since JPEG is lossy.
540 EXPECT_EQ(profile_image.width(), saved_image->width()); 543 EXPECT_EQ(profile_image.width(), saved_image->width());
541 EXPECT_EQ(profile_image.height(), saved_image->height()); 544 EXPECT_EQ(profile_image.height(), saved_image->height());
542 } 545 }
543 546
544 IN_PROC_BROWSER_TEST_F(UserImageManagerTest, 547 IN_PROC_BROWSER_TEST_F(UserImageManagerTest,
545 PRE_ProfileImageDownloadDoesNotClobber) { 548 PRE_ProfileImageDownloadDoesNotClobber) {
546 RegisterUser(kTestUser1); 549 RegisterUser(kTestUser1);
547 chromeos::StartupUtils::MarkOobeCompleted(); 550 chromeos::StartupUtils::MarkOobeCompleted();
548 } 551 }
549 552
550 // Sets the user image to the profile image, then sets it to one of the default 553 // Sets the user image to the profile image, then sets it to one of the default
551 // images while the profile image download is still in progress. Verifies that 554 // images while the profile image download is still in progress. Verifies that
552 // when the download completes, the profile image is ignored and does not 555 // when the download completes, the profile image is ignored and does not
553 // clobber the default image chosen in the meantime. 556 // clobber the default image chosen in the meantime.
554 IN_PROC_BROWSER_TEST_F(UserImageManagerTest, 557 IN_PROC_BROWSER_TEST_F(UserImageManagerTest,
555 ProfileImageDownloadDoesNotClobber) { 558 ProfileImageDownloadDoesNotClobber) {
556 const User* user = UserManager::Get()->FindUser(kTestUser1); 559 const user_manager::User* user = UserManager::Get()->FindUser(kTestUser1);
557 ASSERT_TRUE(user); 560 ASSERT_TRUE(user);
558 561
559 const gfx::ImageSkia& default_image = 562 const gfx::ImageSkia& default_image =
560 user_manager::GetDefaultImage(user_manager::kFirstDefaultImageIndex); 563 user_manager::GetDefaultImage(user_manager::kFirstDefaultImageIndex);
561 564
562 UserImageManagerImpl::IgnoreProfileDataDownloadDelayForTesting(); 565 UserImageManagerImpl::IgnoreProfileDataDownloadDelayForTesting();
563 LoginUser(kTestUser1); 566 LoginUser(kTestUser1);
564 567
565 run_loop_.reset(new base::RunLoop); 568 run_loop_.reset(new base::RunLoop);
566 UserImageManager* user_image_manager = 569 UserImageManager* user_image_manager =
(...skipping 98 matching lines...) Expand 10 before | Expand all | Expand 10 after
665 668
666 IN_PROC_BROWSER_TEST_F(UserImageManagerPolicyTest, PRE_SetAndClear) { 669 IN_PROC_BROWSER_TEST_F(UserImageManagerPolicyTest, PRE_SetAndClear) {
667 RegisterUser(kTestUser1); 670 RegisterUser(kTestUser1);
668 chromeos::StartupUtils::MarkOobeCompleted(); 671 chromeos::StartupUtils::MarkOobeCompleted();
669 } 672 }
670 673
671 // Verifies that the user image can be set through policy. Also verifies that 674 // Verifies that the user image can be set through policy. Also verifies that
672 // after the policy has been cleared, the user is able to choose a different 675 // after the policy has been cleared, the user is able to choose a different
673 // image. 676 // image.
674 IN_PROC_BROWSER_TEST_F(UserImageManagerPolicyTest, SetAndClear) { 677 IN_PROC_BROWSER_TEST_F(UserImageManagerPolicyTest, SetAndClear) {
675 const User* user = UserManager::Get()->FindUser(kTestUser1); 678 const user_manager::User* user = UserManager::Get()->FindUser(kTestUser1);
676 ASSERT_TRUE(user); 679 ASSERT_TRUE(user);
677 680
678 LoginUser(kTestUser1); 681 LoginUser(kTestUser1);
679 base::RunLoop().RunUntilIdle(); 682 base::RunLoop().RunUntilIdle();
680 683
681 policy::CloudPolicyStore* store = GetStoreForUser(user); 684 policy::CloudPolicyStore* store = GetStoreForUser(user);
682 ASSERT_TRUE(store); 685 ASSERT_TRUE(store);
683 686
684 // Set policy. Verify that the policy-provided user image is downloaded, set 687 // Set policy. Verify that the policy-provided user image is downloaded, set
685 // and persisted. 688 // and persisted.
686 user_policy_.payload().mutable_useravatarimage()->set_value( 689 user_policy_.payload().mutable_useravatarimage()->set_value(
687 ConstructPolicy(test::kUserAvatarImage2RelativePath)); 690 ConstructPolicy(test::kUserAvatarImage2RelativePath));
688 user_policy_.Build(); 691 user_policy_.Build();
689 fake_session_manager_client_->set_user_policy(kTestUser1, 692 fake_session_manager_client_->set_user_policy(kTestUser1,
690 user_policy_.GetBlob()); 693 user_policy_.GetBlob());
691 run_loop_.reset(new base::RunLoop); 694 run_loop_.reset(new base::RunLoop);
692 store->Load(); 695 store->Load();
693 run_loop_->Run(); 696 run_loop_->Run();
694 697
695 EXPECT_FALSE(user->HasDefaultImage()); 698 EXPECT_FALSE(user->HasDefaultImage());
696 EXPECT_EQ(User::kExternalImageIndex, user->image_index()); 699 EXPECT_EQ(user_manager::User::USER_IMAGE_EXTERNAL, user->image_index());
697 EXPECT_TRUE(test::AreImagesEqual(*policy_image_, user->GetImage())); 700 EXPECT_TRUE(test::AreImagesEqual(*policy_image_, user->GetImage()));
698 ExpectNewUserImageInfo(kTestUser1, 701 ExpectNewUserImageInfo(kTestUser1,
699 User::kExternalImageIndex, 702 user_manager::User::USER_IMAGE_EXTERNAL,
700 GetUserImagePath(kTestUser1, "jpg")); 703 GetUserImagePath(kTestUser1, "jpg"));
701 704
702 scoped_ptr<gfx::ImageSkia> saved_image = 705 scoped_ptr<gfx::ImageSkia> saved_image =
703 test::ImageLoader(GetUserImagePath(kTestUser1, "jpg")).Load(); 706 test::ImageLoader(GetUserImagePath(kTestUser1, "jpg")).Load();
704 ASSERT_TRUE(saved_image); 707 ASSERT_TRUE(saved_image);
705 708
706 // Check image dimensions. Images can't be compared since JPEG is lossy. 709 // Check image dimensions. Images can't be compared since JPEG is lossy.
707 EXPECT_EQ(policy_image_->width(), saved_image->width()); 710 EXPECT_EQ(policy_image_->width(), saved_image->width());
708 EXPECT_EQ(policy_image_->height(), saved_image->height()); 711 EXPECT_EQ(policy_image_->height(), saved_image->height());
709 712
(...skipping 42 matching lines...) Expand 10 before | Expand all | Expand 10 after
752 755
753 IN_PROC_BROWSER_TEST_F(UserImageManagerPolicyTest, PRE_PolicyOverridesUser) { 756 IN_PROC_BROWSER_TEST_F(UserImageManagerPolicyTest, PRE_PolicyOverridesUser) {
754 RegisterUser(kTestUser1); 757 RegisterUser(kTestUser1);
755 chromeos::StartupUtils::MarkOobeCompleted(); 758 chromeos::StartupUtils::MarkOobeCompleted();
756 } 759 }
757 760
758 // Verifies that when the user chooses a user image and a different image is 761 // Verifies that when the user chooses a user image and a different image is
759 // then set through policy, the policy takes precedence, overriding the 762 // then set through policy, the policy takes precedence, overriding the
760 // previously chosen image. 763 // previously chosen image.
761 IN_PROC_BROWSER_TEST_F(UserImageManagerPolicyTest, PolicyOverridesUser) { 764 IN_PROC_BROWSER_TEST_F(UserImageManagerPolicyTest, PolicyOverridesUser) {
762 const User* user = UserManager::Get()->FindUser(kTestUser1); 765 const user_manager::User* user = UserManager::Get()->FindUser(kTestUser1);
763 ASSERT_TRUE(user); 766 ASSERT_TRUE(user);
764 767
765 LoginUser(kTestUser1); 768 LoginUser(kTestUser1);
766 base::RunLoop().RunUntilIdle(); 769 base::RunLoop().RunUntilIdle();
767 770
768 policy::CloudPolicyStore* store = GetStoreForUser(user); 771 policy::CloudPolicyStore* store = GetStoreForUser(user);
769 ASSERT_TRUE(store); 772 ASSERT_TRUE(store);
770 773
771 // Choose a user image. Verify that the chosen user image is set and 774 // Choose a user image. Verify that the chosen user image is set and
772 // persisted. 775 // persisted.
(...skipping 16 matching lines...) Expand all
789 user_policy_.payload().mutable_useravatarimage()->set_value( 792 user_policy_.payload().mutable_useravatarimage()->set_value(
790 ConstructPolicy(test::kUserAvatarImage2RelativePath)); 793 ConstructPolicy(test::kUserAvatarImage2RelativePath));
791 user_policy_.Build(); 794 user_policy_.Build();
792 fake_session_manager_client_->set_user_policy(kTestUser1, 795 fake_session_manager_client_->set_user_policy(kTestUser1,
793 user_policy_.GetBlob()); 796 user_policy_.GetBlob());
794 run_loop_.reset(new base::RunLoop); 797 run_loop_.reset(new base::RunLoop);
795 store->Load(); 798 store->Load();
796 run_loop_->Run(); 799 run_loop_->Run();
797 800
798 EXPECT_FALSE(user->HasDefaultImage()); 801 EXPECT_FALSE(user->HasDefaultImage());
799 EXPECT_EQ(User::kExternalImageIndex, user->image_index()); 802 EXPECT_EQ(user_manager::User::USER_IMAGE_EXTERNAL, user->image_index());
800 EXPECT_TRUE(test::AreImagesEqual(*policy_image_, user->GetImage())); 803 EXPECT_TRUE(test::AreImagesEqual(*policy_image_, user->GetImage()));
801 ExpectNewUserImageInfo(kTestUser1, 804 ExpectNewUserImageInfo(kTestUser1,
802 User::kExternalImageIndex, 805 user_manager::User::USER_IMAGE_EXTERNAL,
803 GetUserImagePath(kTestUser1, "jpg")); 806 GetUserImagePath(kTestUser1, "jpg"));
804 807
805 scoped_ptr<gfx::ImageSkia> saved_image = 808 scoped_ptr<gfx::ImageSkia> saved_image =
806 test::ImageLoader(GetUserImagePath(kTestUser1, "jpg")).Load(); 809 test::ImageLoader(GetUserImagePath(kTestUser1, "jpg")).Load();
807 ASSERT_TRUE(saved_image); 810 ASSERT_TRUE(saved_image);
808 811
809 // Check image dimensions. Images can't be compared since JPEG is lossy. 812 // Check image dimensions. Images can't be compared since JPEG is lossy.
810 EXPECT_EQ(policy_image_->width(), saved_image->width()); 813 EXPECT_EQ(policy_image_->width(), saved_image->width());
811 EXPECT_EQ(policy_image_->height(), saved_image->height()); 814 EXPECT_EQ(policy_image_->height(), saved_image->height());
812 } 815 }
813 816
814 IN_PROC_BROWSER_TEST_F(UserImageManagerPolicyTest, 817 IN_PROC_BROWSER_TEST_F(UserImageManagerPolicyTest,
815 PRE_UserDoesNotOverridePolicy) { 818 PRE_UserDoesNotOverridePolicy) {
816 RegisterUser(kTestUser1); 819 RegisterUser(kTestUser1);
817 chromeos::StartupUtils::MarkOobeCompleted(); 820 chromeos::StartupUtils::MarkOobeCompleted();
818 } 821 }
819 822
820 // Verifies that when the user image has been set through policy and the user 823 // Verifies that when the user image has been set through policy and the user
821 // chooses a different image, the policy takes precedence, preventing the user 824 // chooses a different image, the policy takes precedence, preventing the user
822 // from overriding the previously chosen image. 825 // from overriding the previously chosen image.
823 IN_PROC_BROWSER_TEST_F(UserImageManagerPolicyTest, UserDoesNotOverridePolicy) { 826 IN_PROC_BROWSER_TEST_F(UserImageManagerPolicyTest, UserDoesNotOverridePolicy) {
824 const User* user = UserManager::Get()->FindUser(kTestUser1); 827 const user_manager::User* user = UserManager::Get()->FindUser(kTestUser1);
825 ASSERT_TRUE(user); 828 ASSERT_TRUE(user);
826 829
827 LoginUser(kTestUser1); 830 LoginUser(kTestUser1);
828 base::RunLoop().RunUntilIdle(); 831 base::RunLoop().RunUntilIdle();
829 832
830 policy::CloudPolicyStore* store = GetStoreForUser(user); 833 policy::CloudPolicyStore* store = GetStoreForUser(user);
831 ASSERT_TRUE(store); 834 ASSERT_TRUE(store);
832 835
833 // Set policy. Verify that the policy-provided user image is downloaded, set 836 // Set policy. Verify that the policy-provided user image is downloaded, set
834 // and persisted. 837 // and persisted.
835 user_policy_.payload().mutable_useravatarimage()->set_value( 838 user_policy_.payload().mutable_useravatarimage()->set_value(
836 ConstructPolicy(test::kUserAvatarImage2RelativePath)); 839 ConstructPolicy(test::kUserAvatarImage2RelativePath));
837 user_policy_.Build(); 840 user_policy_.Build();
838 fake_session_manager_client_->set_user_policy(kTestUser1, 841 fake_session_manager_client_->set_user_policy(kTestUser1,
839 user_policy_.GetBlob()); 842 user_policy_.GetBlob());
840 run_loop_.reset(new base::RunLoop); 843 run_loop_.reset(new base::RunLoop);
841 store->Load(); 844 store->Load();
842 run_loop_->Run(); 845 run_loop_->Run();
843 846
844 EXPECT_FALSE(user->HasDefaultImage()); 847 EXPECT_FALSE(user->HasDefaultImage());
845 EXPECT_EQ(User::kExternalImageIndex, user->image_index()); 848 EXPECT_EQ(user_manager::User::USER_IMAGE_EXTERNAL, user->image_index());
846 EXPECT_TRUE(test::AreImagesEqual(*policy_image_, user->GetImage())); 849 EXPECT_TRUE(test::AreImagesEqual(*policy_image_, user->GetImage()));
847 ExpectNewUserImageInfo(kTestUser1, 850 ExpectNewUserImageInfo(kTestUser1,
848 User::kExternalImageIndex, 851 user_manager::User::USER_IMAGE_EXTERNAL,
849 GetUserImagePath(kTestUser1, "jpg")); 852 GetUserImagePath(kTestUser1, "jpg"));
850 853
851 scoped_ptr<gfx::ImageSkia> saved_image = 854 scoped_ptr<gfx::ImageSkia> saved_image =
852 test::ImageLoader(GetUserImagePath(kTestUser1, "jpg")).Load(); 855 test::ImageLoader(GetUserImagePath(kTestUser1, "jpg")).Load();
853 ASSERT_TRUE(saved_image); 856 ASSERT_TRUE(saved_image);
854 857
855 // Check image dimensions. Images can't be compared since JPEG is lossy. 858 // Check image dimensions. Images can't be compared since JPEG is lossy.
856 EXPECT_EQ(policy_image_->width(), saved_image->width()); 859 EXPECT_EQ(policy_image_->width(), saved_image->width());
857 EXPECT_EQ(policy_image_->height(), saved_image->height()); 860 EXPECT_EQ(policy_image_->height(), saved_image->height());
858 861
859 // Choose a different user image. Verify that the user image does not change 862 // Choose a different user image. Verify that the user image does not change
860 // as policy takes precedence. 863 // as policy takes precedence.
861 UserImageManager* user_image_manager = 864 UserImageManager* user_image_manager =
862 UserManager::Get()->GetUserImageManager(kTestUser1); 865 UserManager::Get()->GetUserImageManager(kTestUser1);
863 user_image_manager->SaveUserDefaultImageIndex( 866 user_image_manager->SaveUserDefaultImageIndex(
864 user_manager::kFirstDefaultImageIndex); 867 user_manager::kFirstDefaultImageIndex);
865 868
866 EXPECT_FALSE(user->HasDefaultImage()); 869 EXPECT_FALSE(user->HasDefaultImage());
867 EXPECT_EQ(User::kExternalImageIndex, user->image_index()); 870 EXPECT_EQ(user_manager::User::USER_IMAGE_EXTERNAL, user->image_index());
868 EXPECT_TRUE(test::AreImagesEqual(*policy_image_, user->GetImage())); 871 EXPECT_TRUE(test::AreImagesEqual(*policy_image_, user->GetImage()));
869 ExpectNewUserImageInfo(kTestUser1, 872 ExpectNewUserImageInfo(kTestUser1,
870 User::kExternalImageIndex, 873 user_manager::User::USER_IMAGE_EXTERNAL,
871 GetUserImagePath(kTestUser1, "jpg")); 874 GetUserImagePath(kTestUser1, "jpg"));
872 875
873 saved_image = test::ImageLoader(GetUserImagePath(kTestUser1, "jpg")).Load(); 876 saved_image = test::ImageLoader(GetUserImagePath(kTestUser1, "jpg")).Load();
874 ASSERT_TRUE(saved_image); 877 ASSERT_TRUE(saved_image);
875 878
876 // Check image dimensions. Images can't be compared since JPEG is lossy. 879 // Check image dimensions. Images can't be compared since JPEG is lossy.
877 EXPECT_EQ(policy_image_->width(), saved_image->width()); 880 EXPECT_EQ(policy_image_->width(), saved_image->width());
878 EXPECT_EQ(policy_image_->height(), saved_image->height()); 881 EXPECT_EQ(policy_image_->height(), saved_image->height());
879 } 882 }
880 883
881 } // namespace chromeos 884 } // namespace chromeos
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698