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

Side by Side Diff: content/browser/indexed_db/indexed_db_cleanup_on_io_error_unittest.cc

Issue 259063004: Track which IndexedDBBackingStores have been opened since boot. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Merged out Created 6 years, 7 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 | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2013 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 <cerrno> 5 #include <cerrno>
6 6
7 #include "base/files/file.h" 7 #include "base/files/file.h"
8 #include "base/files/file_path.h" 8 #include "base/files/file_path.h"
9 #include "base/files/scoped_temp_dir.h" 9 #include "base/files/scoped_temp_dir.h"
10 #include "base/strings/string16.h" 10 #include "base/strings/string16.h"
(...skipping 77 matching lines...) Expand 10 before | Expand all | Expand 10 after
88 base::TaskRunner* task_runner = NULL; 88 base::TaskRunner* task_runner = NULL;
89 scoped_refptr<IndexedDBBackingStore> backing_store = 89 scoped_refptr<IndexedDBBackingStore> backing_store =
90 IndexedDBBackingStore::Open(factory, 90 IndexedDBBackingStore::Open(factory,
91 origin, 91 origin,
92 path, 92 path,
93 request_context, 93 request_context,
94 &data_loss, 94 &data_loss,
95 &data_loss_message, 95 &data_loss_message,
96 &disk_full, 96 &disk_full,
97 &mock_leveldb_factory, 97 &mock_leveldb_factory,
98 task_runner); 98 task_runner,
99 false /* clean_journal */);
99 } 100 }
100 101
101 // TODO(dgrogan): Remove expect_destroy if we end up not using it again. It is 102 // TODO(dgrogan): Remove expect_destroy if we end up not using it again. It is
102 // currently set to false in all 4 calls below. 103 // currently set to false in all 4 calls below.
103 template <class T> 104 template <class T>
104 class MockErrorLevelDBFactory : public LevelDBFactory { 105 class MockErrorLevelDBFactory : public LevelDBFactory {
105 public: 106 public:
106 MockErrorLevelDBFactory(T error, bool expect_destroy) 107 MockErrorLevelDBFactory(T error, bool expect_destroy)
107 : error_(error), 108 : error_(error),
108 expect_destroy_(expect_destroy), 109 expect_destroy_(expect_destroy),
(...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after
147 MockErrorLevelDBFactory<int> mock_leveldb_factory(ENOSPC, false); 148 MockErrorLevelDBFactory<int> mock_leveldb_factory(ENOSPC, false);
148 scoped_refptr<IndexedDBBackingStore> backing_store = 149 scoped_refptr<IndexedDBBackingStore> backing_store =
149 IndexedDBBackingStore::Open(factory, 150 IndexedDBBackingStore::Open(factory,
150 origin, 151 origin,
151 path, 152 path,
152 request_context, 153 request_context,
153 &data_loss, 154 &data_loss,
154 &data_loss_reason, 155 &data_loss_reason,
155 &disk_full, 156 &disk_full,
156 &mock_leveldb_factory, 157 &mock_leveldb_factory,
157 task_runner); 158 task_runner,
159 false /* clean_journal */);
158 160
159 MockErrorLevelDBFactory<base::File::Error> mock_leveldb_factory2( 161 MockErrorLevelDBFactory<base::File::Error> mock_leveldb_factory2(
160 base::File::FILE_ERROR_NO_MEMORY, false); 162 base::File::FILE_ERROR_NO_MEMORY, false);
161 scoped_refptr<IndexedDBBackingStore> backing_store2 = 163 scoped_refptr<IndexedDBBackingStore> backing_store2 =
162 IndexedDBBackingStore::Open(factory, 164 IndexedDBBackingStore::Open(factory,
163 origin, 165 origin,
164 path, 166 path,
165 request_context, 167 request_context,
166 &data_loss, 168 &data_loss,
167 &data_loss_reason, 169 &data_loss_reason,
168 &disk_full, 170 &disk_full,
169 &mock_leveldb_factory2, 171 &mock_leveldb_factory2,
170 task_runner); 172 task_runner,
173 false /* clean_journal */);
171 174
172 MockErrorLevelDBFactory<int> mock_leveldb_factory3(EIO, false); 175 MockErrorLevelDBFactory<int> mock_leveldb_factory3(EIO, false);
173 scoped_refptr<IndexedDBBackingStore> backing_store3 = 176 scoped_refptr<IndexedDBBackingStore> backing_store3 =
174 IndexedDBBackingStore::Open(factory, 177 IndexedDBBackingStore::Open(factory,
175 origin, 178 origin,
176 path, 179 path,
177 request_context, 180 request_context,
178 &data_loss, 181 &data_loss,
179 &data_loss_reason, 182 &data_loss_reason,
180 &disk_full, 183 &disk_full,
181 &mock_leveldb_factory3, 184 &mock_leveldb_factory3,
182 task_runner); 185 task_runner,
186 false /* clean_journal */);
183 187
184 MockErrorLevelDBFactory<base::File::Error> mock_leveldb_factory4( 188 MockErrorLevelDBFactory<base::File::Error> mock_leveldb_factory4(
185 base::File::FILE_ERROR_FAILED, false); 189 base::File::FILE_ERROR_FAILED, false);
186 scoped_refptr<IndexedDBBackingStore> backing_store4 = 190 scoped_refptr<IndexedDBBackingStore> backing_store4 =
187 IndexedDBBackingStore::Open(factory, 191 IndexedDBBackingStore::Open(factory,
188 origin, 192 origin,
189 path, 193 path,
190 request_context, 194 request_context,
191 &data_loss, 195 &data_loss,
192 &data_loss_reason, 196 &data_loss_reason,
193 &disk_full, 197 &disk_full,
194 &mock_leveldb_factory4, 198 &mock_leveldb_factory4,
195 task_runner); 199 task_runner,
200 false /* clean_journal */);
196 } 201 }
197 202
198 } // namespace 203 } // namespace
OLDNEW
« no previous file with comments | « content/browser/indexed_db/indexed_db_backing_store.cc ('k') | content/browser/indexed_db/indexed_db_dispatcher_host.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698