Adding instrumentation to locate the source of jankiness
[chromium-blink-merge.git] / chrome / browser / browsing_data / mock_browsing_data_file_system_helper.h
blob87866459f3059b2ef0860bf407f7f8c744825dd5
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.
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_
8 #include <list>
9 #include <map>
10 #include <string>
12 #include "base/callback.h"
13 #include "base/compiler_specific.h"
14 #include "chrome/browser/browsing_data/browsing_data_file_system_helper.h"
16 // Mock for BrowsingDataFileSystemHelper.
17 // Use AddFileSystemSamples() or add directly to response_ list, then call
18 // Notify().
19 class MockBrowsingDataFileSystemHelper : public BrowsingDataFileSystemHelper {
20 public:
21 explicit MockBrowsingDataFileSystemHelper(Profile* profile);
23 // BrowsingDataFileSystemHelper implementation.
24 virtual void StartFetching(const base::Callback<
25 void(const std::list<FileSystemInfo>&)>& callback) override;
26 virtual void DeleteFileSystemOrigin(const GURL& origin) override;
28 // Adds a specific filesystem.
29 void AddFileSystem(const GURL& origin,
30 bool has_persistent,
31 bool has_temporary,
32 bool has_syncable);
34 // Adds some FilesystemInfo samples.
35 void AddFileSystemSamples();
37 // Notifies the callback.
38 void Notify();
40 // Marks all filesystems as existing.
41 void Reset();
43 // Returns true if all filesystemss since the last Reset() invocation were
44 // deleted.
45 bool AllDeleted();
47 GURL last_deleted_origin_;
49 private:
50 virtual ~MockBrowsingDataFileSystemHelper();
52 base::Callback<void(const std::list<FileSystemInfo>&)> callback_;
54 // Stores which filesystems exist.
55 std::map<const std::string, bool> file_systems_;
57 std::list<FileSystemInfo> response_;
59 DISALLOW_COPY_AND_ASSIGN(MockBrowsingDataFileSystemHelper);
62 #endif // CHROME_BROWSER_BROWSING_DATA_MOCK_BROWSING_DATA_FILE_SYSTEM_HELPER_H_