| OLD | NEW |
| 1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 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 <string> | 5 #include <string> |
| 6 #include <vector> | 6 #include <vector> |
| 7 | 7 |
| 8 #include "base/memory/scoped_ptr.h" | 8 #include "base/memory/scoped_ptr.h" |
| 9 #include "base/strings/string_number_conversions.h" | 9 #include "base/strings/string_number_conversions.h" |
| 10 #include "components/autofill/content/browser/autocheckout_page_meta_data.h" | 10 #include "components/autofill/content/browser/autocheckout_page_meta_data.h" |
| (...skipping 161 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 172 "<autofill_flow page_no=\"1\" total_pages=\"10\">" | 172 "<autofill_flow page_no=\"1\" total_pages=\"10\">" |
| 173 "<page_advance_button id=\"foo\"/>" | 173 "<page_advance_button id=\"foo\"/>" |
| 174 "</autofill_flow>" | 174 "</autofill_flow>" |
| 175 "</autofillqueryresponse>"; | 175 "</autofillqueryresponse>"; |
| 176 | 176 |
| 177 ParseQueryXML(xml, true); | 177 ParseQueryXML(xml, true); |
| 178 | 178 |
| 179 EXPECT_EQ(1U, field_infos_.size()); | 179 EXPECT_EQ(1U, field_infos_.size()); |
| 180 EXPECT_EQ(1, page_meta_data_.current_page_number); | 180 EXPECT_EQ(1, page_meta_data_.current_page_number); |
| 181 EXPECT_EQ(10, page_meta_data_.total_pages); | 181 EXPECT_EQ(10, page_meta_data_.total_pages); |
| 182 EXPECT_FALSE(page_meta_data_.ignore_ajax); |
| 182 EXPECT_EQ("foo", page_meta_data_.proceed_element_descriptor.descriptor); | 183 EXPECT_EQ("foo", page_meta_data_.proceed_element_descriptor.descriptor); |
| 183 EXPECT_EQ(autofill::WebElementDescriptor::ID, | 184 EXPECT_EQ(autofill::WebElementDescriptor::ID, |
| 184 page_meta_data_.proceed_element_descriptor.retrieval_method); | 185 page_meta_data_.proceed_element_descriptor.retrieval_method); |
| 185 | 186 |
| 186 // Clear |field_infos_| for the next test; | 187 // Clear |field_infos_| for the next test; |
| 187 field_infos_.clear(); | 188 field_infos_.clear(); |
| 188 | 189 |
| 189 // Test css_selector as page_advance_button. | 190 // Test css_selector as page_advance_button. |
| 190 xml = "<autofillqueryresponse>" | 191 xml = "<autofillqueryresponse>" |
| 191 "<field autofilltype=\"55\"/>" | 192 "<field autofilltype=\"55\"/>" |
| (...skipping 78 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 270 | 271 |
| 271 ParseQueryXML(xml, true); | 272 ParseQueryXML(xml, true); |
| 272 | 273 |
| 273 EXPECT_EQ(1U, field_infos_.size()); | 274 EXPECT_EQ(1U, field_infos_.size()); |
| 274 EXPECT_EQ(1, page_meta_data_.current_page_number); | 275 EXPECT_EQ(1, page_meta_data_.current_page_number); |
| 275 EXPECT_EQ(10, page_meta_data_.total_pages); | 276 EXPECT_EQ(10, page_meta_data_.total_pages); |
| 276 ASSERT_EQ(1U, page_meta_data_.click_elements_after_form_fill.size()); | 277 ASSERT_EQ(1U, page_meta_data_.click_elements_after_form_fill.size()); |
| 277 click_elment = page_meta_data_.click_elements_after_form_fill[0]; | 278 click_elment = page_meta_data_.click_elements_after_form_fill[0]; |
| 278 EXPECT_EQ("btn1", click_elment.descriptor); | 279 EXPECT_EQ("btn1", click_elment.descriptor); |
| 279 EXPECT_EQ(autofill::WebElementDescriptor::ID, click_elment.retrieval_method); | 280 EXPECT_EQ(autofill::WebElementDescriptor::ID, click_elment.retrieval_method); |
| 281 |
| 282 // Clear |field_infos_| for the next test. |
| 283 field_infos_.clear(); |
| 284 |
| 285 // Test setting of ignore_ajax attribute. |
| 286 xml = "<autofillqueryresponse>" |
| 287 "<field autofilltype=\"55\"/>" |
| 288 "<autofill_flow page_no=\"1\" total_pages=\"10\" ignore_ajax=\"true\">" |
| 289 "<page_advance_button css_selector=\"[name="foo"]\"" |
| 290 " id=\"foo\"/>" |
| 291 "</autofill_flow>" |
| 292 "</autofillqueryresponse>"; |
| 293 |
| 294 ParseQueryXML(xml, true); |
| 295 |
| 296 EXPECT_EQ(1U, field_infos_.size()); |
| 297 EXPECT_EQ(1, page_meta_data_.current_page_number); |
| 298 EXPECT_EQ(10, page_meta_data_.total_pages); |
| 299 EXPECT_TRUE(page_meta_data_.ignore_ajax); |
| 300 EXPECT_EQ("[name=\"foo\"]", |
| 301 page_meta_data_.proceed_element_descriptor.descriptor); |
| 302 EXPECT_EQ(autofill::WebElementDescriptor::CSS_SELECTOR, |
| 303 page_meta_data_.proceed_element_descriptor.retrieval_method); |
| 304 |
| 305 // Clear |field_infos_| for the next test. |
| 306 field_infos_.clear(); |
| 307 |
| 308 // Test redundant setting to false of ignore_ajax attribute. |
| 309 xml = "<autofillqueryresponse>" |
| 310 "<field autofilltype=\"55\"/>" |
| 311 "<autofill_flow page_no=\"1\" total_pages=\"10\" ignore_ajax=\"false\">" |
| 312 "<page_advance_button css_selector=\"[name="foo"]\"" |
| 313 " id=\"foo\"/>" |
| 314 "</autofill_flow>" |
| 315 "</autofillqueryresponse>"; |
| 316 |
| 317 ParseQueryXML(xml, true); |
| 318 |
| 319 EXPECT_EQ(1U, field_infos_.size()); |
| 320 EXPECT_EQ(1, page_meta_data_.current_page_number); |
| 321 EXPECT_EQ(10, page_meta_data_.total_pages); |
| 322 EXPECT_FALSE(page_meta_data_.ignore_ajax); |
| 323 EXPECT_EQ("[name=\"foo\"]", |
| 324 page_meta_data_.proceed_element_descriptor.descriptor); |
| 325 EXPECT_EQ(autofill::WebElementDescriptor::CSS_SELECTOR, |
| 326 page_meta_data_.proceed_element_descriptor.retrieval_method); |
| 280 } | 327 } |
| 281 | 328 |
| 282 // Test badly formed XML queries. | 329 // Test badly formed XML queries. |
| 283 TEST_F(AutofillQueryXmlParserTest, ParseErrors) { | 330 TEST_F(AutofillQueryXmlParserTest, ParseErrors) { |
| 284 // Test no Autofill type. | 331 // Test no Autofill type. |
| 285 std::string xml = "<autofillqueryresponse>" | 332 std::string xml = "<autofillqueryresponse>" |
| 286 "<field/>" | 333 "<field/>" |
| 287 "</autofillqueryresponse>"; | 334 "</autofillqueryresponse>"; |
| 288 | 335 |
| 289 ParseQueryXML(xml, false); | 336 ParseQueryXML(xml, false); |
| (...skipping 76 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 366 EXPECT_DOUBLE_EQ(0, negative_); | 413 EXPECT_DOUBLE_EQ(0, negative_); |
| 367 | 414 |
| 368 ParseUploadXML(std::string(), false); | 415 ParseUploadXML(std::string(), false); |
| 369 | 416 |
| 370 EXPECT_DOUBLE_EQ(0, positive_); | 417 EXPECT_DOUBLE_EQ(0, positive_); |
| 371 EXPECT_DOUBLE_EQ(0, negative_); | 418 EXPECT_DOUBLE_EQ(0, negative_); |
| 372 } | 419 } |
| 373 | 420 |
| 374 } // namespace | 421 } // namespace |
| 375 } // namespace autofill | 422 } // namespace autofill |
| OLD | NEW |