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

Side by Side Diff: webkit/quota/quota_manager_unittest.cc

Issue 7533013: Quota: Add quota::StorageType to the GetOriginsCallback definition. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Rebasing onto today's ToT. Created 9 years, 4 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
« no previous file with comments | « webkit/quota/quota_manager.cc ('k') | webkit/quota/quota_types.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 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 <set> 5 #include <set>
6 #include <sstream> 6 #include <sstream>
7 #include <vector> 7 #include <vector>
8 8
9 #include "base/file_util.h" 9 #include "base/file_util.h"
10 #include "base/memory/scoped_callback_factory.h" 10 #include "base/memory/scoped_callback_factory.h"
(...skipping 207 matching lines...) Expand 10 before | Expand all | Expand 10 after
218 void NotifyOriginInUse(const GURL& origin) { 218 void NotifyOriginInUse(const GURL& origin) {
219 quota_manager_->NotifyOriginInUse(origin); 219 quota_manager_->NotifyOriginInUse(origin);
220 } 220 }
221 221
222 void NotifyOriginNoLongerInUse(const GURL& origin) { 222 void NotifyOriginNoLongerInUse(const GURL& origin) {
223 quota_manager_->NotifyOriginNoLongerInUse(origin); 223 quota_manager_->NotifyOriginNoLongerInUse(origin);
224 } 224 }
225 225
226 void GetOriginsModifiedSince(StorageType type, base::Time modified_since) { 226 void GetOriginsModifiedSince(StorageType type, base::Time modified_since) {
227 modified_origins_.clear(); 227 modified_origins_.clear();
228 modified_origins_type_ = kStorageTypeUnknown;
228 quota_manager_->GetOriginsModifiedSince(type, modified_since, 229 quota_manager_->GetOriginsModifiedSince(type, modified_since,
229 callback_factory_.NewCallback( 230 callback_factory_.NewCallback(
230 &QuotaManagerTest::DidGetModifiedOrigins)); 231 &QuotaManagerTest::DidGetModifiedOrigins));
231 } 232 }
232 233
233 void DumpQuotaTable() { 234 void DumpQuotaTable() {
234 quota_entries_.clear(); 235 quota_entries_.clear();
235 quota_manager_->DumpQuotaTable( 236 quota_manager_->DumpQuotaTable(
236 callback_factory_.NewCallback( 237 callback_factory_.NewCallback(
237 &QuotaManagerTest::DidDumpQuotaTable)); 238 &QuotaManagerTest::DidDumpQuotaTable));
(...skipping 61 matching lines...) Expand 10 before | Expand all | Expand 10 after
299 usage_ = usage; 300 usage_ = usage;
300 unlimited_usage_ = unlimited_usage; 301 unlimited_usage_ = unlimited_usage;
301 quota_ = quota; 302 quota_ = quota;
302 available_space_ = available_space; 303 available_space_ = available_space;
303 } 304 }
304 305
305 void DidGetLRUOrigin(const GURL& origin) { 306 void DidGetLRUOrigin(const GURL& origin) {
306 lru_origin_ = origin; 307 lru_origin_ = origin;
307 } 308 }
308 309
309 void DidGetModifiedOrigins(const std::set<GURL>& origins) { 310 void DidGetModifiedOrigins(const std::set<GURL>& origins, StorageType type) {
310 modified_origins_ = origins; 311 modified_origins_ = origins;
312 modified_origins_type_ = type;
311 } 313 }
312 314
313 void DidDumpQuotaTable(const QuotaTableEntries& entries) { 315 void DidDumpQuotaTable(const QuotaTableEntries& entries) {
314 quota_entries_ = entries; 316 quota_entries_ = entries;
315 } 317 }
316 318
317 void DidDumpOriginInfoTable(const OriginInfoTableEntries& entries) { 319 void DidDumpOriginInfoTable(const OriginInfoTableEntries& entries) {
318 origin_info_entries_ = entries; 320 origin_info_entries_ = entries;
319 } 321 }
320 322
(...skipping 17 matching lines...) Expand all
338 340
339 QuotaStatusCode status() const { return quota_status_; } 341 QuotaStatusCode status() const { return quota_status_; }
340 const std::string& host() const { return host_; } 342 const std::string& host() const { return host_; }
341 StorageType type() const { return type_; } 343 StorageType type() const { return type_; }
342 int64 usage() const { return usage_; } 344 int64 usage() const { return usage_; }
343 int64 unlimited_usage() const { return unlimited_usage_; } 345 int64 unlimited_usage() const { return unlimited_usage_; }
344 int64 quota() const { return quota_; } 346 int64 quota() const { return quota_; }
345 int64 available_space() const { return available_space_; } 347 int64 available_space() const { return available_space_; }
346 const GURL& lru_origin() const { return lru_origin_; } 348 const GURL& lru_origin() const { return lru_origin_; }
347 const std::set<GURL>& modified_origins() const { return modified_origins_; } 349 const std::set<GURL>& modified_origins() const { return modified_origins_; }
350 StorageType modified_origins_type() const { return modified_origins_type_; }
348 const QuotaTableEntries& quota_entries() const { return quota_entries_; } 351 const QuotaTableEntries& quota_entries() const { return quota_entries_; }
349 const OriginInfoTableEntries& origin_info_entries() const { 352 const OriginInfoTableEntries& origin_info_entries() const {
350 return origin_info_entries_; 353 return origin_info_entries_;
351 } 354 }
352 FilePath profile_path() const { return data_dir_.path(); } 355 FilePath profile_path() const { return data_dir_.path(); }
353 int status_callback_count() const { return status_callback_count_; } 356 int status_callback_count() const { return status_callback_count_; }
354 void reset_status_callback_count() { status_callback_count_ = 0; } 357 void reset_status_callback_count() { status_callback_count_ = 0; }
355 358
356 private: 359 private:
357 base::Time IncrementMockTime() { 360 base::Time IncrementMockTime() {
358 ++mock_time_counter_; 361 ++mock_time_counter_;
359 return base::Time::FromDoubleT(mock_time_counter_ * 10.0); 362 return base::Time::FromDoubleT(mock_time_counter_ * 10.0);
360 } 363 }
361 364
362 ScopedTempDir data_dir_; 365 ScopedTempDir data_dir_;
363 base::ScopedCallbackFactory<QuotaManagerTest> callback_factory_; 366 base::ScopedCallbackFactory<QuotaManagerTest> callback_factory_;
364 367
365 scoped_refptr<QuotaManager> quota_manager_; 368 scoped_refptr<QuotaManager> quota_manager_;
366 scoped_refptr<MockSpecialStoragePolicy> mock_special_storage_policy_; 369 scoped_refptr<MockSpecialStoragePolicy> mock_special_storage_policy_;
367 370
368 QuotaStatusCode quota_status_; 371 QuotaStatusCode quota_status_;
369 std::string host_; 372 std::string host_;
370 StorageType type_; 373 StorageType type_;
371 int64 usage_; 374 int64 usage_;
372 int64 unlimited_usage_; 375 int64 unlimited_usage_;
373 int64 quota_; 376 int64 quota_;
374 int64 available_space_; 377 int64 available_space_;
375 GURL lru_origin_; 378 GURL lru_origin_;
376 std::set<GURL> modified_origins_; 379 std::set<GURL> modified_origins_;
380 StorageType modified_origins_type_;
377 QuotaTableEntries quota_entries_; 381 QuotaTableEntries quota_entries_;
378 OriginInfoTableEntries origin_info_entries_; 382 OriginInfoTableEntries origin_info_entries_;
379 int status_callback_count_; 383 int status_callback_count_;
380 384
381 int additional_callback_count_; 385 int additional_callback_count_;
382 386
383 int mock_time_counter_; 387 int mock_time_counter_;
384 388
385 DISALLOW_COPY_AND_ASSIGN(QuotaManagerTest); 389 DISALLOW_COPY_AND_ASSIGN(QuotaManagerTest);
386 }; 390 };
(...skipping 1041 matching lines...) Expand 10 before | Expand all | Expand 10 after
1428 { "https://a.com/", kTemp, 0 }, 1432 { "https://a.com/", kTemp, 0 },
1429 { "http://b.com/", kPerm, 0 }, // persistent 1433 { "http://b.com/", kPerm, 0 }, // persistent
1430 { "http://c.com/", kTemp, 0 }, 1434 { "http://c.com/", kTemp, 0 },
1431 }; 1435 };
1432 MockStorageClient* client = CreateClient(kData, ARRAYSIZE_UNSAFE(kData)); 1436 MockStorageClient* client = CreateClient(kData, ARRAYSIZE_UNSAFE(kData));
1433 RegisterClient(client); 1437 RegisterClient(client);
1434 1438
1435 GetOriginsModifiedSince(kTemp, base::Time()); 1439 GetOriginsModifiedSince(kTemp, base::Time());
1436 MessageLoop::current()->RunAllPending(); 1440 MessageLoop::current()->RunAllPending();
1437 EXPECT_TRUE(modified_origins().empty()); 1441 EXPECT_TRUE(modified_origins().empty());
1442 EXPECT_EQ(modified_origins_type(), kTemp);
1438 1443
1439 base::Time time1 = client->IncrementMockTime(); 1444 base::Time time1 = client->IncrementMockTime();
1440 client->ModifyOriginAndNotify(GURL("http://a.com/"), kTemp, 10); 1445 client->ModifyOriginAndNotify(GURL("http://a.com/"), kTemp, 10);
1441 client->ModifyOriginAndNotify(GURL("http://a.com:1/"), kTemp, 10); 1446 client->ModifyOriginAndNotify(GURL("http://a.com:1/"), kTemp, 10);
1442 client->ModifyOriginAndNotify(GURL("http://b.com/"), kPerm, 10); 1447 client->ModifyOriginAndNotify(GURL("http://b.com/"), kPerm, 10);
1443 base::Time time2 = client->IncrementMockTime(); 1448 base::Time time2 = client->IncrementMockTime();
1444 client->ModifyOriginAndNotify(GURL("https://a.com/"), kTemp, 10); 1449 client->ModifyOriginAndNotify(GURL("https://a.com/"), kTemp, 10);
1445 client->ModifyOriginAndNotify(GURL("http://c.com/"), kTemp, 10); 1450 client->ModifyOriginAndNotify(GURL("http://c.com/"), kTemp, 10);
1446 base::Time time3 = client->IncrementMockTime(); 1451 base::Time time3 = client->IncrementMockTime();
1447 1452
1448 GetOriginsModifiedSince(kTemp, time1); 1453 GetOriginsModifiedSince(kTemp, time1);
1449 MessageLoop::current()->RunAllPending(); 1454 MessageLoop::current()->RunAllPending();
1450 EXPECT_EQ(4U, modified_origins().size()); 1455 EXPECT_EQ(4U, modified_origins().size());
1456 EXPECT_EQ(modified_origins_type(), kTemp);
1451 for (size_t i = 0; i < ARRAYSIZE_UNSAFE(kData); ++i) { 1457 for (size_t i = 0; i < ARRAYSIZE_UNSAFE(kData); ++i) {
1452 if (kData[i].type == kTemp) 1458 if (kData[i].type == kTemp)
1453 EXPECT_EQ(1U, modified_origins().count(GURL(kData[i].origin))); 1459 EXPECT_EQ(1U, modified_origins().count(GURL(kData[i].origin)));
1454 } 1460 }
1455 1461
1456 GetOriginsModifiedSince(kTemp, time2); 1462 GetOriginsModifiedSince(kTemp, time2);
1457 MessageLoop::current()->RunAllPending(); 1463 MessageLoop::current()->RunAllPending();
1458 EXPECT_EQ(2U, modified_origins().size()); 1464 EXPECT_EQ(2U, modified_origins().size());
1459 1465
1460 GetOriginsModifiedSince(kTemp, time3); 1466 GetOriginsModifiedSince(kTemp, time3);
1461 MessageLoop::current()->RunAllPending(); 1467 MessageLoop::current()->RunAllPending();
1462 EXPECT_TRUE(modified_origins().empty()); 1468 EXPECT_TRUE(modified_origins().empty());
1469 EXPECT_EQ(modified_origins_type(), kTemp);
1463 1470
1464 client->ModifyOriginAndNotify(GURL("http://a.com/"), kTemp, 10); 1471 client->ModifyOriginAndNotify(GURL("http://a.com/"), kTemp, 10);
1465 1472
1466 GetOriginsModifiedSince(kTemp, time3); 1473 GetOriginsModifiedSince(kTemp, time3);
1467 MessageLoop::current()->RunAllPending(); 1474 MessageLoop::current()->RunAllPending();
1468 EXPECT_EQ(1U, modified_origins().size()); 1475 EXPECT_EQ(1U, modified_origins().size());
1469 EXPECT_EQ(1U, modified_origins().count(GURL("http://a.com/"))); 1476 EXPECT_EQ(1U, modified_origins().count(GURL("http://a.com/")));
1477 EXPECT_EQ(modified_origins_type(), kTemp);
1470 } 1478 }
1471 1479
1472 TEST_F(QuotaManagerTest, DumpQuotaTable) { 1480 TEST_F(QuotaManagerTest, DumpQuotaTable) {
1473 SetPersistentHostQuota("example1.com", 1); 1481 SetPersistentHostQuota("example1.com", 1);
1474 SetPersistentHostQuota("example2.com", 20); 1482 SetPersistentHostQuota("example2.com", 20);
1475 SetPersistentHostQuota("example3.com", 300); 1483 SetPersistentHostQuota("example3.com", 300);
1476 MessageLoop::current()->RunAllPending(); 1484 MessageLoop::current()->RunAllPending();
1477 1485
1478 DumpQuotaTable(); 1486 DumpQuotaTable();
1479 MessageLoop::current()->RunAllPending(); 1487 MessageLoop::current()->RunAllPending();
(...skipping 65 matching lines...) Expand 10 before | Expand all | Expand 10 after
1545 GetPersistentHostQuota(std::string()); 1553 GetPersistentHostQuota(std::string());
1546 MessageLoop::current()->RunAllPending(); 1554 MessageLoop::current()->RunAllPending();
1547 EXPECT_EQ(kQuotaStatusOk, status()); 1555 EXPECT_EQ(kQuotaStatusOk, status());
1548 EXPECT_EQ(0, quota()); 1556 EXPECT_EQ(0, quota());
1549 1557
1550 SetPersistentHostQuota(std::string(), 10); 1558 SetPersistentHostQuota(std::string(), 10);
1551 MessageLoop::current()->RunAllPending(); 1559 MessageLoop::current()->RunAllPending();
1552 EXPECT_EQ(kQuotaErrorNotSupported, status()); 1560 EXPECT_EQ(kQuotaErrorNotSupported, status());
1553 } 1561 }
1554 } // namespace quota 1562 } // namespace quota
OLDNEW
« no previous file with comments | « webkit/quota/quota_manager.cc ('k') | webkit/quota/quota_types.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698