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

Side by Side Diff: components/offline_pages/core/client_policy_controller_unittest.cc

Issue 2835193005: Offline Pages - Policy cleanup (Closed)
Patch Set: add background loader offliner. Created 3 years, 8 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/core/client_policy_controller.h" 5 #include "components/offline_pages/core/client_policy_controller.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 8
9 #include "base/bind.h" 9 #include "base/bind.h"
10 #include "base/time/time.h" 10 #include "base/time/time.h"
(...skipping 17 matching lines...) Expand all
28 ClientPolicyController* controller() { return controller_.get(); } 28 ClientPolicyController* controller() { return controller_.get(); }
29 29
30 // testing::Test 30 // testing::Test
31 void SetUp() override; 31 void SetUp() override;
32 void TearDown() override; 32 void TearDown() override;
33 33
34 protected: 34 protected:
35 void ExpectDownloadSupport(std::string name_space, bool expectation); 35 void ExpectDownloadSupport(std::string name_space, bool expectation);
36 void ExpectRecentTab(std::string name_space, bool expectation); 36 void ExpectRecentTab(std::string name_space, bool expectation);
37 void ExpectOnlyOriginalTab(std::string name_space, bool expectation); 37 void ExpectOnlyOriginalTab(std::string name_space, bool expectation);
38 void ExpectDisabledWhenPrefetchDisabled(std::string name_space,
39 bool expectation);
38 40
39 private: 41 private:
40 std::unique_ptr<ClientPolicyController> controller_; 42 std::unique_ptr<ClientPolicyController> controller_;
41 }; 43 };
42 44
43 void ClientPolicyControllerTest::SetUp() { 45 void ClientPolicyControllerTest::SetUp() {
44 controller_.reset(new ClientPolicyController()); 46 controller_.reset(new ClientPolicyController());
45 } 47 }
46 48
47 void ClientPolicyControllerTest::TearDown() { 49 void ClientPolicyControllerTest::TearDown() {
48 controller_.reset(); 50 controller_.reset();
49 } 51 }
50 52
51 void ClientPolicyControllerTest::ExpectDownloadSupport(std::string name_space, 53 void ClientPolicyControllerTest::ExpectDownloadSupport(std::string name_space,
52 bool expectation) { 54 bool expectation) {
53 std::vector<std::string> cache = 55 std::vector<std::string> cache =
54 controller()->GetNamespacesSupportedByDownload(); 56 controller()->GetNamespacesSupportedByDownload();
55 auto result = std::find(cache.begin(), cache.end(), name_space); 57 auto result = std::find(cache.begin(), cache.end(), name_space);
56 EXPECT_EQ(expectation, result != cache.end()); 58 EXPECT_EQ(expectation, result != cache.end())
romax 2017/04/25 19:18:04 Thanks for the detailed messages!
dewittj 2017/04/25 19:39:41 Acknowledged.
57 EXPECT_EQ(expectation, controller()->IsSupportedByDownload(name_space)); 59 << "Namespace " << name_space
60 << " had incorrect download support when getting namespaces supported by "
61 "download.";
62 EXPECT_EQ(expectation, controller()->IsSupportedByDownload(name_space))
63 << "Namespace " << name_space
64 << " had incorrect download support when directly checking if supported "
65 "by download.";
58 } 66 }
59 67
60 void ClientPolicyControllerTest::ExpectRecentTab(std::string name_space, 68 void ClientPolicyControllerTest::ExpectRecentTab(std::string name_space,
61 bool expectation) { 69 bool expectation) {
62 std::vector<std::string> cache = 70 std::vector<std::string> cache =
63 controller()->GetNamespacesShownAsRecentlyVisitedSite(); 71 controller()->GetNamespacesShownAsRecentlyVisitedSite();
64 auto result = std::find(cache.begin(), cache.end(), name_space); 72 auto result = std::find(cache.begin(), cache.end(), name_space);
65 EXPECT_EQ(expectation, result != cache.end()); 73 EXPECT_EQ(expectation, result != cache.end())
66 EXPECT_EQ(expectation, 74 << "Namespace " << name_space
67 controller()->IsShownAsRecentlyVisitedSite(name_space)); 75 << " had incorrect recent tab support when getting namespaces shown as a"
76 " recently visited site.";
77 EXPECT_EQ(expectation, controller()->IsShownAsRecentlyVisitedSite(name_space))
78 << "Namespace " << name_space
79 << " had incorrect recent tab support when directly checking if shown as"
80 " a recently visited site.";
68 } 81 }
69 82
70 void ClientPolicyControllerTest::ExpectOnlyOriginalTab(std::string name_space, 83 void ClientPolicyControllerTest::ExpectOnlyOriginalTab(std::string name_space,
71 bool expectation) { 84 bool expectation) {
72 std::vector<std::string> cache = 85 std::vector<std::string> cache =
73 controller()->GetNamespacesRestrictedToOriginalTab(); 86 controller()->GetNamespacesRestrictedToOriginalTab();
74 auto result = std::find(cache.begin(), cache.end(), name_space); 87 auto result = std::find(cache.begin(), cache.end(), name_space);
75 EXPECT_EQ(expectation, result != cache.end()); 88 EXPECT_EQ(expectation, result != cache.end())
76 EXPECT_EQ(expectation, controller()->IsRestrictedToOriginalTab(name_space)); 89 << "Namespace " << name_space
90 << " had incorrect restriction when getting namespaces restricted to"
91 " the original tab";
92 EXPECT_EQ(expectation, controller()->IsRestrictedToOriginalTab(name_space))
93 << "Namespace " << name_space
94 << " had incorrect restriction when directly checking if the namespace"
95 " is restricted to the original tab";
96 }
97
98 void ClientPolicyControllerTest::ExpectDisabledWhenPrefetchDisabled(
99 std::string name_space,
100 bool expectation) {
101 std::vector<std::string> cache =
102 controller()->GetNamespacesDisabledWhenPrefetchDisabled();
103 auto result = std::find(cache.begin(), cache.end(), name_space);
104 EXPECT_EQ(expectation, result != cache.end())
105 << "Namespace " << name_space
106 << " had incorrect prefetch pref support when getting namespaces"
107 " disabled when prefetch settings are disabled.";
108 EXPECT_EQ(expectation,
109 controller()->IsDisabledWhenPrefetchDisabled(name_space))
110 << "Namespace " << name_space
111 << " had incorrect download support when directly checking if disabled"
112 " when prefetch settings are disabled.";
77 } 113 }
78 114
79 TEST_F(ClientPolicyControllerTest, FallbackTest) { 115 TEST_F(ClientPolicyControllerTest, FallbackTest) {
80 OfflinePageClientPolicy policy = controller()->GetPolicy(kUndefinedNamespace); 116 OfflinePageClientPolicy policy = controller()->GetPolicy(kUndefinedNamespace);
81 EXPECT_EQ(policy.name_space, kDefaultNamespace); 117 EXPECT_EQ(policy.name_space, kDefaultNamespace);
82 EXPECT_TRUE(isTemporary(policy)); 118 EXPECT_TRUE(isTemporary(policy));
83 EXPECT_TRUE(controller()->IsRemovedOnCacheReset(kUndefinedNamespace)); 119 EXPECT_TRUE(controller()->IsRemovedOnCacheReset(kUndefinedNamespace));
84 ExpectDownloadSupport(kUndefinedNamespace, false); 120 ExpectDownloadSupport(kUndefinedNamespace, false);
85 ExpectRecentTab(kUndefinedNamespace, false); 121 ExpectRecentTab(kUndefinedNamespace, false);
86 ExpectOnlyOriginalTab(kUndefinedNamespace, false); 122 ExpectOnlyOriginalTab(kUndefinedNamespace, false);
123 ExpectDisabledWhenPrefetchDisabled(kUndefinedNamespace, false);
87 } 124 }
88 125
89 TEST_F(ClientPolicyControllerTest, CheckBookmarkDefined) { 126 TEST_F(ClientPolicyControllerTest, CheckBookmarkDefined) {
90 OfflinePageClientPolicy policy = controller()->GetPolicy(kBookmarkNamespace); 127 OfflinePageClientPolicy policy = controller()->GetPolicy(kBookmarkNamespace);
91 EXPECT_EQ(policy.name_space, kBookmarkNamespace); 128 EXPECT_EQ(policy.name_space, kBookmarkNamespace);
92 EXPECT_TRUE(isTemporary(policy)); 129 EXPECT_TRUE(isTemporary(policy));
93 EXPECT_TRUE(controller()->IsRemovedOnCacheReset(kBookmarkNamespace)); 130 EXPECT_TRUE(controller()->IsRemovedOnCacheReset(kBookmarkNamespace));
94 ExpectDownloadSupport(kBookmarkNamespace, false); 131 ExpectDownloadSupport(kBookmarkNamespace, false);
95 ExpectRecentTab(kBookmarkNamespace, false); 132 ExpectRecentTab(kBookmarkNamespace, false);
96 ExpectOnlyOriginalTab(kBookmarkNamespace, false); 133 ExpectOnlyOriginalTab(kBookmarkNamespace, false);
134 ExpectDisabledWhenPrefetchDisabled(kBookmarkNamespace, false);
97 } 135 }
98 136
99 TEST_F(ClientPolicyControllerTest, CheckLastNDefined) { 137 TEST_F(ClientPolicyControllerTest, CheckLastNDefined) {
100 OfflinePageClientPolicy policy = controller()->GetPolicy(kLastNNamespace); 138 OfflinePageClientPolicy policy = controller()->GetPolicy(kLastNNamespace);
101 EXPECT_EQ(policy.name_space, kLastNNamespace); 139 EXPECT_EQ(policy.name_space, kLastNNamespace);
102 EXPECT_TRUE(isTemporary(policy)); 140 EXPECT_TRUE(isTemporary(policy));
103 EXPECT_TRUE(controller()->IsRemovedOnCacheReset(kLastNNamespace)); 141 EXPECT_TRUE(controller()->IsRemovedOnCacheReset(kLastNNamespace));
104 ExpectDownloadSupport(kLastNNamespace, false); 142 ExpectDownloadSupport(kLastNNamespace, false);
105 ExpectRecentTab(kLastNNamespace, true); 143 ExpectRecentTab(kLastNNamespace, true);
106 ExpectOnlyOriginalTab(kLastNNamespace, true); 144 ExpectOnlyOriginalTab(kLastNNamespace, true);
145 ExpectDisabledWhenPrefetchDisabled(kLastNNamespace, false);
107 } 146 }
108 147
109 TEST_F(ClientPolicyControllerTest, CheckAsyncDefined) { 148 TEST_F(ClientPolicyControllerTest, CheckAsyncDefined) {
110 OfflinePageClientPolicy policy = controller()->GetPolicy(kAsyncNamespace); 149 OfflinePageClientPolicy policy = controller()->GetPolicy(kAsyncNamespace);
111 EXPECT_EQ(policy.name_space, kAsyncNamespace); 150 EXPECT_EQ(policy.name_space, kAsyncNamespace);
112 EXPECT_FALSE(isTemporary(policy)); 151 EXPECT_FALSE(isTemporary(policy));
113 EXPECT_FALSE(controller()->IsRemovedOnCacheReset(kAsyncNamespace)); 152 EXPECT_FALSE(controller()->IsRemovedOnCacheReset(kAsyncNamespace));
114 ExpectDownloadSupport(kAsyncNamespace, true); 153 ExpectDownloadSupport(kAsyncNamespace, true);
115 ExpectRecentTab(kAsyncNamespace, false); 154 ExpectRecentTab(kAsyncNamespace, false);
116 ExpectOnlyOriginalTab(kAsyncNamespace, false); 155 ExpectOnlyOriginalTab(kAsyncNamespace, false);
156 ExpectDisabledWhenPrefetchDisabled(kAsyncNamespace, false);
117 } 157 }
118 158
119 TEST_F(ClientPolicyControllerTest, CheckCCTDefined) { 159 TEST_F(ClientPolicyControllerTest, CheckCCTDefined) {
120 OfflinePageClientPolicy policy = controller()->GetPolicy(kCCTNamespace); 160 OfflinePageClientPolicy policy = controller()->GetPolicy(kCCTNamespace);
121 EXPECT_EQ(policy.name_space, kCCTNamespace); 161 EXPECT_EQ(policy.name_space, kCCTNamespace);
122 EXPECT_TRUE(isTemporary(policy)); 162 EXPECT_TRUE(isTemporary(policy));
123 EXPECT_TRUE(controller()->IsRemovedOnCacheReset(kCCTNamespace)); 163 EXPECT_TRUE(controller()->IsRemovedOnCacheReset(kCCTNamespace));
124 ExpectDownloadSupport(kCCTNamespace, false); 164 ExpectDownloadSupport(kCCTNamespace, false);
125 ExpectRecentTab(kCCTNamespace, false); 165 ExpectRecentTab(kCCTNamespace, false);
126 ExpectOnlyOriginalTab(kCCTNamespace, false); 166 ExpectOnlyOriginalTab(kCCTNamespace, false);
167 ExpectDisabledWhenPrefetchDisabled(kCCTNamespace, true);
127 } 168 }
128 169
129 TEST_F(ClientPolicyControllerTest, CheckDownloadDefined) { 170 TEST_F(ClientPolicyControllerTest, CheckDownloadDefined) {
130 OfflinePageClientPolicy policy = controller()->GetPolicy(kDownloadNamespace); 171 OfflinePageClientPolicy policy = controller()->GetPolicy(kDownloadNamespace);
131 EXPECT_EQ(policy.name_space, kDownloadNamespace); 172 EXPECT_EQ(policy.name_space, kDownloadNamespace);
132 EXPECT_FALSE(isTemporary(policy)); 173 EXPECT_FALSE(isTemporary(policy));
133 EXPECT_FALSE(controller()->IsRemovedOnCacheReset(kDownloadNamespace)); 174 EXPECT_FALSE(controller()->IsRemovedOnCacheReset(kDownloadNamespace));
134 ExpectDownloadSupport(kDownloadNamespace, true); 175 ExpectDownloadSupport(kDownloadNamespace, true);
135 ExpectRecentTab(kDownloadNamespace, false); 176 ExpectRecentTab(kDownloadNamespace, false);
136 ExpectOnlyOriginalTab(kDownloadNamespace, false); 177 ExpectOnlyOriginalTab(kDownloadNamespace, false);
178 ExpectDisabledWhenPrefetchDisabled(kDownloadNamespace, false);
137 } 179 }
138 180
139 TEST_F(ClientPolicyControllerTest, CheckNTPSuggestionsDefined) { 181 TEST_F(ClientPolicyControllerTest, CheckNTPSuggestionsDefined) {
140 OfflinePageClientPolicy policy = 182 OfflinePageClientPolicy policy =
141 controller()->GetPolicy(kNTPSuggestionsNamespace); 183 controller()->GetPolicy(kNTPSuggestionsNamespace);
142 EXPECT_EQ(policy.name_space, kNTPSuggestionsNamespace); 184 EXPECT_EQ(policy.name_space, kNTPSuggestionsNamespace);
143 EXPECT_FALSE(isTemporary(policy)); 185 EXPECT_FALSE(isTemporary(policy));
144 EXPECT_TRUE(controller()->IsRemovedOnCacheReset(kNTPSuggestionsNamespace)); 186 EXPECT_FALSE(controller()->IsRemovedOnCacheReset(kNTPSuggestionsNamespace));
145 ExpectDownloadSupport(kNTPSuggestionsNamespace, true); 187 ExpectDownloadSupport(kNTPSuggestionsNamespace, true);
146 ExpectRecentTab(kNTPSuggestionsNamespace, false); 188 ExpectRecentTab(kNTPSuggestionsNamespace, false);
147 ExpectOnlyOriginalTab(kNTPSuggestionsNamespace, false); 189 ExpectOnlyOriginalTab(kNTPSuggestionsNamespace, false);
190 ExpectDisabledWhenPrefetchDisabled(kNTPSuggestionsNamespace, false);
191 }
192
193 TEST_F(ClientPolicyControllerTest, CheckSuggestedArticlesDefined) {
194 OfflinePageClientPolicy policy =
195 controller()->GetPolicy(kSuggestedArticlesNamespace);
196 EXPECT_EQ(policy.name_space, kSuggestedArticlesNamespace);
197 EXPECT_TRUE(isTemporary(policy));
198 EXPECT_TRUE(controller()->IsRemovedOnCacheReset(kSuggestedArticlesNamespace));
199 ExpectDownloadSupport(kSuggestedArticlesNamespace, false);
200 ExpectRecentTab(kSuggestedArticlesNamespace, false);
201 ExpectOnlyOriginalTab(kSuggestedArticlesNamespace, false);
202 ExpectDisabledWhenPrefetchDisabled(kSuggestedArticlesNamespace, true);
148 } 203 }
149 204
150 } // namespace offline_pages 205 } // namespace offline_pages
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698