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

Unified Diff: chrome/renderer/autofill/password_autofill_agent_browsertest.cc

Issue 1208133002: [Autofill/Autocomplete Feature] Substring matching instead of prefix matching. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Added |match_start| usage. Created 5 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: chrome/renderer/autofill/password_autofill_agent_browsertest.cc
diff --git a/chrome/renderer/autofill/password_autofill_agent_browsertest.cc b/chrome/renderer/autofill/password_autofill_agent_browsertest.cc
index e0168719de66f2f64ddae2e2f636d6e894ecfc27..b0080c1563f138ca174f469d78e22fcd9977884d 100644
--- a/chrome/renderer/autofill/password_autofill_agent_browsertest.cc
+++ b/chrome/renderer/autofill/password_autofill_agent_browsertest.cc
@@ -1001,6 +1001,7 @@ TEST_F(PasswordAutofillAgentTest, FillSuggestion) {
TEST_F(PasswordAutofillAgentTest, PreviewSuggestion) {
// Simulate the browser sending the login info, but set |wait_for_username|
// to prevent the form from being immediately filled.
+ size_t match_start = 0;
fill_data_.wait_for_username = true;
SimulateOnFillPasswordForm(fill_data_);
@@ -1010,7 +1011,7 @@ TEST_F(PasswordAutofillAgentTest, PreviewSuggestion) {
// If the password field is not autocompletable, it should not be affected.
SetElementReadOnly(password_element_, true);
EXPECT_FALSE(password_autofill_agent_->PreviewSuggestion(
- username_element_, kAliceUsername, kAlicePassword));
+ username_element_, kAliceUsername, kAlicePassword, match_start));
EXPECT_EQ(std::string(), username_element_.suggestedValue().utf8());
EXPECT_FALSE(username_element_.isAutofilled());
EXPECT_EQ(std::string(), password_element_.suggestedValue().utf8());
@@ -1020,7 +1021,7 @@ TEST_F(PasswordAutofillAgentTest, PreviewSuggestion) {
// After selecting the suggestion, both fields should be previewed
// with suggested values.
EXPECT_TRUE(password_autofill_agent_->PreviewSuggestion(
- username_element_, kAliceUsername, kAlicePassword));
+ username_element_, kAliceUsername, kAlicePassword, match_start));
EXPECT_EQ(
kAliceUsername,
static_cast<std::string>(username_element_.suggestedValue().utf8()));
@@ -1035,7 +1036,7 @@ TEST_F(PasswordAutofillAgentTest, PreviewSuggestion) {
// Try previewing with a password different from the one that was initially
// sent to the renderer.
EXPECT_TRUE(password_autofill_agent_->PreviewSuggestion(
- username_element_, kBobUsername, kCarolPassword));
+ username_element_, kBobUsername, kCarolPassword, match_start));
EXPECT_EQ(
kBobUsername,
static_cast<std::string>(username_element_.suggestedValue().utf8()));
@@ -1050,6 +1051,7 @@ TEST_F(PasswordAutofillAgentTest, PreviewSuggestion) {
// Tests that |PreviewSuggestion| properly sets the username selection range.
TEST_F(PasswordAutofillAgentTest, PreviewSuggestionSelectionRange) {
+ size_t match_start = 0;
username_element_.setValue(WebString::fromUTF8("ali"));
username_element_.setSelectionRange(3, 3);
username_element_.setAutofilled(true);
@@ -1062,7 +1064,7 @@ TEST_F(PasswordAutofillAgentTest, PreviewSuggestionSelectionRange) {
SimulateOnFillPasswordForm(fill_data_);
EXPECT_TRUE(password_autofill_agent_->PreviewSuggestion(
- username_element_, kAliceUsername, kAlicePassword));
+ username_element_, kAliceUsername, kAlicePassword, match_start));
EXPECT_EQ(
kAliceUsername,
static_cast<std::string>(username_element_.suggestedValue().utf8()));
@@ -1078,6 +1080,7 @@ TEST_F(PasswordAutofillAgentTest, PreviewSuggestionSelectionRange) {
// Tests that |ClearPreview| properly clears previewed username and password
// with password being previously autofilled.
TEST_F(PasswordAutofillAgentTest, ClearPreviewWithPasswordAutofilled) {
+ size_t match_start = 0;
password_element_.setValue(WebString::fromUTF8("sec"));
password_element_.setAutofilled(true);
@@ -1089,7 +1092,7 @@ TEST_F(PasswordAutofillAgentTest, ClearPreviewWithPasswordAutofilled) {
CheckTextFieldsDOMState(std::string(), false, "sec", true);
EXPECT_TRUE(password_autofill_agent_->PreviewSuggestion(
- username_element_, kAliceUsername, kAlicePassword));
+ username_element_, kAliceUsername, kAlicePassword, match_start));
EXPECT_TRUE(
password_autofill_agent_->DidClearAutofillSelection(username_element_));
@@ -1106,6 +1109,7 @@ TEST_F(PasswordAutofillAgentTest, ClearPreviewWithPasswordAutofilled) {
// Tests that |ClearPreview| properly clears previewed username and password
// with username being previously autofilled.
TEST_F(PasswordAutofillAgentTest, ClearPreviewWithUsernameAutofilled) {
+ size_t match_start = 0;
username_element_.setValue(WebString::fromUTF8("ali"));
username_element_.setSelectionRange(3, 3);
username_element_.setAutofilled(true);
@@ -1118,7 +1122,7 @@ TEST_F(PasswordAutofillAgentTest, ClearPreviewWithUsernameAutofilled) {
CheckTextFieldsDOMState("ali", true, std::string(), false);
EXPECT_TRUE(password_autofill_agent_->PreviewSuggestion(
- username_element_, kAliceUsername, kAlicePassword));
+ username_element_, kAliceUsername, kAlicePassword, match_start));
EXPECT_TRUE(
password_autofill_agent_->DidClearAutofillSelection(username_element_));
@@ -1136,6 +1140,7 @@ TEST_F(PasswordAutofillAgentTest, ClearPreviewWithUsernameAutofilled) {
// with username and password being previously autofilled.
TEST_F(PasswordAutofillAgentTest,
ClearPreviewWithAutofilledUsernameAndPassword) {
+ size_t match_start = 0;
username_element_.setValue(WebString::fromUTF8("ali"));
username_element_.setSelectionRange(3, 3);
username_element_.setAutofilled(true);
@@ -1150,7 +1155,7 @@ TEST_F(PasswordAutofillAgentTest,
CheckTextFieldsDOMState("ali", true, "sec", true);
EXPECT_TRUE(password_autofill_agent_->PreviewSuggestion(
- username_element_, kAliceUsername, kAlicePassword));
+ username_element_, kAliceUsername, kAlicePassword, match_start));
EXPECT_TRUE(
password_autofill_agent_->DidClearAutofillSelection(username_element_));
@@ -1170,13 +1175,14 @@ TEST_F(PasswordAutofillAgentTest,
ClearPreviewWithNotAutofilledUsernameAndPassword) {
// Simulate the browser sending the login info, but set |wait_for_username|
// to prevent the form from being immediately filled.
+ size_t match_start = 0;
fill_data_.wait_for_username = true;
SimulateOnFillPasswordForm(fill_data_);
CheckTextFieldsDOMState(std::string(), false, std::string(), false);
EXPECT_TRUE(password_autofill_agent_->PreviewSuggestion(
- username_element_, kAliceUsername, kAlicePassword));
+ username_element_, kAliceUsername, kAlicePassword, match_start));
EXPECT_TRUE(
password_autofill_agent_->DidClearAutofillSelection(username_element_));
@@ -1207,8 +1213,9 @@ TEST_F(PasswordAutofillAgentTest, ClearPreviewWithInlineAutocompletedUsername) {
// The selection should have been set to 'lice', the last 4 letters.
CheckUsernameSelection(1, 5);
+ size_t match_start = 0;
EXPECT_TRUE(password_autofill_agent_->PreviewSuggestion(
- username_element_, "alicia", "secret"));
+ username_element_, "alicia", "secret", match_start));
EXPECT_EQ(
"alicia",
static_cast<std::string>(username_element_.suggestedValue().utf8()));

Powered by Google App Engine
This is Rietveld 408576698