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

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

Issue 15487004: Autocheckout: parse multiple clicks setting in autofill response. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Ilya's comments Created 7 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « components/autofill/browser/autofill_xml_parser.cc ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: components/autofill/browser/autofill_xml_parser_unittest.cc
diff --git a/components/autofill/browser/autofill_xml_parser_unittest.cc b/components/autofill/browser/autofill_xml_parser_unittest.cc
index 0da65a24677cbedc38159d9dc1c3bae53953b254..b0922c07ef47debd5afd235f2ebc367a9075f1a3 100644
--- a/components/autofill/browser/autofill_xml_parser_unittest.cc
+++ b/components/autofill/browser/autofill_xml_parser_unittest.cc
@@ -225,6 +225,58 @@ TEST_F(AutofillQueryXmlParserTest, ParseAutofillFlow) {
page_meta_data_.proceed_element_descriptor.descriptor);
EXPECT_EQ(autofill::WebElementDescriptor::CSS_SELECTOR,
page_meta_data_.proceed_element_descriptor.retrieval_method);
+
+ // Clear |field_infos_| for the next test;
+ field_infos_.clear();
+
+ // Test parsing click_elements_before_formfill correctly.
+ xml = "<autofillqueryresponse>"
+ "<field autofilltype=\"55\"/>"
+ "<autofill_flow page_no=\"1\" total_pages=\"10\">"
+ "<click_elements_before_formfill>"
+ "<web_element id=\"btn1\" /></click_elements_before_formfill>"
+ "<click_elements_before_formfill>"
+ "<web_element css_selector=\"[name=&quot;btn2&quot;]\"/>"
+ "</click_elements_before_formfill>"
+ "</autofill_flow>"
+ "</autofillqueryresponse>";
+
+ ParseQueryXML(xml, true);
+
+ EXPECT_EQ(1U, field_infos_.size());
+ EXPECT_EQ(1, page_meta_data_.current_page_number);
+ EXPECT_EQ(10, page_meta_data_.total_pages);
+ ASSERT_EQ(2U, page_meta_data_.click_elements_before_form_fill.size());
+ autofill::WebElementDescriptor& click_elment =
+ page_meta_data_.click_elements_before_form_fill[0];
+ EXPECT_EQ("btn1", click_elment.descriptor);
+ EXPECT_EQ(autofill::WebElementDescriptor::ID, click_elment.retrieval_method);
+ click_elment = page_meta_data_.click_elements_before_form_fill[1];
+ EXPECT_EQ("[name=\"btn2\"]", click_elment.descriptor);
+ EXPECT_EQ(autofill::WebElementDescriptor::CSS_SELECTOR,
+ click_elment.retrieval_method);
+
+ // Clear |field_infos_| for the next test;
+ field_infos_.clear();
+
+ // Test parsing click_elements_after_formfill correctly.
+ xml = "<autofillqueryresponse>"
+ "<field autofilltype=\"55\"/>"
+ "<autofill_flow page_no=\"1\" total_pages=\"10\">"
+ "<click_elements_after_formfill>"
+ "<web_element id=\"btn1\" /></click_elements_after_formfill>"
+ "</autofill_flow>"
+ "</autofillqueryresponse>";
+
+ ParseQueryXML(xml, true);
+
+ EXPECT_EQ(1U, field_infos_.size());
+ EXPECT_EQ(1, page_meta_data_.current_page_number);
+ EXPECT_EQ(10, page_meta_data_.total_pages);
+ ASSERT_EQ(1U, page_meta_data_.click_elements_after_form_fill.size());
+ click_elment = page_meta_data_.click_elements_after_form_fill[0];
+ EXPECT_EQ("btn1", click_elment.descriptor);
+ EXPECT_EQ(autofill::WebElementDescriptor::ID, click_elment.retrieval_method);
}
// Test badly formed XML queries.
« no previous file with comments | « components/autofill/browser/autofill_xml_parser.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698