Adding instrumentation to locate the source of jankiness
[chromium-blink-merge.git] / chrome / browser / browsing_data / mock_browsing_data_service_worker_helper.h
blobe3575f3538432bf39e59fd30eff9df8e62afcb48
1 // Copyright 2014 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_SERVICE_WORKER_HELPER_H_
6 #define CHROME_BROWSER_BROWSING_DATA_MOCK_BROWSING_DATA_SERVICE_WORKER_HELPER_H_
8 #include <list>
9 #include <map>
11 #include "base/callback.h"
12 #include "base/compiler_specific.h"
13 #include "chrome/browser/browsing_data/browsing_data_service_worker_helper.h"
15 class Profile;
17 // Mock for BrowsingDataServiceWorkerHelper.
18 // Use AddServiceWorkerSamples() or add directly to response_ list, then
19 // call Notify().
20 class MockBrowsingDataServiceWorkerHelper
21 : public BrowsingDataServiceWorkerHelper {
22 public:
23 explicit MockBrowsingDataServiceWorkerHelper(Profile* profile);
25 // Adds some ServiceWorkerInfo samples.
26 void AddServiceWorkerSamples();
28 // Notifies the callback.
29 void Notify();
31 // Marks all service worker files as existing.
32 void Reset();
34 // Returns true if all service worker files were deleted since the last
35 // Reset() invokation.
36 bool AllDeleted();
38 // BrowsingDataServiceWorkerHelper.
39 virtual void StartFetching(const base::Callback<void(
40 const std::list<content::ServiceWorkerUsageInfo>&)>& callback) override;
41 virtual void DeleteServiceWorkers(const GURL& origin) override;
43 private:
44 virtual ~MockBrowsingDataServiceWorkerHelper();
46 base::Callback<void(const std::list<content::ServiceWorkerUsageInfo>&)>
47 callback_;
48 std::map<GURL, bool> origins_;
49 std::list<content::ServiceWorkerUsageInfo> response_;
51 DISALLOW_COPY_AND_ASSIGN(MockBrowsingDataServiceWorkerHelper);
54 #endif // CHROME_BROWSER_BROWSING_DATA_MOCK_BROWSING_DATA_SERVICE_WORKER_HELPER_H_