Chromium Code Reviews| Index: chrome/browser/metrics/desktop_engagement/desktop_engagement_service_unittest.cc |
| diff --git a/chrome/browser/metrics/desktop_engagement/desktop_engagement_service_unittest.cc b/chrome/browser/metrics/desktop_engagement/desktop_engagement_service_unittest.cc |
| index 4670e22f60092f77f8783393827f68f09cfc08d8..a041fa6dc106771df5be1fd13c44f12770ff7a71 100644 |
| --- a/chrome/browser/metrics/desktop_engagement/desktop_engagement_service_unittest.cc |
| +++ b/chrome/browser/metrics/desktop_engagement/desktop_engagement_service_unittest.cc |
| @@ -147,3 +147,26 @@ TEST(DesktopEngagementServiceTest, TestAudioEvent) { |
| EXPECT_FALSE(instance.is_audio_playing()); |
| histogram_tester.ExpectTotalCount("Session.TotalDuration", 1); |
| } |
| + |
| +TEST(DesktopEngagementServiceTest, TestTimeoutDiscount) { |
| + base::MessageLoop loop(base::MessageLoop::TYPE_DEFAULT); |
| + base::HistogramTester histogram_tester; |
| + |
| + MockDesktopEngagementService instance; |
| + instance.SetInactivityTimeoutForTesting(2); |
| + |
| + instance.OnVisibilityChanged(true); |
| + instance.OnUserEvent(); |
| + histogram_tester.ExpectTotalCount("Session.TotalDuration", 0); |
| + |
| + // Wait until the session expires. |
| + while (!instance.is_timeout()) { |
| + base::RunLoop().RunUntilIdle(); |
| + } |
| + |
| + histogram_tester.ExpectTotalCount("Session.TotalDuration", 1); |
| + |
| + // The recorded value should be in the 0 bucket even though inactivity timeout |
| + // is 2 seconds. |
| + histogram_tester.ExpectUniqueSample("Session.TotalDuration", 0, 1); |
|
gayane -on leave until 09-2017
2016/09/13 18:13:53
this check appeared to be flaky and I assumed that
|
| +} |