Home | History | Annotate | Download | only in browsing_data
      1 // Copyright (c) 2012 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 CHROME_BROWSER_BROWSING_DATA_MOCK_BROWSING_DATA_LOCAL_STORAGE_HELPER_H_
      6 #define CHROME_BROWSER_BROWSING_DATA_MOCK_BROWSING_DATA_LOCAL_STORAGE_HELPER_H_
      7 
      8 #include <list>
      9 #include <map>
     10 
     11 #include "base/callback.h"
     12 #include "base/compiler_specific.h"
     13 #include "chrome/browser/browsing_data/browsing_data_local_storage_helper.h"
     14 
     15 // Mock for BrowsingDataLocalStorageHelper.
     16 // Use AddLocalStorageSamples() or add directly to response_ list, then
     17 // call Notify().
     18 class MockBrowsingDataLocalStorageHelper
     19     : public BrowsingDataLocalStorageHelper {
     20  public:
     21   explicit MockBrowsingDataLocalStorageHelper(Profile* profile);
     22 
     23   // BrowsingDataLocalStorageHelper implementation.
     24   virtual void StartFetching(
     25       const base::Callback<void(const std::list<LocalStorageInfo>&)>& callback)
     26           OVERRIDE;
     27   virtual void DeleteOrigin(const GURL& origin) OVERRIDE;
     28 
     29   // Adds some LocalStorageInfo samples.
     30   void AddLocalStorageSamples();
     31 
     32   // Notifies the callback.
     33   void Notify();
     34 
     35   // Marks all local storage files as existing.
     36   void Reset();
     37 
     38   // Returns true if all local storage files were deleted since the last Reset()
     39   // invocation.
     40   bool AllDeleted();
     41 
     42   GURL last_deleted_origin_;
     43 
     44  private:
     45   virtual ~MockBrowsingDataLocalStorageHelper();
     46 
     47   base::Callback<void(const std::list<LocalStorageInfo>&)> callback_;
     48 
     49   std::map<const GURL, bool> origins_;
     50 
     51   std::list<LocalStorageInfo> response_;
     52 };
     53 
     54 #endif  // CHROME_BROWSER_BROWSING_DATA_MOCK_BROWSING_DATA_LOCAL_STORAGE_HELPER_H_
     55