| Index: chrome/browser/engagement/site_engagement_service_browsertest.cc
|
| diff --git a/chrome/browser/engagement/site_engagement_service_browsertest.cc b/chrome/browser/engagement/site_engagement_service_browsertest.cc
|
| index 096ea82dbb4bef9b01a61318c63baa7368860dee..2c82e771aa6be5e9858926e2535177d8a7f1c44e 100644
|
| --- a/chrome/browser/engagement/site_engagement_service_browsertest.cc
|
| +++ b/chrome/browser/engagement/site_engagement_service_browsertest.cc
|
| @@ -6,6 +6,7 @@
|
| #include "base/run_loop.h"
|
| #include "base/single_thread_task_runner.h"
|
| #include "base/task_runner.h"
|
| +#include "base/test/histogram_tester.h"
|
| #include "base/test/simple_test_clock.h"
|
| #include "base/thread_task_runner_handle.h"
|
| #include "base/timer/mock_timer.h"
|
| @@ -32,8 +33,8 @@ class TestSiteEngagementHelper : public SiteEngagementHelper {
|
|
|
| ~TestSiteEngagementHelper() override { }
|
|
|
| - void RecordUserInput() override {
|
| - SiteEngagementHelper::RecordUserInput();
|
| + void RecordUserInput(SiteEngagementMetrics::EngagementType type) override {
|
| + SiteEngagementHelper::RecordUserInput(type);
|
| base::ThreadTaskRunnerHandle::Get()->PostTask(FROM_HERE, quit_closure_);
|
| }
|
|
|
| @@ -209,9 +210,19 @@ IN_PROC_BROWSER_TEST_F(SiteEngagementServiceBrowserTest,
|
| SiteEngagementServiceFactory::GetForProfile(browser()->profile());
|
| DCHECK(service);
|
|
|
| + base::HistogramTester histograms;
|
| +
|
| + // Histograms should start off empty.
|
| + histograms.ExpectTotalCount(SiteEngagementMetrics::kEngagementTypeHistogram,
|
| + 0);
|
| +
|
| ui_test_utils::NavigateToURL(browser(), url1);
|
| EXPECT_DOUBLE_EQ(0.5, service->GetScore(url1));
|
| EXPECT_EQ(0, service->GetScore(url2));
|
| + histograms.ExpectTotalCount(SiteEngagementMetrics::kEngagementTypeHistogram,
|
| + 1);
|
| + histograms.ExpectBucketCount(SiteEngagementMetrics::kEngagementTypeHistogram,
|
| + SiteEngagementMetrics::ENGAGEMENT_NAVIGATION, 1);
|
|
|
| HandleKeyPress(helper.get(), ui::VKEY_UP);
|
| HandleKeyPress(helper.get(), ui::VKEY_RETURN);
|
| @@ -222,6 +233,14 @@ IN_PROC_BROWSER_TEST_F(SiteEngagementServiceBrowserTest,
|
|
|
| EXPECT_DOUBLE_EQ(0.7, service->GetScore(url1));
|
| EXPECT_EQ(0, service->GetScore(url2));
|
| + histograms.ExpectTotalCount(SiteEngagementMetrics::kEngagementTypeHistogram,
|
| + 5);
|
| + histograms.ExpectBucketCount(SiteEngagementMetrics::kEngagementTypeHistogram,
|
| + SiteEngagementMetrics::ENGAGEMENT_NAVIGATION, 1);
|
| + histograms.ExpectBucketCount(SiteEngagementMetrics::kEngagementTypeHistogram,
|
| + SiteEngagementMetrics::ENGAGEMENT_KEYPRESS, 3);
|
| + histograms.ExpectBucketCount(SiteEngagementMetrics::kEngagementTypeHistogram,
|
| + SiteEngagementMetrics::ENGAGEMENT_MOUSE, 1);
|
|
|
| HandleMouseEvent(helper.get(), blink::WebMouseEvent::ButtonRight,
|
| blink::WebInputEvent::MouseDown);
|
| @@ -232,6 +251,10 @@ IN_PROC_BROWSER_TEST_F(SiteEngagementServiceBrowserTest,
|
|
|
| EXPECT_DOUBLE_EQ(0.85, service->GetScore(url1));
|
| EXPECT_EQ(0, service->GetScore(url2));
|
| + histograms.ExpectTotalCount(SiteEngagementMetrics::kEngagementTypeHistogram,
|
| + 8);
|
| + histograms.ExpectBucketCount(SiteEngagementMetrics::kEngagementTypeHistogram,
|
| + SiteEngagementMetrics::ENGAGEMENT_MOUSE, 4);
|
|
|
| ui_test_utils::NavigateToURL(browser(), url2);
|
|
|
| @@ -246,6 +269,14 @@ IN_PROC_BROWSER_TEST_F(SiteEngagementServiceBrowserTest,
|
| EXPECT_DOUBLE_EQ(0.85, service->GetScore(url1));
|
| EXPECT_DOUBLE_EQ(0.6, service->GetScore(url2));
|
| EXPECT_DOUBLE_EQ(1.45, service->GetTotalEngagementPoints());
|
| + histograms.ExpectTotalCount(SiteEngagementMetrics::kEngagementTypeHistogram,
|
| + 11);
|
| + histograms.ExpectBucketCount(SiteEngagementMetrics::kEngagementTypeHistogram,
|
| + SiteEngagementMetrics::ENGAGEMENT_NAVIGATION, 2);
|
| + histograms.ExpectBucketCount(SiteEngagementMetrics::kEngagementTypeHistogram,
|
| + SiteEngagementMetrics::ENGAGEMENT_KEYPRESS, 4);
|
| + histograms.ExpectBucketCount(SiteEngagementMetrics::kEngagementTypeHistogram,
|
| + SiteEngagementMetrics::ENGAGEMENT_MOUSE, 5);
|
| }
|
|
|
| IN_PROC_BROWSER_TEST_F(SiteEngagementServiceBrowserTest,
|
|
|