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

Side by Side Diff: components/subresource_filter/core/browser/subresource_filter_features_unittest.cc

Issue 2798983002: Introduce subresource_filter::Configuration. (Closed)
Patch Set: Rebase. 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
« no previous file with comments | « components/subresource_filter/core/browser/subresource_filter_features.cc ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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/subresource_filter/core/browser/subresource_filter_features .h" 5 #include "components/subresource_filter/core/browser/subresource_filter_features .h"
6 6
7 #include <string> 7 #include <string>
8 8
9 #include "base/metrics/field_trial.h" 9 #include "base/metrics/field_trial.h"
10 #include "components/subresource_filter/core/browser/subresource_filter_features _test_support.h" 10 #include "components/subresource_filter/core/browser/subresource_filter_features _test_support.h"
(...skipping 24 matching lines...) Expand all
35 SCOPED_TRACE(::testing::Message("Enabled = ") << test_case.feature_enabled); 35 SCOPED_TRACE(::testing::Message("Enabled = ") << test_case.feature_enabled);
36 SCOPED_TRACE(::testing::Message("ActivationLevelParam = \"") 36 SCOPED_TRACE(::testing::Message("ActivationLevelParam = \"")
37 << test_case.activation_level_param << "\""); 37 << test_case.activation_level_param << "\"");
38 38
39 base::FieldTrialList field_trial_list(nullptr /* entropy_provider */); 39 base::FieldTrialList field_trial_list(nullptr /* entropy_provider */);
40 testing::ScopedSubresourceFilterFeatureToggle scoped_feature_toggle( 40 testing::ScopedSubresourceFilterFeatureToggle scoped_feature_toggle(
41 test_case.feature_enabled ? base::FeatureList::OVERRIDE_ENABLE_FEATURE 41 test_case.feature_enabled ? base::FeatureList::OVERRIDE_ENABLE_FEATURE
42 : base::FeatureList::OVERRIDE_USE_DEFAULT, 42 : base::FeatureList::OVERRIDE_USE_DEFAULT,
43 test_case.activation_level_param, kActivationScopeNoSites); 43 test_case.activation_level_param, kActivationScopeNoSites);
44 44
45 EXPECT_EQ(test_case.expected_activation_level, GetMaximumActivationLevel()); 45 Configuration actual_configuration = GetActiveConfiguration();
46 EXPECT_EQ(ActivationScope::NO_SITES, GetCurrentActivationScope()); 46 EXPECT_EQ(test_case.expected_activation_level,
47 actual_configuration.activation_level);
48 EXPECT_EQ(ActivationScope::NO_SITES, actual_configuration.activation_scope);
47 } 49 }
48 } 50 }
49 51
50 TEST(SubresourceFilterFeaturesTest, ActivationScope) { 52 TEST(SubresourceFilterFeaturesTest, ActivationScope) {
51 const struct { 53 const struct {
52 bool feature_enabled; 54 bool feature_enabled;
53 const char* activation_scope_param; 55 const char* activation_scope_param;
54 ActivationScope expected_activation_scope; 56 ActivationScope expected_activation_scope;
55 } kTestCases[] = { 57 } kTestCases[] = {
56 {false, "", ActivationScope::NO_SITES}, 58 {false, "", ActivationScope::NO_SITES},
(...skipping 13 matching lines...) Expand all
70 SCOPED_TRACE(::testing::Message("Enabled = ") << test_case.feature_enabled); 72 SCOPED_TRACE(::testing::Message("Enabled = ") << test_case.feature_enabled);
71 SCOPED_TRACE(::testing::Message("ActivationScopeParam = \"") 73 SCOPED_TRACE(::testing::Message("ActivationScopeParam = \"")
72 << test_case.activation_scope_param << "\""); 74 << test_case.activation_scope_param << "\"");
73 75
74 base::FieldTrialList field_trial_list(nullptr /* entropy_provider */); 76 base::FieldTrialList field_trial_list(nullptr /* entropy_provider */);
75 testing::ScopedSubresourceFilterFeatureToggle scoped_feature_toggle( 77 testing::ScopedSubresourceFilterFeatureToggle scoped_feature_toggle(
76 test_case.feature_enabled ? base::FeatureList::OVERRIDE_ENABLE_FEATURE 78 test_case.feature_enabled ? base::FeatureList::OVERRIDE_ENABLE_FEATURE
77 : base::FeatureList::OVERRIDE_USE_DEFAULT, 79 : base::FeatureList::OVERRIDE_USE_DEFAULT,
78 kActivationLevelDisabled, test_case.activation_scope_param); 80 kActivationLevelDisabled, test_case.activation_scope_param);
79 81
80 EXPECT_EQ(ActivationLevel::DISABLED, GetMaximumActivationLevel()); 82 Configuration actual_configuration = GetActiveConfiguration();
81 EXPECT_EQ(test_case.expected_activation_scope, GetCurrentActivationScope()); 83 EXPECT_EQ(ActivationLevel::DISABLED, actual_configuration.activation_level);
84 EXPECT_EQ(test_case.expected_activation_scope,
85 actual_configuration.activation_scope);
82 } 86 }
83 } 87 }
84 88
85 TEST(SubresourceFilterFeaturesTest, ActivationLevelAndScope) { 89 TEST(SubresourceFilterFeaturesTest, ActivationLevelAndScope) {
86 const struct { 90 const struct {
87 bool feature_enabled; 91 bool feature_enabled;
88 const char* activation_level_param; 92 const char* activation_level_param;
89 ActivationLevel expected_activation_level; 93 ActivationLevel expected_activation_level;
90 const char* activation_scope_param; 94 const char* activation_scope_param;
91 ActivationScope expected_activation_scope; 95 ActivationScope expected_activation_scope;
(...skipping 27 matching lines...) Expand all
119 {false, kActivationLevelEnabled, ActivationLevel::DISABLED, 123 {false, kActivationLevelEnabled, ActivationLevel::DISABLED,
120 kActivationScopeAllSites, ActivationScope::NO_SITES}}; 124 kActivationScopeAllSites, ActivationScope::NO_SITES}};
121 125
122 for (const auto& test_case : kTestCases) { 126 for (const auto& test_case : kTestCases) {
123 base::FieldTrialList field_trial_list(nullptr /* entropy_provider */); 127 base::FieldTrialList field_trial_list(nullptr /* entropy_provider */);
124 testing::ScopedSubresourceFilterFeatureToggle scoped_feature_toggle( 128 testing::ScopedSubresourceFilterFeatureToggle scoped_feature_toggle(
125 test_case.feature_enabled ? base::FeatureList::OVERRIDE_ENABLE_FEATURE 129 test_case.feature_enabled ? base::FeatureList::OVERRIDE_ENABLE_FEATURE
126 : base::FeatureList::OVERRIDE_USE_DEFAULT, 130 : base::FeatureList::OVERRIDE_USE_DEFAULT,
127 test_case.activation_level_param, test_case.activation_scope_param); 131 test_case.activation_level_param, test_case.activation_scope_param);
128 132
129 EXPECT_EQ(test_case.expected_activation_scope, GetCurrentActivationScope()); 133 Configuration actual_configuration = GetActiveConfiguration();
130 EXPECT_EQ(test_case.expected_activation_level, GetMaximumActivationLevel()); 134 EXPECT_EQ(test_case.expected_activation_level,
135 actual_configuration.activation_level);
136 EXPECT_EQ(test_case.expected_activation_scope,
137 actual_configuration.activation_scope);
131 } 138 }
132 } 139 }
133 140
134 TEST(SubresourceFilterFeaturesTest, ActivationList) { 141 TEST(SubresourceFilterFeaturesTest, ActivationList) {
135 const std::string activation_soc_eng( 142 const std::string activation_soc_eng(
136 kActivationListSocialEngineeringAdsInterstitial); 143 kActivationListSocialEngineeringAdsInterstitial);
137 const std::string activation_phishing(kActivationListPhishingInterstitial); 144 const std::string activation_phishing(kActivationListPhishingInterstitial);
138 const std::string socEngPhising = activation_soc_eng + activation_phishing; 145 const std::string socEngPhising = activation_soc_eng + activation_phishing;
139 const std::string socEngCommaPhising = 146 const std::string socEngCommaPhising =
140 activation_soc_eng + "," + activation_phishing; 147 activation_soc_eng + "," + activation_phishing;
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after
172 SCOPED_TRACE(::testing::Message("ActivationListParam = \"") 179 SCOPED_TRACE(::testing::Message("ActivationListParam = \"")
173 << test_case.activation_list_param << "\""); 180 << test_case.activation_list_param << "\"");
174 181
175 base::FieldTrialList field_trial_list(nullptr /* entropy_provider */); 182 base::FieldTrialList field_trial_list(nullptr /* entropy_provider */);
176 testing::ScopedSubresourceFilterFeatureToggle scoped_feature_toggle( 183 testing::ScopedSubresourceFilterFeatureToggle scoped_feature_toggle(
177 test_case.feature_enabled ? base::FeatureList::OVERRIDE_ENABLE_FEATURE 184 test_case.feature_enabled ? base::FeatureList::OVERRIDE_ENABLE_FEATURE
178 : base::FeatureList::OVERRIDE_USE_DEFAULT, 185 : base::FeatureList::OVERRIDE_USE_DEFAULT,
179 kActivationLevelDisabled, kActivationScopeNoSites, 186 kActivationLevelDisabled, kActivationScopeNoSites,
180 test_case.activation_list_param); 187 test_case.activation_list_param);
181 188
182 EXPECT_EQ(test_case.expected_activation_list, GetCurrentActivationList()); 189 Configuration actual_configuration = GetActiveConfiguration();
190 EXPECT_EQ(test_case.expected_activation_list,
191 actual_configuration.activation_list);
183 } 192 }
184 } 193 }
185 194
186 TEST(SubresourceFilterFeaturesTest, PerfMeasurementRate) { 195 TEST(SubresourceFilterFeaturesTest, PerfMeasurementRate) {
187 const struct { 196 const struct {
188 bool feature_enabled; 197 bool feature_enabled;
189 const char* perf_measurement_param; 198 const char* perf_measurement_param;
190 double expected_perf_measurement_rate; 199 double expected_perf_measurement_rate;
191 } kTestCases[] = {{false, "not_a_number", 0}, 200 } kTestCases[] = {{false, "not_a_number", 0},
192 {false, "0", 0}, 201 {false, "0", 0},
(...skipping 14 matching lines...) Expand all
207 SCOPED_TRACE(::testing::Message("PerfMeasurementParam = \"") 216 SCOPED_TRACE(::testing::Message("PerfMeasurementParam = \"")
208 << test_case.perf_measurement_param << "\""); 217 << test_case.perf_measurement_param << "\"");
209 218
210 base::FieldTrialList field_trial_list(nullptr /* entropy_provider */); 219 base::FieldTrialList field_trial_list(nullptr /* entropy_provider */);
211 testing::ScopedSubresourceFilterFeatureToggle scoped_feature_toggle( 220 testing::ScopedSubresourceFilterFeatureToggle scoped_feature_toggle(
212 test_case.feature_enabled ? base::FeatureList::OVERRIDE_ENABLE_FEATURE 221 test_case.feature_enabled ? base::FeatureList::OVERRIDE_ENABLE_FEATURE
213 : base::FeatureList::OVERRIDE_USE_DEFAULT, 222 : base::FeatureList::OVERRIDE_USE_DEFAULT,
214 {{kPerformanceMeasurementRateParameterName, 223 {{kPerformanceMeasurementRateParameterName,
215 test_case.perf_measurement_param}}); 224 test_case.perf_measurement_param}});
216 225
226 Configuration actual_configuration = GetActiveConfiguration();
217 EXPECT_EQ(test_case.expected_perf_measurement_rate, 227 EXPECT_EQ(test_case.expected_perf_measurement_rate,
218 GetPerformanceMeasurementRate()); 228 actual_configuration.performance_measurement_rate);
219 } 229 }
220 } 230 }
221 231
222 TEST(SubresourceFilterFeaturesTest, SuppressNotifications) { 232 TEST(SubresourceFilterFeaturesTest, SuppressNotifications) {
223 const struct { 233 const struct {
224 bool feature_enabled; 234 bool feature_enabled;
225 const char* suppress_notifications_param; 235 const char* suppress_notifications_param;
226 bool expected_suppress_notifications_value; 236 bool expected_suppress_notifications_value;
227 } kTestCases[] = {{false, "", false}, 237 } kTestCases[] = {{false, "", false},
228 {false, "true", false}, 238 {false, "true", false},
229 {false, "false", false}, 239 {false, "false", false},
230 {false, "invalid value", false}, 240 {false, "invalid value", false},
231 {true, "", false}, 241 {true, "", false},
232 {true, "false", false}, 242 {true, "false", false},
233 {true, "invalid value", false}, 243 {true, "invalid value", false},
234 {true, "True", false}, 244 {true, "True", true},
235 {true, "TRUE", false}, 245 {true, "TRUE", true},
236 {true, "true", true}}; 246 {true, "true", true}};
237 247
238 for (const auto& test_case : kTestCases) { 248 for (const auto& test_case : kTestCases) {
239 SCOPED_TRACE(::testing::Message("Enabled = ") << test_case.feature_enabled); 249 SCOPED_TRACE(::testing::Message("Enabled = ") << test_case.feature_enabled);
240 SCOPED_TRACE(::testing::Message("SuppressNotificationsParam = \"") 250 SCOPED_TRACE(::testing::Message("SuppressNotificationsParam = \"")
241 << test_case.suppress_notifications_param << "\""); 251 << test_case.suppress_notifications_param << "\"");
242 252
243 base::FieldTrialList field_trial_list(nullptr /* entropy_provider */); 253 base::FieldTrialList field_trial_list(nullptr /* entropy_provider */);
244 testing::ScopedSubresourceFilterFeatureToggle scoped_feature_toggle( 254 testing::ScopedSubresourceFilterFeatureToggle scoped_feature_toggle(
245 test_case.feature_enabled ? base::FeatureList::OVERRIDE_ENABLE_FEATURE 255 test_case.feature_enabled ? base::FeatureList::OVERRIDE_ENABLE_FEATURE
246 : base::FeatureList::OVERRIDE_USE_DEFAULT, 256 : base::FeatureList::OVERRIDE_USE_DEFAULT,
247 {{kSuppressNotificationsParameterName, 257 {{kSuppressNotificationsParameterName,
248 test_case.suppress_notifications_param}}); 258 test_case.suppress_notifications_param}});
249 259
260 Configuration actual_configuration = GetActiveConfiguration();
250 EXPECT_EQ(test_case.expected_suppress_notifications_value, 261 EXPECT_EQ(test_case.expected_suppress_notifications_value,
251 ShouldSuppressNotifications()); 262 actual_configuration.should_suppress_notifications);
252 } 263 }
253 } 264 }
254 265
255 TEST(SubresourceFilterFeaturesTest, WhitelistSiteOnReload) { 266 TEST(SubresourceFilterFeaturesTest, WhitelistSiteOnReload) {
256 const struct { 267 const struct {
257 bool feature_enabled; 268 bool feature_enabled;
258 const char* whitelist_site_on_reload_param; 269 const char* whitelist_site_on_reload_param;
259 bool expected_whitelist_site_on_reload_value; 270 bool expected_whitelist_site_on_reload_value;
260 } kTestCases[] = {{false, "", false}, 271 } kTestCases[] = {{false, "", false},
261 {false, "true", false}, 272 {false, "true", false},
262 {false, "false", false}, 273 {false, "false", false},
263 {false, "invalid value", false}, 274 {false, "invalid value", false},
264 {true, "", false}, 275 {true, "", false},
265 {true, "false", false}, 276 {true, "false", false},
266 {true, "invalid value", false}, 277 {true, "invalid value", false},
267 {true, "True", false}, 278 {true, "True", true},
268 {true, "TRUE", false}, 279 {true, "TRUE", true},
269 {true, "true", true}}; 280 {true, "true", true}};
270 281
271 for (const auto& test_case : kTestCases) { 282 for (const auto& test_case : kTestCases) {
272 SCOPED_TRACE(::testing::Message("Enabled = ") << test_case.feature_enabled); 283 SCOPED_TRACE(::testing::Message("Enabled = ") << test_case.feature_enabled);
273 SCOPED_TRACE(::testing::Message("WhitelistSiteOnReloadParam = \"") 284 SCOPED_TRACE(::testing::Message("WhitelistSiteOnReloadParam = \"")
274 << test_case.whitelist_site_on_reload_param << "\""); 285 << test_case.whitelist_site_on_reload_param << "\"");
275 286
276 base::FieldTrialList field_trial_list(nullptr /* entropy_provider */); 287 base::FieldTrialList field_trial_list(nullptr /* entropy_provider */);
277 testing::ScopedSubresourceFilterFeatureToggle scoped_feature_toggle( 288 testing::ScopedSubresourceFilterFeatureToggle scoped_feature_toggle(
278 test_case.feature_enabled ? base::FeatureList::OVERRIDE_ENABLE_FEATURE 289 test_case.feature_enabled ? base::FeatureList::OVERRIDE_ENABLE_FEATURE
279 : base::FeatureList::OVERRIDE_USE_DEFAULT, 290 : base::FeatureList::OVERRIDE_USE_DEFAULT,
280 {{kWhitelistSiteOnReloadParameterName, 291 {{kWhitelistSiteOnReloadParameterName,
281 test_case.whitelist_site_on_reload_param}}); 292 test_case.whitelist_site_on_reload_param}});
282 293
294 Configuration actual_configuration = GetActiveConfiguration();
283 EXPECT_EQ(test_case.expected_whitelist_site_on_reload_value, 295 EXPECT_EQ(test_case.expected_whitelist_site_on_reload_value,
284 ShouldWhitelistSiteOnReload()); 296 actual_configuration.should_whitelist_site_on_reload);
285 } 297 }
286 } 298 }
287 299
288 } // namespace subresource_filter 300 } // namespace subresource_filter
OLDNEW
« no previous file with comments | « components/subresource_filter/core/browser/subresource_filter_features.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698