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

Side by Side Diff: chrome/browser/profiles/profile_info_cache_unittest.cc

Issue 1117453002: Add gaia_id to ProfileInfoCache. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fix comments Created 5 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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/profiles/profile_info_cache_unittest.h" 5 #include "chrome/browser/profiles/profile_info_cache_unittest.h"
6 6
7 #include <vector> 7 #include <vector>
8 8
9 #include "base/command_line.h" 9 #include "base/command_line.h"
10 #include "base/files/file_util.h" 10 #include "base/files/file_util.h"
(...skipping 115 matching lines...) Expand 10 before | Expand all | Expand 10 after
126 for (uint32 i = 0; i < 4; ++i) { 126 for (uint32 i = 0; i < 4; ++i) {
127 base::FilePath profile_path = 127 base::FilePath profile_path =
128 GetProfilePath(base::StringPrintf("path_%ud", i)); 128 GetProfilePath(base::StringPrintf("path_%ud", i));
129 base::string16 profile_name = 129 base::string16 profile_name =
130 ASCIIToUTF16(base::StringPrintf("name_%ud", i)); 130 ASCIIToUTF16(base::StringPrintf("name_%ud", i));
131 const SkBitmap* icon = rb.GetImageNamed( 131 const SkBitmap* icon = rb.GetImageNamed(
132 profiles::GetDefaultAvatarIconResourceIDAtIndex( 132 profiles::GetDefaultAvatarIconResourceIDAtIndex(
133 i)).ToSkBitmap(); 133 i)).ToSkBitmap();
134 std::string supervised_user_id = i == 3 ? "TEST_ID" : ""; 134 std::string supervised_user_id = i == 3 ? "TEST_ID" : "";
135 135
136 GetCache()->AddProfileToCache(profile_path, profile_name, base::string16(), 136 GetCache()->AddProfileToCache(profile_path, profile_name, std::string(),
137 i, supervised_user_id); 137 base::string16(), i, supervised_user_id);
138 GetCache()->SetBackgroundStatusOfProfileAtIndex(i, true); 138 GetCache()->SetBackgroundStatusOfProfileAtIndex(i, true);
139 base::string16 gaia_name = ASCIIToUTF16(base::StringPrintf("gaia_%ud", i)); 139 base::string16 gaia_name = ASCIIToUTF16(base::StringPrintf("gaia_%ud", i));
140 GetCache()->SetGAIANameOfProfileAtIndex(i, gaia_name); 140 GetCache()->SetGAIANameOfProfileAtIndex(i, gaia_name);
141 141
142 EXPECT_EQ(i + 1, GetCache()->GetNumberOfProfiles()); 142 EXPECT_EQ(i + 1, GetCache()->GetNumberOfProfiles());
143 EXPECT_EQ(profile_name, GetCache()->GetNameOfProfileAtIndex(i)); 143 EXPECT_EQ(profile_name, GetCache()->GetNameOfProfileAtIndex(i));
144 EXPECT_EQ(profile_path, GetCache()->GetPathOfProfileAtIndex(i)); 144 EXPECT_EQ(profile_path, GetCache()->GetPathOfProfileAtIndex(i));
145 const SkBitmap* actual_icon = 145 const SkBitmap* actual_icon =
146 GetCache()->GetAvatarIconOfProfileAtIndex(i).ToSkBitmap(); 146 GetCache()->GetAvatarIconOfProfileAtIndex(i).ToSkBitmap();
147 EXPECT_EQ(icon->width(), actual_icon->width()); 147 EXPECT_EQ(icon->width(), actual_icon->width());
(...skipping 20 matching lines...) Expand all
168 base::string16 gaia_name = ASCIIToUTF16(base::StringPrintf("gaia_%ud", i)); 168 base::string16 gaia_name = ASCIIToUTF16(base::StringPrintf("gaia_%ud", i));
169 EXPECT_EQ(gaia_name, GetCache()->GetGAIANameOfProfileAtIndex(i)); 169 EXPECT_EQ(gaia_name, GetCache()->GetGAIANameOfProfileAtIndex(i));
170 } 170 }
171 } 171 }
172 172
173 TEST_F(ProfileInfoCacheTest, DeleteProfile) { 173 TEST_F(ProfileInfoCacheTest, DeleteProfile) {
174 EXPECT_EQ(0u, GetCache()->GetNumberOfProfiles()); 174 EXPECT_EQ(0u, GetCache()->GetNumberOfProfiles());
175 175
176 base::FilePath path_1 = GetProfilePath("path_1"); 176 base::FilePath path_1 = GetProfilePath("path_1");
177 GetCache()->AddProfileToCache(path_1, ASCIIToUTF16("name_1"), 177 GetCache()->AddProfileToCache(path_1, ASCIIToUTF16("name_1"),
178 base::string16(), 0, std::string()); 178 std::string(), base::string16(), 0,
179 std::string());
179 EXPECT_EQ(1u, GetCache()->GetNumberOfProfiles()); 180 EXPECT_EQ(1u, GetCache()->GetNumberOfProfiles());
180 181
181 base::FilePath path_2 = GetProfilePath("path_2"); 182 base::FilePath path_2 = GetProfilePath("path_2");
182 base::string16 name_2 = ASCIIToUTF16("name_2"); 183 base::string16 name_2 = ASCIIToUTF16("name_2");
183 GetCache()->AddProfileToCache(path_2, name_2, base::string16(), 0, 184 GetCache()->AddProfileToCache(path_2, name_2, std::string(), base::string16(),
184 std::string()); 185 0, std::string());
185 EXPECT_EQ(2u, GetCache()->GetNumberOfProfiles()); 186 EXPECT_EQ(2u, GetCache()->GetNumberOfProfiles());
186 187
187 GetCache()->DeleteProfileFromCache(path_1); 188 GetCache()->DeleteProfileFromCache(path_1);
188 EXPECT_EQ(1u, GetCache()->GetNumberOfProfiles()); 189 EXPECT_EQ(1u, GetCache()->GetNumberOfProfiles());
189 EXPECT_EQ(name_2, GetCache()->GetNameOfProfileAtIndex(0)); 190 EXPECT_EQ(name_2, GetCache()->GetNameOfProfileAtIndex(0));
190 191
191 GetCache()->DeleteProfileFromCache(path_2); 192 GetCache()->DeleteProfileFromCache(path_2);
192 EXPECT_EQ(0u, GetCache()->GetNumberOfProfiles()); 193 EXPECT_EQ(0u, GetCache()->GetNumberOfProfiles());
193 } 194 }
194 195
195 TEST_F(ProfileInfoCacheTest, MutateProfile) { 196 TEST_F(ProfileInfoCacheTest, MutateProfile) {
196 GetCache()->AddProfileToCache( 197 GetCache()->AddProfileToCache(
197 GetProfilePath("path_1"), ASCIIToUTF16("name_1"), 198 GetProfilePath("path_1"), ASCIIToUTF16("name_1"), std::string(),
198 base::string16(), 0, std::string()); 199 base::string16(), 0, std::string());
199 GetCache()->AddProfileToCache( 200 GetCache()->AddProfileToCache(
200 GetProfilePath("path_2"), ASCIIToUTF16("name_2"), 201 GetProfilePath("path_2"), ASCIIToUTF16("name_2"), std::string(),
201 base::string16(), 0, std::string()); 202 base::string16(), 0, std::string());
202 203
203 base::string16 new_name = ASCIIToUTF16("new_name"); 204 base::string16 new_name = ASCIIToUTF16("new_name");
204 GetCache()->SetNameOfProfileAtIndex(1, new_name); 205 GetCache()->SetNameOfProfileAtIndex(1, new_name);
205 EXPECT_EQ(new_name, GetCache()->GetNameOfProfileAtIndex(1)); 206 EXPECT_EQ(new_name, GetCache()->GetNameOfProfileAtIndex(1));
206 EXPECT_NE(new_name, GetCache()->GetNameOfProfileAtIndex(0)); 207 EXPECT_NE(new_name, GetCache()->GetNameOfProfileAtIndex(0));
207 208
208 base::string16 new_user_name = ASCIIToUTF16("user_name"); 209 base::string16 new_user_name = ASCIIToUTF16("user_name");
209 GetCache()->SetUserNameOfProfileAtIndex(1, new_user_name); 210 std::string new_gaia_id = "12345";
211 GetCache()->SetAuthInfoOfProfileAtIndex(1, new_gaia_id, new_user_name);
210 EXPECT_EQ(new_user_name, GetCache()->GetUserNameOfProfileAtIndex(1)); 212 EXPECT_EQ(new_user_name, GetCache()->GetUserNameOfProfileAtIndex(1));
213 EXPECT_EQ(new_gaia_id, GetCache()->GetGAIAIdOfProfileAtIndex(1));
211 EXPECT_NE(new_user_name, GetCache()->GetUserNameOfProfileAtIndex(0)); 214 EXPECT_NE(new_user_name, GetCache()->GetUserNameOfProfileAtIndex(0));
212 215
213 size_t new_icon_index = 3; 216 size_t new_icon_index = 3;
214 GetCache()->SetAvatarIconOfProfileAtIndex(1, new_icon_index); 217 GetCache()->SetAvatarIconOfProfileAtIndex(1, new_icon_index);
215 // Not much to test. 218 // Not much to test.
216 GetCache()->GetAvatarIconOfProfileAtIndex(1); 219 GetCache()->GetAvatarIconOfProfileAtIndex(1);
217 } 220 }
218 221
219 TEST_F(ProfileInfoCacheTest, Sort) { 222 TEST_F(ProfileInfoCacheTest, Sort) {
220 base::string16 name_a = ASCIIToUTF16("apple"); 223 base::string16 name_a = ASCIIToUTF16("apple");
221 GetCache()->AddProfileToCache( 224 GetCache()->AddProfileToCache(
222 GetProfilePath("path_a"), name_a, base::string16(), 0, std::string()); 225 GetProfilePath("path_a"), name_a, std::string(), base::string16(), 0,
226 std::string());
223 227
224 base::string16 name_c = ASCIIToUTF16("cat"); 228 base::string16 name_c = ASCIIToUTF16("cat");
225 GetCache()->AddProfileToCache( 229 GetCache()->AddProfileToCache(
226 GetProfilePath("path_c"), name_c, base::string16(), 0, std::string()); 230 GetProfilePath("path_c"), name_c, std::string(), base::string16(), 0,
231 std::string());
227 232
228 // Sanity check the initial order. 233 // Sanity check the initial order.
229 EXPECT_EQ(name_a, GetCache()->GetNameOfProfileAtIndex(0)); 234 EXPECT_EQ(name_a, GetCache()->GetNameOfProfileAtIndex(0));
230 EXPECT_EQ(name_c, GetCache()->GetNameOfProfileAtIndex(1)); 235 EXPECT_EQ(name_c, GetCache()->GetNameOfProfileAtIndex(1));
231 236
232 // Add a new profile (start with a capital to test case insensitive sorting. 237 // Add a new profile (start with a capital to test case insensitive sorting.
233 base::string16 name_b = ASCIIToUTF16("Banana"); 238 base::string16 name_b = ASCIIToUTF16("Banana");
234 GetCache()->AddProfileToCache( 239 GetCache()->AddProfileToCache(
235 GetProfilePath("path_b"), name_b, base::string16(), 0, std::string()); 240 GetProfilePath("path_b"), name_b, std::string(), base::string16(), 0,
241 std::string());
236 242
237 // Verify the new order. 243 // Verify the new order.
238 EXPECT_EQ(name_a, GetCache()->GetNameOfProfileAtIndex(0)); 244 EXPECT_EQ(name_a, GetCache()->GetNameOfProfileAtIndex(0));
239 EXPECT_EQ(name_b, GetCache()->GetNameOfProfileAtIndex(1)); 245 EXPECT_EQ(name_b, GetCache()->GetNameOfProfileAtIndex(1));
240 EXPECT_EQ(name_c, GetCache()->GetNameOfProfileAtIndex(2)); 246 EXPECT_EQ(name_c, GetCache()->GetNameOfProfileAtIndex(2));
241 247
242 // Change the name of an existing profile. 248 // Change the name of an existing profile.
243 name_a = UTF8ToUTF16("dog"); 249 name_a = UTF8ToUTF16("dog");
244 GetCache()->SetNameOfProfileAtIndex(0, name_a); 250 GetCache()->SetNameOfProfileAtIndex(0, name_a);
245 251
246 // Verify the new order. 252 // Verify the new order.
247 EXPECT_EQ(name_b, GetCache()->GetNameOfProfileAtIndex(0)); 253 EXPECT_EQ(name_b, GetCache()->GetNameOfProfileAtIndex(0));
248 EXPECT_EQ(name_c, GetCache()->GetNameOfProfileAtIndex(1)); 254 EXPECT_EQ(name_c, GetCache()->GetNameOfProfileAtIndex(1));
249 EXPECT_EQ(name_a, GetCache()->GetNameOfProfileAtIndex(2)); 255 EXPECT_EQ(name_a, GetCache()->GetNameOfProfileAtIndex(2));
250 256
251 // Delete a profile. 257 // Delete a profile.
252 GetCache()->DeleteProfileFromCache(GetProfilePath("path_c")); 258 GetCache()->DeleteProfileFromCache(GetProfilePath("path_c"));
253 259
254 // Verify the new order. 260 // Verify the new order.
255 EXPECT_EQ(name_b, GetCache()->GetNameOfProfileAtIndex(0)); 261 EXPECT_EQ(name_b, GetCache()->GetNameOfProfileAtIndex(0));
256 EXPECT_EQ(name_a, GetCache()->GetNameOfProfileAtIndex(1)); 262 EXPECT_EQ(name_a, GetCache()->GetNameOfProfileAtIndex(1));
257 } 263 }
258 264
259 TEST_F(ProfileInfoCacheTest, BackgroundModeStatus) { 265 TEST_F(ProfileInfoCacheTest, BackgroundModeStatus) {
260 GetCache()->AddProfileToCache( 266 GetCache()->AddProfileToCache(
261 GetProfilePath("path_1"), ASCIIToUTF16("name_1"), 267 GetProfilePath("path_1"), ASCIIToUTF16("name_1"),
262 base::string16(), 0, std::string()); 268 std::string(), base::string16(), 0, std::string());
263 GetCache()->AddProfileToCache( 269 GetCache()->AddProfileToCache(
264 GetProfilePath("path_2"), ASCIIToUTF16("name_2"), 270 GetProfilePath("path_2"), ASCIIToUTF16("name_2"),
265 base::string16(), 0, std::string()); 271 std::string(), base::string16(), 0, std::string());
266 272
267 EXPECT_FALSE(GetCache()->GetBackgroundStatusOfProfileAtIndex(0)); 273 EXPECT_FALSE(GetCache()->GetBackgroundStatusOfProfileAtIndex(0));
268 EXPECT_FALSE(GetCache()->GetBackgroundStatusOfProfileAtIndex(1)); 274 EXPECT_FALSE(GetCache()->GetBackgroundStatusOfProfileAtIndex(1));
269 275
270 GetCache()->SetBackgroundStatusOfProfileAtIndex(1, true); 276 GetCache()->SetBackgroundStatusOfProfileAtIndex(1, true);
271 277
272 EXPECT_FALSE(GetCache()->GetBackgroundStatusOfProfileAtIndex(0)); 278 EXPECT_FALSE(GetCache()->GetBackgroundStatusOfProfileAtIndex(0));
273 EXPECT_TRUE(GetCache()->GetBackgroundStatusOfProfileAtIndex(1)); 279 EXPECT_TRUE(GetCache()->GetBackgroundStatusOfProfileAtIndex(1));
274 280
275 GetCache()->SetBackgroundStatusOfProfileAtIndex(0, true); 281 GetCache()->SetBackgroundStatusOfProfileAtIndex(0, true);
276 282
277 EXPECT_TRUE(GetCache()->GetBackgroundStatusOfProfileAtIndex(0)); 283 EXPECT_TRUE(GetCache()->GetBackgroundStatusOfProfileAtIndex(0));
278 EXPECT_TRUE(GetCache()->GetBackgroundStatusOfProfileAtIndex(1)); 284 EXPECT_TRUE(GetCache()->GetBackgroundStatusOfProfileAtIndex(1));
279 285
280 GetCache()->SetBackgroundStatusOfProfileAtIndex(1, false); 286 GetCache()->SetBackgroundStatusOfProfileAtIndex(1, false);
281 287
282 EXPECT_TRUE(GetCache()->GetBackgroundStatusOfProfileAtIndex(0)); 288 EXPECT_TRUE(GetCache()->GetBackgroundStatusOfProfileAtIndex(0));
283 EXPECT_FALSE(GetCache()->GetBackgroundStatusOfProfileAtIndex(1)); 289 EXPECT_FALSE(GetCache()->GetBackgroundStatusOfProfileAtIndex(1));
284 } 290 }
285 291
286 TEST_F(ProfileInfoCacheTest, ProfileActiveTime) { 292 TEST_F(ProfileInfoCacheTest, ProfileActiveTime) {
287 GetCache()->AddProfileToCache( 293 GetCache()->AddProfileToCache(
288 GetProfilePath("path_1"), ASCIIToUTF16("name_1"), 294 GetProfilePath("path_1"), ASCIIToUTF16("name_1"),
289 base::string16(), 0, std::string()); 295 std::string(), base::string16(), 0, std::string());
290 EXPECT_EQ(base::Time(), GetCache()->GetProfileActiveTimeAtIndex(0)); 296 EXPECT_EQ(base::Time(), GetCache()->GetProfileActiveTimeAtIndex(0));
291 // Before & After times are artificially shifted because just relying upon 297 // Before & After times are artificially shifted because just relying upon
292 // the system time can yield problems due to inaccuracies in the 298 // the system time can yield problems due to inaccuracies in the
293 // underlying storage system (which uses a double with only 52 bits of 299 // underlying storage system (which uses a double with only 52 bits of
294 // precision to store the 64-bit "time" number). http://crbug.com/346827 300 // precision to store the 64-bit "time" number). http://crbug.com/346827
295 base::Time before = base::Time::Now(); 301 base::Time before = base::Time::Now();
296 before -= base::TimeDelta::FromSeconds(1); 302 before -= base::TimeDelta::FromSeconds(1);
297 GetCache()->SetProfileActiveTimeAtIndex(0); 303 GetCache()->SetProfileActiveTimeAtIndex(0);
298 base::Time after = base::Time::Now(); 304 base::Time after = base::Time::Now();
299 after += base::TimeDelta::FromSeconds(1); 305 after += base::TimeDelta::FromSeconds(1);
300 EXPECT_LE(before, GetCache()->GetProfileActiveTimeAtIndex(0)); 306 EXPECT_LE(before, GetCache()->GetProfileActiveTimeAtIndex(0));
301 EXPECT_GE(after, GetCache()->GetProfileActiveTimeAtIndex(0)); 307 EXPECT_GE(after, GetCache()->GetProfileActiveTimeAtIndex(0));
302 } 308 }
303 309
304 TEST_F(ProfileInfoCacheTest, GAIAName) { 310 TEST_F(ProfileInfoCacheTest, GAIAName) {
305 GetCache()->AddProfileToCache( 311 GetCache()->AddProfileToCache(
306 GetProfilePath("path_1"), ASCIIToUTF16("Person 1"), 312 GetProfilePath("path_1"), ASCIIToUTF16("Person 1"),
307 base::string16(), 0, std::string()); 313 std::string(), base::string16(), 0, std::string());
308 base::string16 profile_name(ASCIIToUTF16("Person 2")); 314 base::string16 profile_name(ASCIIToUTF16("Person 2"));
309 GetCache()->AddProfileToCache( 315 GetCache()->AddProfileToCache(
310 GetProfilePath("path_2"), profile_name, base::string16(), 0, 316 GetProfilePath("path_2"), profile_name, std::string(), base::string16(),
311 std::string()); 317 0, std::string());
312 318
313 int index1 = GetCache()->GetIndexOfProfileWithPath(GetProfilePath("path_1")); 319 int index1 = GetCache()->GetIndexOfProfileWithPath(GetProfilePath("path_1"));
314 int index2 = GetCache()->GetIndexOfProfileWithPath(GetProfilePath("path_2")); 320 int index2 = GetCache()->GetIndexOfProfileWithPath(GetProfilePath("path_2"));
315 321
316 // Sanity check. 322 // Sanity check.
317 EXPECT_TRUE(GetCache()->GetGAIANameOfProfileAtIndex(index1).empty()); 323 EXPECT_TRUE(GetCache()->GetGAIANameOfProfileAtIndex(index1).empty());
318 EXPECT_TRUE(GetCache()->GetGAIANameOfProfileAtIndex(index2).empty()); 324 EXPECT_TRUE(GetCache()->GetGAIANameOfProfileAtIndex(index2).empty());
319 325
320 // Set GAIA name. This re-sorts the cache. 326 // Set GAIA name. This re-sorts the cache.
321 base::string16 gaia_name(ASCIIToUTF16("Pat Smith")); 327 base::string16 gaia_name(ASCIIToUTF16("Pat Smith"));
(...skipping 17 matching lines...) Expand all
339 EXPECT_EQ(custom_name, GetCache()->GetNameOfProfileAtIndex(index2)); 345 EXPECT_EQ(custom_name, GetCache()->GetNameOfProfileAtIndex(index2));
340 EXPECT_EQ(gaia_name, GetCache()->GetGAIANameOfProfileAtIndex(index2)); 346 EXPECT_EQ(gaia_name, GetCache()->GetGAIANameOfProfileAtIndex(index2));
341 } 347 }
342 348
343 TEST_F(ProfileInfoCacheTest, GAIAPicture) { 349 TEST_F(ProfileInfoCacheTest, GAIAPicture) {
344 const int kDefaultAvatarIndex = 0; 350 const int kDefaultAvatarIndex = 0;
345 const int kOtherAvatarIndex = 1; 351 const int kOtherAvatarIndex = 1;
346 const int kGaiaPictureSize = 256; // Standard size of a Gaia account picture. 352 const int kGaiaPictureSize = 256; // Standard size of a Gaia account picture.
347 GetCache()->AddProfileToCache( 353 GetCache()->AddProfileToCache(
348 GetProfilePath("path_1"), ASCIIToUTF16("name_1"), 354 GetProfilePath("path_1"), ASCIIToUTF16("name_1"),
349 base::string16(), kDefaultAvatarIndex, std::string()); 355 std::string(), base::string16(), kDefaultAvatarIndex, std::string());
350 GetCache()->AddProfileToCache( 356 GetCache()->AddProfileToCache(
351 GetProfilePath("path_2"), ASCIIToUTF16("name_2"), 357 GetProfilePath("path_2"), ASCIIToUTF16("name_2"),
352 base::string16(), kDefaultAvatarIndex, std::string()); 358 std::string(), base::string16(), kDefaultAvatarIndex, std::string());
353 359
354 // Sanity check. 360 // Sanity check.
355 EXPECT_EQ(NULL, GetCache()->GetGAIAPictureOfProfileAtIndex(0)); 361 EXPECT_EQ(NULL, GetCache()->GetGAIAPictureOfProfileAtIndex(0));
356 EXPECT_EQ(NULL, GetCache()->GetGAIAPictureOfProfileAtIndex(1)); 362 EXPECT_EQ(NULL, GetCache()->GetGAIAPictureOfProfileAtIndex(1));
357 EXPECT_FALSE(GetCache()->IsUsingGAIAPictureOfProfileAtIndex(0)); 363 EXPECT_FALSE(GetCache()->IsUsingGAIAPictureOfProfileAtIndex(0));
358 EXPECT_FALSE(GetCache()->IsUsingGAIAPictureOfProfileAtIndex(1)); 364 EXPECT_FALSE(GetCache()->IsUsingGAIAPictureOfProfileAtIndex(1));
359 365
360 // The profile icon should be the default one. 366 // The profile icon should be the default one.
361 EXPECT_TRUE(GetCache()->ProfileIsUsingDefaultAvatarAtIndex(0)); 367 EXPECT_TRUE(GetCache()->ProfileIsUsingDefaultAvatarAtIndex(0));
362 EXPECT_TRUE(GetCache()->ProfileIsUsingDefaultAvatarAtIndex(1)); 368 EXPECT_TRUE(GetCache()->ProfileIsUsingDefaultAvatarAtIndex(1));
(...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after
407 EXPECT_FALSE(GetCache()->IsUsingGAIAPictureOfProfileAtIndex(1)); 413 EXPECT_FALSE(GetCache()->IsUsingGAIAPictureOfProfileAtIndex(1));
408 EXPECT_TRUE(gfx::test::IsEqual( 414 EXPECT_TRUE(gfx::test::IsEqual(
409 gaia_image, *GetCache()->GetGAIAPictureOfProfileAtIndex(1))); 415 gaia_image, *GetCache()->GetGAIAPictureOfProfileAtIndex(1)));
410 EXPECT_TRUE(gfx::test::IsEqual( 416 EXPECT_TRUE(gfx::test::IsEqual(
411 other_avatar_image, GetCache()->GetAvatarIconOfProfileAtIndex(1))); 417 other_avatar_image, GetCache()->GetAvatarIconOfProfileAtIndex(1)));
412 } 418 }
413 419
414 TEST_F(ProfileInfoCacheTest, PersistGAIAPicture) { 420 TEST_F(ProfileInfoCacheTest, PersistGAIAPicture) {
415 GetCache()->AddProfileToCache( 421 GetCache()->AddProfileToCache(
416 GetProfilePath("path_1"), ASCIIToUTF16("name_1"), 422 GetProfilePath("path_1"), ASCIIToUTF16("name_1"),
417 base::string16(), 0, std::string()); 423 std::string(), base::string16(), 0, std::string());
418 gfx::Image gaia_image(gfx::test::CreateImage()); 424 gfx::Image gaia_image(gfx::test::CreateImage());
419 425
420 GetCache()->SetGAIAPictureOfProfileAtIndex(0, &gaia_image); 426 GetCache()->SetGAIAPictureOfProfileAtIndex(0, &gaia_image);
421 427
422 // Make sure everything has completed, and the file has been written to disk. 428 // Make sure everything has completed, and the file has been written to disk.
423 base::RunLoop().RunUntilIdle(); 429 base::RunLoop().RunUntilIdle();
424 430
425 EXPECT_TRUE(gfx::test::IsEqual( 431 EXPECT_TRUE(gfx::test::IsEqual(
426 gaia_image, *GetCache()->GetGAIAPictureOfProfileAtIndex(0))); 432 gaia_image, *GetCache()->GetGAIAPictureOfProfileAtIndex(0)));
427 433
428 ResetCache(); 434 ResetCache();
429 // Try to get the GAIA picture. This should return NULL until the read from 435 // Try to get the GAIA picture. This should return NULL until the read from
430 // disk is done. 436 // disk is done.
431 EXPECT_EQ(NULL, GetCache()->GetGAIAPictureOfProfileAtIndex(0)); 437 EXPECT_EQ(NULL, GetCache()->GetGAIAPictureOfProfileAtIndex(0));
432 base::RunLoop().RunUntilIdle(); 438 base::RunLoop().RunUntilIdle();
433 439
434 EXPECT_TRUE(gfx::test::IsEqual( 440 EXPECT_TRUE(gfx::test::IsEqual(
435 gaia_image, *GetCache()->GetGAIAPictureOfProfileAtIndex(0))); 441 gaia_image, *GetCache()->GetGAIAPictureOfProfileAtIndex(0)));
436 } 442 }
437 443
438 TEST_F(ProfileInfoCacheTest, SetSupervisedUserId) { 444 TEST_F(ProfileInfoCacheTest, SetSupervisedUserId) {
439 GetCache()->AddProfileToCache( 445 GetCache()->AddProfileToCache(
440 GetProfilePath("test"), ASCIIToUTF16("Test"), 446 GetProfilePath("test"), ASCIIToUTF16("Test"),
441 base::string16(), 0, std::string()); 447 std::string(), base::string16(), 0, std::string());
442 EXPECT_FALSE(GetCache()->ProfileIsSupervisedAtIndex(0)); 448 EXPECT_FALSE(GetCache()->ProfileIsSupervisedAtIndex(0));
443 449
444 GetCache()->SetSupervisedUserIdOfProfileAtIndex(0, "TEST_ID"); 450 GetCache()->SetSupervisedUserIdOfProfileAtIndex(0, "TEST_ID");
445 EXPECT_TRUE(GetCache()->ProfileIsSupervisedAtIndex(0)); 451 EXPECT_TRUE(GetCache()->ProfileIsSupervisedAtIndex(0));
446 EXPECT_EQ("TEST_ID", GetCache()->GetSupervisedUserIdOfProfileAtIndex(0)); 452 EXPECT_EQ("TEST_ID", GetCache()->GetSupervisedUserIdOfProfileAtIndex(0));
447 453
448 ResetCache(); 454 ResetCache();
449 EXPECT_TRUE(GetCache()->ProfileIsSupervisedAtIndex(0)); 455 EXPECT_TRUE(GetCache()->ProfileIsSupervisedAtIndex(0));
450 456
451 GetCache()->SetSupervisedUserIdOfProfileAtIndex(0, std::string()); 457 GetCache()->SetSupervisedUserIdOfProfileAtIndex(0, std::string());
452 EXPECT_FALSE(GetCache()->ProfileIsSupervisedAtIndex(0)); 458 EXPECT_FALSE(GetCache()->ProfileIsSupervisedAtIndex(0));
453 EXPECT_EQ("", GetCache()->GetSupervisedUserIdOfProfileAtIndex(0)); 459 EXPECT_EQ("", GetCache()->GetSupervisedUserIdOfProfileAtIndex(0));
454 } 460 }
455 461
456 TEST_F(ProfileInfoCacheTest, EmptyGAIAInfo) { 462 TEST_F(ProfileInfoCacheTest, EmptyGAIAInfo) {
457 base::string16 profile_name = ASCIIToUTF16("name_1"); 463 base::string16 profile_name = ASCIIToUTF16("name_1");
458 int id = profiles::GetDefaultAvatarIconResourceIDAtIndex(0); 464 int id = profiles::GetDefaultAvatarIconResourceIDAtIndex(0);
459 const gfx::Image& profile_image( 465 const gfx::Image& profile_image(
460 ResourceBundle::GetSharedInstance().GetImageNamed(id)); 466 ResourceBundle::GetSharedInstance().GetImageNamed(id));
461 467
462 GetCache()->AddProfileToCache( 468 GetCache()->AddProfileToCache(
463 GetProfilePath("path_1"), profile_name, base::string16(), 0, 469 GetProfilePath("path_1"), profile_name, std::string(), base::string16(),
464 std::string()); 470 0, std::string());
465 471
466 // Set empty GAIA info. 472 // Set empty GAIA info.
467 GetCache()->SetGAIANameOfProfileAtIndex(0, base::string16()); 473 GetCache()->SetGAIANameOfProfileAtIndex(0, base::string16());
468 GetCache()->SetGAIAPictureOfProfileAtIndex(0, NULL); 474 GetCache()->SetGAIAPictureOfProfileAtIndex(0, NULL);
469 GetCache()->SetIsUsingGAIAPictureOfProfileAtIndex(0, true); 475 GetCache()->SetIsUsingGAIAPictureOfProfileAtIndex(0, true);
470 476
471 // Verify that the profile name and picture are not empty. 477 // Verify that the profile name and picture are not empty.
472 EXPECT_EQ(profile_name, GetCache()->GetNameOfProfileAtIndex(0)); 478 EXPECT_EQ(profile_name, GetCache()->GetNameOfProfileAtIndex(0));
473 EXPECT_TRUE(gfx::test::IsEqual( 479 EXPECT_TRUE(gfx::test::IsEqual(
474 profile_image, GetCache()->GetAvatarIconOfProfileAtIndex(0))); 480 profile_image, GetCache()->GetAvatarIconOfProfileAtIndex(0)));
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after
506 { "path.test0", "name_0" }, 512 { "path.test0", "name_0" },
507 { "path_test1", "name_1" }, 513 { "path_test1", "name_1" },
508 { "path.test2", "name_2" }, 514 { "path.test2", "name_2" },
509 { "path_test3", "name_3" }, 515 { "path_test3", "name_3" },
510 }; 516 };
511 517
512 for (size_t i = 0; i < arraysize(kTestCases); ++i) { 518 for (size_t i = 0; i < arraysize(kTestCases); ++i) {
513 base::FilePath profile_path = GetProfilePath(kTestCases[i].profile_path); 519 base::FilePath profile_path = GetProfilePath(kTestCases[i].profile_path);
514 base::string16 profile_name = ASCIIToUTF16(kTestCases[i].profile_name); 520 base::string16 profile_name = ASCIIToUTF16(kTestCases[i].profile_name);
515 521
516 GetCache()->AddProfileToCache(profile_path, profile_name, base::string16(), 522 GetCache()->AddProfileToCache(profile_path, profile_name, std::string(),
517 i, ""); 523 base::string16(), i, "");
518 524
519 EXPECT_EQ(profile_path, GetCache()->GetPathOfProfileAtIndex(i)); 525 EXPECT_EQ(profile_path, GetCache()->GetPathOfProfileAtIndex(i));
520 EXPECT_EQ(profile_name, GetCache()->GetNameOfProfileAtIndex(i)); 526 EXPECT_EQ(profile_name, GetCache()->GetNameOfProfileAtIndex(i));
521 } 527 }
522 528
523 ASSERT_EQ(4U, GetCache()->GetNumberOfProfiles()); 529 ASSERT_EQ(4U, GetCache()->GetNumberOfProfiles());
524 530
525 // Check that the profiles can be extracted from the local state. 531 // Check that the profiles can be extracted from the local state.
526 std::vector<base::string16> names; 532 std::vector<base::string16> names;
527 PrefService* local_state = g_browser_process->local_state(); 533 PrefService* local_state = g_browser_process->local_state();
(...skipping 24 matching lines...) Expand all
552 558
553 // // Make sure there are no avatars already on disk. 559 // // Make sure there are no avatars already on disk.
554 const size_t kIconIndex = 0; 560 const size_t kIconIndex = 0;
555 base::FilePath icon_path = 561 base::FilePath icon_path =
556 profiles::GetPathOfHighResAvatarAtIndex(kIconIndex); 562 profiles::GetPathOfHighResAvatarAtIndex(kIconIndex);
557 EXPECT_FALSE(base::PathExists(icon_path)); 563 EXPECT_FALSE(base::PathExists(icon_path));
558 564
559 EXPECT_EQ(0U, profile_info_cache.GetNumberOfProfiles()); 565 EXPECT_EQ(0U, profile_info_cache.GetNumberOfProfiles());
560 base::FilePath path_1 = GetProfilePath("path_1"); 566 base::FilePath path_1 = GetProfilePath("path_1");
561 profile_info_cache.AddProfileToCache(path_1, ASCIIToUTF16("name_1"), 567 profile_info_cache.AddProfileToCache(path_1, ASCIIToUTF16("name_1"),
562 base::string16(), kIconIndex, std::string()); 568 std::string(), base::string16(), kIconIndex, std::string());
563 EXPECT_EQ(1U, profile_info_cache.GetNumberOfProfiles()); 569 EXPECT_EQ(1U, profile_info_cache.GetNumberOfProfiles());
564 base::RunLoop().RunUntilIdle(); 570 base::RunLoop().RunUntilIdle();
565 571
566 // We haven't downloaded any high-res avatars yet. 572 // We haven't downloaded any high-res avatars yet.
567 EXPECT_EQ(0U, profile_info_cache.cached_avatar_images_.size()); 573 EXPECT_EQ(0U, profile_info_cache.cached_avatar_images_.size());
568 574
569 // After adding a new profile, the download of high-res avatar will be 575 // After adding a new profile, the download of high-res avatar will be
570 // triggered if the flag kNewAvatarMenu has been set. But the downloader 576 // triggered if the flag kNewAvatarMenu has been set. But the downloader
571 // won't ever call OnFetchComplete in the test. 577 // won't ever call OnFetchComplete in the test.
572 EXPECT_EQ(1U, profile_info_cache.avatar_images_downloads_in_progress_.size()); 578 EXPECT_EQ(1U, profile_info_cache.avatar_images_downloads_in_progress_.size());
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after
608 EXPECT_FALSE(base::PathExists(icon_path)); 614 EXPECT_FALSE(base::PathExists(icon_path));
609 } 615 }
610 616
611 TEST_F(ProfileInfoCacheTest, MigrateLegacyProfileNamesWithNewAvatarMenu) { 617 TEST_F(ProfileInfoCacheTest, MigrateLegacyProfileNamesWithNewAvatarMenu) {
612 switches::EnableNewAvatarMenuForTesting( 618 switches::EnableNewAvatarMenuForTesting(
613 base::CommandLine::ForCurrentProcess()); 619 base::CommandLine::ForCurrentProcess());
614 EXPECT_EQ(0U, GetCache()->GetNumberOfProfiles()); 620 EXPECT_EQ(0U, GetCache()->GetNumberOfProfiles());
615 621
616 base::FilePath path_1 = GetProfilePath("path_1"); 622 base::FilePath path_1 = GetProfilePath("path_1");
617 GetCache()->AddProfileToCache(path_1, ASCIIToUTF16("Default Profile"), 623 GetCache()->AddProfileToCache(path_1, ASCIIToUTF16("Default Profile"),
618 base::string16(), 0, std::string()); 624 std::string(), base::string16(), 0,
625 std::string());
619 base::FilePath path_2 = GetProfilePath("path_2"); 626 base::FilePath path_2 = GetProfilePath("path_2");
620 GetCache()->AddProfileToCache(path_2, ASCIIToUTF16("First user"), 627 GetCache()->AddProfileToCache(path_2, ASCIIToUTF16("First user"),
621 base::string16(), 1, std::string()); 628 std::string(), base::string16(), 1,
629 std::string());
622 base::string16 name_3 = ASCIIToUTF16("Lemonade"); 630 base::string16 name_3 = ASCIIToUTF16("Lemonade");
623 base::FilePath path_3 = GetProfilePath("path_3"); 631 base::FilePath path_3 = GetProfilePath("path_3");
624 GetCache()->AddProfileToCache(path_3, name_3, 632 GetCache()->AddProfileToCache(path_3, name_3,
625 base::string16(), 2, std::string()); 633 std::string(), base::string16(), 2,
634 std::string());
626 base::string16 name_4 = ASCIIToUTF16("Batman"); 635 base::string16 name_4 = ASCIIToUTF16("Batman");
627 base::FilePath path_4 = GetProfilePath("path_4"); 636 base::FilePath path_4 = GetProfilePath("path_4");
628 GetCache()->AddProfileToCache(path_4, name_4, 637 GetCache()->AddProfileToCache(path_4, name_4,
629 base::string16(), 3, std::string()); 638 std::string(), base::string16(), 3,
639 std::string());
630 base::string16 name_5 = ASCIIToUTF16("Person 2"); 640 base::string16 name_5 = ASCIIToUTF16("Person 2");
631 base::FilePath path_5 = GetProfilePath("path_5"); 641 base::FilePath path_5 = GetProfilePath("path_5");
632 GetCache()->AddProfileToCache(path_5, name_5, 642 GetCache()->AddProfileToCache(path_5, name_5,
633 base::string16(), 2, std::string()); 643 std::string(), base::string16(), 2,
644 std::string());
634 645
635 EXPECT_EQ(5U, GetCache()->GetNumberOfProfiles()); 646 EXPECT_EQ(5U, GetCache()->GetNumberOfProfiles());
636 647
637 648
638 ResetCache(); 649 ResetCache();
639 650
640 // Legacy profile names like "Default Profile" and "First user" should be 651 // Legacy profile names like "Default Profile" and "First user" should be
641 // migrated to "Person %n" type names. 652 // migrated to "Person %n" type names.
642 EXPECT_EQ(ASCIIToUTF16("Person 1"), GetCache()->GetNameOfProfileAtIndex( 653 EXPECT_EQ(ASCIIToUTF16("Person 1"), GetCache()->GetNameOfProfileAtIndex(
643 GetCache()->GetIndexOfProfileWithPath(path_1))); 654 GetCache()->GetIndexOfProfileWithPath(path_1)));
(...skipping 14 matching lines...) Expand all
658 TEST_F(ProfileInfoCacheTest, 669 TEST_F(ProfileInfoCacheTest,
659 DontMigrateLegacyProfileNamesWithoutNewAvatarMenu) { 670 DontMigrateLegacyProfileNamesWithoutNewAvatarMenu) {
660 switches::DisableNewAvatarMenuForTesting( 671 switches::DisableNewAvatarMenuForTesting(
661 base::CommandLine::ForCurrentProcess()); 672 base::CommandLine::ForCurrentProcess());
662 673
663 EXPECT_EQ(0U, GetCache()->GetNumberOfProfiles()); 674 EXPECT_EQ(0U, GetCache()->GetNumberOfProfiles());
664 675
665 base::string16 name_1 = ASCIIToUTF16("Default Profile"); 676 base::string16 name_1 = ASCIIToUTF16("Default Profile");
666 base::FilePath path_1 = GetProfilePath("path_1"); 677 base::FilePath path_1 = GetProfilePath("path_1");
667 GetCache()->AddProfileToCache(path_1, name_1, 678 GetCache()->AddProfileToCache(path_1, name_1,
668 base::string16(), 0, std::string()); 679 std::string(), base::string16(), 0,
680 std::string());
669 base::string16 name_2 = ASCIIToUTF16("First user"); 681 base::string16 name_2 = ASCIIToUTF16("First user");
670 base::FilePath path_2 = GetProfilePath("path_2"); 682 base::FilePath path_2 = GetProfilePath("path_2");
671 GetCache()->AddProfileToCache(path_2, name_2, 683 GetCache()->AddProfileToCache(path_2, name_2,
672 base::string16(), 1, std::string()); 684 std::string(), base::string16(), 1,
685 std::string());
673 base::string16 name_3 = ASCIIToUTF16("Lemonade"); 686 base::string16 name_3 = ASCIIToUTF16("Lemonade");
674 base::FilePath path_3 = GetProfilePath("path_3"); 687 base::FilePath path_3 = GetProfilePath("path_3");
675 GetCache()->AddProfileToCache(path_3, name_3, 688 GetCache()->AddProfileToCache(path_3, name_3,
676 base::string16(), 2, std::string()); 689 std::string(), base::string16(), 2,
690 std::string());
677 base::string16 name_4 = ASCIIToUTF16("Batman"); 691 base::string16 name_4 = ASCIIToUTF16("Batman");
678 base::FilePath path_4 = GetProfilePath("path_4"); 692 base::FilePath path_4 = GetProfilePath("path_4");
679 GetCache()->AddProfileToCache(path_4, name_4, 693 GetCache()->AddProfileToCache(path_4, name_4,
680 base::string16(), 3, std::string()); 694 std::string(), base::string16(), 3,
695 std::string());
681 EXPECT_EQ(4U, GetCache()->GetNumberOfProfiles()); 696 EXPECT_EQ(4U, GetCache()->GetNumberOfProfiles());
682 697
683 ResetCache(); 698 ResetCache();
684 699
685 // Profile names should have been preserved. 700 // Profile names should have been preserved.
686 EXPECT_EQ(name_1, GetCache()->GetNameOfProfileAtIndex( 701 EXPECT_EQ(name_1, GetCache()->GetNameOfProfileAtIndex(
687 GetCache()->GetIndexOfProfileWithPath(path_1))); 702 GetCache()->GetIndexOfProfileWithPath(path_1)));
688 EXPECT_EQ(name_2, GetCache()->GetNameOfProfileAtIndex( 703 EXPECT_EQ(name_2, GetCache()->GetNameOfProfileAtIndex(
689 GetCache()->GetIndexOfProfileWithPath(path_2))); 704 GetCache()->GetIndexOfProfileWithPath(path_2)));
690 EXPECT_EQ(name_3, GetCache()->GetNameOfProfileAtIndex( 705 EXPECT_EQ(name_3, GetCache()->GetNameOfProfileAtIndex(
691 GetCache()->GetIndexOfProfileWithPath(path_3))); 706 GetCache()->GetIndexOfProfileWithPath(path_3)));
692 EXPECT_EQ(name_4, GetCache()->GetNameOfProfileAtIndex( 707 EXPECT_EQ(name_4, GetCache()->GetNameOfProfileAtIndex(
693 GetCache()->GetIndexOfProfileWithPath(path_4))); 708 GetCache()->GetIndexOfProfileWithPath(path_4)));
694 } 709 }
OLDNEW
« no previous file with comments | « chrome/browser/profiles/profile_info_cache_observer.h ('k') | chrome/browser/profiles/profile_info_interface.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698