Make sure webrtc::VideoSourceInterface is released on the main render thread.
[chromium-blink-merge.git] / content / public / test / mock_special_storage_policy.h
blob83f7cc9dcc42badf9864c7e7b87f99fb0ed8c5f6
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 CONTENT_BROWSER_QUOTA_MOCK_SPECIAL_STORAGE_POLICY_H_
6 #define CONTENT_BROWSER_QUOTA_MOCK_SPECIAL_STORAGE_POLICY_H_
8 #include <set>
9 #include <string>
11 #include "url/gurl.h"
12 #include "webkit/browser/quota/special_storage_policy.h"
14 using quota::SpecialStoragePolicy;
16 namespace content {
18 class MockSpecialStoragePolicy : public quota::SpecialStoragePolicy {
19 public:
20 MockSpecialStoragePolicy();
22 virtual bool IsStorageProtected(const GURL& origin) OVERRIDE;
23 virtual bool IsStorageUnlimited(const GURL& origin) OVERRIDE;
24 virtual bool IsStorageSessionOnly(const GURL& origin) OVERRIDE;
25 virtual bool CanQueryDiskSize(const GURL& origin) OVERRIDE;
26 virtual bool IsFileHandler(const std::string& extension_id) OVERRIDE;
27 virtual bool HasIsolatedStorage(const GURL& origin) OVERRIDE;
28 virtual bool HasSessionOnlyOrigins() OVERRIDE;
30 void AddProtected(const GURL& origin) {
31 protected_.insert(origin);
34 void AddUnlimited(const GURL& origin) {
35 unlimited_.insert(origin);
38 void RemoveUnlimited(const GURL& origin) {
39 unlimited_.erase(origin);
42 void AddSessionOnly(const GURL& origin) {
43 session_only_.insert(origin);
46 void GrantQueryDiskSize(const GURL& origin) {
47 can_query_disk_size_.insert(origin);
50 void AddFileHandler(const std::string& id) {
51 file_handlers_.insert(id);
54 void AddIsolated(const GURL& origin) {
55 isolated_.insert(origin);
58 void RemoveIsolated(const GURL& origin) {
59 isolated_.erase(origin);
62 void SetAllUnlimited(bool all_unlimited) {
63 all_unlimited_ = all_unlimited;
66 void Reset() {
67 protected_.clear();
68 unlimited_.clear();
69 session_only_.clear();
70 can_query_disk_size_.clear();
71 file_handlers_.clear();
72 isolated_.clear();
73 all_unlimited_ = false;
76 void NotifyGranted(const GURL& origin, int change_flags) {
77 SpecialStoragePolicy::NotifyGranted(origin, change_flags);
80 void NotifyRevoked(const GURL& origin, int change_flags) {
81 SpecialStoragePolicy::NotifyRevoked(origin, change_flags);
84 void NotifyCleared() {
85 SpecialStoragePolicy::NotifyCleared();
88 protected:
89 virtual ~MockSpecialStoragePolicy();
91 private:
92 std::set<GURL> protected_;
93 std::set<GURL> unlimited_;
94 std::set<GURL> session_only_;
95 std::set<GURL> can_query_disk_size_;
96 std::set<GURL> isolated_;
97 std::set<std::string> file_handlers_;
99 bool all_unlimited_;
101 } // namespace content
103 #endif // CONTENT_BROWSER_QUOTA_MOCK_SPECIAL_STORAGE_POLICY_H_