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

Side by Side Diff: chrome/browser/password_manager/password_store_x_unittest.cc

Issue 906973007: PasswordStore: Clean up expectations about rewriting vectors of forms (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Just rebased Created 5 years, 9 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 "base/basictypes.h" 5 #include "base/basictypes.h"
6 #include "base/bind.h" 6 #include "base/bind.h"
7 #include "base/bind_helpers.h" 7 #include "base/bind_helpers.h"
8 #include "base/files/file_util.h" 8 #include "base/files/file_util.h"
9 #include "base/files/scoped_temp_dir.h" 9 #include "base/files/scoped_temp_dir.h"
10 #include "base/prefs/pref_service.h" 10 #include "base/prefs/pref_service.h"
(...skipping 62 matching lines...) Expand 10 before | Expand all | Expand 10 after
73 return false; 73 return false;
74 } 74 }
75 75
76 bool RemoveLoginsSyncedBetween( 76 bool RemoveLoginsSyncedBetween(
77 base::Time delete_begin, 77 base::Time delete_begin,
78 base::Time delete_end, 78 base::Time delete_end,
79 password_manager::PasswordStoreChangeList* changes) override { 79 password_manager::PasswordStoreChangeList* changes) override {
80 return false; 80 return false;
81 } 81 }
82 82
83 // Use this as a landmine to check whether results of failed Get*Logins calls
84 // get ignored.
85 static ScopedVector<autofill::PasswordForm> CreateTrashForms() {
86 ScopedVector<autofill::PasswordForm> forms;
87 PasswordForm trash;
88 trash.username_element = base::ASCIIToUTF16("trash u. element");
89 trash.username_value = base::ASCIIToUTF16("trash u. value");
90 trash.password_element = base::ASCIIToUTF16("trash p. element");
91 trash.password_value = base::ASCIIToUTF16("trash p. value");
92 for (size_t i = 0; i < 3; ++i) {
93 trash.origin = GURL(base::StringPrintf("http://trash%zu.com", i));
94 forms.push_back(new PasswordForm(trash));
95 }
96 return forms.Pass();
97 }
98
83 bool GetLogins(const PasswordForm& form, 99 bool GetLogins(const PasswordForm& form,
84 ScopedVector<autofill::PasswordForm>* forms) override { 100 ScopedVector<autofill::PasswordForm>* forms) override {
101 *forms = CreateTrashForms();
85 return false; 102 return false;
86 } 103 }
87 104
88 bool GetAutofillableLogins( 105 bool GetAutofillableLogins(
89 ScopedVector<autofill::PasswordForm>* forms) override { 106 ScopedVector<autofill::PasswordForm>* forms) override {
107 *forms = CreateTrashForms();
90 return false; 108 return false;
91 } 109 }
92 bool GetBlacklistLogins( 110 bool GetBlacklistLogins(
93 ScopedVector<autofill::PasswordForm>* forms) override { 111 ScopedVector<autofill::PasswordForm>* forms) override {
112 *forms = CreateTrashForms();
94 return false; 113 return false;
95 } 114 }
96 }; 115 };
97 116
98 class MockBackend : public PasswordStoreX::NativeBackend { 117 class MockBackend : public PasswordStoreX::NativeBackend {
99 public: 118 public:
100 bool Init() override { return true; } 119 bool Init() override { return true; }
101 120
102 PasswordStoreChangeList AddLogin(const PasswordForm& form) override { 121 PasswordStoreChangeList AddLogin(const PasswordForm& form) override {
103 all_forms_.push_back(form); 122 all_forms_.push_back(form);
(...skipping 96 matching lines...) Expand 10 before | Expand all | Expand 10 after
200 public: 219 public:
201 MOCK_METHOD1(OnLoginDatabaseQueryDone, 220 MOCK_METHOD1(OnLoginDatabaseQueryDone,
202 void(const std::vector<PasswordForm*>&)); 221 void(const std::vector<PasswordForm*>&));
203 }; 222 };
204 223
205 void LoginDatabaseQueryCallback(password_manager::LoginDatabase* login_db, 224 void LoginDatabaseQueryCallback(password_manager::LoginDatabase* login_db,
206 bool autofillable, 225 bool autofillable,
207 MockLoginDatabaseReturn* mock_return) { 226 MockLoginDatabaseReturn* mock_return) {
208 ScopedVector<autofill::PasswordForm> forms; 227 ScopedVector<autofill::PasswordForm> forms;
209 if (autofillable) 228 if (autofillable)
210 login_db->GetAutofillableLogins(&forms); 229 EXPECT_TRUE(login_db->GetAutofillableLogins(&forms));
211 else 230 else
212 login_db->GetBlacklistLogins(&forms); 231 EXPECT_TRUE(login_db->GetBlacklistLogins(&forms));
213 mock_return->OnLoginDatabaseQueryDone(forms.get()); 232 mock_return->OnLoginDatabaseQueryDone(forms.get());
214 } 233 }
215 234
216 // Generate |count| expected logins, either auto-fillable or blacklisted. 235 // Generate |count| expected logins, either auto-fillable or blacklisted.
217 void InitExpectedForms(bool autofillable, 236 void InitExpectedForms(bool autofillable,
218 size_t count, 237 size_t count,
219 ScopedVector<autofill::PasswordForm>* forms) { 238 ScopedVector<autofill::PasswordForm>* forms) {
220 const char* domain = autofillable ? "example" : "blacklisted"; 239 const char* domain = autofillable ? "example" : "blacklisted";
221 for (size_t i = 0; i < count; ++i) { 240 for (size_t i = 0; i < count; ++i) {
222 std::string realm = base::StringPrintf("http://%zu.%s.com", i, domain); 241 std::string realm = base::StringPrintf("http://%zu.%s.com", i, domain);
(...skipping 236 matching lines...) Expand 10 before | Expand all | Expand 10 after
459 478
460 INSTANTIATE_TEST_CASE_P(NoBackend, 479 INSTANTIATE_TEST_CASE_P(NoBackend,
461 PasswordStoreXTest, 480 PasswordStoreXTest,
462 testing::Values(NO_BACKEND)); 481 testing::Values(NO_BACKEND));
463 INSTANTIATE_TEST_CASE_P(FailingBackend, 482 INSTANTIATE_TEST_CASE_P(FailingBackend,
464 PasswordStoreXTest, 483 PasswordStoreXTest,
465 testing::Values(FAILING_BACKEND)); 484 testing::Values(FAILING_BACKEND));
466 INSTANTIATE_TEST_CASE_P(WorkingBackend, 485 INSTANTIATE_TEST_CASE_P(WorkingBackend,
467 PasswordStoreXTest, 486 PasswordStoreXTest,
468 testing::Values(WORKING_BACKEND)); 487 testing::Values(WORKING_BACKEND));
OLDNEW
« no previous file with comments | « chrome/browser/password_manager/password_store_x.cc ('k') | components/password_manager/core/browser/login_database.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698