Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(282)

Side by Side Diff: content/browser/service_worker/service_worker_cache_unittest.cc

Issue 823713002: Standardize usage of virtual/override/final specifiers in content/. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 years, 12 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 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 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "content/browser/service_worker/service_worker_cache.h" 5 #include "content/browser/service_worker/service_worker_cache.h"
6 6
7 #include "base/files/file_path.h" 7 #include "base/files/file_path.h"
8 #include "base/files/scoped_temp_dir.h" 8 #include "base/files/scoped_temp_dir.h"
9 #include "base/message_loop/message_loop_proxy.h" 9 #include "base/message_loop/message_loop_proxy.h"
10 #include "base/run_loop.h" 10 #include "base/run_loop.h"
(...skipping 29 matching lines...) Expand all
40 blob_storage_context, NULL, base::MessageLoopProxy::current().get()); 40 blob_storage_context, NULL, base::MessageLoopProxy::current().get());
41 } 41 }
42 42
43 // A disk_cache::Backend wrapper that can delay operations. 43 // A disk_cache::Backend wrapper that can delay operations.
44 class DelayableBackend : public disk_cache::Backend { 44 class DelayableBackend : public disk_cache::Backend {
45 public: 45 public:
46 DelayableBackend(scoped_ptr<disk_cache::Backend> backend) 46 DelayableBackend(scoped_ptr<disk_cache::Backend> backend)
47 : backend_(backend.Pass()), delay_open_(false) {} 47 : backend_(backend.Pass()), delay_open_(false) {}
48 48
49 // disk_cache::Backend overrides 49 // disk_cache::Backend overrides
50 virtual net::CacheType GetCacheType() const override { 50 net::CacheType GetCacheType() const override {
51 return backend_->GetCacheType(); 51 return backend_->GetCacheType();
52 } 52 }
53 virtual int32 GetEntryCount() const override { 53 int32 GetEntryCount() const override { return backend_->GetEntryCount(); }
54 return backend_->GetEntryCount(); 54 int OpenEntry(const std::string& key,
55 } 55 disk_cache::Entry** entry,
56 virtual int OpenEntry(const std::string& key, 56 const CompletionCallback& callback) override {
57 disk_cache::Entry** entry,
58 const CompletionCallback& callback) override {
59 if (delay_open_) { 57 if (delay_open_) {
60 open_entry_callback_ = 58 open_entry_callback_ =
61 base::Bind(&DelayableBackend::OpenEntryDelayedImpl, 59 base::Bind(&DelayableBackend::OpenEntryDelayedImpl,
62 base::Unretained(this), key, entry, callback); 60 base::Unretained(this), key, entry, callback);
63 return net::ERR_IO_PENDING; 61 return net::ERR_IO_PENDING;
64 } 62 }
65 63
66 return backend_->OpenEntry(key, entry, callback); 64 return backend_->OpenEntry(key, entry, callback);
67 } 65 }
68 virtual int CreateEntry(const std::string& key, 66 int CreateEntry(const std::string& key,
69 disk_cache::Entry** entry, 67 disk_cache::Entry** entry,
70 const CompletionCallback& callback) override { 68 const CompletionCallback& callback) override {
71 return backend_->CreateEntry(key, entry, callback); 69 return backend_->CreateEntry(key, entry, callback);
72 } 70 }
73 virtual int DoomEntry(const std::string& key, 71 int DoomEntry(const std::string& key,
74 const CompletionCallback& callback) override { 72 const CompletionCallback& callback) override {
75 return backend_->DoomEntry(key, callback); 73 return backend_->DoomEntry(key, callback);
76 } 74 }
77 virtual int DoomAllEntries(const CompletionCallback& callback) override { 75 int DoomAllEntries(const CompletionCallback& callback) override {
78 return backend_->DoomAllEntries(callback); 76 return backend_->DoomAllEntries(callback);
79 } 77 }
80 virtual int DoomEntriesBetween(base::Time initial_time, 78 int DoomEntriesBetween(base::Time initial_time,
81 base::Time end_time, 79 base::Time end_time,
82 const CompletionCallback& callback) override { 80 const CompletionCallback& callback) override {
83 return backend_->DoomEntriesBetween(initial_time, end_time, callback); 81 return backend_->DoomEntriesBetween(initial_time, end_time, callback);
84 } 82 }
85 virtual int DoomEntriesSince(base::Time initial_time, 83 int DoomEntriesSince(base::Time initial_time,
86 const CompletionCallback& callback) override { 84 const CompletionCallback& callback) override {
87 return backend_->DoomEntriesSince(initial_time, callback); 85 return backend_->DoomEntriesSince(initial_time, callback);
88 } 86 }
89 virtual scoped_ptr<Iterator> CreateIterator() override { 87 scoped_ptr<Iterator> CreateIterator() override {
90 return backend_->CreateIterator(); 88 return backend_->CreateIterator();
91 } 89 }
92 virtual void GetStats( 90 void GetStats(
93 std::vector<std::pair<std::string, std::string>>* stats) override { 91 std::vector<std::pair<std::string, std::string>>* stats) override {
94 return backend_->GetStats(stats); 92 return backend_->GetStats(stats);
95 } 93 }
96 virtual void OnExternalCacheHit(const std::string& key) override { 94 void OnExternalCacheHit(const std::string& key) override {
97 return backend_->OnExternalCacheHit(key); 95 return backend_->OnExternalCacheHit(key);
98 } 96 }
99 97
100 // Call to continue a delayed open. 98 // Call to continue a delayed open.
101 void OpenEntryContinue() { 99 void OpenEntryContinue() {
102 EXPECT_FALSE(open_entry_callback_.is_null()); 100 EXPECT_FALSE(open_entry_callback_.is_null());
103 open_entry_callback_.Run(); 101 open_entry_callback_.Run();
104 } 102 }
105 103
106 void set_delay_open(bool value) { delay_open_ = value; } 104 void set_delay_open(bool value) { delay_open_ = value; }
(...skipping 23 matching lines...) Expand all
130 net::URLRequestContext* request_context, 128 net::URLRequestContext* request_context,
131 const scoped_refptr<storage::QuotaManagerProxy>& quota_manager_proxy, 129 const scoped_refptr<storage::QuotaManagerProxy>& quota_manager_proxy,
132 base::WeakPtr<storage::BlobStorageContext> blob_context) 130 base::WeakPtr<storage::BlobStorageContext> blob_context)
133 : ServiceWorkerCache(origin, 131 : ServiceWorkerCache(origin,
134 path, 132 path,
135 request_context, 133 request_context,
136 quota_manager_proxy, 134 quota_manager_proxy,
137 blob_context), 135 blob_context),
138 delay_backend_creation_(false) {} 136 delay_backend_creation_(false) {}
139 137
140 virtual void CreateBackend(const ErrorCallback& callback) override { 138 void CreateBackend(const ErrorCallback& callback) override {
141 backend_creation_callback_ = callback; 139 backend_creation_callback_ = callback;
142 if (delay_backend_creation_) 140 if (delay_backend_creation_)
143 return; 141 return;
144 ContinueCreateBackend(); 142 ContinueCreateBackend();
145 } 143 }
146 144
147 void ContinueCreateBackend() { 145 void ContinueCreateBackend() {
148 ServiceWorkerCache::CreateBackend(backend_creation_callback_); 146 ServiceWorkerCache::CreateBackend(backend_creation_callback_);
149 } 147 }
150 148
151 void set_delay_backend_creation(bool delay) { 149 void set_delay_backend_creation(bool delay) {
152 delay_backend_creation_ = delay; 150 delay_backend_creation_ = delay;
153 } 151 }
154 152
155 // Swap the existing backend with a delayable one. The backend must have been 153 // Swap the existing backend with a delayable one. The backend must have been
156 // created before calling this. 154 // created before calling this.
157 DelayableBackend* UseDelayableBackend() { 155 DelayableBackend* UseDelayableBackend() {
158 EXPECT_TRUE(backend_); 156 EXPECT_TRUE(backend_);
159 DelayableBackend* delayable_backend = new DelayableBackend(backend_.Pass()); 157 DelayableBackend* delayable_backend = new DelayableBackend(backend_.Pass());
160 backend_.reset(delayable_backend); 158 backend_.reset(delayable_backend);
161 return delayable_backend; 159 return delayable_backend;
162 } 160 }
163 161
164 private: 162 private:
165 virtual ~TestServiceWorkerCache() override {} 163 ~TestServiceWorkerCache() override {}
166 164
167 bool delay_backend_creation_; 165 bool delay_backend_creation_;
168 ErrorCallback backend_creation_callback_; 166 ErrorCallback backend_creation_callback_;
169 167
170 DISALLOW_COPY_AND_ASSIGN(TestServiceWorkerCache); 168 DISALLOW_COPY_AND_ASSIGN(TestServiceWorkerCache);
171 }; 169 };
172 170
173 class ServiceWorkerCacheTest : public testing::Test { 171 class ServiceWorkerCacheTest : public testing::Test {
174 public: 172 public:
175 ServiceWorkerCacheTest() 173 ServiceWorkerCacheTest()
(...skipping 732 matching lines...) Expand 10 before | Expand all | Expand 10 after
908 EXPECT_TRUE(callback_closed_); 906 EXPECT_TRUE(callback_closed_);
909 907
910 VerifyAllOpsFail(); 908 VerifyAllOpsFail();
911 } 909 }
912 910
913 INSTANTIATE_TEST_CASE_P(ServiceWorkerCacheTest, 911 INSTANTIATE_TEST_CASE_P(ServiceWorkerCacheTest,
914 ServiceWorkerCacheTestP, 912 ServiceWorkerCacheTestP,
915 ::testing::Values(false, true)); 913 ::testing::Values(false, true));
916 914
917 } // namespace content 915 } // namespace content
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698