OLD | NEW |
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 "chrome/browser/engagement/site_engagement_service.h" | 5 #include "chrome/browser/engagement/site_engagement_service.h" |
6 | 6 |
7 #include <utility> | 7 #include <utility> |
8 | 8 |
9 #include "base/files/scoped_temp_dir.h" | 9 #include "base/files/scoped_temp_dir.h" |
10 #include "base/macros.h" | 10 #include "base/macros.h" |
(...skipping 625 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
636 | 636 |
637 service->HandleUserInput(url3, SiteEngagementMetrics::ENGAGEMENT_KEYPRESS); | 637 service->HandleUserInput(url3, SiteEngagementMetrics::ENGAGEMENT_KEYPRESS); |
638 EXPECT_DOUBLE_EQ(0.05, service->GetScore(url3)); | 638 EXPECT_DOUBLE_EQ(0.05, service->GetScore(url3)); |
639 EXPECT_DOUBLE_EQ(0.2, service->GetTotalEngagementPoints()); | 639 EXPECT_DOUBLE_EQ(0.2, service->GetTotalEngagementPoints()); |
640 | 640 |
641 service->HandleUserInput(url1, SiteEngagementMetrics::ENGAGEMENT_KEYPRESS); | 641 service->HandleUserInput(url1, SiteEngagementMetrics::ENGAGEMENT_KEYPRESS); |
642 service->HandleUserInput(url1, SiteEngagementMetrics::ENGAGEMENT_MOUSE); | 642 service->HandleUserInput(url1, SiteEngagementMetrics::ENGAGEMENT_MOUSE); |
643 EXPECT_DOUBLE_EQ(0.15, service->GetScore(url1)); | 643 EXPECT_DOUBLE_EQ(0.15, service->GetScore(url1)); |
644 EXPECT_DOUBLE_EQ(0.3, service->GetTotalEngagementPoints()); | 644 EXPECT_DOUBLE_EQ(0.3, service->GetTotalEngagementPoints()); |
645 | 645 |
646 service->HandleUserInput(url2, SiteEngagementMetrics::ENGAGEMENT_WHEEL); | 646 service->HandleUserInput(url2, SiteEngagementMetrics::ENGAGEMENT_SCROLL); |
647 service->HandleUserInput(url3, | 647 service->HandleUserInput(url3, |
648 SiteEngagementMetrics::ENGAGEMENT_TOUCH_GESTURE); | 648 SiteEngagementMetrics::ENGAGEMENT_TOUCH_GESTURE); |
649 EXPECT_DOUBLE_EQ(0.15, service->GetScore(url2)); | 649 EXPECT_DOUBLE_EQ(0.15, service->GetScore(url2)); |
650 EXPECT_DOUBLE_EQ(0.1, service->GetScore(url3)); | 650 EXPECT_DOUBLE_EQ(0.1, service->GetScore(url3)); |
651 EXPECT_DOUBLE_EQ(0.4, service->GetTotalEngagementPoints()); | 651 EXPECT_DOUBLE_EQ(0.4, service->GetTotalEngagementPoints()); |
652 } | 652 } |
653 | 653 |
654 TEST_F(SiteEngagementServiceTest, LastShortcutLaunch) { | 654 TEST_F(SiteEngagementServiceTest, LastShortcutLaunch) { |
655 base::SimpleTestClock* clock = new base::SimpleTestClock(); | 655 base::SimpleTestClock* clock = new base::SimpleTestClock(); |
656 scoped_ptr<SiteEngagementService> service( | 656 scoped_ptr<SiteEngagementService> service( |
(...skipping 242 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
899 1); | 899 1); |
900 histograms.ExpectBucketCount(SiteEngagementMetrics::kEngagementTypeHistogram, | 900 histograms.ExpectBucketCount(SiteEngagementMetrics::kEngagementTypeHistogram, |
901 SiteEngagementMetrics::ENGAGEMENT_MEDIA_HIDDEN, | 901 SiteEngagementMetrics::ENGAGEMENT_MEDIA_HIDDEN, |
902 1); | 902 1); |
903 histograms.ExpectBucketCount( | 903 histograms.ExpectBucketCount( |
904 SiteEngagementMetrics::kEngagementTypeHistogram, | 904 SiteEngagementMetrics::kEngagementTypeHistogram, |
905 SiteEngagementMetrics::ENGAGEMENT_FIRST_DAILY_ENGAGEMENT, 3); | 905 SiteEngagementMetrics::ENGAGEMENT_FIRST_DAILY_ENGAGEMENT, 3); |
906 | 906 |
907 service->HandleNavigation(url1, ui::PAGE_TRANSITION_GENERATED); | 907 service->HandleNavigation(url1, ui::PAGE_TRANSITION_GENERATED); |
908 service->HandleNavigation(url1, ui::PAGE_TRANSITION_TYPED); | 908 service->HandleNavigation(url1, ui::PAGE_TRANSITION_TYPED); |
909 service->HandleUserInput(url2, SiteEngagementMetrics::ENGAGEMENT_WHEEL); | 909 service->HandleUserInput(url2, SiteEngagementMetrics::ENGAGEMENT_SCROLL); |
910 service->HandleUserInput(url1, SiteEngagementMetrics::ENGAGEMENT_KEYPRESS); | 910 service->HandleUserInput(url1, SiteEngagementMetrics::ENGAGEMENT_KEYPRESS); |
911 service->HandleUserInput(url3, SiteEngagementMetrics::ENGAGEMENT_MOUSE); | 911 service->HandleUserInput(url3, SiteEngagementMetrics::ENGAGEMENT_MOUSE); |
912 | 912 |
913 histograms.ExpectTotalCount(SiteEngagementMetrics::kEngagementTypeHistogram, | 913 histograms.ExpectTotalCount(SiteEngagementMetrics::kEngagementTypeHistogram, |
914 17); | 914 17); |
915 histograms.ExpectBucketCount(SiteEngagementMetrics::kEngagementTypeHistogram, | 915 histograms.ExpectBucketCount(SiteEngagementMetrics::kEngagementTypeHistogram, |
916 SiteEngagementMetrics::ENGAGEMENT_NAVIGATION, 6); | 916 SiteEngagementMetrics::ENGAGEMENT_NAVIGATION, 6); |
917 histograms.ExpectBucketCount(SiteEngagementMetrics::kEngagementTypeHistogram, | 917 histograms.ExpectBucketCount(SiteEngagementMetrics::kEngagementTypeHistogram, |
918 SiteEngagementMetrics::ENGAGEMENT_KEYPRESS, 2); | 918 SiteEngagementMetrics::ENGAGEMENT_KEYPRESS, 2); |
919 histograms.ExpectBucketCount(SiteEngagementMetrics::kEngagementTypeHistogram, | 919 histograms.ExpectBucketCount(SiteEngagementMetrics::kEngagementTypeHistogram, |
920 SiteEngagementMetrics::ENGAGEMENT_MOUSE, 2); | 920 SiteEngagementMetrics::ENGAGEMENT_MOUSE, 2); |
921 histograms.ExpectBucketCount(SiteEngagementMetrics::kEngagementTypeHistogram, | 921 histograms.ExpectBucketCount(SiteEngagementMetrics::kEngagementTypeHistogram, |
922 SiteEngagementMetrics::ENGAGEMENT_TOUCH_GESTURE, | 922 SiteEngagementMetrics::ENGAGEMENT_TOUCH_GESTURE, |
923 1); | 923 1); |
924 histograms.ExpectBucketCount(SiteEngagementMetrics::kEngagementTypeHistogram, | 924 histograms.ExpectBucketCount(SiteEngagementMetrics::kEngagementTypeHistogram, |
925 SiteEngagementMetrics::ENGAGEMENT_WHEEL, 1); | 925 SiteEngagementMetrics::ENGAGEMENT_SCROLL, 1); |
926 histograms.ExpectBucketCount( | 926 histograms.ExpectBucketCount( |
927 SiteEngagementMetrics::kEngagementTypeHistogram, | 927 SiteEngagementMetrics::kEngagementTypeHistogram, |
928 SiteEngagementMetrics::ENGAGEMENT_FIRST_DAILY_ENGAGEMENT, 3); | 928 SiteEngagementMetrics::ENGAGEMENT_FIRST_DAILY_ENGAGEMENT, 3); |
929 | 929 |
930 // Advance an origin to the max for a day and advance the clock an hour before | 930 // Advance an origin to the max for a day and advance the clock an hour before |
931 // the last increment before max. Expect the histogram to be updated. | 931 // the last increment before max. Expect the histogram to be updated. |
932 for (int i = 0; i < 6; ++i) | 932 for (int i = 0; i < 6; ++i) |
933 service->HandleNavigation(url1, ui::PAGE_TRANSITION_TYPED); | 933 service->HandleNavigation(url1, ui::PAGE_TRANSITION_TYPED); |
934 | 934 |
935 clock->SetNow(clock->Now() + base::TimeDelta::FromMinutes(60)); | 935 clock->SetNow(clock->Now() + base::TimeDelta::FromMinutes(60)); |
(...skipping 436 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1372 0, 2); | 1372 0, 2); |
1373 | 1373 |
1374 // Add more points and ensure no more samples are present. | 1374 // Add more points and ensure no more samples are present. |
1375 service->AddPoints(origin1, 0.01); | 1375 service->AddPoints(origin1, 0.01); |
1376 service->AddPoints(origin2, 0.01); | 1376 service->AddPoints(origin2, 0.01); |
1377 histograms.ExpectTotalCount(SiteEngagementMetrics::kScoreDecayedFromHistogram, | 1377 histograms.ExpectTotalCount(SiteEngagementMetrics::kScoreDecayedFromHistogram, |
1378 4); | 1378 4); |
1379 histograms.ExpectTotalCount(SiteEngagementMetrics::kScoreDecayedToHistogram, | 1379 histograms.ExpectTotalCount(SiteEngagementMetrics::kScoreDecayedToHistogram, |
1380 4); | 1380 4); |
1381 } | 1381 } |
OLD | NEW |