diff options
author | benquan@chromium.org <benquan@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-05-07 05:33:36 +0000 |
---|---|---|
committer | benquan@chromium.org <benquan@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-05-07 05:33:36 +0000 |
commit | 636075a7fab4ec832b1f34a6e0f70f6900085a9f (patch) | |
tree | 786da2c4282ec286eabab93b99329a779e2ce4db /components | |
parent | 34163b29888fc51bb25f851e2aac826288197490 (diff) | |
download | chromium_src-636075a7fab4ec832b1f34a6e0f70f6900085a9f.zip chromium_src-636075a7fab4ec832b1f34a6e0f70f6900085a9f.tar.gz chromium_src-636075a7fab4ec832b1f34a6e0f70f6900085a9f.tar.bz2 |
Change AutocheckoutPageMetaData::proceed_element_descriptor to be non-scoped_ptr as it is always required. Fix related tests as well.
BUG=238473
Review URL: https://chromiumcodereview.appspot.com/15017005
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@198636 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'components')
4 files changed, 13 insertions, 19 deletions
diff --git a/components/autofill/browser/autocheckout_manager.cc b/components/autofill/browser/autocheckout_manager.cc index bb367e8..f451e79 100644 --- a/components/autofill/browser/autocheckout_manager.cc +++ b/components/autofill/browser/autocheckout_manager.cc @@ -179,7 +179,7 @@ void AutocheckoutManager::FillForms() { host->Send(new AutofillMsg_FillFormsAndClick( host->GetRoutingID(), filled_forms, - *page_meta_data_->proceed_element_descriptor)); + page_meta_data_->proceed_element_descriptor)); } void AutocheckoutManager::OnClickFailed(AutocheckoutStatus status) { diff --git a/components/autofill/browser/autocheckout_manager_unittest.cc b/components/autofill/browser/autocheckout_manager_unittest.cc index 8f0d011..f6a1638 100644 --- a/components/autofill/browser/autocheckout_manager_unittest.cc +++ b/components/autofill/browser/autocheckout_manager_unittest.cc @@ -131,11 +131,9 @@ scoped_ptr<FormStructure> CreateTestFormStructureWithDefaultValues() { return form_structure.Pass(); } -scoped_ptr<WebElementDescriptor> CreateProceedElement() { - scoped_ptr<WebElementDescriptor> proceed_element(new WebElementDescriptor()); +void PopulateProceedElement(WebElementDescriptor* proceed_element) { proceed_element->descriptor = "#foo"; proceed_element->retrieval_method = WebElementDescriptor::ID; - return proceed_element.Pass(); } scoped_ptr<AutocheckoutPageMetaData> CreateStartOfFlowMetaData() { @@ -143,7 +141,7 @@ scoped_ptr<AutocheckoutPageMetaData> CreateStartOfFlowMetaData() { new AutocheckoutPageMetaData()); start_of_flow->current_page_number = 0; start_of_flow->total_pages = 3; - start_of_flow->proceed_element_descriptor = CreateProceedElement().Pass(); + PopulateProceedElement(&start_of_flow->proceed_element_descriptor); return start_of_flow.Pass(); } @@ -151,14 +149,14 @@ scoped_ptr<AutocheckoutPageMetaData> CreateInFlowMetaData() { scoped_ptr<AutocheckoutPageMetaData> in_flow(new AutocheckoutPageMetaData()); in_flow->current_page_number = 1; in_flow->total_pages = 3; - in_flow->proceed_element_descriptor = CreateProceedElement().Pass(); + PopulateProceedElement(&in_flow->proceed_element_descriptor); return in_flow.Pass(); } scoped_ptr<AutocheckoutPageMetaData> CreateNotInFlowMetaData() { scoped_ptr<AutocheckoutPageMetaData> not_in_flow( new AutocheckoutPageMetaData()); - not_in_flow->proceed_element_descriptor = CreateProceedElement().Pass(); + PopulateProceedElement(¬_in_flow->proceed_element_descriptor ); return not_in_flow.Pass(); } @@ -167,7 +165,7 @@ scoped_ptr<AutocheckoutPageMetaData> CreateEndOfFlowMetaData() { new AutocheckoutPageMetaData()); end_of_flow->current_page_number = 2; end_of_flow->total_pages = 3; - end_of_flow->proceed_element_descriptor = CreateProceedElement().Pass(); + PopulateProceedElement(&end_of_flow->proceed_element_descriptor); return end_of_flow.Pass(); } @@ -176,7 +174,7 @@ scoped_ptr<AutocheckoutPageMetaData> CreateOnePageFlowMetaData() { new AutocheckoutPageMetaData()); one_page_flow->current_page_number = 0; one_page_flow->total_pages = 1; - one_page_flow->proceed_element_descriptor = CreateProceedElement().Pass(); + PopulateProceedElement(&one_page_flow->proceed_element_descriptor); return one_page_flow.Pass(); } diff --git a/components/autofill/browser/autocheckout_page_meta_data.h b/components/autofill/browser/autocheckout_page_meta_data.h index 20b0883..f1b9a7a 100644 --- a/components/autofill/browser/autocheckout_page_meta_data.h +++ b/components/autofill/browser/autocheckout_page_meta_data.h @@ -5,7 +5,7 @@ #ifndef COMPONENTS_AUTOFILL_BROWSER_AUTOCHECKOUT_PAGE_META_DATA_H_ #define COMPONENTS_AUTOFILL_BROWSER_AUTOCHECKOUT_PAGE_META_DATA_H_ -#include "base/memory/scoped_ptr.h" +#include "base/basictypes.h" #include "components/autofill/common/web_element_descriptor.h" namespace autofill { @@ -36,9 +36,9 @@ struct AutocheckoutPageMetaData { // belong to any autofill flow, it is set to -1. int total_pages; - // The proceed element of the multipage Autofill flow. Can be null if the - // current page is the last page of a flow or isn't a member of a flow. - scoped_ptr<WebElementDescriptor> proceed_element_descriptor; + // The proceed element of the multipage Autofill flow. It can be empty + // if current page is the last page of a flow or isn't a member of a flow. + WebElementDescriptor proceed_element_descriptor; private: DISALLOW_COPY_AND_ASSIGN(AutocheckoutPageMetaData); diff --git a/components/autofill/browser/form_structure.cc b/components/autofill/browser/form_structure.cc index 136d997..ca37a61 100644 --- a/components/autofill/browser/form_structure.cc +++ b/components/autofill/browser/form_structure.cc @@ -542,12 +542,8 @@ void FormStructure::ParseQueryResponse( page_meta_data->current_page_number = parse_handler.current_page_number(); page_meta_data->total_pages = parse_handler.total_pages(); if (parse_handler.proceed_element_descriptor()) { - page_meta_data->proceed_element_descriptor.reset( - new autofill::WebElementDescriptor( - *parse_handler.proceed_element_descriptor())); - } else { - page_meta_data->proceed_element_descriptor.reset( - new autofill::WebElementDescriptor()); + page_meta_data->proceed_element_descriptor = + *parse_handler.proceed_element_descriptor(); } metric_logger.LogServerQueryMetric(AutofillMetrics::QUERY_RESPONSE_PARSED); |