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 3 // found in the LICENSE file. 4 5 #ifndef COMPONENTS_AUTOFILL_CORE_BROWSER_TEST_PERSONAL_DATA_MANAGER_H_ 6 #define COMPONENTS_AUTOFILL_CORE_BROWSER_TEST_PERSONAL_DATA_MANAGER_H_ 7 8 #include <vector> 9 10 #include "components/autofill/core/browser/autofill_profile.h" 11 #include "components/autofill/core/browser/credit_card.h" 12 #include "components/autofill/core/browser/personal_data_manager.h" 13 14 namespace autofill { 15 16 // A simplistic PersonalDataManager used for testing. 17 class TestPersonalDataManager : public PersonalDataManager { 18 public: 19 TestPersonalDataManager(); 20 virtual ~TestPersonalDataManager(); 21 22 // Adds |profile| to |profiles_|. This does not take ownership of |profile|. 23 void AddTestingProfile(AutofillProfile* profile); 24 25 // Adds |credit_card| to |credit_cards_|. This does not take ownership of 26 // |credit_card|. 27 void AddTestingCreditCard(CreditCard* credit_card); 28 29 virtual const std::vector<AutofillProfile*>& GetProfiles() const OVERRIDE; 30 virtual const std::vector<AutofillProfile*>& web_profiles() const OVERRIDE; 31 virtual const std::vector<CreditCard*>& GetCreditCards() const OVERRIDE; 32 33 virtual std::string SaveImportedProfile( 34 const AutofillProfile& imported_profile) OVERRIDE; 35 virtual std::string SaveImportedCreditCard( 36 const CreditCard& imported_credit_card) OVERRIDE; 37 38 virtual std::string CountryCodeForCurrentTimezone() const OVERRIDE; 39 virtual const std::string& GetDefaultCountryCodeForNewAddress() const 40 OVERRIDE; 41 set_timezone_country_code(const std::string & timezone_country_code)42 void set_timezone_country_code(const std::string& timezone_country_code) { 43 timezone_country_code_ = timezone_country_code; 44 } set_default_country_code(const std::string & default_country_code)45 void set_default_country_code(const std::string& default_country_code) { 46 default_country_code_ = default_country_code; 47 } 48 imported_profile()49 const AutofillProfile& imported_profile() { return imported_profile_; } imported_credit_card()50 const CreditCard& imported_credit_card() { return imported_credit_card_; } 51 52 private: 53 std::vector<AutofillProfile*> profiles_; 54 std::vector<CreditCard*> credit_cards_; 55 AutofillProfile imported_profile_; 56 CreditCard imported_credit_card_; 57 std::string timezone_country_code_; 58 std::string default_country_code_; 59 }; 60 61 } // namespace autofill 62 63 #endif // COMPONENTS_AUTOFILL_CORE_BROWSER_TEST_PERSONAL_DATA_MANAGER_H_ 64