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

Unified Diff: components/autofill/browser/autocomplete_history_manager_unittest.cc

Issue 17392006: In components/autofill, move browser/ to core/browser/ (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Rebase to fix conflicts Created 7 years, 6 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 side-by-side diff with in-line comments
Download patch
Index: components/autofill/browser/autocomplete_history_manager_unittest.cc
diff --git a/components/autofill/browser/autocomplete_history_manager_unittest.cc b/components/autofill/browser/autocomplete_history_manager_unittest.cc
deleted file mode 100644
index 562b73fec55c844428ac6cab84e869254f8bc2f0..0000000000000000000000000000000000000000
--- a/components/autofill/browser/autocomplete_history_manager_unittest.cc
+++ /dev/null
@@ -1,258 +0,0 @@
-// Copyright (c) 2012 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-#include <vector>
-
-#include "base/memory/ref_counted.h"
-#include "base/prefs/testing_pref_service.h"
-#include "base/run_loop.h"
-#include "base/strings/string16.h"
-#include "base/strings/utf_string_conversions.h"
-#include "base/synchronization/waitable_event.h"
-#include "chrome/browser/webdata/web_data_service_factory.h"
-#include "chrome/test/base/chrome_render_view_host_test_harness.h"
-#include "chrome/test/base/testing_browser_process.h"
-#include "chrome/test/base/testing_profile.h"
-#include "components/autofill/browser/autocomplete_history_manager.h"
-#include "components/autofill/browser/autofill_external_delegate.h"
-#include "components/autofill/browser/autofill_manager.h"
-#include "components/autofill/browser/test_autofill_driver.h"
-#include "components/autofill/browser/test_autofill_manager_delegate.h"
-#include "components/autofill/browser/webdata/autofill_webdata_service.h"
-#include "components/autofill/core/common/form_data.h"
-#include "components/webdata/common/web_data_service_test_util.h"
-#include "content/public/test/test_browser_thread.h"
-#include "content/public/test/test_utils.h"
-#include "testing/gmock/include/gmock/gmock.h"
-#include "testing/gtest/include/gtest/gtest.h"
-#include "ui/gfx/rect.h"
-
-using content::WebContents;
-using testing::_;
-
-namespace autofill {
-
-namespace {
-
-class MockWebDataService : public AutofillWebDataService {
- public:
- MockWebDataService()
- : AutofillWebDataService() {
- current_mock_web_data_service_ = this;
- }
-
- MOCK_METHOD1(AddFormFields, void(const std::vector<FormFieldData>&));
-
- static scoped_refptr<MockWebDataService> GetCurrent() {
- if (!current_mock_web_data_service_) {
- return new MockWebDataService();
- }
- return current_mock_web_data_service_;
- }
-
- protected:
- virtual ~MockWebDataService() {}
-
- private:
- // Keep track of the most recently created instance, so that it can be
- // associated with the current profile when Build() is called.
- static MockWebDataService* current_mock_web_data_service_;
-};
-
-MockWebDataService* MockWebDataService::current_mock_web_data_service_ = NULL;
-
-class MockWebDataServiceWrapperCurrent : public MockWebDataServiceWrapperBase {
- public:
- static BrowserContextKeyedService* Build(content::BrowserContext* profile) {
- return new MockWebDataServiceWrapperCurrent();
- }
-
- MockWebDataServiceWrapperCurrent() {}
-
- virtual scoped_refptr<AutofillWebDataService> GetAutofillWebData() OVERRIDE {
- return MockWebDataService::GetCurrent();
- }
-
- private:
- DISALLOW_COPY_AND_ASSIGN(MockWebDataServiceWrapperCurrent);
-};
-
-class MockAutofillManagerDelegate
- : public autofill::TestAutofillManagerDelegate {
- public:
- MockAutofillManagerDelegate() {}
- virtual ~MockAutofillManagerDelegate() {}
- virtual PrefService* GetPrefs() OVERRIDE { return &prefs_; }
-
- private:
- TestingPrefServiceSimple prefs_;
-
- DISALLOW_COPY_AND_ASSIGN(MockAutofillManagerDelegate);
-};
-
-} // namespace
-
-class AutocompleteHistoryManagerTest : public ChromeRenderViewHostTestHarness {
- protected:
- virtual void SetUp() OVERRIDE {
- ChromeRenderViewHostTestHarness::SetUp();
- web_data_service_ = new MockWebDataService();
- WebDataServiceFactory::GetInstance()->SetTestingFactory(
- profile(), MockWebDataServiceWrapperCurrent::Build);
- autofill_driver_.reset(new TestAutofillDriver(web_contents()));
- autocomplete_manager_.reset(
- new AutocompleteHistoryManager(autofill_driver_.get()));
- }
-
- virtual void TearDown() OVERRIDE {
- autocomplete_manager_.reset();
- web_data_service_ = NULL;
- ChromeRenderViewHostTestHarness::TearDown();
- }
-
- scoped_refptr<MockWebDataService> web_data_service_;
- scoped_ptr<AutocompleteHistoryManager> autocomplete_manager_;
- scoped_ptr<AutofillDriver> autofill_driver_;
- MockAutofillManagerDelegate manager_delegate;
-};
-
-// Tests that credit card numbers are not sent to the WebDatabase to be saved.
-TEST_F(AutocompleteHistoryManagerTest, CreditCardNumberValue) {
- FormData form;
- form.name = ASCIIToUTF16("MyForm");
- form.method = ASCIIToUTF16("POST");
- form.origin = GURL("http://myform.com/form.html");
- form.action = GURL("http://myform.com/submit.html");
- form.user_submitted = true;
-
- // Valid Visa credit card number pulled from the paypal help site.
- FormFieldData valid_cc;
- valid_cc.label = ASCIIToUTF16("Credit Card");
- valid_cc.name = ASCIIToUTF16("ccnum");
- valid_cc.value = ASCIIToUTF16("4012888888881881");
- valid_cc.form_control_type = "text";
- form.fields.push_back(valid_cc);
-
- EXPECT_CALL(*web_data_service_.get(), AddFormFields(_)).Times(0);
- autocomplete_manager_->OnFormSubmitted(form);
-}
-
-// Contrary test to AutocompleteHistoryManagerTest.CreditCardNumberValue. The
-// value being submitted is not a valid credit card number, so it will be sent
-// to the WebDatabase to be saved.
-TEST_F(AutocompleteHistoryManagerTest, NonCreditCardNumberValue) {
- FormData form;
- form.name = ASCIIToUTF16("MyForm");
- form.method = ASCIIToUTF16("POST");
- form.origin = GURL("http://myform.com/form.html");
- form.action = GURL("http://myform.com/submit.html");
- form.user_submitted = true;
-
- // Invalid credit card number.
- FormFieldData invalid_cc;
- invalid_cc.label = ASCIIToUTF16("Credit Card");
- invalid_cc.name = ASCIIToUTF16("ccnum");
- invalid_cc.value = ASCIIToUTF16("4580123456789012");
- invalid_cc.form_control_type = "text";
- form.fields.push_back(invalid_cc);
-
- EXPECT_CALL(*(web_data_service_.get()), AddFormFields(_)).Times(1);
- autocomplete_manager_->OnFormSubmitted(form);
-}
-
-// Tests that SSNs are not sent to the WebDatabase to be saved.
-TEST_F(AutocompleteHistoryManagerTest, SSNValue) {
- FormData form;
- form.name = ASCIIToUTF16("MyForm");
- form.method = ASCIIToUTF16("POST");
- form.origin = GURL("http://myform.com/form.html");
- form.action = GURL("http://myform.com/submit.html");
- form.user_submitted = true;
-
- FormFieldData ssn;
- ssn.label = ASCIIToUTF16("Social Security Number");
- ssn.name = ASCIIToUTF16("ssn");
- ssn.value = ASCIIToUTF16("078-05-1120");
- ssn.form_control_type = "text";
- form.fields.push_back(ssn);
-
- EXPECT_CALL(*web_data_service_.get(), AddFormFields(_)).Times(0);
- autocomplete_manager_->OnFormSubmitted(form);
-}
-
-// Verify that autocomplete text is saved for search fields.
-TEST_F(AutocompleteHistoryManagerTest, SearchField) {
- FormData form;
- form.name = ASCIIToUTF16("MyForm");
- form.method = ASCIIToUTF16("POST");
- form.origin = GURL("http://myform.com/form.html");
- form.action = GURL("http://myform.com/submit.html");
- form.user_submitted = true;
-
- // Search field.
- FormFieldData search_field;
- search_field.label = ASCIIToUTF16("Search");
- search_field.name = ASCIIToUTF16("search");
- search_field.value = ASCIIToUTF16("my favorite query");
- search_field.form_control_type = "search";
- form.fields.push_back(search_field);
-
- EXPECT_CALL(*(web_data_service_.get()), AddFormFields(_)).Times(1);
- autocomplete_manager_->OnFormSubmitted(form);
-}
-
-namespace {
-
-class MockAutofillExternalDelegate : public AutofillExternalDelegate {
- public:
- explicit MockAutofillExternalDelegate(content::WebContents* web_contents,
- AutofillManager* autofill_manager)
- : AutofillExternalDelegate(web_contents, autofill_manager) {}
- virtual ~MockAutofillExternalDelegate() {}
-
- MOCK_METHOD5(OnSuggestionsReturned,
- void(int query_id,
- const std::vector<base::string16>& autofill_values,
- const std::vector<base::string16>& autofill_labels,
- const std::vector<base::string16>& autofill_icons,
- const std::vector<int>& autofill_unique_ids));
-
- private:
- DISALLOW_COPY_AND_ASSIGN(MockAutofillExternalDelegate);
-};
-
-class AutocompleteHistoryManagerNoIPC : public AutocompleteHistoryManager {
- public:
- explicit AutocompleteHistoryManagerNoIPC(AutofillDriver* driver)
- : AutocompleteHistoryManager(driver) {
- // Ensure that IPC is not sent during the test.
- set_send_ipc(false);
- }
-
- using AutocompleteHistoryManager::SendSuggestions;
-};
-
-} // namespace
-
-// Make sure our external delegate is called at the right time.
-TEST_F(AutocompleteHistoryManagerTest, ExternalDelegate) {
- AutocompleteHistoryManagerNoIPC autocomplete_history_manager(
- autofill_driver_.get());
-
- scoped_ptr<AutofillManager> autofill_manager(new AutofillManager(
- autofill_driver_.get(),
- &manager_delegate,
- "en-US",
- AutofillManager::ENABLE_AUTOFILL_DOWNLOAD_MANAGER));
-
- MockAutofillExternalDelegate external_delegate(web_contents(),
- autofill_manager.get());
- autocomplete_history_manager.SetExternalDelegate(&external_delegate);
-
- // Should trigger a call to OnSuggestionsReturned, verified by the mock.
- EXPECT_CALL(external_delegate, OnSuggestionsReturned(_, _, _, _, _));
- autocomplete_history_manager.SendSuggestions(NULL);
-}
-
-} // namespace autofill
« no previous file with comments | « components/autofill/browser/autocomplete_history_manager.cc ('k') | components/autofill/browser/autofill-inl.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698