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

Unified Diff: components/autofill/core/browser/autofill_manager_unittest.cc

Issue 667043002: Add a flag to ignore autocomplete="off" for Autofill. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git/+/master
Patch Set: fix MSVC error C4373 Created 6 years, 2 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/core/browser/autofill_manager_unittest.cc
diff --git a/components/autofill/core/browser/autofill_manager_unittest.cc b/components/autofill/core/browser/autofill_manager_unittest.cc
index b0275114ffcd8d01e2b12bf159414ea0a808617b..c556bf92cee944cecff7142fa7799a5ebb7a733b 100644
--- a/components/autofill/core/browser/autofill_manager_unittest.cc
+++ b/components/autofill/core/browser/autofill_manager_unittest.cc
@@ -32,6 +32,7 @@
#include "components/autofill/core/browser/test_autofill_external_delegate.h"
#include "components/autofill/core/browser/webdata/autofill_webdata_service.h"
#include "components/autofill/core/common/autofill_pref_names.h"
+#include "components/autofill/core/common/autofill_switches.h"
#include "components/autofill/core/common/form_data.h"
#include "components/autofill/core/common/form_field_data.h"
#include "grit/components_strings.h"
@@ -358,6 +359,15 @@ class MockAutocompleteHistoryManager : public AutocompleteHistoryManager {
MockAutocompleteHistoryManager(AutofillDriver* driver, AutofillClient* client)
: AutocompleteHistoryManager(driver, client) {}
+ MOCK_METHOD8(OnGetAutocompleteSuggestions, void(
+ int query_id,
+ const base::string16& name,
+ const base::string16& prefix,
+ const std::string& form_control_type,
+ 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));
MOCK_METHOD1(OnFormSubmitted, void(const FormData& form));
private:
@@ -2392,6 +2402,66 @@ TEST_F(AutofillManagerTest, AutocompleteSuggestionsWhenAutofillDisabled) {
expected_labels, expected_icons, expected_unique_ids);
}
+TEST_F(AutofillManagerTest, AutocompleteOffRespected) {
+ TestAutofillClient client;
+ autofill_manager_.reset(
+ new TestAutofillManager(autofill_driver_.get(), &client, NULL));
+ autofill_manager_->set_autofill_enabled(false);
+ autofill_manager_->SetExternalDelegate(external_delegate_.get());
+
+ scoped_ptr<MockAutocompleteHistoryManager> autocomplete_history_manager;
+ autocomplete_history_manager.reset(
+ new MockAutocompleteHistoryManager(autofill_driver_.get(), &client));
+ autofill_manager_->autocomplete_history_manager_ =
+ autocomplete_history_manager.Pass();
+ MockAutocompleteHistoryManager* m = static_cast<
+ MockAutocompleteHistoryManager*>(
+ autofill_manager_->autocomplete_history_manager_.get());
+ EXPECT_CALL(*m,
+ OnGetAutocompleteSuggestions(_, _, _, _, _, _, _, _)).Times(0);
+
+ // Set up our form data.
+ FormData form;
+ test::CreateTestAddressFormData(&form);
+ std::vector<FormData> forms(1, form);
+ FormsSeen(forms);
+ FormFieldData* field = &form.fields[0];
+ field->should_autocomplete = false;
+ GetAutofillSuggestions(form, *field);
+}
+
+// Duplicate of the above test with the ignore-autocomplete-off-autofill switch.
+TEST_F(AutofillManagerTest, AutocompleteOffRespectedWithFlag) {
+ CommandLine::ForCurrentProcess()->AppendSwitch(
+ switches::kIgnoreAutocompleteOffForAutofill);
+
+ TestAutofillClient client;
+ autofill_manager_.reset(
+ new TestAutofillManager(autofill_driver_.get(), &client, NULL));
+ autofill_manager_->set_autofill_enabled(false);
+ autofill_manager_->SetExternalDelegate(external_delegate_.get());
+
+ scoped_ptr<MockAutocompleteHistoryManager> autocomplete_history_manager;
+ autocomplete_history_manager.reset(
+ new MockAutocompleteHistoryManager(autofill_driver_.get(), &client));
+ autofill_manager_->autocomplete_history_manager_ =
+ autocomplete_history_manager.Pass();
+ MockAutocompleteHistoryManager* m = static_cast<
+ MockAutocompleteHistoryManager*>(
+ autofill_manager_->autocomplete_history_manager_.get());
+ EXPECT_CALL(*m,
+ OnGetAutocompleteSuggestions(_, _, _, _, _, _, _, _)).Times(0);
+
+ // Set up our form data.
+ FormData form;
+ test::CreateTestAddressFormData(&form);
+ std::vector<FormData> forms(1, form);
+ FormsSeen(forms);
+ FormFieldData* field = &form.fields[0];
+ field->should_autocomplete = false;
+ GetAutofillSuggestions(form, *field);
+}
+
// Test that we are able to save form data when forms are submitted and we only
// have server data for the field types.
TEST_F(AutofillManagerTest, FormSubmittedServerTypes) {
« no previous file with comments | « components/autofill/core/browser/autofill_manager.cc ('k') | components/autofill/core/common/autofill_switches.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698