Chromium Code Reviews| 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 7e09f909dd4ebdade53b5c46aaaaef0b860acfa2..429c9a838958213be5bd89f55fdb4c45c25ef519 100644 |
| --- a/chrome/browser/permissions/permission_context_base_unittest.cc |
| +++ b/chrome/browser/permissions/permission_context_base_unittest.cc |
| @@ -25,6 +25,7 @@ |
| #include "chrome/browser/permissions/permission_decision_auto_blocker.h" |
| #include "chrome/browser/permissions/permission_queue_controller.h" |
| #include "chrome/browser/permissions/permission_request_id.h" |
| +#include "chrome/browser/permissions/permission_uma_util.h" |
| #include "chrome/browser/permissions/permission_util.h" |
| #include "chrome/common/chrome_features.h" |
| #include "chrome/common/chrome_switches.h" |
| @@ -288,7 +289,8 @@ class PermissionContextBaseTests : public ChromeRenderViewHostTestHarness { |
| ASSERT_EQ(1u, permission_context.decisions().size()); |
| EXPECT_EQ(decision, permission_context.decisions()[0]); |
| EXPECT_TRUE(permission_context.tab_context_updated()); |
| - |
| + histograms.ExpectBucketCount("Permissions.AutoBlocker.EmbargoReason", |
| + PermissionEmbargoReason::NOT_EMBARGOED, 1); |
| std::string decision_string; |
| if (decision == CONTENT_SETTING_ALLOW) |
| decision_string = "Accepted"; |
| @@ -352,12 +354,17 @@ class PermissionContextBaseTests : public ChromeRenderViewHostTestHarness { |
| "Permissions.Prompt.Dismissed.PriorDismissCount." + |
| PermissionUtil::GetPermissionString(permission_type), |
| i, 1); |
| + histograms.ExpectTotalCount("Permissions.AutoBlocker.EmbargoReason", |
|
dominickn
2017/01/30 04:55:25
Can you use ExpectUniqueSample("Permissions.AutoBl
meredithl
2017/01/30 05:37:40
That will succeed for the first N-1 requests, but
dominickn
2017/01/30 05:52:28
Ah, acknowledged. I forgot that we changed this to
|
| + i + 1); |
| ASSERT_EQ(1u, permission_context.decisions().size()); |
| EXPECT_EQ(expected, permission_context.decisions()[0]); |
| EXPECT_TRUE(permission_context.tab_context_updated()); |
| EXPECT_EQ(expected, permission_context.GetPermissionStatus(url, url)); |
| } |
| + histograms.ExpectBucketCount("Permissions.AutoBlocker.EmbargoReason", |
|
dominickn
2017/01/30 04:55:25
Remove this one, it's covered by the check in the
meredithl
2017/01/30 05:37:40
See above, i either need to move the inner loop ch
dominickn
2017/01/30 05:52:28
Acknowledged.
|
| + PermissionEmbargoReason::NOT_EMBARGOED, |
| + iterations - 1); |
| TestPermissionContext permission_context(profile(), permission_type, |
| content_settings_type); |
| const PermissionRequestID id( |
| @@ -376,6 +383,11 @@ class PermissionContextBaseTests : public ChromeRenderViewHostTestHarness { |
| EXPECT_EQ(CONTENT_SETTING_BLOCK, |
| permission_context.GetPermissionStatus(url, url)); |
| + histograms.ExpectTotalCount("Permissions.AutoBlocker.EmbargoReason", |
| + iterations); |
| + histograms.ExpectBucketCount("Permissions.AutoBlocker.EmbargoReason", |
| + PermissionEmbargoReason::REPEATED_DISMISSALS, |
| + 1); |
|
dominickn
2017/01/30 04:55:25
And an ExpectBucketCount for NOT_EMBARGOED (iterat
meredithl
2017/01/30 05:37:40
I've moved the one from above down to here.
|
| } |
| void TestBlockOnSeveralDismissals_TestContent() { |
| @@ -406,6 +418,9 @@ class PermissionContextBaseTests : public ChromeRenderViewHostTestHarness { |
| i + 1); |
| histograms.ExpectBucketCount( |
| "Permissions.Prompt.Dismissed.PriorDismissCount.Geolocation", i, 1); |
| + histograms.ExpectBucketCount("Permissions.AutoBlocker.EmbargoReason", |
| + PermissionEmbargoReason::NOT_EMBARGOED, |
| + i + 1); |
| ASSERT_EQ(1u, permission_context.decisions().size()); |
| EXPECT_EQ(CONTENT_SETTING_ASK, permission_context.decisions()[0]); |
| EXPECT_TRUE(permission_context.tab_context_updated()); |
| @@ -841,9 +856,13 @@ TEST_F(PermissionContextBaseTests, TestPermissionsBlacklistingBlocked) { |
| const GURL url("https://www.example.com"); |
| std::set<std::string> blacklisted_permissions{"GEOLOCATION"}; |
| db_manager->BlacklistUrlPermissions(url, blacklisted_permissions); |
| + base::HistogramTester histograms; |
| TestPermissionsBlacklisting(content::PermissionType::GEOLOCATION, |
| CONTENT_SETTINGS_TYPE_GEOLOCATION, db_manager, |
| url, 2000 /* timeout */, CONTENT_SETTING_BLOCK); |
| + histograms.ExpectUniqueSample( |
| + "Permissions.AutoBlocker.EmbargoReason", |
| + PermissionEmbargoReason::PERMISSIONS_BLACKLISTING, 1); |
| } |
| // Tests that a URL that is blacklisted for one permission can still request |
| @@ -854,7 +873,10 @@ TEST_F(PermissionContextBaseTests, TestPermissionsBlacklistingAllowed) { |
| const GURL url("https://www.example.com"); |
| std::set<std::string> blacklisted_permissions{"GEOLOCATION"}; |
| db_manager->BlacklistUrlPermissions(url, blacklisted_permissions); |
| + base::HistogramTester histograms; |
| TestPermissionsBlacklisting(content::PermissionType::NOTIFICATIONS, |
| CONTENT_SETTINGS_TYPE_NOTIFICATIONS, db_manager, |
| url, 2000 /* timeout */, CONTENT_SETTING_ALLOW); |
| + histograms.ExpectUniqueSample("Permissions.AutoBlocker.EmbargoReason", |
| + PermissionEmbargoReason::NOT_EMBARGOED, 1); |
| } |