Commit 66b62dfc authored by Yao Xiao's avatar Yao Xiao Committed by Commit Bot

Enable UKM metrics for kFullscreenSecureOrigin/kFullscreenInsecureOrigin

(FullscreenSecureOrigin + FullscreenInsecureOrigin) / PageVisits = 1.78%

Bug: 864196
Change-Id: I88e313288e5d960ba8bc93cef4b45b8a2e6af8ac
Reviewed-on: https://chromium-review.googlesource.com/1151652Reviewed-by: default avatarCharlie Harrison <csharrison@chromium.org>
Reviewed-by: default avatarBryan McQuade <bmcquade@chromium.org>
Reviewed-by: default avatarEmil A Eklund <eae@chromium.org>
Commit-Queue: Yao Xiao <yaoxia@chromium.org>
Cr-Commit-Position: refs/heads/master@{#579111}
parent 34b5e629
...@@ -48,6 +48,8 @@ bool IsAllowedUkmFeature(blink::mojom::WebFeature feature) { ...@@ -48,6 +48,8 @@ bool IsAllowedUkmFeature(blink::mojom::WebFeature feature) {
WebFeature::kCSSEnvironmentVariable_SafeAreaInsetBottom, WebFeature::kCSSEnvironmentVariable_SafeAreaInsetBottom,
WebFeature::kMediaControlsDisplayCutoutGesture, WebFeature::kMediaControlsDisplayCutoutGesture,
WebFeature::kPolymerV1Detected, WebFeature::kPolymerV2Detected, WebFeature::kPolymerV1Detected, WebFeature::kPolymerV2Detected,
WebFeature::kFullscreenSecureOrigin,
WebFeature::kFullscreenInsecureOrigin,
})); }));
return opt_in_features.count(feature); return opt_in_features.count(feature);
} }
...@@ -383,6 +383,12 @@ class PageLoadMetricsBrowserTest : public InProcessBrowserTest { ...@@ -383,6 +383,12 @@ class PageLoadMetricsBrowserTest : public InProcessBrowserTest {
ui_test_utils::NavigateToURL(browser(), GURL(url::kAboutBlankURL)); ui_test_utils::NavigateToURL(browser(), GURL(url::kAboutBlankURL));
} }
void MakeComponentFullscreen(const std::string& id) {
EXPECT_TRUE(content::ExecuteScript(
browser()->tab_strip_model()->GetActiveWebContents(),
"document.getElementById(\"" + id + "\").webkitRequestFullscreen();"));
}
std::string GetRecordedPageLoadMetricNames() { std::string GetRecordedPageLoadMetricNames() {
auto entries = histogram_tester_.GetTotalCountsForPrefix("PageLoad."); auto entries = histogram_tester_.GetTotalCountsForPrefix("PageLoad.");
std::vector<std::string> names; std::vector<std::string> names;
...@@ -1358,6 +1364,7 @@ IN_PROC_BROWSER_TEST_F(PageLoadMetricsBrowserTest, ...@@ -1358,6 +1364,7 @@ IN_PROC_BROWSER_TEST_F(PageLoadMetricsBrowserTest,
browser(), browser(),
embedded_test_server()->GetURL( embedded_test_server()->GetURL(
"non-secure.test", "/page_load_metrics/use_counter_features.html")); "non-secure.test", "/page_load_metrics/use_counter_features.html"));
MakeComponentFullscreen("testvideo");
waiter->Wait(); waiter->Wait();
NavigateToUntrackedUrl(); NavigateToUntrackedUrl();
...@@ -1381,6 +1388,9 @@ IN_PROC_BROWSER_TEST_F(PageLoadMetricsBrowserTest, ...@@ -1381,6 +1388,9 @@ IN_PROC_BROWSER_TEST_F(PageLoadMetricsBrowserTest,
histogram_tester_.ExpectBucketCount( histogram_tester_.ExpectBucketCount(
internal::kFeaturesHistogramName, internal::kFeaturesHistogramName,
static_cast<int32_t>(WebFeature::kPageVisits), 1); static_cast<int32_t>(WebFeature::kPageVisits), 1);
histogram_tester_.ExpectBucketCount(
internal::kFeaturesHistogramName,
static_cast<int32_t>(WebFeature::kFullscreenInsecureOrigin), 1);
} }
// Test UseCounter UKM features observed. // Test UseCounter UKM features observed.
...@@ -1393,12 +1403,13 @@ IN_PROC_BROWSER_TEST_F(PageLoadMetricsBrowserTest, ...@@ -1393,12 +1403,13 @@ IN_PROC_BROWSER_TEST_F(PageLoadMetricsBrowserTest,
GURL url = embedded_test_server()->GetURL( GURL url = embedded_test_server()->GetURL(
"/page_load_metrics/use_counter_features.html"); "/page_load_metrics/use_counter_features.html");
ui_test_utils::NavigateToURL(browser(), url); ui_test_utils::NavigateToURL(browser(), url);
MakeComponentFullscreen("testvideo");
waiter->Wait(); waiter->Wait();
NavigateToUntrackedUrl(); NavigateToUntrackedUrl();
const auto& entries = test_ukm_recorder_->GetEntriesByName( const auto& entries = test_ukm_recorder_->GetEntriesByName(
ukm::builders::Blink_UseCounter::kEntryName); ukm::builders::Blink_UseCounter::kEntryName);
EXPECT_EQ(3u, entries.size()); EXPECT_EQ(4u, entries.size());
std::vector<int64_t> ukm_features; std::vector<int64_t> ukm_features;
for (const auto* entry : entries) { for (const auto* entry : entries) {
test_ukm_recorder_->ExpectEntrySourceHasUrl(entry, url); test_ukm_recorder_->ExpectEntrySourceHasUrl(entry, url);
...@@ -1410,6 +1421,7 @@ IN_PROC_BROWSER_TEST_F(PageLoadMetricsBrowserTest, ...@@ -1410,6 +1421,7 @@ IN_PROC_BROWSER_TEST_F(PageLoadMetricsBrowserTest,
EXPECT_THAT( EXPECT_THAT(
ukm_features, ukm_features,
UnorderedElementsAre( UnorderedElementsAre(
static_cast<int64_t>(WebFeature::kFullscreenSecureOrigin),
static_cast<int64_t>(WebFeature::kNavigatorVibrate), static_cast<int64_t>(WebFeature::kNavigatorVibrate),
static_cast<int64_t>(WebFeature::kDataUriHasOctothorpe), static_cast<int64_t>(WebFeature::kDataUriHasOctothorpe),
static_cast<int64_t>( static_cast<int64_t>(
...@@ -1431,12 +1443,13 @@ IN_PROC_BROWSER_TEST_F(PageLoadMetricsBrowserTest, ...@@ -1431,12 +1443,13 @@ IN_PROC_BROWSER_TEST_F(PageLoadMetricsBrowserTest,
GURL url = GURL url =
https_server.GetURL("/page_load_metrics/use_counter_features.html"); https_server.GetURL("/page_load_metrics/use_counter_features.html");
ui_test_utils::NavigateToURL(browser(), url); ui_test_utils::NavigateToURL(browser(), url);
MakeComponentFullscreen("testvideo");
waiter->Wait(); waiter->Wait();
NavigateToUntrackedUrl(); NavigateToUntrackedUrl();
const auto& entries = test_ukm_recorder_->GetEntriesByName( const auto& entries = test_ukm_recorder_->GetEntriesByName(
ukm::builders::Blink_UseCounter::kEntryName); ukm::builders::Blink_UseCounter::kEntryName);
EXPECT_EQ(6u, entries.size()); EXPECT_EQ(7u, entries.size());
std::vector<int64_t> ukm_features; std::vector<int64_t> ukm_features;
for (const auto* entry : entries) { for (const auto* entry : entries) {
test_ukm_recorder_->ExpectEntrySourceHasUrl(entry, url); test_ukm_recorder_->ExpectEntrySourceHasUrl(entry, url);
...@@ -1447,6 +1460,7 @@ IN_PROC_BROWSER_TEST_F(PageLoadMetricsBrowserTest, ...@@ -1447,6 +1460,7 @@ IN_PROC_BROWSER_TEST_F(PageLoadMetricsBrowserTest,
} }
EXPECT_THAT(ukm_features, EXPECT_THAT(ukm_features,
UnorderedElementsAre( UnorderedElementsAre(
static_cast<int64_t>(WebFeature::kFullscreenSecureOrigin),
static_cast<int64_t>(WebFeature::kNavigatorVibrate), static_cast<int64_t>(WebFeature::kNavigatorVibrate),
static_cast<int64_t>(WebFeature::kDataUriHasOctothorpe), static_cast<int64_t>(WebFeature::kDataUriHasOctothorpe),
static_cast<int64_t>( static_cast<int64_t>(
......
...@@ -36,6 +36,6 @@ ...@@ -36,6 +36,6 @@
</script> </script>
<img src="http://example.test"/> <img src="http://example.test"/>
<audio controls><source src="http://example.test" type="audio/mpeg"></audio> <audio controls><source src="http://example.test" type="audio/mpeg"></audio>
<video controls><source src="http://example.test" type="video/mp4"></video> <video controls id="testvideo"><source src="http://example.test" type="video/mp4"></video>
</body> </body>
</html> </html>
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