Home | History | Annotate | Download | only in browser
      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 
     42   void set_timezone_country_code(const std::string& timezone_country_code) {
     43     timezone_country_code_ = timezone_country_code;
     44   }
     45   void set_default_country_code(const std::string& default_country_code) {
     46     default_country_code_ = default_country_code;
     47   }
     48 
     49   const AutofillProfile& imported_profile() { return imported_profile_; }
     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