Commit 96b07b65 authored by Illia Klimov's avatar Illia Klimov Committed by Commit Bot

Fix AbusiveOriginPermissionRevocationRequestTest.

This CL fixes an issue caused by the initializetion of ScopedFeatureList in
a multithread environment.

Bug: 1143265, 1143584, 1143505, 1143035
Change-Id: I711cebe4a1743a01095359d93e991601603b2d0b
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2518055
Commit-Queue: Illia Klimov <elklm@google.com>
Auto-Submit: Illia Klimov <elklm@google.com>
Reviewed-by: default avatarBalazs Engedy <engedy@chromium.org>
Cr-Commit-Position: refs/heads/master@{#823991}
parent ef7fe20d
...@@ -19,14 +19,14 @@ ...@@ -19,14 +19,14 @@
#include "components/content_settings/core/browser/host_content_settings_map.h" #include "components/content_settings/core/browser/host_content_settings_map.h"
#include "content/public/test/browser_task_environment.h" #include "content/public/test/browser_task_environment.h"
class AbusiveOriginPermissionRevocationRequestTest : public testing::Test { class AbusiveOriginPermissionRevocationRequestTestBase : public testing::Test {
public: public:
using Outcome = AbusiveOriginPermissionRevocationRequest::Outcome; using Outcome = AbusiveOriginPermissionRevocationRequest::Outcome;
using SiteReputation = CrowdDenyPreloadData::SiteReputation; using SiteReputation = CrowdDenyPreloadData::SiteReputation;
AbusiveOriginPermissionRevocationRequestTest() = default; AbusiveOriginPermissionRevocationRequestTestBase() = default;
~AbusiveOriginPermissionRevocationRequestTest() override = default; ~AbusiveOriginPermissionRevocationRequestTestBase() override = default;
protected: protected:
void SetUp() override { void SetUp() override {
...@@ -119,18 +119,22 @@ class AbusiveOriginPermissionRevocationRequestTest : public testing::Test { ...@@ -119,18 +119,22 @@ class AbusiveOriginPermissionRevocationRequestTest : public testing::Test {
std::unique_ptr<safe_browsing::TestSafeBrowsingServiceFactory> std::unique_ptr<safe_browsing::TestSafeBrowsingServiceFactory>
safe_browsing_factory_; safe_browsing_factory_;
DISALLOW_COPY_AND_ASSIGN(AbusiveOriginPermissionRevocationRequestTest); DISALLOW_COPY_AND_ASSIGN(AbusiveOriginPermissionRevocationRequestTestBase);
}; };
TEST_F(AbusiveOriginPermissionRevocationRequestTest, class AbusiveOriginPermissionRevocationRequestTest
PermissionRevocationFeatureDisabled) { : public AbusiveOriginPermissionRevocationRequestTestBase {
const GURL origin_to_revoke = GURL("https://origin.com/"); public:
AbusiveOriginPermissionRevocationRequestTest() {
feature_list_.InitAndEnableFeature(
features::kAbusiveNotificationPermissionRevocation);
}
SetPermission(origin_to_revoke, CONTENT_SETTING_ALLOW); ~AbusiveOriginPermissionRevocationRequestTest() override = default;
QueryAndExpectDecisionForUrl(origin_to_revoke,
Outcome::PERMISSION_NOT_REVOKED); private:
VerifyNotificationsPermission(origin_to_revoke, CONTENT_SETTING_ALLOW); base::test::ScopedFeatureList feature_list_;
} };
TEST_F(AbusiveOriginPermissionRevocationRequestTest, TEST_F(AbusiveOriginPermissionRevocationRequestTest,
OriginIsNotOnBlockingLists) { OriginIsNotOnBlockingLists) {
...@@ -138,20 +142,12 @@ TEST_F(AbusiveOriginPermissionRevocationRequestTest, ...@@ -138,20 +142,12 @@ TEST_F(AbusiveOriginPermissionRevocationRequestTest,
SetPermission(origin_to_revoke, CONTENT_SETTING_ALLOW); SetPermission(origin_to_revoke, CONTENT_SETTING_ALLOW);
base::test::ScopedFeatureList feature_list;
feature_list.InitAndEnableFeature(
features::kAbusiveNotificationPermissionRevocation);
QueryAndExpectDecisionForUrl(origin_to_revoke, QueryAndExpectDecisionForUrl(origin_to_revoke,
Outcome::PERMISSION_NOT_REVOKED); Outcome::PERMISSION_NOT_REVOKED);
VerifyNotificationsPermission(origin_to_revoke, CONTENT_SETTING_ALLOW); VerifyNotificationsPermission(origin_to_revoke, CONTENT_SETTING_ALLOW);
} }
TEST_F(AbusiveOriginPermissionRevocationRequestTest, SafeBrowsingTest) { TEST_F(AbusiveOriginPermissionRevocationRequestTest, SafeBrowsingTest) {
base::test::ScopedFeatureList feature_list;
feature_list.InitAndEnableFeature(
features::kAbusiveNotificationPermissionRevocation);
const GURL origin_to_revoke = GURL("https://origin.com/"); const GURL origin_to_revoke = GURL("https://origin.com/");
SetPermission(origin_to_revoke, CONTENT_SETTING_ALLOW); SetPermission(origin_to_revoke, CONTENT_SETTING_ALLOW);
...@@ -180,10 +176,6 @@ TEST_F(AbusiveOriginPermissionRevocationRequestTest, SafeBrowsingTest) { ...@@ -180,10 +176,6 @@ TEST_F(AbusiveOriginPermissionRevocationRequestTest, SafeBrowsingTest) {
} }
TEST_F(AbusiveOriginPermissionRevocationRequestTest, PreloadDataTest) { TEST_F(AbusiveOriginPermissionRevocationRequestTest, PreloadDataTest) {
base::test::ScopedFeatureList feature_list;
feature_list.InitAndEnableFeature(
features::kAbusiveNotificationPermissionRevocation);
const GURL abusive_content_origin_to_revoke = const GURL abusive_content_origin_to_revoke =
GURL("https://abusive-content.com/"); GURL("https://abusive-content.com/");
const GURL abusive_prompts_origin_to_revoke = const GURL abusive_prompts_origin_to_revoke =
...@@ -235,10 +227,6 @@ TEST_F(AbusiveOriginPermissionRevocationRequestTest, ExemptAbusiveOriginTest) { ...@@ -235,10 +227,6 @@ TEST_F(AbusiveOriginPermissionRevocationRequestTest, ExemptAbusiveOriginTest) {
const GURL origin_to_exempt = GURL("https://origin-allow.com/"); const GURL origin_to_exempt = GURL("https://origin-allow.com/");
const GURL origin_to_revoke = GURL("https://origin.com/"); const GURL origin_to_revoke = GURL("https://origin.com/");
base::test::ScopedFeatureList feature_list;
feature_list.InitAndEnableFeature(
features::kAbusiveNotificationPermissionRevocation);
AbusiveOriginPermissionRevocationRequest::ExemptOriginFromFutureRevocations( AbusiveOriginPermissionRevocationRequest::ExemptOriginFromFutureRevocations(
GetTestingProfile(), origin_to_exempt); GetTestingProfile(), origin_to_exempt);
...@@ -260,3 +248,20 @@ TEST_F(AbusiveOriginPermissionRevocationRequestTest, ExemptAbusiveOriginTest) { ...@@ -260,3 +248,20 @@ TEST_F(AbusiveOriginPermissionRevocationRequestTest, ExemptAbusiveOriginTest) {
Outcome::PERMISSION_REVOKED_DUE_TO_ABUSE); Outcome::PERMISSION_REVOKED_DUE_TO_ABUSE);
VerifyNotificationsPermission(origin_to_revoke, CONTENT_SETTING_ASK); VerifyNotificationsPermission(origin_to_revoke, CONTENT_SETTING_ASK);
} }
class AbusiveOriginPermissionRevocationRequestDisabledTest
: public AbusiveOriginPermissionRevocationRequestTestBase {
public:
AbusiveOriginPermissionRevocationRequestDisabledTest() = default;
~AbusiveOriginPermissionRevocationRequestDisabledTest() override = default;
};
TEST_F(AbusiveOriginPermissionRevocationRequestDisabledTest,
PermissionRevocationFeatureDisabled) {
const GURL origin_to_revoke = GURL("https://origin.com/");
SetPermission(origin_to_revoke, CONTENT_SETTING_ALLOW);
QueryAndExpectDecisionForUrl(origin_to_revoke,
Outcome::PERMISSION_NOT_REVOKED);
VerifyNotificationsPermission(origin_to_revoke, CONTENT_SETTING_ALLOW);
}
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment