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

Side by Side Diff: content/browser/quota/quota_database_unittest.cc

Issue 1403673002: Add Quota.TimeSinceOriginEvicted UMA histogram. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: fix histogram comment Created 5 years, 2 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 <algorithm> 5 #include <algorithm>
6 #include <iterator> 6 #include <iterator>
7 #include <set> 7 #include <set>
8 8
9 #include "base/bind.h" 9 #include "base/bind.h"
10 #include "base/callback.h" 10 #include "base/callback.h"
(...skipping 276 matching lines...) Expand 10 before | Expand all | Expand 10 after
287 EXPECT_EQ(0U, origins.count(kOrigin3)); 287 EXPECT_EQ(0U, origins.count(kOrigin3));
288 288
289 EXPECT_TRUE(db.GetOriginsModifiedSince( 289 EXPECT_TRUE(db.GetOriginsModifiedSince(
290 kStorageTypePersistent, &origins, base::Time::FromInternalValue(35))); 290 kStorageTypePersistent, &origins, base::Time::FromInternalValue(35)));
291 EXPECT_EQ(1U, origins.size()); 291 EXPECT_EQ(1U, origins.size());
292 EXPECT_EQ(0U, origins.count(kOrigin1)); 292 EXPECT_EQ(0U, origins.count(kOrigin1));
293 EXPECT_EQ(1U, origins.count(kOrigin2)); 293 EXPECT_EQ(1U, origins.count(kOrigin2));
294 EXPECT_EQ(0U, origins.count(kOrigin3)); 294 EXPECT_EQ(0U, origins.count(kOrigin3));
295 } 295 }
296 296
297 void OriginLastEvicted(const base::FilePath& kDbFile) {
298 QuotaDatabase db(kDbFile);
299 ASSERT_TRUE(db.LazyOpen(true));
300
301 const GURL kOrigin1("http://a/");
302 const GURL kOrigin2("http://b/");
303 const GURL kOrigin3("http://c/");
304
305 base::Time last_eviction_time;
306 EXPECT_TRUE(db.GetOriginLastEvictionTime(kOrigin1, kStorageTypeTemporary,
307 &last_eviction_time));
308 EXPECT_EQ(base::Time(), last_eviction_time);
michaeln 2015/10/13 21:35:36 thnx for the tests! also test DeleteOriginLastEvi
calamity 2015/10/15 07:56:43 Done.
309
310 // Report last eviction time for the test origins.
311 EXPECT_TRUE(db.SetOriginLastEvictionTime(
312 kOrigin1, kStorageTypeTemporary, base::Time::FromInternalValue(10)));
313 EXPECT_TRUE(db.SetOriginLastEvictionTime(
314 kOrigin2, kStorageTypeTemporary, base::Time::FromInternalValue(20)));
315 EXPECT_TRUE(db.SetOriginLastEvictionTime(
316 kOrigin3, kStorageTypeTemporary, base::Time::FromInternalValue(30)));
317
318 EXPECT_TRUE(db.GetOriginLastEvictionTime(kOrigin1, kStorageTypeTemporary,
319 &last_eviction_time));
320 EXPECT_EQ(base::Time::FromInternalValue(10), last_eviction_time);
321 EXPECT_TRUE(db.GetOriginLastEvictionTime(kOrigin2, kStorageTypeTemporary,
322 &last_eviction_time));
323 EXPECT_EQ(base::Time::FromInternalValue(20), last_eviction_time);
324 EXPECT_TRUE(db.GetOriginLastEvictionTime(kOrigin3, kStorageTypeTemporary,
325 &last_eviction_time));
326 EXPECT_EQ(base::Time::FromInternalValue(30), last_eviction_time);
327
328 // Delete last eviction times for the test origins.
329 EXPECT_TRUE(
330 db.DeleteOriginLastEvictionTime(kOrigin1, kStorageTypeTemporary));
331 EXPECT_TRUE(
332 db.DeleteOriginLastEvictionTime(kOrigin2, kStorageTypeTemporary));
333 EXPECT_TRUE(
334 db.DeleteOriginLastEvictionTime(kOrigin3, kStorageTypeTemporary));
335
336 last_eviction_time = base::Time();
337 EXPECT_TRUE(db.GetOriginLastEvictionTime(kOrigin1, kStorageTypeTemporary,
338 &last_eviction_time));
339 EXPECT_EQ(base::Time(), last_eviction_time);
340 EXPECT_TRUE(db.GetOriginLastEvictionTime(kOrigin2, kStorageTypeTemporary,
341 &last_eviction_time));
342 EXPECT_EQ(base::Time(), last_eviction_time);
343 EXPECT_TRUE(db.GetOriginLastEvictionTime(kOrigin3, kStorageTypeTemporary,
344 &last_eviction_time));
345 EXPECT_EQ(base::Time(), last_eviction_time);
346 }
347
297 void RegisterInitialOriginInfo(const base::FilePath& kDbFile) { 348 void RegisterInitialOriginInfo(const base::FilePath& kDbFile) {
298 QuotaDatabase db(kDbFile); 349 QuotaDatabase db(kDbFile);
299 350
300 const GURL kOrigins[] = { 351 const GURL kOrigins[] = {
301 GURL("http://a/"), 352 GURL("http://a/"),
302 GURL("http://b/"), 353 GURL("http://b/"),
303 GURL("http://c/") }; 354 GURL("http://c/") };
304 std::set<GURL> origins(kOrigins, kOrigins + arraysize(kOrigins)); 355 std::set<GURL> origins(kOrigins, kOrigins + arraysize(kOrigins));
305 356
306 EXPECT_TRUE(db.RegisterInitialOriginInfo(origins, kStorageTypeTemporary)); 357 EXPECT_TRUE(db.RegisterInitialOriginInfo(origins, kStorageTypeTemporary));
(...skipping 227 matching lines...) Expand 10 before | Expand all | Expand 10 after
534 } 585 }
535 586
536 TEST_F(QuotaDatabaseTest, OriginLastModifiedSince) { 587 TEST_F(QuotaDatabaseTest, OriginLastModifiedSince) {
537 base::ScopedTempDir data_dir; 588 base::ScopedTempDir data_dir;
538 ASSERT_TRUE(data_dir.CreateUniqueTempDir()); 589 ASSERT_TRUE(data_dir.CreateUniqueTempDir());
539 const base::FilePath kDbFile = data_dir.path().AppendASCII(kDBFileName); 590 const base::FilePath kDbFile = data_dir.path().AppendASCII(kDBFileName);
540 OriginLastModifiedSince(kDbFile); 591 OriginLastModifiedSince(kDbFile);
541 OriginLastModifiedSince(base::FilePath()); 592 OriginLastModifiedSince(base::FilePath());
542 } 593 }
543 594
595 TEST_F(QuotaDatabaseTest, OriginLastEvicted) {
596 base::ScopedTempDir data_dir;
597 ASSERT_TRUE(data_dir.CreateUniqueTempDir());
598 const base::FilePath kDbFile = data_dir.path().AppendASCII(kDBFileName);
599 OriginLastEvicted(kDbFile);
600 OriginLastEvicted(base::FilePath());
601 }
602
544 TEST_F(QuotaDatabaseTest, BootstrapFlag) { 603 TEST_F(QuotaDatabaseTest, BootstrapFlag) {
545 base::ScopedTempDir data_dir; 604 base::ScopedTempDir data_dir;
546 ASSERT_TRUE(data_dir.CreateUniqueTempDir()); 605 ASSERT_TRUE(data_dir.CreateUniqueTempDir());
547 606
548 const base::FilePath kDbFile = data_dir.path().AppendASCII(kDBFileName); 607 const base::FilePath kDbFile = data_dir.path().AppendASCII(kDBFileName);
549 QuotaDatabase db(kDbFile); 608 QuotaDatabase db(kDbFile);
550 609
551 EXPECT_FALSE(db.IsOriginDatabaseBootstrapped()); 610 EXPECT_FALSE(db.IsOriginDatabaseBootstrapped());
552 EXPECT_TRUE(db.SetOriginDatabaseBootstrapped(true)); 611 EXPECT_TRUE(db.SetOriginDatabaseBootstrapped(true));
553 EXPECT_TRUE(db.IsOriginDatabaseBootstrapped()); 612 EXPECT_TRUE(db.IsOriginDatabaseBootstrapped());
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after
585 const base::FilePath kDbFile = data_dir.path().AppendASCII(kDBFileName); 644 const base::FilePath kDbFile = data_dir.path().AppendASCII(kDBFileName);
586 LazyOpen(kDbFile); 645 LazyOpen(kDbFile);
587 ASSERT_TRUE(sql::test::CorruptSizeInHeader(kDbFile)); 646 ASSERT_TRUE(sql::test::CorruptSizeInHeader(kDbFile));
588 sql::ScopedErrorIgnorer ignore_errors; 647 sql::ScopedErrorIgnorer ignore_errors;
589 ignore_errors.IgnoreError(SQLITE_CORRUPT); 648 ignore_errors.IgnoreError(SQLITE_CORRUPT);
590 Reopen(kDbFile); 649 Reopen(kDbFile);
591 EXPECT_TRUE(ignore_errors.CheckIgnoredErrors()); 650 EXPECT_TRUE(ignore_errors.CheckIgnoredErrors());
592 } 651 }
593 652
594 } // namespace content 653 } // namespace content
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698