| OLD | NEW |
| 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 <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/strings/string_number_conversions.h" | 9 #include "base/strings/string_number_conversions.h" |
| 10 #include "base/strings/string_util.h" | 10 #include "base/strings/string_util.h" |
| (...skipping 290 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 301 EXPECT_EQ(expected.date_created, actual.date_created); | 301 EXPECT_EQ(expected.date_created, actual.date_created); |
| 302 EXPECT_EQ(expected.blacklisted_by_user, actual.blacklisted_by_user); | 302 EXPECT_EQ(expected.blacklisted_by_user, actual.blacklisted_by_user); |
| 303 EXPECT_EQ(expected.type, actual.type); | 303 EXPECT_EQ(expected.type, actual.type); |
| 304 EXPECT_EQ(expected.times_used, actual.times_used); | 304 EXPECT_EQ(expected.times_used, actual.times_used); |
| 305 EXPECT_EQ(expected.scheme, actual.scheme); | 305 EXPECT_EQ(expected.scheme, actual.scheme); |
| 306 EXPECT_EQ(expected.date_synced, actual.date_synced); | 306 EXPECT_EQ(expected.date_synced, actual.date_synced); |
| 307 EXPECT_EQ(expected.display_name, actual.display_name); | 307 EXPECT_EQ(expected.display_name, actual.display_name); |
| 308 EXPECT_EQ(expected.avatar_url, actual.avatar_url); | 308 EXPECT_EQ(expected.avatar_url, actual.avatar_url); |
| 309 EXPECT_EQ(expected.federation_url, actual.federation_url); | 309 EXPECT_EQ(expected.federation_url, actual.federation_url); |
| 310 EXPECT_EQ(expected.skip_zero_click, actual.skip_zero_click); | 310 EXPECT_EQ(expected.skip_zero_click, actual.skip_zero_click); |
| 311 EXPECT_EQ(expected.generation_upload_status, |
| 312 actual.generation_upload_status); |
| 311 } | 313 } |
| 312 } | 314 } |
| 313 | 315 |
| 314 void CheckPasswordChangesWithResult(const PasswordStoreChangeList* expected, | 316 void CheckPasswordChangesWithResult(const PasswordStoreChangeList* expected, |
| 315 const PasswordStoreChangeList* actual, | 317 const PasswordStoreChangeList* actual, |
| 316 bool result) { | 318 bool result) { |
| 317 EXPECT_TRUE(result); | 319 EXPECT_TRUE(result); |
| 318 CheckPasswordChanges(*expected, *actual); | 320 CheckPasswordChanges(*expected, *actual); |
| 319 } | 321 } |
| 320 | 322 |
| (...skipping 28 matching lines...) Expand all Loading... |
| 349 form_google_.password_value = UTF8ToUTF16("seekrit"); | 351 form_google_.password_value = UTF8ToUTF16("seekrit"); |
| 350 form_google_.submit_element = UTF8ToUTF16("submit"); | 352 form_google_.submit_element = UTF8ToUTF16("submit"); |
| 351 form_google_.signon_realm = "http://www.google.com/"; | 353 form_google_.signon_realm = "http://www.google.com/"; |
| 352 form_google_.type = PasswordForm::TYPE_GENERATED; | 354 form_google_.type = PasswordForm::TYPE_GENERATED; |
| 353 form_google_.date_created = base::Time::Now(); | 355 form_google_.date_created = base::Time::Now(); |
| 354 form_google_.date_synced = base::Time::Now(); | 356 form_google_.date_synced = base::Time::Now(); |
| 355 form_google_.display_name = UTF8ToUTF16("Joe Schmoe"); | 357 form_google_.display_name = UTF8ToUTF16("Joe Schmoe"); |
| 356 form_google_.avatar_url = GURL("http://www.google.com/avatar"); | 358 form_google_.avatar_url = GURL("http://www.google.com/avatar"); |
| 357 form_google_.federation_url = GURL("http://www.google.com/federation_url"); | 359 form_google_.federation_url = GURL("http://www.google.com/federation_url"); |
| 358 form_google_.skip_zero_click = true; | 360 form_google_.skip_zero_click = true; |
| 361 form_google_.generation_upload_status = PasswordForm::POSITIVE_SIGNAL_SENT; |
| 359 | 362 |
| 360 form_facebook_.origin = GURL("http://www.facebook.com/"); | 363 form_facebook_.origin = GURL("http://www.facebook.com/"); |
| 361 form_facebook_.action = GURL("http://www.facebook.com/login"); | 364 form_facebook_.action = GURL("http://www.facebook.com/login"); |
| 362 form_facebook_.username_element = UTF8ToUTF16("user"); | 365 form_facebook_.username_element = UTF8ToUTF16("user"); |
| 363 form_facebook_.username_value = UTF8ToUTF16("a"); | 366 form_facebook_.username_value = UTF8ToUTF16("a"); |
| 364 form_facebook_.password_element = UTF8ToUTF16("password"); | 367 form_facebook_.password_element = UTF8ToUTF16("password"); |
| 365 form_facebook_.password_value = UTF8ToUTF16("b"); | 368 form_facebook_.password_value = UTF8ToUTF16("b"); |
| 366 form_facebook_.submit_element = UTF8ToUTF16("submit"); | 369 form_facebook_.submit_element = UTF8ToUTF16("submit"); |
| 367 form_facebook_.signon_realm = "http://www.facebook.com/"; | 370 form_facebook_.signon_realm = "http://www.facebook.com/"; |
| 368 form_facebook_.date_created = base::Time::Now(); | 371 form_facebook_.date_created = base::Time::Now(); |
| 369 form_facebook_.date_synced = base::Time::Now(); | 372 form_facebook_.date_synced = base::Time::Now(); |
| 370 form_facebook_.display_name = UTF8ToUTF16("Joe Schmoe"); | 373 form_facebook_.display_name = UTF8ToUTF16("Joe Schmoe"); |
| 371 form_facebook_.avatar_url = GURL("http://www.facebook.com/avatar"); | 374 form_facebook_.avatar_url = GURL("http://www.facebook.com/avatar"); |
| 372 form_facebook_.federation_url = GURL("http://www.facebook.com/federation"); | 375 form_facebook_.federation_url = GURL("http://www.facebook.com/federation"); |
| 373 form_facebook_.skip_zero_click = true; | 376 form_facebook_.skip_zero_click = true; |
| 377 form_facebook_.generation_upload_status = PasswordForm::NO_SIGNAL_SENT; |
| 374 | 378 |
| 375 form_isc_.origin = GURL("http://www.isc.org/"); | 379 form_isc_.origin = GURL("http://www.isc.org/"); |
| 376 form_isc_.action = GURL("http://www.isc.org/auth"); | 380 form_isc_.action = GURL("http://www.isc.org/auth"); |
| 377 form_isc_.username_element = UTF8ToUTF16("id"); | 381 form_isc_.username_element = UTF8ToUTF16("id"); |
| 378 form_isc_.username_value = UTF8ToUTF16("janedoe"); | 382 form_isc_.username_value = UTF8ToUTF16("janedoe"); |
| 379 form_isc_.password_element = UTF8ToUTF16("passwd"); | 383 form_isc_.password_element = UTF8ToUTF16("passwd"); |
| 380 form_isc_.password_value = UTF8ToUTF16("ihazabukkit"); | 384 form_isc_.password_value = UTF8ToUTF16("ihazabukkit"); |
| 381 form_isc_.submit_element = UTF8ToUTF16("login"); | 385 form_isc_.submit_element = UTF8ToUTF16("login"); |
| 382 form_isc_.signon_realm = "http://www.isc.org/"; | 386 form_isc_.signon_realm = "http://www.isc.org/"; |
| 383 form_isc_.date_created = base::Time::Now(); | 387 form_isc_.date_created = base::Time::Now(); |
| (...skipping 53 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 437 } | 441 } |
| 438 } | 442 } |
| 439 | 443 |
| 440 void CheckMockKeyringItem(const MockKeyringItem* item, | 444 void CheckMockKeyringItem(const MockKeyringItem* item, |
| 441 const PasswordForm& form, | 445 const PasswordForm& form, |
| 442 const std::string& app_string) { | 446 const std::string& app_string) { |
| 443 // We always add items to the login keyring. | 447 // We always add items to the login keyring. |
| 444 EXPECT_EQ("login", item->keyring); | 448 EXPECT_EQ("login", item->keyring); |
| 445 EXPECT_EQ(form.origin.spec(), item->display_name); | 449 EXPECT_EQ(form.origin.spec(), item->display_name); |
| 446 EXPECT_EQ(UTF16ToUTF8(form.password_value), item->password); | 450 EXPECT_EQ(UTF16ToUTF8(form.password_value), item->password); |
| 447 EXPECT_EQ(20u, item->attributes.size()); | 451 EXPECT_EQ(21u, item->attributes.size()); |
| 448 CheckStringAttribute(item, "origin_url", form.origin.spec()); | 452 CheckStringAttribute(item, "origin_url", form.origin.spec()); |
| 449 CheckStringAttribute(item, "action_url", form.action.spec()); | 453 CheckStringAttribute(item, "action_url", form.action.spec()); |
| 450 CheckStringAttribute(item, "username_element", | 454 CheckStringAttribute(item, "username_element", |
| 451 UTF16ToUTF8(form.username_element)); | 455 UTF16ToUTF8(form.username_element)); |
| 452 CheckStringAttribute(item, "username_value", | 456 CheckStringAttribute(item, "username_value", |
| 453 UTF16ToUTF8(form.username_value)); | 457 UTF16ToUTF8(form.username_value)); |
| 454 CheckStringAttribute(item, "password_element", | 458 CheckStringAttribute(item, "password_element", |
| 455 UTF16ToUTF8(form.password_element)); | 459 UTF16ToUTF8(form.password_element)); |
| 456 CheckStringAttribute(item, "submit_element", | 460 CheckStringAttribute(item, "submit_element", |
| 457 UTF16ToUTF8(form.submit_element)); | 461 UTF16ToUTF8(form.submit_element)); |
| 458 CheckStringAttribute(item, "signon_realm", form.signon_realm); | 462 CheckStringAttribute(item, "signon_realm", form.signon_realm); |
| 459 CheckUint32Attribute(item, "ssl_valid", form.ssl_valid); | 463 CheckUint32Attribute(item, "ssl_valid", form.ssl_valid); |
| 460 CheckUint32Attribute(item, "preferred", form.preferred); | 464 CheckUint32Attribute(item, "preferred", form.preferred); |
| 461 // We don't check the date created. It varies. | 465 // We don't check the date created. It varies. |
| 462 CheckUint32Attribute(item, "blacklisted_by_user", form.blacklisted_by_user); | 466 CheckUint32Attribute(item, "blacklisted_by_user", form.blacklisted_by_user); |
| 463 CheckUint32Attribute(item, "type", form.type); | 467 CheckUint32Attribute(item, "type", form.type); |
| 464 CheckUint32Attribute(item, "times_used", form.times_used); | 468 CheckUint32Attribute(item, "times_used", form.times_used); |
| 465 CheckUint32Attribute(item, "scheme", form.scheme); | 469 CheckUint32Attribute(item, "scheme", form.scheme); |
| 466 CheckStringAttribute(item, "date_synced", base::Int64ToString( | 470 CheckStringAttribute(item, "date_synced", base::Int64ToString( |
| 467 form.date_synced.ToInternalValue())); | 471 form.date_synced.ToInternalValue())); |
| 468 CheckStringAttribute(item, "display_name", UTF16ToUTF8(form.display_name)); | 472 CheckStringAttribute(item, "display_name", UTF16ToUTF8(form.display_name)); |
| 469 CheckStringAttribute(item, "avatar_url", form.avatar_url.spec()); | 473 CheckStringAttribute(item, "avatar_url", form.avatar_url.spec()); |
| 470 CheckStringAttribute(item, "federation_url", form.federation_url.spec()); | 474 CheckStringAttribute(item, "federation_url", form.federation_url.spec()); |
| 471 CheckUint32Attribute(item, "skip_zero_click", form.skip_zero_click); | 475 CheckUint32Attribute(item, "skip_zero_click", form.skip_zero_click); |
| 476 CheckUint32Attribute(item, "generation_upload_status", |
| 477 form.generation_upload_status); |
| 472 CheckStringAttribute(item, "application", app_string); | 478 CheckStringAttribute(item, "application", app_string); |
| 473 } | 479 } |
| 474 | 480 |
| 475 // Saves |credentials| and then gets logins matching |url| and |scheme|. | 481 // Saves |credentials| and then gets logins matching |url| and |scheme|. |
| 476 // Returns true when something is found, and in such case copies the result to | 482 // Returns true when something is found, and in such case copies the result to |
| 477 // |result| when |result| is not NULL. (Note that there can be max. 1 result, | 483 // |result| when |result| is not NULL. (Note that there can be max. 1 result, |
| 478 // derived from |credentials|.) | 484 // derived from |credentials|.) |
| 479 bool CheckCredentialAvailability(const PasswordForm& credentials, | 485 bool CheckCredentialAvailability(const PasswordForm& credentials, |
| 480 const GURL& url, | 486 const GURL& url, |
| 481 const PasswordForm::Scheme& scheme, | 487 const PasswordForm::Scheme& scheme, |
| (...skipping 580 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1062 | 1068 |
| 1063 TEST_F(NativeBackendGnomeTest, RemoveLoginsCreatedBetween) { | 1069 TEST_F(NativeBackendGnomeTest, RemoveLoginsCreatedBetween) { |
| 1064 CheckRemoveLoginsBetween(CREATED); | 1070 CheckRemoveLoginsBetween(CREATED); |
| 1065 } | 1071 } |
| 1066 | 1072 |
| 1067 TEST_F(NativeBackendGnomeTest, RemoveLoginsSyncedBetween) { | 1073 TEST_F(NativeBackendGnomeTest, RemoveLoginsSyncedBetween) { |
| 1068 CheckRemoveLoginsBetween(SYNCED); | 1074 CheckRemoveLoginsBetween(SYNCED); |
| 1069 } | 1075 } |
| 1070 | 1076 |
| 1071 // TODO(mdm): add more basic tests here at some point. | 1077 // TODO(mdm): add more basic tests here at some point. |
| OLD | NEW |