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

Side by Side Diff: components/password_manager/content/browser/content_credential_manager_dispatcher_unittest.cc

Issue 707173004: Refactor Autofill for out of process iframes (OOPIF). (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: mem leak Created 6 years 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 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 "components/password_manager/content/browser/content_credential_manager _dispatcher.h" 5 #include "components/password_manager/content/browser/content_credential_manager _dispatcher.h"
6 6
7 #include "base/bind.h" 7 #include "base/bind.h"
8 #include "base/command_line.h" 8 #include "base/command_line.h"
9 #include "base/run_loop.h" 9 #include "base/run_loop.h"
10 #include "base/strings/string16.h" 10 #include "base/strings/string16.h"
(...skipping 24 matching lines...) Expand all
35 TestPasswordManagerClient(password_manager::PasswordStore* store) 35 TestPasswordManagerClient(password_manager::PasswordStore* store)
36 : did_prompt_user_to_save_(false), 36 : did_prompt_user_to_save_(false),
37 did_prompt_user_to_choose_(false), 37 did_prompt_user_to_choose_(false),
38 store_(store) {} 38 store_(store) {}
39 ~TestPasswordManagerClient() override {} 39 ~TestPasswordManagerClient() override {}
40 40
41 password_manager::PasswordStore* GetPasswordStore() override { 41 password_manager::PasswordStore* GetPasswordStore() override {
42 return store_; 42 return store_;
43 } 43 }
44 44
45 password_manager::PasswordManagerDriver* GetDriver() override {
46 return &driver_;
47 }
48
49 bool PromptUserToSavePassword( 45 bool PromptUserToSavePassword(
50 scoped_ptr<password_manager::PasswordFormManager> manager) override { 46 scoped_ptr<password_manager::PasswordFormManager> manager) override {
51 did_prompt_user_to_save_ = true; 47 did_prompt_user_to_save_ = true;
52 manager_.reset(manager.release()); 48 manager_.reset(manager.release());
53 return true; 49 return true;
54 } 50 }
55 51
56 bool PromptUserToChooseCredentials( 52 bool PromptUserToChooseCredentials(
57 const std::vector<autofill::PasswordForm*>& forms, 53 const std::vector<autofill::PasswordForm*>& forms,
58 base::Callback<void(const password_manager::CredentialInfo&)> 54 base::Callback<void(const password_manager::CredentialInfo&)>
(...skipping 12 matching lines...) Expand all
71 bool did_prompt_user_to_choose() const { return did_prompt_user_to_choose_; } 67 bool did_prompt_user_to_choose() const { return did_prompt_user_to_choose_; }
72 68
73 password_manager::PasswordFormManager* pending_manager() const { 69 password_manager::PasswordFormManager* pending_manager() const {
74 return manager_.get(); 70 return manager_.get();
75 } 71 }
76 72
77 private: 73 private:
78 bool did_prompt_user_to_save_; 74 bool did_prompt_user_to_save_;
79 bool did_prompt_user_to_choose_; 75 bool did_prompt_user_to_choose_;
80 password_manager::PasswordStore* store_; 76 password_manager::PasswordStore* store_;
81 password_manager::StubPasswordManagerDriver driver_;
82 scoped_ptr<password_manager::PasswordFormManager> manager_; 77 scoped_ptr<password_manager::PasswordFormManager> manager_;
83 }; 78 };
84 79
85 void RunAllPendingTasks() { 80 void RunAllPendingTasks() {
86 base::RunLoop run_loop; 81 base::RunLoop run_loop;
87 base::MessageLoop::current()->PostTask( 82 base::MessageLoop::current()->PostTask(
88 FROM_HERE, base::MessageLoop::QuitWhenIdleClosure()); 83 FROM_HERE, base::MessageLoop::QuitWhenIdleClosure());
89 run_loop.Run(); 84 run_loop.Run();
90 } 85 }
91 86
92 } // namespace 87 } // namespace
93 88
94 namespace password_manager { 89 namespace password_manager {
95 90
96 class ContentCredentialManagerDispatcherTest 91 class ContentCredentialManagerDispatcherTest
97 : public content::RenderViewHostTestHarness { 92 : public content::RenderViewHostTestHarness {
98 public: 93 public:
99 ContentCredentialManagerDispatcherTest() {} 94 ContentCredentialManagerDispatcherTest() {}
100 95
101 void SetUp() override { 96 void SetUp() override {
102 content::RenderViewHostTestHarness::SetUp(); 97 content::RenderViewHostTestHarness::SetUp();
103 store_ = new TestPasswordStore; 98 store_ = new TestPasswordStore;
104 client_.reset(new TestPasswordManagerClient(store_.get())); 99 client_.reset(new TestPasswordManagerClient(store_.get()));
105 dispatcher_.reset( 100 dispatcher_.reset(
106 new ContentCredentialManagerDispatcher(web_contents(), client_.get())); 101 new ContentCredentialManagerDispatcher(web_contents(), client_.get()));
102 dispatcher_->set_password_manager_driver(&stub_driver_);
107 103
108 NavigateAndCommit(GURL("https://example.com/test.html")); 104 NavigateAndCommit(GURL("https://example.com/test.html"));
109 105
110 form_.username_value = base::ASCIIToUTF16("Username"); 106 form_.username_value = base::ASCIIToUTF16("Username");
111 form_.display_name = base::ASCIIToUTF16("Display Name"); 107 form_.display_name = base::ASCIIToUTF16("Display Name");
112 form_.password_value = base::ASCIIToUTF16("Password"); 108 form_.password_value = base::ASCIIToUTF16("Password");
113 form_.origin = web_contents()->GetLastCommittedURL().GetOrigin(); 109 form_.origin = web_contents()->GetLastCommittedURL().GetOrigin();
114 form_.signon_realm = form_.origin.spec(); 110 form_.signon_realm = form_.origin.spec();
115 form_.scheme = autofill::PasswordForm::SCHEME_HTML; 111 form_.scheme = autofill::PasswordForm::SCHEME_HTML;
116 112
117 store_->Clear(); 113 store_->Clear();
118 EXPECT_TRUE(store_->IsEmpty()); 114 EXPECT_TRUE(store_->IsEmpty());
119 } 115 }
120 116
121 void TearDown() override { 117 void TearDown() override {
122 store_->Shutdown(); 118 store_->Shutdown();
123 content::RenderViewHostTestHarness::TearDown(); 119 content::RenderViewHostTestHarness::TearDown();
124 } 120 }
125 121
126 ContentCredentialManagerDispatcher* dispatcher() { return dispatcher_.get(); } 122 ContentCredentialManagerDispatcher* dispatcher() { return dispatcher_.get(); }
127 123
128 protected: 124 protected:
129 autofill::PasswordForm form_; 125 autofill::PasswordForm form_;
130 scoped_refptr<TestPasswordStore> store_; 126 scoped_refptr<TestPasswordStore> store_;
131 scoped_ptr<ContentCredentialManagerDispatcher> dispatcher_; 127 scoped_ptr<ContentCredentialManagerDispatcher> dispatcher_;
132 scoped_ptr<TestPasswordManagerClient> client_; 128 scoped_ptr<TestPasswordManagerClient> client_;
129 StubPasswordManagerDriver stub_driver_;
133 }; 130 };
134 131
135 TEST_F(ContentCredentialManagerDispatcherTest, 132 TEST_F(ContentCredentialManagerDispatcherTest,
136 CredentialManagerOnNotifyFailedSignIn) { 133 CredentialManagerOnNotifyFailedSignIn) {
137 CredentialInfo info; 134 CredentialInfo info;
138 info.type = CREDENTIAL_TYPE_LOCAL; 135 info.type = CREDENTIAL_TYPE_LOCAL;
139 dispatcher()->OnNotifyFailedSignIn(kRequestId, info); 136 dispatcher()->OnNotifyFailedSignIn(kRequestId, info);
140 137
141 const uint32 kMsgID = CredentialManagerMsg_AcknowledgeFailedSignIn::ID; 138 const uint32 kMsgID = CredentialManagerMsg_AcknowledgeFailedSignIn::ID;
142 const IPC::Message* message = 139 const IPC::Message* message =
(...skipping 105 matching lines...) Expand 10 before | Expand all | Expand 10 after
248 EXPECT_TRUE(message); 245 EXPECT_TRUE(message);
249 CredentialManagerMsg_SendCredential::Param send_param; 246 CredentialManagerMsg_SendCredential::Param send_param;
250 CredentialManagerMsg_SendCredential::Read(message, &send_param); 247 CredentialManagerMsg_SendCredential::Read(message, &send_param);
251 CredentialManagerMsg_SendCredential::Read(message, &send_param); 248 CredentialManagerMsg_SendCredential::Read(message, &send_param);
252 EXPECT_NE(CREDENTIAL_TYPE_EMPTY, send_param.b.type); 249 EXPECT_NE(CREDENTIAL_TYPE_EMPTY, send_param.b.type);
253 process()->sink().ClearMessages(); 250 process()->sink().ClearMessages();
254 EXPECT_TRUE(client_->did_prompt_user_to_choose()); 251 EXPECT_TRUE(client_->did_prompt_user_to_choose());
255 } 252 }
256 253
257 } // namespace password_manager 254 } // namespace password_manager
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698