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_FILE_SYSTEM_HELPER_H_
      6 #define CHROME_BROWSER_BROWSING_DATA_MOCK_BROWSING_DATA_FILE_SYSTEM_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_file_system_helper.h"
     14 
     15 // Mock for BrowsingDataFileSystemHelper.
     16 // Use AddFileSystemSamples() or add directly to response_ list, then call
     17 // Notify().
     18 class MockBrowsingDataFileSystemHelper : public BrowsingDataFileSystemHelper {
     19  public:
     20   explicit MockBrowsingDataFileSystemHelper(Profile* profile);
     21 
     22   // BrowsingDataFileSystemHelper implementation.
     23   virtual void StartFetching(const base::Callback<
     24       void(const std::list<FileSystemInfo>&)>& callback) OVERRIDE;
     25   virtual void DeleteFileSystemOrigin(const GURL& origin) OVERRIDE;
     26 
     27   // Adds a specific filesystem.
     28   void AddFileSystem(const GURL& origin,
     29                      bool has_persistent,
     30                      bool has_temporary,
     31                      bool has_syncable);
     32 
     33   // Adds some FilesystemInfo samples.
     34   void AddFileSystemSamples();
     35 
     36   // Notifies the callback.
     37   void Notify();
     38 
     39   // Marks all filesystems as existing.
     40   void Reset();
     41 
     42   // Returns true if all filesystemss since the last Reset() invocation were
     43   // deleted.
     44   bool AllDeleted();
     45 
     46   GURL last_deleted_origin_;
     47 
     48  private:
     49   virtual ~MockBrowsingDataFileSystemHelper();
     50 
     51   base::Callback<void(const std::list<FileSystemInfo>&)> callback_;
     52 
     53   // Stores which filesystems exist.
     54   std::map<const std::string, bool> file_systems_;
     55 
     56   std::list<FileSystemInfo> response_;
     57 };
     58 
     59 #endif  // CHROME_BROWSER_BROWSING_DATA_MOCK_BROWSING_DATA_FILE_SYSTEM_HELPER_H_
     60