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

Unified Diff: chrome/browser/permissions/permission_context_base_unittest.cc

Issue 2675483002: Replace PermissionType in chrome/ with ContentSettingsType (Closed)
Patch Set: rebase + include content_settings_types.h more Created 3 years, 10 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 side-by-side diff with in-line comments
Download patch
Index: chrome/browser/permissions/permission_context_base_unittest.cc
diff --git a/chrome/browser/permissions/permission_context_base_unittest.cc b/chrome/browser/permissions/permission_context_base_unittest.cc
index 5c6d8140447a51bc3ffe348a6713ced2d647ec56..9dd2f2ae8f1e05ccc5333457fb6dbe3f0e4da124 100644
--- a/chrome/browser/permissions/permission_context_base_unittest.cc
+++ b/chrome/browser/permissions/permission_context_base_unittest.cc
@@ -38,7 +38,6 @@
#include "components/safe_browsing_db/test_database_manager.h"
#include "components/variations/variations_associated_data.h"
#include "content/public/browser/browser_thread.h"
-#include "content/public/browser/permission_type.h"
#include "content/public/browser/render_frame_host.h"
#include "content/public/browser/web_contents.h"
#include "content/public/test/mock_render_process_host.h"
@@ -104,9 +103,8 @@ class MockSafeBrowsingDatabaseManager
class TestPermissionContext : public PermissionContextBase {
public:
TestPermissionContext(Profile* profile,
- const content::PermissionType permission_type,
const ContentSettingsType content_settings_type)
- : PermissionContextBase(profile, permission_type, content_settings_type),
+ : PermissionContextBase(profile, content_settings_type),
tab_context_updated_(false) {}
~TestPermissionContext() override {}
@@ -137,7 +135,8 @@ class TestPermissionContext : public PermissionContextBase {
const GURL& url_b) {
auto* map = HostContentSettingsMapFactory::GetForProfile(profile());
return map->GetContentSetting(url_a.GetOrigin(), url_b.GetOrigin(),
- content_settings_type(), std::string());
+ content_settings_storage_type(),
+ std::string());
}
void RequestPermission(content::WebContents* web_contents,
@@ -204,9 +203,8 @@ class TestKillSwitchPermissionContext : public TestPermissionContext {
public:
TestKillSwitchPermissionContext(
Profile* profile,
- const content::PermissionType permission_type,
const ContentSettingsType content_settings_type)
- : TestPermissionContext(profile, permission_type, content_settings_type),
+ : TestPermissionContext(profile, content_settings_type),
field_trial_list_(base::MakeUnique<base::FieldTrialList>(
base::MakeUnique<base::MockEntropyProvider>())) {}
@@ -267,12 +265,10 @@ class PermissionContextBaseTests : public ChromeRenderViewHostTestHarness {
#endif
}
- void TestAskAndDecide_TestContent(content::PermissionType permission,
- ContentSettingsType content_settings_type,
+ void TestAskAndDecide_TestContent(ContentSettingsType content_settings_type,
ContentSetting decision,
bool persist) {
- TestPermissionContext permission_context(profile(), permission,
- content_settings_type);
+ TestPermissionContext permission_context(profile(), content_settings_type);
GURL url("https://www.google.com");
NavigateAndCommit(url);
base::HistogramTester histograms;
@@ -305,11 +301,11 @@ class PermissionContextBaseTests : public ChromeRenderViewHostTestHarness {
if (decision_string.size()) {
histograms.ExpectUniqueSample(
"Permissions.Prompt." + decision_string + ".PriorDismissCount." +
- PermissionUtil::GetPermissionString(permission),
+ PermissionUtil::GetPermissionString(content_settings_type),
0, 1);
histograms.ExpectUniqueSample(
"Permissions.Prompt." + decision_string + ".PriorIgnoreCount." +
- PermissionUtil::GetPermissionString(permission),
+ PermissionUtil::GetPermissionString(content_settings_type),
0, 1);
}
@@ -327,7 +323,6 @@ class PermissionContextBaseTests : public ChromeRenderViewHostTestHarness {
void DismissMultipleTimesAndExpectBlock(
const GURL& url,
- content::PermissionType permission_type,
ContentSettingsType content_settings_type,
uint32_t iterations) {
base::HistogramTester histograms;
@@ -337,8 +332,8 @@ class PermissionContextBaseTests : public ChromeRenderViewHostTestHarness {
for (uint32_t i = 0; i < iterations; ++i) {
ContentSetting expected =
(i < 2) ? CONTENT_SETTING_ASK : CONTENT_SETTING_BLOCK;
- TestPermissionContext permission_context(
- profile(), permission_type, content_settings_type);
+ TestPermissionContext permission_context(profile(),
+ content_settings_type);
const PermissionRequestID id(
web_contents()->GetRenderProcessHost()->GetID(),
web_contents()->GetMainFrame()->GetRoutingID(), i);
@@ -354,11 +349,11 @@ class PermissionContextBaseTests : public ChromeRenderViewHostTestHarness {
base::Unretained(&permission_context)));
histograms.ExpectTotalCount(
"Permissions.Prompt.Dismissed.PriorDismissCount." +
- PermissionUtil::GetPermissionString(permission_type),
+ PermissionUtil::GetPermissionString(content_settings_type),
i + 1);
histograms.ExpectBucketCount(
"Permissions.Prompt.Dismissed.PriorDismissCount." +
- PermissionUtil::GetPermissionString(permission_type),
+ PermissionUtil::GetPermissionString(content_settings_type),
i, 1);
histograms.ExpectTotalCount("Permissions.AutoBlocker.EmbargoStatus",
i + 1);
@@ -381,8 +376,7 @@ class PermissionContextBaseTests : public ChromeRenderViewHostTestHarness {
EXPECT_EQ(PermissionStatusSource::UNSPECIFIED, result.source);
}
- TestPermissionContext permission_context(profile(), permission_type,
- content_settings_type);
+ TestPermissionContext permission_context(profile(), content_settings_type);
const PermissionRequestID id(
web_contents()->GetRenderProcessHost()->GetID(),
web_contents()->GetMainFrame()->GetRoutingID(), -1);
@@ -410,8 +404,7 @@ class PermissionContextBaseTests : public ChromeRenderViewHostTestHarness {
// First, ensure that > 3 dismissals behaves correctly.
for (uint32_t i = 0; i < 4; ++i) {
TestPermissionContext permission_context(
- profile(), content::PermissionType::GEOLOCATION,
- CONTENT_SETTINGS_TYPE_GEOLOCATION);
+ profile(), CONTENT_SETTINGS_TYPE_GEOLOCATION);
const PermissionRequestID id(
web_contents()->GetRenderProcessHost()->GetID(),
@@ -455,10 +448,8 @@ class PermissionContextBaseTests : public ChromeRenderViewHostTestHarness {
// Sanity check independence per permission type by checking two of them.
DismissMultipleTimesAndExpectBlock(url,
- content::PermissionType::GEOLOCATION,
CONTENT_SETTINGS_TYPE_GEOLOCATION, 3);
DismissMultipleTimesAndExpectBlock(url,
- content::PermissionType::NOTIFICATIONS,
CONTENT_SETTINGS_TYPE_NOTIFICATIONS, 3);
}
@@ -498,8 +489,7 @@ class PermissionContextBaseTests : public ChromeRenderViewHostTestHarness {
for (uint32_t i = 0; i < 5; ++i) {
TestPermissionContext permission_context(
- profile(), content::PermissionType::MIDI_SYSEX,
- CONTENT_SETTINGS_TYPE_MIDI_SYSEX);
+ profile(), CONTENT_SETTINGS_TYPE_MIDI_SYSEX);
ContentSetting expected =
(i < 4) ? CONTENT_SETTING_ASK : CONTENT_SETTING_BLOCK;
@@ -542,9 +532,8 @@ class PermissionContextBaseTests : public ChromeRenderViewHostTestHarness {
}
// Ensure that we finish in the block state.
- TestPermissionContext permission_context(
- profile(), content::PermissionType::MIDI_SYSEX,
- CONTENT_SETTINGS_TYPE_MIDI_SYSEX);
+ TestPermissionContext permission_context(profile(),
+ CONTENT_SETTINGS_TYPE_MIDI_SYSEX);
PermissionResult result = permission_context.GetPermissionStatus(url, url);
EXPECT_EQ(CONTENT_SETTING_BLOCK, result.content_setting);
EXPECT_EQ(PermissionStatusSource::UNSPECIFIED, result.source);
@@ -553,10 +542,8 @@ class PermissionContextBaseTests : public ChromeRenderViewHostTestHarness {
}
void TestRequestPermissionInvalidUrl(
- content::PermissionType permission_type,
ContentSettingsType content_settings_type) {
- TestPermissionContext permission_context(profile(), permission_type,
- content_settings_type);
+ TestPermissionContext permission_context(profile(), content_settings_type);
GURL url;
ASSERT_FALSE(url.is_valid());
NavigateAndCommit(url);
@@ -578,11 +565,9 @@ class PermissionContextBaseTests : public ChromeRenderViewHostTestHarness {
permission_context.GetContentSettingFromMap(url, url));
}
- void TestGrantAndRevoke_TestContent(content::PermissionType permission_type,
- ContentSettingsType content_settings_type,
+ void TestGrantAndRevoke_TestContent(ContentSettingsType content_settings_type,
ContentSetting expected_default) {
- TestPermissionContext permission_context(profile(), permission_type,
- content_settings_type);
+ TestPermissionContext permission_context(profile(), content_settings_type);
GURL url("https://www.google.com");
NavigateAndCommit(url);
@@ -618,15 +603,14 @@ class PermissionContextBaseTests : public ChromeRenderViewHostTestHarness {
}
void TestGlobalPermissionsKillSwitch(
- content::PermissionType permission_type,
ContentSettingsType content_settings_type) {
- TestKillSwitchPermissionContext permission_context(
- profile(), permission_type, content_settings_type);
+ TestKillSwitchPermissionContext permission_context(profile(),
+ content_settings_type);
permission_context.ResetFieldTrialList();
EXPECT_FALSE(permission_context.IsPermissionKillSwitchOn());
std::map<std::string, std::string> params;
- params[PermissionUtil::GetPermissionString(permission_type)] =
+ params[PermissionUtil::GetPermissionString(content_settings_type)] =
kPermissionsKillSwitchBlockedValue;
variations::AssociateVariationParams(
kPermissionsKillSwitchFieldStudy, kPermissionsKillSwitchTestGroup,
@@ -640,8 +624,7 @@ class PermissionContextBaseTests : public ChromeRenderViewHostTestHarness {
// HostContentSettingsMap.
void TestParallelRequests(ContentSetting response) {
TestPermissionContext permission_context(
- profile(), content::PermissionType::NOTIFICATIONS,
- CONTENT_SETTINGS_TYPE_NOTIFICATIONS);
+ profile(), CONTENT_SETTINGS_TYPE_NOTIFICATIONS);
GURL url("http://www.google.com");
NavigateAndCommit(url);
@@ -682,7 +665,6 @@ class PermissionContextBaseTests : public ChromeRenderViewHostTestHarness {
}
void TestPermissionsBlacklisting(
- content::PermissionType permission_type,
ContentSettingsType content_settings_type,
scoped_refptr<safe_browsing::SafeBrowsingDatabaseManager> db_manager,
const GURL& url,
@@ -693,8 +675,7 @@ class PermissionContextBaseTests : public ChromeRenderViewHostTestHarness {
base::HistogramTester histograms;
base::test::ScopedFeatureList scoped_feature_list;
scoped_feature_list.InitAndEnableFeature(features::kPermissionsBlacklist);
- TestPermissionContext permission_context(profile(), permission_type,
- content_settings_type);
+ TestPermissionContext permission_context(profile(), content_settings_type);
PermissionDecisionAutoBlocker::GetForProfile(profile())
->SetSafeBrowsingDatabaseManagerAndTimeoutForTesting(db_manager,
timeout);
@@ -745,39 +726,34 @@ class PermissionContextBaseTests : public ChromeRenderViewHostTestHarness {
// Simulates clicking Accept. The permission should be granted and
// saved for future use.
TEST_F(PermissionContextBaseTests, TestAskAndGrantPersist) {
- TestAskAndDecide_TestContent(content::PermissionType::NOTIFICATIONS,
- CONTENT_SETTINGS_TYPE_NOTIFICATIONS,
+ TestAskAndDecide_TestContent(CONTENT_SETTINGS_TYPE_NOTIFICATIONS,
CONTENT_SETTING_ALLOW, true);
}
// Simulates clicking Accept. The permission should be granted, but not
// persisted.
TEST_F(PermissionContextBaseTests, TestAskAndGrantNoPersist) {
- TestAskAndDecide_TestContent(content::PermissionType::NOTIFICATIONS,
- CONTENT_SETTINGS_TYPE_NOTIFICATIONS,
+ TestAskAndDecide_TestContent(CONTENT_SETTINGS_TYPE_NOTIFICATIONS,
CONTENT_SETTING_ALLOW, false);
}
// Simulates clicking Block. The permission should be denied and
// saved for future use.
TEST_F(PermissionContextBaseTests, TestAskAndBlockPersist) {
- TestAskAndDecide_TestContent(content::PermissionType::GEOLOCATION,
- CONTENT_SETTINGS_TYPE_GEOLOCATION,
+ TestAskAndDecide_TestContent(CONTENT_SETTINGS_TYPE_GEOLOCATION,
CONTENT_SETTING_BLOCK, true);
}
// Simulates clicking Block. The permission should be denied, but not persisted.
TEST_F(PermissionContextBaseTests, TestAskAndBlockNoPersist) {
- TestAskAndDecide_TestContent(content::PermissionType::GEOLOCATION,
- CONTENT_SETTINGS_TYPE_GEOLOCATION,
+ TestAskAndDecide_TestContent(CONTENT_SETTINGS_TYPE_GEOLOCATION,
CONTENT_SETTING_BLOCK, false);
}
// Simulates clicking Dismiss (X) in the infobar/bubble.
// The permission should be denied but not saved for future use.
TEST_F(PermissionContextBaseTests, TestAskAndDismiss) {
- TestAskAndDecide_TestContent(content::PermissionType::MIDI_SYSEX,
- CONTENT_SETTINGS_TYPE_MIDI_SYSEX,
+ TestAskAndDecide_TestContent(CONTENT_SETTINGS_TYPE_MIDI_SYSEX,
CONTENT_SETTING_ASK, false);
}
@@ -796,17 +772,12 @@ TEST_F(PermissionContextBaseTests, TestDismissVariations) {
// Simulates non-valid requesting URL.
// The permission should be denied but not saved for future use.
TEST_F(PermissionContextBaseTests, TestNonValidRequestingUrl) {
- TestRequestPermissionInvalidUrl(content::PermissionType::GEOLOCATION,
- CONTENT_SETTINGS_TYPE_GEOLOCATION);
- TestRequestPermissionInvalidUrl(content::PermissionType::NOTIFICATIONS,
- CONTENT_SETTINGS_TYPE_NOTIFICATIONS);
- TestRequestPermissionInvalidUrl(content::PermissionType::MIDI_SYSEX,
- CONTENT_SETTINGS_TYPE_MIDI_SYSEX);
- TestRequestPermissionInvalidUrl(content::PermissionType::PUSH_MESSAGING,
- CONTENT_SETTINGS_TYPE_NOTIFICATIONS);
+ TestRequestPermissionInvalidUrl(CONTENT_SETTINGS_TYPE_GEOLOCATION);
+ TestRequestPermissionInvalidUrl(CONTENT_SETTINGS_TYPE_NOTIFICATIONS);
+ TestRequestPermissionInvalidUrl(CONTENT_SETTINGS_TYPE_MIDI_SYSEX);
+ TestRequestPermissionInvalidUrl(CONTENT_SETTINGS_TYPE_PUSH_MESSAGING);
#if defined(OS_ANDROID) || defined(OS_CHROMEOS)
TestRequestPermissionInvalidUrl(
- content::PermissionType::PROTECTED_MEDIA_IDENTIFIER,
CONTENT_SETTINGS_TYPE_PROTECTED_MEDIA_IDENTIFIER);
#endif
}
@@ -814,14 +785,11 @@ TEST_F(PermissionContextBaseTests, TestNonValidRequestingUrl) {
#if defined(OS_ANDROID)
// This test is specific to Android because other platforms use bubbles.
TEST_F(PermissionContextBaseTests, TestGrantAndRevokeWithInfobars) {
- TestGrantAndRevoke_TestContent(content::PermissionType::GEOLOCATION,
- CONTENT_SETTINGS_TYPE_GEOLOCATION,
+ TestGrantAndRevoke_TestContent(CONTENT_SETTINGS_TYPE_GEOLOCATION,
CONTENT_SETTING_ASK);
- TestGrantAndRevoke_TestContent(content::PermissionType::MIDI_SYSEX,
- CONTENT_SETTINGS_TYPE_MIDI_SYSEX,
+ TestGrantAndRevoke_TestContent(CONTENT_SETTINGS_TYPE_MIDI_SYSEX,
CONTENT_SETTING_ASK);
TestGrantAndRevoke_TestContent(
- content::PermissionType::PROTECTED_MEDIA_IDENTIFIER,
CONTENT_SETTINGS_TYPE_PROTECTED_MEDIA_IDENTIFIER, CONTENT_SETTING_ASK);
// TODO(timvolodine): currently no test for
// CONTENT_SETTINGS_TYPE_NOTIFICATIONS because notification permissions work
@@ -833,42 +801,28 @@ TEST_F(PermissionContextBaseTests, TestGrantAndRevokeWithInfobars) {
// Simulates granting and revoking of permissions using permission bubbles.
// This test shouldn't run on mobile because mobile platforms use infobars.
TEST_F(PermissionContextBaseTests, TestGrantAndRevokeWithBubbles) {
- TestGrantAndRevoke_TestContent(content::PermissionType::GEOLOCATION,
- CONTENT_SETTINGS_TYPE_GEOLOCATION,
- CONTENT_SETTING_ASK);
- TestGrantAndRevoke_TestContent(content::PermissionType::NOTIFICATIONS,
- CONTENT_SETTINGS_TYPE_NOTIFICATIONS,
+ TestGrantAndRevoke_TestContent(CONTENT_SETTINGS_TYPE_GEOLOCATION,
CONTENT_SETTING_ASK);
- TestGrantAndRevoke_TestContent(content::PermissionType::MIDI_SYSEX,
- CONTENT_SETTINGS_TYPE_MIDI_SYSEX,
+ TestGrantAndRevoke_TestContent(CONTENT_SETTINGS_TYPE_NOTIFICATIONS,
CONTENT_SETTING_ASK);
- TestGrantAndRevoke_TestContent(content::PermissionType::PUSH_MESSAGING,
- CONTENT_SETTINGS_TYPE_NOTIFICATIONS,
+ TestGrantAndRevoke_TestContent(CONTENT_SETTINGS_TYPE_MIDI_SYSEX,
CONTENT_SETTING_ASK);
}
#endif
// Tests the global kill switch by enabling/disabling the Field Trials.
TEST_F(PermissionContextBaseTests, TestGlobalKillSwitch) {
- TestGlobalPermissionsKillSwitch(content::PermissionType::GEOLOCATION,
- CONTENT_SETTINGS_TYPE_GEOLOCATION);
- TestGlobalPermissionsKillSwitch(content::PermissionType::NOTIFICATIONS,
- CONTENT_SETTINGS_TYPE_NOTIFICATIONS);
- TestGlobalPermissionsKillSwitch(content::PermissionType::MIDI_SYSEX,
- CONTENT_SETTINGS_TYPE_MIDI_SYSEX);
- TestGlobalPermissionsKillSwitch(content::PermissionType::PUSH_MESSAGING,
- CONTENT_SETTINGS_TYPE_NOTIFICATIONS);
- TestGlobalPermissionsKillSwitch(content::PermissionType::DURABLE_STORAGE,
- CONTENT_SETTINGS_TYPE_DURABLE_STORAGE);
+ TestGlobalPermissionsKillSwitch(CONTENT_SETTINGS_TYPE_GEOLOCATION);
+ TestGlobalPermissionsKillSwitch(CONTENT_SETTINGS_TYPE_NOTIFICATIONS);
+ TestGlobalPermissionsKillSwitch(CONTENT_SETTINGS_TYPE_MIDI_SYSEX);
+ TestGlobalPermissionsKillSwitch(CONTENT_SETTINGS_TYPE_PUSH_MESSAGING);
+ TestGlobalPermissionsKillSwitch(CONTENT_SETTINGS_TYPE_DURABLE_STORAGE);
#if defined(OS_ANDROID) || defined(OS_CHROMEOS)
TestGlobalPermissionsKillSwitch(
- content::PermissionType::PROTECTED_MEDIA_IDENTIFIER,
CONTENT_SETTINGS_TYPE_PROTECTED_MEDIA_IDENTIFIER);
#endif
- TestGlobalPermissionsKillSwitch(content::PermissionType::AUDIO_CAPTURE,
- CONTENT_SETTINGS_TYPE_MEDIASTREAM_MIC);
- TestGlobalPermissionsKillSwitch(content::PermissionType::VIDEO_CAPTURE,
- CONTENT_SETTINGS_TYPE_MEDIASTREAM_CAMERA);
+ TestGlobalPermissionsKillSwitch(CONTENT_SETTINGS_TYPE_MEDIASTREAM_MIC);
+ TestGlobalPermissionsKillSwitch(CONTENT_SETTINGS_TYPE_MEDIASTREAM_CAMERA);
}
TEST_F(PermissionContextBaseTests, TestParallelRequestsAllowed) {
@@ -892,7 +846,7 @@ TEST_F(PermissionContextBaseTests, TestPermissionsBlacklistingBlocked) {
std::set<std::string> blacklisted_permissions{"GEOLOCATION"};
db_manager->BlacklistUrlPermissions(url, blacklisted_permissions);
TestPermissionsBlacklisting(
- content::PermissionType::GEOLOCATION, CONTENT_SETTINGS_TYPE_GEOLOCATION,
+ CONTENT_SETTINGS_TYPE_GEOLOCATION,
db_manager, url, 2000 /* timeout */, CONTENT_SETTING_BLOCK,
PermissionEmbargoStatus::PERMISSIONS_BLACKLISTING);
}
@@ -905,8 +859,7 @@ TEST_F(PermissionContextBaseTests, TestPermissionsBlacklistingAllowed) {
const GURL url("https://www.example.com");
std::set<std::string> blacklisted_permissions{"GEOLOCATION"};
db_manager->BlacklistUrlPermissions(url, blacklisted_permissions);
- TestPermissionsBlacklisting(content::PermissionType::NOTIFICATIONS,
- CONTENT_SETTINGS_TYPE_NOTIFICATIONS, db_manager,
+ TestPermissionsBlacklisting(CONTENT_SETTINGS_TYPE_NOTIFICATIONS, db_manager,
url, 2000 /* timeout */, CONTENT_SETTING_ALLOW,
PermissionEmbargoStatus::NOT_EMBARGOED);
}
« no previous file with comments | « chrome/browser/permissions/permission_context_base.cc ('k') | chrome/browser/permissions/permission_decision_auto_blocker.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698