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

Side by Side Diff: chrome/browser/engagement/site_engagement_helper_unittest.cc

Issue 1407053010: Make mouse wheel events trigger WebContentsObserver::DidGetUserInteraction. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Removing static initializer Created 5 years, 1 month 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 unified diff | Download patch
OLDNEW
1 // Copyright 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "base/command_line.h" 5 #include "base/command_line.h"
6 #include "base/test/histogram_tester.h" 6 #include "base/test/histogram_tester.h"
7 #include "base/timer/mock_timer.h" 7 #include "base/timer/mock_timer.h"
8 #include "base/values.h" 8 #include "base/values.h"
9 #include "chrome/browser/engagement/site_engagement_helper.h" 9 #include "chrome/browser/engagement/site_engagement_helper.h"
10 #include "chrome/browser/engagement/site_engagement_service.h" 10 #include "chrome/browser/engagement/site_engagement_service.h"
(...skipping 100 matching lines...) Expand 10 before | Expand all | Expand 10 after
111 EXPECT_DOUBLE_EQ(0.7, service->GetScore(url1)); 111 EXPECT_DOUBLE_EQ(0.7, service->GetScore(url1));
112 EXPECT_DOUBLE_EQ(0.55, service->GetScore(url2)); 112 EXPECT_DOUBLE_EQ(0.55, service->GetScore(url2));
113 EXPECT_DOUBLE_EQ(1.25, service->GetTotalEngagementPoints()); 113 EXPECT_DOUBLE_EQ(1.25, service->GetTotalEngagementPoints());
114 } 114 }
115 }; 115 };
116 116
117 TEST_F(SiteEngagementHelperTest, KeyPressEngagementAccumulation) { 117 TEST_F(SiteEngagementHelperTest, KeyPressEngagementAccumulation) {
118 UserInputAccumulation(blink::WebInputEvent::RawKeyDown); 118 UserInputAccumulation(blink::WebInputEvent::RawKeyDown);
119 } 119 }
120 120
121 TEST_F(SiteEngagementHelperTest, MouseEventEngagementAccumulation) { 121 TEST_F(SiteEngagementHelperTest, MouseDownEventEngagementAccumulation) {
122 UserInputAccumulation(blink::WebInputEvent::MouseDown); 122 UserInputAccumulation(blink::WebInputEvent::MouseDown);
123 } 123 }
124 124
125 TEST_F(SiteEngagementHelperTest, MouseWheelEventEngagementAccumulation) {
126 UserInputAccumulation(blink::WebInputEvent::MouseWheel);
127 }
128
125 TEST_F(SiteEngagementHelperTest, GestureEngagementAccumulation) { 129 TEST_F(SiteEngagementHelperTest, GestureEngagementAccumulation) {
126 UserInputAccumulation(blink::WebInputEvent::GestureTapDown); 130 UserInputAccumulation(blink::WebInputEvent::GestureTapDown);
127 } 131 }
128 132
129 TEST_F(SiteEngagementHelperTest, MixedInputEngagementAccumulation) { 133 TEST_F(SiteEngagementHelperTest, MixedInputEngagementAccumulation) {
130 AddTab(browser(), GURL("about:blank")); 134 AddTab(browser(), GURL("about:blank"));
131 GURL url1("https://www.google.com/"); 135 GURL url1("https://www.google.com/");
132 GURL url2("http://www.google.com/"); 136 GURL url2("http://www.google.com/");
133 content::WebContents* web_contents = 137 content::WebContents* web_contents =
134 browser()->tab_strip_model()->GetActiveWebContents(); 138 browser()->tab_strip_model()->GetActiveWebContents();
(...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after
173 SiteEngagementMetrics::ENGAGEMENT_NAVIGATION, 1); 177 SiteEngagementMetrics::ENGAGEMENT_NAVIGATION, 1);
174 histograms.ExpectBucketCount(SiteEngagementMetrics::kEngagementTypeHistogram, 178 histograms.ExpectBucketCount(SiteEngagementMetrics::kEngagementTypeHistogram,
175 SiteEngagementMetrics::ENGAGEMENT_KEYPRESS, 2); 179 SiteEngagementMetrics::ENGAGEMENT_KEYPRESS, 2);
176 histograms.ExpectBucketCount(SiteEngagementMetrics::kEngagementTypeHistogram, 180 histograms.ExpectBucketCount(SiteEngagementMetrics::kEngagementTypeHistogram,
177 SiteEngagementMetrics::ENGAGEMENT_MOUSE, 1); 181 SiteEngagementMetrics::ENGAGEMENT_MOUSE, 1);
178 histograms.ExpectBucketCount(SiteEngagementMetrics::kEngagementTypeHistogram, 182 histograms.ExpectBucketCount(SiteEngagementMetrics::kEngagementTypeHistogram,
179 SiteEngagementMetrics::ENGAGEMENT_TOUCH_GESTURE, 183 SiteEngagementMetrics::ENGAGEMENT_TOUCH_GESTURE,
180 2); 184 2);
181 185
182 HandleUserInputAndRestartTracking(helper.get(), 186 HandleUserInputAndRestartTracking(helper.get(),
183 blink::WebInputEvent::MouseDown); 187 blink::WebInputEvent::MouseWheel);
184 HandleUserInputAndRestartTracking(helper.get(), 188 HandleUserInputAndRestartTracking(helper.get(),
185 blink::WebInputEvent::MouseDown); 189 blink::WebInputEvent::MouseDown);
186 HandleUserInputAndRestartTracking(helper.get(), 190 HandleUserInputAndRestartTracking(helper.get(),
187 blink::WebInputEvent::GestureTapDown); 191 blink::WebInputEvent::GestureTapDown);
188 192
189 EXPECT_DOUBLE_EQ(0.9, service->GetScore(url1)); 193 EXPECT_DOUBLE_EQ(0.9, service->GetScore(url1));
190 EXPECT_EQ(0, service->GetScore(url2)); 194 EXPECT_EQ(0, service->GetScore(url2));
191 histograms.ExpectTotalCount(SiteEngagementMetrics::kEngagementTypeHistogram, 195 histograms.ExpectTotalCount(SiteEngagementMetrics::kEngagementTypeHistogram,
192 9); 196 9);
193 histograms.ExpectBucketCount(SiteEngagementMetrics::kEngagementTypeHistogram, 197 histograms.ExpectBucketCount(SiteEngagementMetrics::kEngagementTypeHistogram,
194 SiteEngagementMetrics::ENGAGEMENT_MOUSE, 3); 198 SiteEngagementMetrics::ENGAGEMENT_MOUSE, 2);
199 histograms.ExpectBucketCount(SiteEngagementMetrics::kEngagementTypeHistogram,
200 SiteEngagementMetrics::ENGAGEMENT_WHEEL, 1);
195 histograms.ExpectBucketCount(SiteEngagementMetrics::kEngagementTypeHistogram, 201 histograms.ExpectBucketCount(SiteEngagementMetrics::kEngagementTypeHistogram,
196 SiteEngagementMetrics::ENGAGEMENT_TOUCH_GESTURE, 202 SiteEngagementMetrics::ENGAGEMENT_TOUCH_GESTURE,
197 3); 203 3);
198 204
199 NavigateWithDisposition(url2, CURRENT_TAB); 205 NavigateWithDisposition(url2, CURRENT_TAB);
200 StartTracking(helper.get()); 206 StartTracking(helper.get());
201 207
202 EXPECT_DOUBLE_EQ(0.9, service->GetScore(url1)); 208 EXPECT_DOUBLE_EQ(0.9, service->GetScore(url1));
203 EXPECT_DOUBLE_EQ(0.5, service->GetScore(url2)); 209 EXPECT_DOUBLE_EQ(0.5, service->GetScore(url2));
204 EXPECT_DOUBLE_EQ(1.4, service->GetTotalEngagementPoints()); 210 EXPECT_DOUBLE_EQ(1.4, service->GetTotalEngagementPoints());
(...skipping 148 matching lines...) Expand 10 before | Expand all | Expand 10 after
353 // When the timer fires, callbacks are added. 359 // When the timer fires, callbacks are added.
354 input_tracker_timer->Fire(); 360 input_tracker_timer->Fire();
355 EXPECT_FALSE(input_tracker_timer->IsRunning()); 361 EXPECT_FALSE(input_tracker_timer->IsRunning());
356 EXPECT_TRUE(IsTracking(helper.get())); 362 EXPECT_TRUE(IsTracking(helper.get()));
357 363
358 // Navigation should start the initial delay timer again. 364 // Navigation should start the initial delay timer again.
359 NavigateWithDisposition(url1, CURRENT_TAB); 365 NavigateWithDisposition(url1, CURRENT_TAB);
360 EXPECT_TRUE(input_tracker_timer->IsRunning()); 366 EXPECT_TRUE(input_tracker_timer->IsRunning());
361 EXPECT_FALSE(IsTracking(helper.get())); 367 EXPECT_FALSE(IsTracking(helper.get()));
362 } 368 }
OLDNEW
« no previous file with comments | « chrome/browser/engagement/site_engagement_helper.cc ('k') | chrome/browser/engagement/site_engagement_metrics.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698