diff options
Diffstat (limited to 'components/metrics/metrics_log_unittest.cc')
-rw-r--r-- | components/metrics/metrics_log_unittest.cc | 36 |
1 files changed, 26 insertions, 10 deletions
diff --git a/components/metrics/metrics_log_unittest.cc b/components/metrics/metrics_log_unittest.cc index ee299d1..10663b3 100644 --- a/components/metrics/metrics_log_unittest.cc +++ b/components/metrics/metrics_log_unittest.cc @@ -8,6 +8,7 @@ #include "base/base64.h" #include "base/basictypes.h" +#include "base/memory/scoped_vector.h" #include "base/metrics/bucket_ranges.h" #include "base/metrics/sample_vector.h" #include "base/prefs/pref_service.h" @@ -17,6 +18,7 @@ #include "components/metrics/metrics_pref_names.h" #include "components/metrics/metrics_state_manager.h" #include "components/metrics/proto/chrome_user_metrics_extension.pb.h" +#include "components/metrics/test_metrics_provider.h" #include "components/metrics/test_metrics_service_client.h" #include "components/variations/active_field_trials.h" #include "testing/gtest/include/gtest/gtest.h" @@ -332,11 +334,13 @@ TEST_F(MetricsLogTest, InitialLogStabilityMetrics) { MetricsLog::INITIAL_STABILITY_LOG, &client, &prefs_); - std::vector<MetricsProvider*> metrics_providers; - log.RecordEnvironment(metrics_providers, - std::vector<variations::ActiveGroupId>(), - kInstallDate, kEnabledDate); - log.RecordStabilityMetrics(metrics_providers, base::TimeDelta(), + TestMetricsProvider* test_provider = new TestMetricsProvider(); + ScopedVector<MetricsProvider> metrics_providers; + metrics_providers.push_back(test_provider); + log.RecordEnvironment(metrics_providers.get(), + std::vector<variations::ActiveGroupId>(), kInstallDate, + kEnabledDate); + log.RecordStabilityMetrics(metrics_providers.get(), base::TimeDelta(), base::TimeDelta()); const SystemProfileProto_Stability& stability = log.system_profile().stability(); @@ -349,17 +353,24 @@ TEST_F(MetricsLogTest, InitialLogStabilityMetrics) { EXPECT_TRUE(stability.has_breakpad_registration_failure_count()); EXPECT_TRUE(stability.has_debugger_present_count()); EXPECT_TRUE(stability.has_debugger_not_present_count()); + + // The test provider should have been called upon to provide initial + // stability and regular stability metrics. + EXPECT_TRUE(test_provider->provide_initial_stability_metrics_called()); + EXPECT_TRUE(test_provider->provide_stability_metrics_called()); } TEST_F(MetricsLogTest, OngoingLogStabilityMetrics) { TestMetricsServiceClient client; TestMetricsLog log( kClientId, kSessionId, MetricsLog::ONGOING_LOG, &client, &prefs_); - std::vector<MetricsProvider*> metrics_providers; - log.RecordEnvironment(metrics_providers, - std::vector<variations::ActiveGroupId>(), - kInstallDate, kEnabledDate); - log.RecordStabilityMetrics(metrics_providers, base::TimeDelta(), + TestMetricsProvider* test_provider = new TestMetricsProvider(); + ScopedVector<MetricsProvider> metrics_providers; + metrics_providers.push_back(test_provider); + log.RecordEnvironment(metrics_providers.get(), + std::vector<variations::ActiveGroupId>(), kInstallDate, + kEnabledDate); + log.RecordStabilityMetrics(metrics_providers.get(), base::TimeDelta(), base::TimeDelta()); const SystemProfileProto_Stability& stability = log.system_profile().stability(); @@ -372,6 +383,11 @@ TEST_F(MetricsLogTest, OngoingLogStabilityMetrics) { EXPECT_FALSE(stability.has_breakpad_registration_failure_count()); EXPECT_FALSE(stability.has_debugger_present_count()); EXPECT_FALSE(stability.has_debugger_not_present_count()); + + // The test provider should have been called upon to provide regular but not + // initial stability metrics. + EXPECT_FALSE(test_provider->provide_initial_stability_metrics_called()); + EXPECT_TRUE(test_provider->provide_stability_metrics_called()); } TEST_F(MetricsLogTest, ChromeChannelWrittenToProtobuf) { |