use a const for the procedural_actions key
This commit is contained in:
@@ -8,6 +8,7 @@
|
||||
#include "base/json/json_reader.h"
|
||||
#include "brave/components/brave_shields/adblock/rs/src/lib.rs.h"
|
||||
#include "brave/components/brave_shields/core/browser/ad_block_service_helper.h"
|
||||
#include "brave/components/brave_shields/core/common/brave_shield_constants.h"
|
||||
#include "testing/gmock/include/gmock/gmock.h"
|
||||
#include "testing/gtest/include/gtest/gtest.h"
|
||||
|
||||
@@ -46,13 +47,15 @@ TEST_F(StripProceduralFiltersTest, EmptyResources) {
|
||||
std::string rules = "";
|
||||
auto resources = ResourcesForRules(rules);
|
||||
|
||||
ASSERT_TRUE(resources.FindList("procedural_actions"));
|
||||
ASSERT_EQ(resources.FindList("procedural_actions")->size(), 0UL);
|
||||
ASSERT_TRUE(resources.FindList(kCosmeticResourcesProceduralActions));
|
||||
ASSERT_EQ(resources.FindList(kCosmeticResourcesProceduralActions)->size(),
|
||||
0UL);
|
||||
|
||||
StripProceduralFilters(resources);
|
||||
|
||||
ASSERT_TRUE(resources.FindList("procedural_actions"));
|
||||
ASSERT_EQ(resources.FindList("procedural_actions")->size(), 0UL);
|
||||
ASSERT_TRUE(resources.FindList(kCosmeticResourcesProceduralActions));
|
||||
ASSERT_EQ(resources.FindList(kCosmeticResourcesProceduralActions)->size(),
|
||||
0UL);
|
||||
}
|
||||
|
||||
TEST_F(StripProceduralFiltersTest, NotRemoved) {
|
||||
@@ -64,14 +67,16 @@ TEST_F(StripProceduralFiltersTest, NotRemoved) {
|
||||
)";
|
||||
auto resources = ResourcesForRules(rules);
|
||||
|
||||
ASSERT_TRUE(resources.FindList("procedural_actions"));
|
||||
ASSERT_EQ(resources.FindList("procedural_actions")->size(), 4UL);
|
||||
ASSERT_TRUE(resources.FindList(kCosmeticResourcesProceduralActions));
|
||||
ASSERT_EQ(resources.FindList(kCosmeticResourcesProceduralActions)->size(),
|
||||
4UL);
|
||||
|
||||
// no-op - no procedural filters
|
||||
StripProceduralFilters(resources);
|
||||
|
||||
ASSERT_TRUE(resources.FindList("procedural_actions"));
|
||||
ASSERT_EQ(resources.FindList("procedural_actions")->size(), 4UL);
|
||||
ASSERT_TRUE(resources.FindList(kCosmeticResourcesProceduralActions));
|
||||
ASSERT_EQ(resources.FindList(kCosmeticResourcesProceduralActions)->size(),
|
||||
4UL);
|
||||
}
|
||||
|
||||
TEST_F(StripProceduralFiltersTest, ProceduralFilters) {
|
||||
@@ -84,14 +89,16 @@ TEST_F(StripProceduralFiltersTest, ProceduralFilters) {
|
||||
)";
|
||||
auto resources = ResourcesForRules(rules);
|
||||
|
||||
ASSERT_TRUE(resources.FindList("procedural_actions"));
|
||||
ASSERT_EQ(resources.FindList("procedural_actions")->size(), 5UL);
|
||||
ASSERT_TRUE(resources.FindList(kCosmeticResourcesProceduralActions));
|
||||
ASSERT_EQ(resources.FindList(kCosmeticResourcesProceduralActions)->size(),
|
||||
5UL);
|
||||
|
||||
// All removed; only procedural filters
|
||||
StripProceduralFilters(resources);
|
||||
|
||||
ASSERT_TRUE(resources.FindList("procedural_actions"));
|
||||
ASSERT_EQ(resources.FindList("procedural_actions")->size(), 0UL);
|
||||
ASSERT_TRUE(resources.FindList(kCosmeticResourcesProceduralActions));
|
||||
ASSERT_EQ(resources.FindList(kCosmeticResourcesProceduralActions)->size(),
|
||||
0UL);
|
||||
}
|
||||
|
||||
TEST_F(StripProceduralFiltersTest, Mixed) {
|
||||
@@ -108,14 +115,16 @@ TEST_F(StripProceduralFiltersTest, Mixed) {
|
||||
)";
|
||||
auto resources = ResourcesForRules(rules);
|
||||
|
||||
ASSERT_TRUE(resources.FindList("procedural_actions"));
|
||||
ASSERT_EQ(resources.FindList("procedural_actions")->size(), 9UL);
|
||||
ASSERT_TRUE(resources.FindList(kCosmeticResourcesProceduralActions));
|
||||
ASSERT_EQ(resources.FindList(kCosmeticResourcesProceduralActions)->size(),
|
||||
9UL);
|
||||
|
||||
// 5 procedural filters removed; 4 non-procedural filters remaining
|
||||
StripProceduralFilters(resources);
|
||||
|
||||
ASSERT_TRUE(resources.FindList("procedural_actions"));
|
||||
ASSERT_EQ(resources.FindList("procedural_actions")->size(), 4UL);
|
||||
ASSERT_TRUE(resources.FindList(kCosmeticResourcesProceduralActions));
|
||||
ASSERT_EQ(resources.FindList(kCosmeticResourcesProceduralActions)->size(),
|
||||
4UL);
|
||||
}
|
||||
|
||||
} // namespace brave_shields
|
||||
|
||||
@@ -11,6 +11,7 @@
|
||||
#include "base/json/json_reader.h"
|
||||
#include "base/strings/strcat.h"
|
||||
#include "base/values.h"
|
||||
#include "brave/components/brave_shields/core/common/brave_shield_constants.h"
|
||||
|
||||
namespace brave_shields {
|
||||
|
||||
@@ -64,7 +65,8 @@ void MergeResourcesInto(base::Value::Dict from,
|
||||
}
|
||||
}
|
||||
|
||||
constexpr std::string_view kListKeys[] = {"exceptions", "procedural_actions"};
|
||||
constexpr std::string_view kListKeys[] = {
|
||||
"exceptions", kCosmeticResourcesProceduralActions};
|
||||
for (const auto& key_ : kListKeys) {
|
||||
base::Value::List* resources = into.FindList(key_);
|
||||
base::Value::List* from_resources = from.FindList(key_);
|
||||
@@ -98,7 +100,7 @@ void MergeResourcesInto(base::Value::Dict from,
|
||||
// https://docs.rs/adblock/latest/adblock/cosmetic_filter_cache/struct.ProceduralOrActionFilter.html
|
||||
void StripProceduralFilters(base::Value::Dict& resources) {
|
||||
base::Value::List* procedural_actions =
|
||||
resources.FindList("procedural_actions");
|
||||
resources.FindList(kCosmeticResourcesProceduralActions);
|
||||
if (procedural_actions) {
|
||||
base::Value::List::iterator it = procedural_actions->begin();
|
||||
while (it < procedural_actions->end()) {
|
||||
|
||||
@@ -33,6 +33,11 @@ inline constexpr char kObsoleteShieldsCookies[] = "shieldsCookies";
|
||||
// Some users were not properly migrated from fingerprinting V1.
|
||||
inline constexpr char kObsoleteFingerprinting[] = "fingerprinting";
|
||||
|
||||
// Key for procedural and action filters in the UrlCosmeticResources struct from
|
||||
// adblock-rust
|
||||
inline constexpr char kCosmeticResourcesProceduralActions[] =
|
||||
"procedural_actions";
|
||||
|
||||
// Filename for cached text from a custom filter list subscription
|
||||
const base::FilePath::CharType kCustomSubscriptionListText[] =
|
||||
FILE_PATH_LITERAL("list_text.txt");
|
||||
|
||||
@@ -13,6 +13,7 @@
|
||||
#include "base/json/json_reader.h"
|
||||
#include "base/values.h"
|
||||
#include "brave/components/brave_shields/content/browser/ad_block_service.h"
|
||||
#include "brave/components/brave_shields/core/common/brave_shield_constants.h"
|
||||
#include "brave/components/brave_shields/core/common/features.h"
|
||||
#include "components/content_settings/core/browser/host_content_settings_map.h"
|
||||
|
||||
@@ -97,7 +98,7 @@ void CosmeticFiltersResources::UrlCosmeticResources(
|
||||
ad_block_service_->UrlCosmeticResources(url, aggressive_blocking);
|
||||
|
||||
const auto* procedural_actions_list =
|
||||
resources.FindList("procedural_actions");
|
||||
resources.FindList(brave_shields::kCosmeticResourcesProceduralActions);
|
||||
if (procedural_actions_list && !procedural_actions_list->empty()) {
|
||||
const char* procedural_filtering_feature_enabled =
|
||||
base::FeatureList::IsEnabled(
|
||||
|
||||
Reference in New Issue
Block a user