OLD | NEW |
1 // Copyright (c) 2015 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2015 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 <stdarg.h> | 5 #include <stdarg.h> |
6 | 6 |
7 #include "base/basictypes.h" | 7 #include "base/basictypes.h" |
8 #include "base/prefs/pref_service.h" | 8 #include "base/prefs/pref_service.h" |
9 #include "base/stl_util.h" | 9 #include "base/stl_util.h" |
10 #include "base/strings/string_number_conversions.h" | 10 #include "base/strings/string_number_conversions.h" |
(...skipping 228 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
239 EXPECT_EQ(expected.date_created, actual.date_created); | 239 EXPECT_EQ(expected.date_created, actual.date_created); |
240 EXPECT_EQ(expected.blacklisted_by_user, actual.blacklisted_by_user); | 240 EXPECT_EQ(expected.blacklisted_by_user, actual.blacklisted_by_user); |
241 EXPECT_EQ(expected.type, actual.type); | 241 EXPECT_EQ(expected.type, actual.type); |
242 EXPECT_EQ(expected.times_used, actual.times_used); | 242 EXPECT_EQ(expected.times_used, actual.times_used); |
243 EXPECT_EQ(expected.scheme, actual.scheme); | 243 EXPECT_EQ(expected.scheme, actual.scheme); |
244 EXPECT_EQ(expected.date_synced, actual.date_synced); | 244 EXPECT_EQ(expected.date_synced, actual.date_synced); |
245 EXPECT_EQ(expected.display_name, actual.display_name); | 245 EXPECT_EQ(expected.display_name, actual.display_name); |
246 EXPECT_EQ(expected.avatar_url, actual.avatar_url); | 246 EXPECT_EQ(expected.avatar_url, actual.avatar_url); |
247 EXPECT_EQ(expected.federation_url, actual.federation_url); | 247 EXPECT_EQ(expected.federation_url, actual.federation_url); |
248 EXPECT_EQ(expected.skip_zero_click, actual.skip_zero_click); | 248 EXPECT_EQ(expected.skip_zero_click, actual.skip_zero_click); |
| 249 EXPECT_EQ(expected.generation_upload_status, |
| 250 actual.generation_upload_status); |
249 } | 251 } |
250 } | 252 } |
251 | 253 |
252 void CheckPasswordChangesWithResult(const PasswordStoreChangeList* expected, | 254 void CheckPasswordChangesWithResult(const PasswordStoreChangeList* expected, |
253 const PasswordStoreChangeList* actual, | 255 const PasswordStoreChangeList* actual, |
254 bool result) { | 256 bool result) { |
255 EXPECT_TRUE(result); | 257 EXPECT_TRUE(result); |
256 CheckPasswordChanges(*expected, *actual); | 258 CheckPasswordChanges(*expected, *actual); |
257 } | 259 } |
258 | 260 |
(...skipping 23 matching lines...) Expand all Loading... |
282 form_google_.password_value = UTF8ToUTF16("seekrit"); | 284 form_google_.password_value = UTF8ToUTF16("seekrit"); |
283 form_google_.submit_element = UTF8ToUTF16("submit"); | 285 form_google_.submit_element = UTF8ToUTF16("submit"); |
284 form_google_.signon_realm = "http://www.google.com/"; | 286 form_google_.signon_realm = "http://www.google.com/"; |
285 form_google_.type = PasswordForm::TYPE_GENERATED; | 287 form_google_.type = PasswordForm::TYPE_GENERATED; |
286 form_google_.date_created = base::Time::Now(); | 288 form_google_.date_created = base::Time::Now(); |
287 form_google_.date_synced = base::Time::Now(); | 289 form_google_.date_synced = base::Time::Now(); |
288 form_google_.display_name = UTF8ToUTF16("Joe Schmoe"); | 290 form_google_.display_name = UTF8ToUTF16("Joe Schmoe"); |
289 form_google_.avatar_url = GURL("http://www.google.com/avatar"); | 291 form_google_.avatar_url = GURL("http://www.google.com/avatar"); |
290 form_google_.federation_url = GURL("http://www.google.com/federation_url"); | 292 form_google_.federation_url = GURL("http://www.google.com/federation_url"); |
291 form_google_.skip_zero_click = true; | 293 form_google_.skip_zero_click = true; |
| 294 form_google_.generation_upload_status = PasswordForm::POSITIVE_SIGNAL_SENT; |
292 | 295 |
293 form_facebook_.origin = GURL("http://www.facebook.com/"); | 296 form_facebook_.origin = GURL("http://www.facebook.com/"); |
294 form_facebook_.action = GURL("http://www.facebook.com/login"); | 297 form_facebook_.action = GURL("http://www.facebook.com/login"); |
295 form_facebook_.username_element = UTF8ToUTF16("user"); | 298 form_facebook_.username_element = UTF8ToUTF16("user"); |
296 form_facebook_.username_value = UTF8ToUTF16("a"); | 299 form_facebook_.username_value = UTF8ToUTF16("a"); |
297 form_facebook_.password_element = UTF8ToUTF16("password"); | 300 form_facebook_.password_element = UTF8ToUTF16("password"); |
298 form_facebook_.password_value = UTF8ToUTF16("b"); | 301 form_facebook_.password_value = UTF8ToUTF16("b"); |
299 form_facebook_.submit_element = UTF8ToUTF16("submit"); | 302 form_facebook_.submit_element = UTF8ToUTF16("submit"); |
300 form_facebook_.signon_realm = "http://www.facebook.com/"; | 303 form_facebook_.signon_realm = "http://www.facebook.com/"; |
301 form_facebook_.date_created = base::Time::Now(); | 304 form_facebook_.date_created = base::Time::Now(); |
302 form_facebook_.date_synced = base::Time::Now(); | 305 form_facebook_.date_synced = base::Time::Now(); |
303 form_facebook_.display_name = UTF8ToUTF16("Joe Schmoe"); | 306 form_facebook_.display_name = UTF8ToUTF16("Joe Schmoe"); |
304 form_facebook_.avatar_url = GURL("http://www.facebook.com/avatar"); | 307 form_facebook_.avatar_url = GURL("http://www.facebook.com/avatar"); |
305 form_facebook_.federation_url = GURL("http://www.facebook.com/federation"); | 308 form_facebook_.federation_url = GURL("http://www.facebook.com/federation"); |
306 form_facebook_.skip_zero_click = true; | 309 form_facebook_.skip_zero_click = true; |
| 310 form_facebook_.generation_upload_status = PasswordForm::NO_SIGNAL_SENT; |
307 | 311 |
308 form_isc_.origin = GURL("http://www.isc.org/"); | 312 form_isc_.origin = GURL("http://www.isc.org/"); |
309 form_isc_.action = GURL("http://www.isc.org/auth"); | 313 form_isc_.action = GURL("http://www.isc.org/auth"); |
310 form_isc_.username_element = UTF8ToUTF16("id"); | 314 form_isc_.username_element = UTF8ToUTF16("id"); |
311 form_isc_.username_value = UTF8ToUTF16("janedoe"); | 315 form_isc_.username_value = UTF8ToUTF16("janedoe"); |
312 form_isc_.password_element = UTF8ToUTF16("passwd"); | 316 form_isc_.password_element = UTF8ToUTF16("passwd"); |
313 form_isc_.password_value = UTF8ToUTF16("ihazabukkit"); | 317 form_isc_.password_value = UTF8ToUTF16("ihazabukkit"); |
314 form_isc_.submit_element = UTF8ToUTF16("login"); | 318 form_isc_.submit_element = UTF8ToUTF16("login"); |
315 form_isc_.signon_realm = "http://www.isc.org/"; | 319 form_isc_.signon_realm = "http://www.isc.org/"; |
316 form_isc_.date_created = base::Time::Now(); | 320 form_isc_.date_created = base::Time::Now(); |
(...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
355 EXPECT_TRUE(item_value) << " in attribute " << attribute; | 359 EXPECT_TRUE(item_value) << " in attribute " << attribute; |
356 if (item_value) { | 360 if (item_value) { |
357 EXPECT_EQ(value, static_cast<char*>(item_value)); | 361 EXPECT_EQ(value, static_cast<char*>(item_value)); |
358 } | 362 } |
359 } | 363 } |
360 | 364 |
361 void CheckMockSecretItem(const MockSecretItem* item, | 365 void CheckMockSecretItem(const MockSecretItem* item, |
362 const PasswordForm& form, | 366 const PasswordForm& form, |
363 const std::string& app_string) { | 367 const std::string& app_string) { |
364 EXPECT_EQ(UTF16ToUTF8(form.password_value), item->value->password); | 368 EXPECT_EQ(UTF16ToUTF8(form.password_value), item->value->password); |
365 EXPECT_EQ(20u, g_hash_table_size(item->attributes)); | 369 EXPECT_EQ(21u, g_hash_table_size(item->attributes)); |
366 CheckStringAttribute(item, "origin_url", form.origin.spec()); | 370 CheckStringAttribute(item, "origin_url", form.origin.spec()); |
367 CheckStringAttribute(item, "action_url", form.action.spec()); | 371 CheckStringAttribute(item, "action_url", form.action.spec()); |
368 CheckStringAttribute(item, "username_element", | 372 CheckStringAttribute(item, "username_element", |
369 UTF16ToUTF8(form.username_element)); | 373 UTF16ToUTF8(form.username_element)); |
370 CheckStringAttribute(item, "username_value", | 374 CheckStringAttribute(item, "username_value", |
371 UTF16ToUTF8(form.username_value)); | 375 UTF16ToUTF8(form.username_value)); |
372 CheckStringAttribute(item, "password_element", | 376 CheckStringAttribute(item, "password_element", |
373 UTF16ToUTF8(form.password_element)); | 377 UTF16ToUTF8(form.password_element)); |
374 CheckStringAttribute(item, "submit_element", | 378 CheckStringAttribute(item, "submit_element", |
375 UTF16ToUTF8(form.submit_element)); | 379 UTF16ToUTF8(form.submit_element)); |
376 CheckStringAttribute(item, "signon_realm", form.signon_realm); | 380 CheckStringAttribute(item, "signon_realm", form.signon_realm); |
377 CheckUint32Attribute(item, "ssl_valid", form.ssl_valid); | 381 CheckUint32Attribute(item, "ssl_valid", form.ssl_valid); |
378 CheckUint32Attribute(item, "preferred", form.preferred); | 382 CheckUint32Attribute(item, "preferred", form.preferred); |
379 // We don't check the date created. It varies. | 383 // We don't check the date created. It varies. |
380 CheckUint32Attribute(item, "blacklisted_by_user", form.blacklisted_by_user); | 384 CheckUint32Attribute(item, "blacklisted_by_user", form.blacklisted_by_user); |
381 CheckUint32Attribute(item, "type", form.type); | 385 CheckUint32Attribute(item, "type", form.type); |
382 CheckUint32Attribute(item, "times_used", form.times_used); | 386 CheckUint32Attribute(item, "times_used", form.times_used); |
383 CheckUint32Attribute(item, "scheme", form.scheme); | 387 CheckUint32Attribute(item, "scheme", form.scheme); |
384 CheckStringAttribute( | 388 CheckStringAttribute( |
385 item, "date_synced", | 389 item, "date_synced", |
386 base::Int64ToString(form.date_synced.ToInternalValue())); | 390 base::Int64ToString(form.date_synced.ToInternalValue())); |
387 CheckStringAttribute(item, "display_name", UTF16ToUTF8(form.display_name)); | 391 CheckStringAttribute(item, "display_name", UTF16ToUTF8(form.display_name)); |
388 CheckStringAttribute(item, "avatar_url", form.avatar_url.spec()); | 392 CheckStringAttribute(item, "avatar_url", form.avatar_url.spec()); |
389 CheckStringAttribute(item, "federation_url", form.federation_url.spec()); | 393 CheckStringAttribute(item, "federation_url", form.federation_url.spec()); |
390 CheckUint32Attribute(item, "skip_zero_click", form.skip_zero_click); | 394 CheckUint32Attribute(item, "skip_zero_click", form.skip_zero_click); |
| 395 CheckUint32Attribute(item, "generation_upload_status", |
| 396 form.generation_upload_status); |
391 CheckStringAttribute(item, "application", app_string); | 397 CheckStringAttribute(item, "application", app_string); |
392 } | 398 } |
393 | 399 |
394 // Saves |credentials| and then gets logins matching |url| and |scheme|. | 400 // Saves |credentials| and then gets logins matching |url| and |scheme|. |
395 // Returns true when something is found, and in such case copies the result to | 401 // Returns true when something is found, and in such case copies the result to |
396 // |result| when |result| is not nullptr. (Note that there can be max. 1 | 402 // |result| when |result| is not nullptr. (Note that there can be max. 1 |
397 // result derived from |credentials|.) | 403 // result derived from |credentials|.) |
398 bool CheckCredentialAvailability(const PasswordForm& credentials, | 404 bool CheckCredentialAvailability(const PasswordForm& credentials, |
399 const GURL& url, | 405 const GURL& url, |
400 const PasswordForm::Scheme& scheme, | 406 const PasswordForm::Scheme& scheme, |
(...skipping 432 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
833 | 839 |
834 ScopedVector<autofill::PasswordForm> form_list; | 840 ScopedVector<autofill::PasswordForm> form_list; |
835 backend.GetAutofillableLogins(&form_list); | 841 backend.GetAutofillableLogins(&form_list); |
836 | 842 |
837 EXPECT_EQ(1u, form_list.size()); | 843 EXPECT_EQ(1u, form_list.size()); |
838 EXPECT_EQ(GURL(""), form_list[0]->avatar_url); | 844 EXPECT_EQ(GURL(""), form_list[0]->avatar_url); |
839 EXPECT_FALSE(form_list[0]->ssl_valid); | 845 EXPECT_FALSE(form_list[0]->ssl_valid); |
840 } | 846 } |
841 | 847 |
842 // TODO(mdm): add more basic tests here at some point. | 848 // TODO(mdm): add more basic tests here at some point. |
OLD | NEW |