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

Side by Side Diff: components/offline_pages/offline_page_model_event_logger_unittest.cc

Issue 2191183002: [Offline Pages] Add expiration in internal log. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: test Created 4 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
OLDNEW
1 // Copyright 2016 The Chromium Authors. All rights reserved. 1 // Copyright 2016 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 "components/offline_pages/offline_page_model_event_logger.h" 5 #include "components/offline_pages/offline_page_model_event_logger.h"
6 6
7 #include "testing/gtest/include/gtest/gtest.h" 7 #include "testing/gtest/include/gtest/gtest.h"
8 8
9 namespace offline_pages { 9 namespace offline_pages {
10 10
11 namespace { 11 namespace {
12 12
13 const char kNamespace[] = "last_n"; 13 const char kNamespace[] = "last_n";
14 const char kUrl[] = "http://www.wikipedia.org"; 14 const char kUrl[] = "http://www.wikipedia.org";
15 const char kOfflineId[] = "foobar"; 15 const char kOfflineId[] = "foobar";
16 const int kTimeLength = 21; 16 const int kTimeLength = 21;
17 const char kPageSaved[] = 17 const char kPageSaved[] =
18 "http://www.wikipedia.org is saved at last_n with id foobar"; 18 "http://www.wikipedia.org is saved at last_n with id foobar";
19 const char kPageDeleted[] = "Page with ID foobar has been deleted"; 19 const char kPageDeleted[] = "Page with ID foobar has been deleted";
20 const char kPageExpired[] = "Page with ID foobar has been expired";
20 const char kRecordStoreClearError[] = "Offline store clear failed"; 21 const char kRecordStoreClearError[] = "Offline store clear failed";
21 const char kRecordStoreCleared[] = "Offline store cleared"; 22 const char kRecordStoreCleared[] = "Offline store cleared";
22 const char kRecordStoreReloadError[] = 23 const char kRecordStoreReloadError[] =
23 "There was an error reloading the offline store"; 24 "There was an error reloading the offline store";
24 25
25 } // namespace 26 } // namespace
26 27
27 TEST(OfflinePageModelEventLoggerTest, RecordsWhenLoggingIsOn) { 28 TEST(OfflinePageModelEventLoggerTest, RecordsWhenLoggingIsOn) {
28 OfflinePageModelEventLogger logger; 29 OfflinePageModelEventLogger logger;
29 std::vector<std::string> log; 30 std::vector<std::string> log;
30 31
31 logger.SetIsLogging(true); 32 logger.SetIsLogging(true);
32 logger.RecordStoreCleared(); 33 logger.RecordStoreCleared();
33 logger.RecordPageSaved(kNamespace, kUrl, kOfflineId); 34 logger.RecordPageSaved(kNamespace, kUrl, kOfflineId);
34 logger.RecordPageDeleted(kOfflineId); 35 logger.RecordPageDeleted(kOfflineId);
36 logger.RecordPageExpired(kOfflineId);
35 logger.RecordStoreClearError(); 37 logger.RecordStoreClearError();
36 logger.RecordStoreReloadError(); 38 logger.RecordStoreReloadError();
37 logger.GetLogs(&log); 39 logger.GetLogs(&log);
38 40
39 EXPECT_EQ(5u, log.size()); 41 EXPECT_EQ(6u, log.size());
40 EXPECT_EQ(std::string(kRecordStoreCleared), log[4].substr(kTimeLength)); 42 EXPECT_EQ(std::string(kRecordStoreCleared), log[5].substr(kTimeLength));
41 EXPECT_EQ(std::string(kPageSaved), log[3].substr(kTimeLength)); 43 EXPECT_EQ(std::string(kPageSaved), log[4].substr(kTimeLength));
42 EXPECT_EQ(std::string(kPageDeleted), log[2].substr(kTimeLength)); 44 EXPECT_EQ(std::string(kPageDeleted), log[3].substr(kTimeLength));
45 EXPECT_EQ(std::string(kPageExpired), log[2].substr(kTimeLength));
43 EXPECT_EQ(std::string(kRecordStoreClearError), log[1].substr(kTimeLength)); 46 EXPECT_EQ(std::string(kRecordStoreClearError), log[1].substr(kTimeLength));
44 EXPECT_EQ(std::string(kRecordStoreReloadError), log[0].substr(kTimeLength)); 47 EXPECT_EQ(std::string(kRecordStoreReloadError), log[0].substr(kTimeLength));
45 } 48 }
46 49
47 TEST(OfflinePageModelEventLoggerTest, DoesNotRecordWhenLoggingIsOff) { 50 TEST(OfflinePageModelEventLoggerTest, DoesNotRecordWhenLoggingIsOff) {
48 OfflinePageModelEventLogger logger; 51 OfflinePageModelEventLogger logger;
49 std::vector<std::string> log; 52 std::vector<std::string> log;
50 53
51 logger.SetIsLogging(false); 54 logger.SetIsLogging(false);
52 logger.RecordStoreCleared(); 55 logger.RecordStoreCleared();
53 logger.RecordPageSaved(kNamespace, kUrl, kOfflineId); 56 logger.RecordPageSaved(kNamespace, kUrl, kOfflineId);
54 logger.RecordPageDeleted(kOfflineId); 57 logger.RecordPageDeleted(kOfflineId);
58 logger.RecordPageExpired(kOfflineId);
55 logger.RecordStoreClearError(); 59 logger.RecordStoreClearError();
56 logger.RecordStoreReloadError(); 60 logger.RecordStoreReloadError();
57 logger.GetLogs(&log); 61 logger.GetLogs(&log);
58 62
59 EXPECT_EQ(0u, log.size()); 63 EXPECT_EQ(0u, log.size());
60 } 64 }
61 65
62 TEST(OfflinePageModelEventLoggerTest, DoesNotExceedMaxSize) { 66 TEST(OfflinePageModelEventLoggerTest, DoesNotExceedMaxSize) {
63 OfflinePageModelEventLogger logger; 67 OfflinePageModelEventLogger logger;
64 std::vector<std::string> log; 68 std::vector<std::string> log;
65 69
66 logger.SetIsLogging(true); 70 logger.SetIsLogging(true);
67 for (size_t i = 0; i < kMaxLogCount + 1; ++i) { 71 for (size_t i = 0; i < kMaxLogCount + 1; ++i) {
68 logger.RecordStoreCleared(); 72 logger.RecordStoreCleared();
69 } 73 }
70 logger.GetLogs(&log); 74 logger.GetLogs(&log);
71 75
72 EXPECT_EQ(kMaxLogCount, log.size()); 76 EXPECT_EQ(kMaxLogCount, log.size());
73 } 77 }
74 78
75 } // namespace offline_internals 79 } // namespace offline_internals
OLDNEW
« no previous file with comments | « components/offline_pages/offline_page_model_event_logger.cc ('k') | components/offline_pages/offline_page_model_impl.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698