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

Side by Side Diff: components/autofill/browser/autocheckout_manager_unittest.cc

Issue 12457033: Implements SendAutocheckoutStatus API calls for stats tracking. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Fixing unit tests Created 7 years, 8 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 (c) 2013 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2013 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/tuple.h" 5 #include "base/tuple.h"
6 #include "base/utf_string_conversions.h" 6 #include "base/utf_string_conversions.h"
7 #include "chrome/test/base/chrome_render_view_host_test_harness.h" 7 #include "chrome/test/base/chrome_render_view_host_test_harness.h"
8 #include "chrome/test/base/testing_profile.h"
8 #include "components/autofill/browser/autocheckout_manager.h" 9 #include "components/autofill/browser/autocheckout_manager.h"
9 #include "components/autofill/browser/autofill_common_test.h" 10 #include "components/autofill/browser/autofill_common_test.h"
10 #include "components/autofill/browser/autofill_manager.h" 11 #include "components/autofill/browser/autofill_manager.h"
11 #include "components/autofill/browser/form_structure.h" 12 #include "components/autofill/browser/form_structure.h"
12 #include "components/autofill/browser/test_autofill_manager_delegate.h" 13 #include "components/autofill/browser/test_autofill_manager_delegate.h"
13 #include "components/autofill/common/autofill_messages.h" 14 #include "components/autofill/common/autofill_messages.h"
14 #include "components/autofill/common/form_data.h" 15 #include "components/autofill/common/form_data.h"
15 #include "content/public/browser/browser_thread.h" 16 #include "content/public/browser/browser_thread.h"
16 #include "content/public/test/mock_render_process_host.h" 17 #include "content/public/test/mock_render_process_host.h"
17 #include "content/public/test/test_browser_thread.h" 18 #include "content/public/test/test_browser_thread.h"
(...skipping 212 matching lines...) Expand 10 before | Expand all | Expand 10 after
230 callback.Run(true); 231 callback.Run(true);
231 } 232 }
232 233
233 virtual void HideAutocheckoutBubble() OVERRIDE {} 234 virtual void HideAutocheckoutBubble() OVERRIDE {}
234 235
235 virtual void ShowRequestAutocompleteDialog( 236 virtual void ShowRequestAutocompleteDialog(
236 const FormData& form, 237 const FormData& form,
237 const GURL& source_url, 238 const GURL& source_url,
238 const AutofillMetrics& metric_logger, 239 const AutofillMetrics& metric_logger,
239 DialogType dialog_type, 240 DialogType dialog_type,
240 const base::Callback<void(const FormStructure*)>& callback) OVERRIDE { 241 const base::Callback<void(const FormStructure*,
242 const std::string&)>& callback) OVERRIDE {
241 request_autocomplete_dialog_open_ = true; 243 request_autocomplete_dialog_open_ = true;
242 callback.Run(user_supplied_data_.get()); 244 callback.Run(user_supplied_data_.get(), "google_transaction_id");
243 } 245 }
244 246
245 MOCK_METHOD1(UpdateProgressBar, void(double value)); 247 MOCK_METHOD1(UpdateProgressBar, void(double value));
246 248
247 void SetUserSuppliedData(scoped_ptr<FormStructure> user_supplied_data) { 249 void SetUserSuppliedData(scoped_ptr<FormStructure> user_supplied_data) {
248 user_supplied_data_.reset(user_supplied_data.release()); 250 user_supplied_data_.reset(user_supplied_data.release());
249 } 251 }
250 252
251 bool autocheckout_bubble_shown() const { 253 bool autocheckout_bubble_shown() const {
252 return autocheckout_bubble_shown_; 254 return autocheckout_bubble_shown_;
(...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after
290 using AutocheckoutManager::autocheckout_offered; 292 using AutocheckoutManager::autocheckout_offered;
291 using AutocheckoutManager::MaybeShowAutocheckoutDialog; 293 using AutocheckoutManager::MaybeShowAutocheckoutDialog;
292 }; 294 };
293 295
294 } // namespace 296 } // namespace
295 297
296 class AutocheckoutManagerTest : public ChromeRenderViewHostTestHarness { 298 class AutocheckoutManagerTest : public ChromeRenderViewHostTestHarness {
297 public: 299 public:
298 AutocheckoutManagerTest() 300 AutocheckoutManagerTest()
299 : ChromeRenderViewHostTestHarness(), 301 : ChromeRenderViewHostTestHarness(),
300 ui_thread_(BrowserThread::UI, &message_loop_) { 302 ui_thread_(BrowserThread::UI, &message_loop_),
303 io_thread_(BrowserThread::IO) {
301 } 304 }
302 305
303 std::vector<FormData> ReadFilledForms() { 306 std::vector<FormData> ReadFilledForms() {
304 uint32 kMsgID = AutofillMsg_FillFormsAndClick::ID; 307 uint32 kMsgID = AutofillMsg_FillFormsAndClick::ID;
305 const IPC::Message* message = 308 const IPC::Message* message =
306 process()->sink().GetFirstMessageMatching(kMsgID); 309 process()->sink().GetFirstMessageMatching(kMsgID);
307 AutofillParam autofill_param; 310 AutofillParam autofill_param;
308 AutofillMsg_FillFormsAndClick::Read(message, &autofill_param); 311 AutofillMsg_FillFormsAndClick::Read(message, &autofill_param);
309 return autofill_param.a; 312 return autofill_param.a;
310 } 313 }
(...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after
348 void HideRequestAutocompleteDialog() { 351 void HideRequestAutocompleteDialog() {
349 EXPECT_TRUE( 352 EXPECT_TRUE(
350 autofill_manager_delegate_->request_autocomplete_dialog_open()); 353 autofill_manager_delegate_->request_autocomplete_dialog_open());
351 autofill_manager_delegate_->HideRequestAutocompleteDialog(); 354 autofill_manager_delegate_->HideRequestAutocompleteDialog();
352 EXPECT_FALSE( 355 EXPECT_FALSE(
353 autofill_manager_delegate_->request_autocomplete_dialog_open()); 356 autofill_manager_delegate_->request_autocomplete_dialog_open());
354 } 357 }
355 358
356 protected: 359 protected:
357 content::TestBrowserThread ui_thread_; 360 content::TestBrowserThread ui_thread_;
361 content::TestBrowserThread io_thread_;
358 scoped_ptr<TestAutofillManager> autofill_manager_; 362 scoped_ptr<TestAutofillManager> autofill_manager_;
359 scoped_ptr<TestAutocheckoutManager> autocheckout_manager_; 363 scoped_ptr<TestAutocheckoutManager> autocheckout_manager_;
360 scoped_ptr<MockAutofillManagerDelegate> autofill_manager_delegate_; 364 scoped_ptr<MockAutofillManagerDelegate> autofill_manager_delegate_;
361 365
362 private: 366 private:
363 virtual void SetUp() OVERRIDE { 367 virtual void SetUp() OVERRIDE {
364 ChromeRenderViewHostTestHarness::SetUp(); 368 ChromeRenderViewHostTestHarness::SetUp();
369 io_thread_.StartIOThread();
370 profile()->CreateRequestContext();
365 autofill_manager_delegate_.reset(new MockAutofillManagerDelegate()); 371 autofill_manager_delegate_.reset(new MockAutofillManagerDelegate());
366 autofill_manager_.reset(new TestAutofillManager( 372 autofill_manager_.reset(new TestAutofillManager(
367 web_contents(), 373 web_contents(),
368 autofill_manager_delegate_.get())); 374 autofill_manager_delegate_.get()));
369 autocheckout_manager_.reset( 375 autocheckout_manager_.reset(
370 new TestAutocheckoutManager(autofill_manager_.get())); 376 new TestAutocheckoutManager(autofill_manager_.get()));
371 } 377 }
372 378
373 virtual void TearDown() OVERRIDE { 379 virtual void TearDown() OVERRIDE {
374 autocheckout_manager_.reset(); 380 autocheckout_manager_.reset();
375 autofill_manager_delegate_.reset(); 381 autofill_manager_delegate_.reset();
376 autofill_manager_.reset(); 382 autofill_manager_.reset();
383 profile()->ResetRequestContext();
377 ChromeRenderViewHostTestHarness::TearDown(); 384 ChromeRenderViewHostTestHarness::TearDown();
385 io_thread_.Stop();
378 } 386 }
379 387
380 DISALLOW_COPY_AND_ASSIGN(AutocheckoutManagerTest); 388 DISALLOW_COPY_AND_ASSIGN(AutocheckoutManagerTest);
381 }; 389 };
382 390
383 TEST_F(AutocheckoutManagerTest, TestFillForms) { 391 TEST_F(AutocheckoutManagerTest, TestFillForms) {
384 OpenRequestAutocompleteDialog(); 392 OpenRequestAutocompleteDialog();
385 393
386 // Test if autocheckout manager can fill the first page. 394 // Test if autocheckout manager can fill the first page.
387 autofill_manager_->SetFormStructure(CreateTestAddressFormStructure()); 395 autofill_manager_->SetFormStructure(CreateTestAddressFormStructure());
(...skipping 163 matching lines...) Expand 10 before | Expand all | Expand 10 after
551 UpdateProgressBar(testing::DoubleEq(1))).Times(1); 559 UpdateProgressBar(testing::DoubleEq(1))).Times(1);
552 autocheckout_manager_->MaybeShowAutocheckoutDialog(frame_url, 560 autocheckout_manager_->MaybeShowAutocheckoutDialog(frame_url,
553 ssl_status, 561 ssl_status,
554 true); 562 true);
555 CheckFillFormsAndClickIpc(); 563 CheckFillFormsAndClickIpc();
556 EXPECT_FALSE(autocheckout_manager_->in_autocheckout_flow()); 564 EXPECT_FALSE(autocheckout_manager_->in_autocheckout_flow());
557 EXPECT_FALSE(autofill_manager_delegate_->request_autocomplete_dialog_open()); 565 EXPECT_FALSE(autofill_manager_delegate_->request_autocomplete_dialog_open());
558 } 566 }
559 567
560 } // namespace autofill 568 } // namespace autofill
OLDNEW
« no previous file with comments | « components/autofill/browser/autocheckout_manager.cc ('k') | components/autofill/browser/autocheckout_request_manager.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698