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

Side by Side Diff: chrome/browser/ui/passwords/manage_passwords_bubble_model_unittest.cc

Issue 259153004: Password bubble: Give users the option of unblacklisting a site. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Fixups. Created 6 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 | Annotate | Revision Log
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 "base/metrics/histogram_samples.h" 5 #include "base/metrics/histogram_samples.h"
6 #include "base/prefs/pref_service.h" 6 #include "base/prefs/pref_service.h"
7 #include "base/strings/utf_string_conversions.h"
7 #include "base/test/statistics_delta_reader.h" 8 #include "base/test/statistics_delta_reader.h"
8 #include "chrome/browser/ui/passwords/manage_passwords_bubble.h" 9 #include "chrome/browser/ui/passwords/manage_passwords_bubble.h"
9 #include "chrome/browser/ui/passwords/manage_passwords_bubble_model.h" 10 #include "chrome/browser/ui/passwords/manage_passwords_bubble_model.h"
10 #include "chrome/browser/ui/passwords/manage_passwords_bubble_ui_controller_mock .h" 11 #include "chrome/browser/ui/passwords/manage_passwords_bubble_ui_controller_mock .h"
11 #include "chrome/test/base/testing_profile.h" 12 #include "chrome/test/base/testing_profile.h"
12 #include "components/password_manager/core/browser/password_manager_metrics_util .h" 13 #include "components/password_manager/core/browser/password_manager_metrics_util .h"
13 #include "content/public/test/test_browser_thread_bundle.h" 14 #include "content/public/test/test_browser_thread_bundle.h"
14 #include "content/public/test/web_contents_tester.h" 15 #include "content/public/test/web_contents_tester.h"
15 #include "testing/gtest/include/gtest/gtest.h" 16 #include "testing/gtest/include/gtest/gtest.h"
16 17
(...skipping 21 matching lines...) Expand all
38 ManagePasswordsBubbleModel::PASSWORD_TO_BE_SAVED); 39 ManagePasswordsBubbleModel::PASSWORD_TO_BE_SAVED);
39 model_->OnBubbleShown(ManagePasswordsBubble::AUTOMATIC); 40 model_->OnBubbleShown(ManagePasswordsBubble::AUTOMATIC);
40 } 41 }
41 42
42 void PretendManagingPasswords() { 43 void PretendManagingPasswords() {
43 model_->set_manage_passwords_bubble_state( 44 model_->set_manage_passwords_bubble_state(
44 ManagePasswordsBubbleModel::MANAGE_PASSWORDS); 45 ManagePasswordsBubbleModel::MANAGE_PASSWORDS);
45 model_->OnBubbleShown(ManagePasswordsBubble::USER_ACTION); 46 model_->OnBubbleShown(ManagePasswordsBubble::USER_ACTION);
46 } 47 }
47 48
49 void PretendBlacklisted() {
50 model_->set_manage_passwords_bubble_state(
51 ManagePasswordsBubbleModel::NEVER_SAVE_PASSWORDS);
52 model_->OnBubbleShown(ManagePasswordsBubble::USER_ACTION);
53
vabr (Chromium) 2014/04/30 11:08:46 nit: Please reduce to a single blank line. (http:/
54
55 base::string16 kTestUsername = base::ASCIIToUTF16("test_username");
56 autofill::PasswordFormMap map;
57 map[kTestUsername] = &test_form_;
58 controller()->SetPasswordFormMap(map);
59 }
60
48 ManagePasswordsBubbleUIControllerMock* controller() { 61 ManagePasswordsBubbleUIControllerMock* controller() {
49 return reinterpret_cast<ManagePasswordsBubbleUIControllerMock*>( 62 return reinterpret_cast<ManagePasswordsBubbleUIControllerMock*>(
50 ManagePasswordsBubbleUIController::FromWebContents( 63 ManagePasswordsBubbleUIController::FromWebContents(
51 test_web_contents_.get())); 64 test_web_contents_.get()));
52 } 65 }
53 66
54 protected: 67 protected:
55 scoped_ptr<ManagePasswordsBubbleModel> model_; 68 scoped_ptr<ManagePasswordsBubbleModel> model_;
69 autofill::PasswordForm test_form_;
56 70
57 private: 71 private:
58 content::TestBrowserThreadBundle thread_bundle_; 72 content::TestBrowserThreadBundle thread_bundle_;
59 TestingProfile profile_; 73 TestingProfile profile_;
60 scoped_ptr<content::WebContents> test_web_contents_; 74 scoped_ptr<content::WebContents> test_web_contents_;
75
vabr (Chromium) 2014/04/30 11:08:46 nit: Please remove this blank line.
61 }; 76 };
62 77
63 TEST_F(ManagePasswordsBubbleModelTest, DefaultValues) { 78 TEST_F(ManagePasswordsBubbleModelTest, DefaultValues) {
64 EXPECT_EQ(model_->display_disposition(), 79 EXPECT_EQ(model_->display_disposition(),
65 password_manager::metrics_util::AUTOMATIC_WITH_PASSWORD_PENDING); 80 password_manager::metrics_util::AUTOMATIC_WITH_PASSWORD_PENDING);
66 EXPECT_EQ(model_->dismissal_reason(), 81 EXPECT_EQ(model_->dismissal_reason(),
67 password_manager::metrics_util::NOT_DISPLAYED); 82 password_manager::metrics_util::NOT_DISPLAYED);
68 EXPECT_FALSE(controller()->saved_password()); 83 EXPECT_FALSE(controller()->saved_password());
69 EXPECT_FALSE(controller()->never_saved_password()); 84 EXPECT_FALSE(controller()->never_saved_password());
70 } 85 }
(...skipping 12 matching lines...) Expand all
83 kUIDismissalReasonMetric)); 98 kUIDismissalReasonMetric));
84 EXPECT_EQ(NULL, samples.get()); 99 EXPECT_EQ(NULL, samples.get());
85 } 100 }
86 101
87 TEST_F(ManagePasswordsBubbleModelTest, CloseWithoutInteraction) { 102 TEST_F(ManagePasswordsBubbleModelTest, CloseWithoutInteraction) {
88 base::StatisticsDeltaReader statistics_delta_reader; 103 base::StatisticsDeltaReader statistics_delta_reader;
89 PretendPasswordWaiting(); 104 PretendPasswordWaiting();
90 model_->OnBubbleHidden(); 105 model_->OnBubbleHidden();
91 EXPECT_EQ(model_->dismissal_reason(), 106 EXPECT_EQ(model_->dismissal_reason(),
92 password_manager::metrics_util::NO_DIRECT_INTERACTION); 107 password_manager::metrics_util::NO_DIRECT_INTERACTION);
108 EXPECT_TRUE(model_->WaitingToSavePassword());
93 EXPECT_FALSE(controller()->saved_password()); 109 EXPECT_FALSE(controller()->saved_password());
94 EXPECT_FALSE(controller()->never_saved_password()); 110 EXPECT_FALSE(controller()->never_saved_password());
95 111
96 scoped_ptr<base::HistogramSamples> samples( 112 scoped_ptr<base::HistogramSamples> samples(
97 statistics_delta_reader.GetHistogramSamplesSinceCreation( 113 statistics_delta_reader.GetHistogramSamplesSinceCreation(
98 kUIDismissalReasonMetric)); 114 kUIDismissalReasonMetric));
99 EXPECT_EQ( 115 EXPECT_EQ(
100 1, 116 1,
101 samples->GetCount(password_manager::metrics_util::NO_DIRECT_INTERACTION)); 117 samples->GetCount(password_manager::metrics_util::NO_DIRECT_INTERACTION));
102 EXPECT_EQ(0, samples->GetCount(password_manager::metrics_util::CLICKED_SAVE)); 118 EXPECT_EQ(0, samples->GetCount(password_manager::metrics_util::CLICKED_SAVE));
103 EXPECT_EQ(0, samples->GetCount(password_manager::metrics_util::CLICKED_NOPE)); 119 EXPECT_EQ(0, samples->GetCount(password_manager::metrics_util::CLICKED_NOPE));
104 EXPECT_EQ(0, 120 EXPECT_EQ(0,
105 samples->GetCount(password_manager::metrics_util::CLICKED_NEVER)); 121 samples->GetCount(password_manager::metrics_util::CLICKED_NEVER));
106 EXPECT_EQ(0, 122 EXPECT_EQ(0,
107 samples->GetCount(password_manager::metrics_util::CLICKED_MANAGE)); 123 samples->GetCount(password_manager::metrics_util::CLICKED_MANAGE));
108 EXPECT_EQ(0, samples->GetCount(password_manager::metrics_util::CLICKED_DONE)); 124 EXPECT_EQ(0, samples->GetCount(password_manager::metrics_util::CLICKED_DONE));
125 EXPECT_EQ(
126 0,
127 samples->GetCount(password_manager::metrics_util::CLICKED_UNBLACKLIST));
109 } 128 }
110 129
111 TEST_F(ManagePasswordsBubbleModelTest, ClickSave) { 130 TEST_F(ManagePasswordsBubbleModelTest, ClickSave) {
112 base::StatisticsDeltaReader statistics_delta_reader; 131 base::StatisticsDeltaReader statistics_delta_reader;
113 PretendPasswordWaiting(); 132 PretendPasswordWaiting();
114 model_->OnSaveClicked(); 133 model_->OnSaveClicked();
115 model_->OnBubbleHidden(); 134 model_->OnBubbleHidden();
116 EXPECT_EQ(model_->dismissal_reason(), 135 EXPECT_EQ(model_->dismissal_reason(),
117 password_manager::metrics_util::CLICKED_SAVE); 136 password_manager::metrics_util::CLICKED_SAVE);
137 EXPECT_FALSE(model_->WaitingToSavePassword());
138 EXPECT_FALSE(model_->NeverSavingPasswords());
118 EXPECT_TRUE(controller()->saved_password()); 139 EXPECT_TRUE(controller()->saved_password());
119 EXPECT_FALSE(controller()->never_saved_password()); 140 EXPECT_FALSE(controller()->never_saved_password());
120 141
121 scoped_ptr<base::HistogramSamples> samples( 142 scoped_ptr<base::HistogramSamples> samples(
122 statistics_delta_reader.GetHistogramSamplesSinceCreation( 143 statistics_delta_reader.GetHistogramSamplesSinceCreation(
123 kUIDismissalReasonMetric)); 144 kUIDismissalReasonMetric));
124 EXPECT_EQ( 145 EXPECT_EQ(
125 0, 146 0,
126 samples->GetCount(password_manager::metrics_util::NO_DIRECT_INTERACTION)); 147 samples->GetCount(password_manager::metrics_util::NO_DIRECT_INTERACTION));
127 EXPECT_EQ(1, samples->GetCount(password_manager::metrics_util::CLICKED_SAVE)); 148 EXPECT_EQ(1, samples->GetCount(password_manager::metrics_util::CLICKED_SAVE));
128 EXPECT_EQ(0, samples->GetCount(password_manager::metrics_util::CLICKED_NOPE)); 149 EXPECT_EQ(0, samples->GetCount(password_manager::metrics_util::CLICKED_NOPE));
129 EXPECT_EQ(0, 150 EXPECT_EQ(0,
130 samples->GetCount(password_manager::metrics_util::CLICKED_NEVER)); 151 samples->GetCount(password_manager::metrics_util::CLICKED_NEVER));
131 EXPECT_EQ(0, 152 EXPECT_EQ(0,
132 samples->GetCount(password_manager::metrics_util::CLICKED_MANAGE)); 153 samples->GetCount(password_manager::metrics_util::CLICKED_MANAGE));
133 EXPECT_EQ(0, samples->GetCount(password_manager::metrics_util::CLICKED_DONE)); 154 EXPECT_EQ(0, samples->GetCount(password_manager::metrics_util::CLICKED_DONE));
155 EXPECT_EQ(
156 0,
157 samples->GetCount(password_manager::metrics_util::CLICKED_UNBLACKLIST));
134 } 158 }
135 159
136 TEST_F(ManagePasswordsBubbleModelTest, ClickNope) { 160 TEST_F(ManagePasswordsBubbleModelTest, ClickNope) {
137 base::StatisticsDeltaReader statistics_delta_reader; 161 base::StatisticsDeltaReader statistics_delta_reader;
138 PretendPasswordWaiting(); 162 PretendPasswordWaiting();
139 model_->OnNopeClicked(); 163 model_->OnNopeClicked();
140 model_->OnBubbleHidden(); 164 model_->OnBubbleHidden();
141 EXPECT_EQ(model_->dismissal_reason(), 165 EXPECT_EQ(model_->dismissal_reason(),
142 password_manager::metrics_util::CLICKED_NOPE); 166 password_manager::metrics_util::CLICKED_NOPE);
167 EXPECT_TRUE(model_->WaitingToSavePassword());
168 EXPECT_FALSE(model_->NeverSavingPasswords());
143 EXPECT_FALSE(controller()->saved_password()); 169 EXPECT_FALSE(controller()->saved_password());
144 EXPECT_FALSE(controller()->never_saved_password()); 170 EXPECT_FALSE(controller()->never_saved_password());
145 171
146 scoped_ptr<base::HistogramSamples> samples( 172 scoped_ptr<base::HistogramSamples> samples(
147 statistics_delta_reader.GetHistogramSamplesSinceCreation( 173 statistics_delta_reader.GetHistogramSamplesSinceCreation(
148 kUIDismissalReasonMetric)); 174 kUIDismissalReasonMetric));
149 EXPECT_EQ( 175 EXPECT_EQ(
150 0, 176 0,
151 samples->GetCount(password_manager::metrics_util::NO_DIRECT_INTERACTION)); 177 samples->GetCount(password_manager::metrics_util::NO_DIRECT_INTERACTION));
152 EXPECT_EQ(0, samples->GetCount(password_manager::metrics_util::CLICKED_SAVE)); 178 EXPECT_EQ(0, samples->GetCount(password_manager::metrics_util::CLICKED_SAVE));
153 EXPECT_EQ(1, samples->GetCount(password_manager::metrics_util::CLICKED_NOPE)); 179 EXPECT_EQ(1, samples->GetCount(password_manager::metrics_util::CLICKED_NOPE));
154 EXPECT_EQ(0, 180 EXPECT_EQ(0,
155 samples->GetCount(password_manager::metrics_util::CLICKED_NEVER)); 181 samples->GetCount(password_manager::metrics_util::CLICKED_NEVER));
156 EXPECT_EQ(0, 182 EXPECT_EQ(0,
157 samples->GetCount(password_manager::metrics_util::CLICKED_MANAGE)); 183 samples->GetCount(password_manager::metrics_util::CLICKED_MANAGE));
158 EXPECT_EQ(0, samples->GetCount(password_manager::metrics_util::CLICKED_DONE)); 184 EXPECT_EQ(0, samples->GetCount(password_manager::metrics_util::CLICKED_DONE));
185 EXPECT_EQ(
186 0,
187 samples->GetCount(password_manager::metrics_util::CLICKED_UNBLACKLIST));
159 } 188 }
160 189
161 TEST_F(ManagePasswordsBubbleModelTest, ClickNever) { 190 TEST_F(ManagePasswordsBubbleModelTest, ClickNever) {
162 base::StatisticsDeltaReader statistics_delta_reader; 191 base::StatisticsDeltaReader statistics_delta_reader;
163 PretendPasswordWaiting(); 192 PretendPasswordWaiting();
164 model_->OnNeverForThisSiteClicked(); 193 model_->OnNeverForThisSiteClicked();
165 model_->OnBubbleHidden(); 194 model_->OnBubbleHidden();
166 EXPECT_EQ(model_->dismissal_reason(), 195 EXPECT_EQ(model_->dismissal_reason(),
167 password_manager::metrics_util::CLICKED_NEVER); 196 password_manager::metrics_util::CLICKED_NEVER);
197 EXPECT_FALSE(model_->WaitingToSavePassword());
198 EXPECT_TRUE(model_->NeverSavingPasswords());
168 EXPECT_FALSE(controller()->saved_password()); 199 EXPECT_FALSE(controller()->saved_password());
169 EXPECT_TRUE(controller()->never_saved_password()); 200 EXPECT_TRUE(controller()->never_saved_password());
170 201
171 scoped_ptr<base::HistogramSamples> samples( 202 scoped_ptr<base::HistogramSamples> samples(
172 statistics_delta_reader.GetHistogramSamplesSinceCreation( 203 statistics_delta_reader.GetHistogramSamplesSinceCreation(
173 kUIDismissalReasonMetric)); 204 kUIDismissalReasonMetric));
174 EXPECT_EQ( 205 EXPECT_EQ(
175 0, 206 0,
176 samples->GetCount(password_manager::metrics_util::NO_DIRECT_INTERACTION)); 207 samples->GetCount(password_manager::metrics_util::NO_DIRECT_INTERACTION));
177 EXPECT_EQ(0, samples->GetCount(password_manager::metrics_util::CLICKED_SAVE)); 208 EXPECT_EQ(0, samples->GetCount(password_manager::metrics_util::CLICKED_SAVE));
178 EXPECT_EQ(0, samples->GetCount(password_manager::metrics_util::CLICKED_NOPE)); 209 EXPECT_EQ(0, samples->GetCount(password_manager::metrics_util::CLICKED_NOPE));
179 EXPECT_EQ(1, 210 EXPECT_EQ(1,
180 samples->GetCount(password_manager::metrics_util::CLICKED_NEVER)); 211 samples->GetCount(password_manager::metrics_util::CLICKED_NEVER));
181 EXPECT_EQ(0, 212 EXPECT_EQ(0,
182 samples->GetCount(password_manager::metrics_util::CLICKED_MANAGE)); 213 samples->GetCount(password_manager::metrics_util::CLICKED_MANAGE));
183 EXPECT_EQ(0, samples->GetCount(password_manager::metrics_util::CLICKED_DONE)); 214 EXPECT_EQ(0, samples->GetCount(password_manager::metrics_util::CLICKED_DONE));
215 EXPECT_EQ(
216 0,
217 samples->GetCount(password_manager::metrics_util::CLICKED_UNBLACKLIST));
184 } 218 }
185 219
186 TEST_F(ManagePasswordsBubbleModelTest, ClickManage) { 220 TEST_F(ManagePasswordsBubbleModelTest, ClickManage) {
187 base::StatisticsDeltaReader statistics_delta_reader; 221 base::StatisticsDeltaReader statistics_delta_reader;
188 PretendManagingPasswords(); 222 PretendManagingPasswords();
189 model_->OnManageLinkClicked(); 223 model_->OnManageLinkClicked();
190 model_->OnBubbleHidden(); 224 model_->OnBubbleHidden();
191 EXPECT_EQ(model_->dismissal_reason(), 225 EXPECT_EQ(model_->dismissal_reason(),
192 password_manager::metrics_util::CLICKED_MANAGE); 226 password_manager::metrics_util::CLICKED_MANAGE);
227 EXPECT_FALSE(model_->WaitingToSavePassword());
228 EXPECT_FALSE(model_->NeverSavingPasswords());
193 EXPECT_FALSE(controller()->saved_password()); 229 EXPECT_FALSE(controller()->saved_password());
194 EXPECT_FALSE(controller()->never_saved_password()); 230 EXPECT_FALSE(controller()->never_saved_password());
195 231
196 scoped_ptr<base::HistogramSamples> samples( 232 scoped_ptr<base::HistogramSamples> samples(
197 statistics_delta_reader.GetHistogramSamplesSinceCreation( 233 statistics_delta_reader.GetHistogramSamplesSinceCreation(
198 kUIDismissalReasonMetric)); 234 kUIDismissalReasonMetric));
199 EXPECT_EQ( 235 EXPECT_EQ(
200 0, 236 0,
201 samples->GetCount(password_manager::metrics_util::NO_DIRECT_INTERACTION)); 237 samples->GetCount(password_manager::metrics_util::NO_DIRECT_INTERACTION));
202 EXPECT_EQ(0, samples->GetCount(password_manager::metrics_util::CLICKED_SAVE)); 238 EXPECT_EQ(0, samples->GetCount(password_manager::metrics_util::CLICKED_SAVE));
203 EXPECT_EQ(0, samples->GetCount(password_manager::metrics_util::CLICKED_NOPE)); 239 EXPECT_EQ(0, samples->GetCount(password_manager::metrics_util::CLICKED_NOPE));
204 EXPECT_EQ(0, 240 EXPECT_EQ(0,
205 samples->GetCount(password_manager::metrics_util::CLICKED_NEVER)); 241 samples->GetCount(password_manager::metrics_util::CLICKED_NEVER));
206 EXPECT_EQ(1, 242 EXPECT_EQ(1,
207 samples->GetCount(password_manager::metrics_util::CLICKED_MANAGE)); 243 samples->GetCount(password_manager::metrics_util::CLICKED_MANAGE));
208 EXPECT_EQ(0, samples->GetCount(password_manager::metrics_util::CLICKED_DONE)); 244 EXPECT_EQ(0, samples->GetCount(password_manager::metrics_util::CLICKED_DONE));
245 EXPECT_EQ(
246 0,
247 samples->GetCount(password_manager::metrics_util::CLICKED_UNBLACKLIST));
209 } 248 }
210 249
211 TEST_F(ManagePasswordsBubbleModelTest, ClickDone) { 250 TEST_F(ManagePasswordsBubbleModelTest, ClickDone) {
212 base::StatisticsDeltaReader statistics_delta_reader; 251 base::StatisticsDeltaReader statistics_delta_reader;
213 PretendManagingPasswords(); 252 PretendManagingPasswords();
214 model_->OnDoneClicked(); 253 model_->OnDoneClicked();
215 model_->OnBubbleHidden(); 254 model_->OnBubbleHidden();
216 EXPECT_EQ(model_->dismissal_reason(), 255 EXPECT_EQ(model_->dismissal_reason(),
217 password_manager::metrics_util::CLICKED_DONE); 256 password_manager::metrics_util::CLICKED_DONE);
257 EXPECT_FALSE(model_->WaitingToSavePassword());
258 EXPECT_FALSE(model_->NeverSavingPasswords());
218 EXPECT_FALSE(controller()->saved_password()); 259 EXPECT_FALSE(controller()->saved_password());
219 EXPECT_FALSE(controller()->never_saved_password()); 260 EXPECT_FALSE(controller()->never_saved_password());
220 261
221 scoped_ptr<base::HistogramSamples> samples( 262 scoped_ptr<base::HistogramSamples> samples(
222 statistics_delta_reader.GetHistogramSamplesSinceCreation( 263 statistics_delta_reader.GetHistogramSamplesSinceCreation(
223 kUIDismissalReasonMetric)); 264 kUIDismissalReasonMetric));
224 EXPECT_EQ( 265 EXPECT_EQ(
225 0, 266 0,
226 samples->GetCount(password_manager::metrics_util::NO_DIRECT_INTERACTION)); 267 samples->GetCount(password_manager::metrics_util::NO_DIRECT_INTERACTION));
227 EXPECT_EQ(0, samples->GetCount(password_manager::metrics_util::CLICKED_SAVE)); 268 EXPECT_EQ(0, samples->GetCount(password_manager::metrics_util::CLICKED_SAVE));
228 EXPECT_EQ(0, samples->GetCount(password_manager::metrics_util::CLICKED_NOPE)); 269 EXPECT_EQ(0, samples->GetCount(password_manager::metrics_util::CLICKED_NOPE));
229 EXPECT_EQ(0, 270 EXPECT_EQ(0,
230 samples->GetCount(password_manager::metrics_util::CLICKED_NEVER)); 271 samples->GetCount(password_manager::metrics_util::CLICKED_NEVER));
231 EXPECT_EQ(0, 272 EXPECT_EQ(0,
232 samples->GetCount(password_manager::metrics_util::CLICKED_MANAGE)); 273 samples->GetCount(password_manager::metrics_util::CLICKED_MANAGE));
233 EXPECT_EQ(1, samples->GetCount(password_manager::metrics_util::CLICKED_DONE)); 274 EXPECT_EQ(1, samples->GetCount(password_manager::metrics_util::CLICKED_DONE));
275 EXPECT_EQ(
276 0,
277 samples->GetCount(password_manager::metrics_util::CLICKED_UNBLACKLIST));
278 }
279
280 TEST_F(ManagePasswordsBubbleModelTest, ClickUnblacklist) {
281 base::StatisticsDeltaReader statistics_delta_reader;
282 PretendBlacklisted();
283 model_->OnUnblacklistClicked();
284 model_->OnBubbleHidden();
285 EXPECT_EQ(model_->dismissal_reason(),
286 password_manager::metrics_util::CLICKED_UNBLACKLIST);
287 EXPECT_FALSE(model_->WaitingToSavePassword());
288 EXPECT_FALSE(model_->NeverSavingPasswords());
289 EXPECT_FALSE(controller()->saved_password());
290 EXPECT_FALSE(controller()->never_saved_password());
291
292 scoped_ptr<base::HistogramSamples> samples(
293 statistics_delta_reader.GetHistogramSamplesSinceCreation(
294 kUIDismissalReasonMetric));
295 EXPECT_EQ(
296 0,
297 samples->GetCount(password_manager::metrics_util::NO_DIRECT_INTERACTION));
298 EXPECT_EQ(0, samples->GetCount(password_manager::metrics_util::CLICKED_SAVE));
299 EXPECT_EQ(0, samples->GetCount(password_manager::metrics_util::CLICKED_NOPE));
300 EXPECT_EQ(0,
301 samples->GetCount(password_manager::metrics_util::CLICKED_NEVER));
302 EXPECT_EQ(0,
303 samples->GetCount(password_manager::metrics_util::CLICKED_MANAGE));
304 EXPECT_EQ(0, samples->GetCount(password_manager::metrics_util::CLICKED_DONE));
305 EXPECT_EQ(
306 1,
307 samples->GetCount(password_manager::metrics_util::CLICKED_UNBLACKLIST));
234 } 308 }
235 309
236 TEST_F(ManagePasswordsBubbleModelTest, WaitingToSavePassword) { 310 TEST_F(ManagePasswordsBubbleModelTest, WaitingToSavePassword) {
237 EXPECT_FALSE(model_->WaitingToSavePassword()); 311 EXPECT_FALSE(model_->WaitingToSavePassword());
238
239 model_->set_manage_passwords_bubble_state( 312 model_->set_manage_passwords_bubble_state(
240 ManagePasswordsBubbleModel::PASSWORD_TO_BE_SAVED); 313 ManagePasswordsBubbleModel::PASSWORD_TO_BE_SAVED);
241 EXPECT_TRUE(model_->WaitingToSavePassword()); 314 EXPECT_TRUE(model_->WaitingToSavePassword());
242 } 315 }
316
317 TEST_F(ManagePasswordsBubbleModelTest, NeverSavingPasswords) {
318 EXPECT_FALSE(model_->NeverSavingPasswords());
319 model_->set_manage_passwords_bubble_state(
320 ManagePasswordsBubbleModel::NEVER_SAVE_PASSWORDS);
321 EXPECT_TRUE(model_->NeverSavingPasswords());
322 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698