| Index: components/metrics/metrics_log_manager_unittest.cc
|
| diff --git a/components/metrics/metrics_log_manager_unittest.cc b/components/metrics/metrics_log_manager_unittest.cc
|
| index b43a514de70d86c366c86c8df9b4c3f7f77e6328..b74d614bdf3a5c68805c11f1e62efbf5084aa008 100644
|
| --- a/components/metrics/metrics_log_manager_unittest.cc
|
| +++ b/components/metrics/metrics_log_manager_unittest.cc
|
| @@ -178,7 +178,6 @@ TEST(MetricsLogManagerTest, StoreAndLoad) {
|
| log_manager.BeginLoggingWithLog(make_scoped_ptr(new MetricsLog(
|
| "id", 0, MetricsLog::ONGOING_LOG, &client, &pref_service)));
|
| log_manager.StageNextLogForUpload();
|
| - log_manager.StoreStagedLogAsUnsent(PersistedLogs::NORMAL_STORE);
|
| log_manager.FinishCurrentLog();
|
|
|
| // Nothing should be written out until PersistUnsentLogs is called.
|
| @@ -238,7 +237,6 @@ TEST(MetricsLogManagerTest, StoreStagedLogTypes) {
|
| "id", 0, MetricsLog::ONGOING_LOG, &client, &pref_service)));
|
| log_manager.FinishCurrentLog();
|
| log_manager.StageNextLogForUpload();
|
| - log_manager.StoreStagedLogAsUnsent(PersistedLogs::NORMAL_STORE);
|
| log_manager.PersistUnsentLogs();
|
|
|
| EXPECT_EQ(0U, pref_service.TypeCount(MetricsLog::INITIAL_STABILITY_LOG));
|
| @@ -254,7 +252,6 @@ TEST(MetricsLogManagerTest, StoreStagedLogTypes) {
|
| "id", 0, MetricsLog::INITIAL_STABILITY_LOG, &client, &pref_service)));
|
| log_manager.FinishCurrentLog();
|
| log_manager.StageNextLogForUpload();
|
| - log_manager.StoreStagedLogAsUnsent(PersistedLogs::NORMAL_STORE);
|
| log_manager.PersistUnsentLogs();
|
|
|
| EXPECT_EQ(1U, pref_service.TypeCount(MetricsLog::INITIAL_STABILITY_LOG));
|
| @@ -282,10 +279,10 @@ TEST(MetricsLogManagerTest, LargeLogDiscarding) {
|
| EXPECT_EQ(0U, pref_service.TypeCount(MetricsLog::ONGOING_LOG));
|
| }
|
|
|
| -TEST(MetricsLogManagerTest, ProvisionalStoreStandardFlow) {
|
| +TEST(MetricsLogManagerTest, DiscardOrder) {
|
| + // Ensure that the correct log is discarded if new logs are pushed while
|
| + // a log is staged.
|
| TestMetricsServiceClient client;
|
| -
|
| - // Ensure that provisional store works, and discards the correct log.
|
| {
|
| TestLogPrefService pref_service;
|
| MetricsLogManager log_manager(&pref_service, 0);
|
| @@ -297,64 +294,11 @@ TEST(MetricsLogManagerTest, ProvisionalStoreStandardFlow) {
|
| log_manager.BeginLoggingWithLog(make_scoped_ptr(new MetricsLog(
|
| "id", 0, MetricsLog::ONGOING_LOG, &client, &pref_service)));
|
| log_manager.StageNextLogForUpload();
|
| - log_manager.StoreStagedLogAsUnsent(PersistedLogs::PROVISIONAL_STORE);
|
| log_manager.FinishCurrentLog();
|
| - log_manager.DiscardLastProvisionalStore();
|
| -
|
| - log_manager.PersistUnsentLogs();
|
| - EXPECT_EQ(0U, pref_service.TypeCount(MetricsLog::INITIAL_STABILITY_LOG));
|
| - EXPECT_EQ(1U, pref_service.TypeCount(MetricsLog::ONGOING_LOG));
|
| - }
|
| -}
|
| -
|
| -TEST(MetricsLogManagerTest, ProvisionalStoreNoop) {
|
| - TestMetricsServiceClient client;
|
| -
|
| - // Ensure that trying to drop a sent log is a no-op, even if another log has
|
| - // since been staged.
|
| - {
|
| - TestLogPrefService pref_service;
|
| - MetricsLogManager log_manager(&pref_service, 0);
|
| - log_manager.LoadPersistedUnsentLogs();
|
| -
|
| - log_manager.BeginLoggingWithLog(make_scoped_ptr(new MetricsLog(
|
| - "id", 0, MetricsLog::ONGOING_LOG, &client, &pref_service)));
|
| - log_manager.FinishCurrentLog();
|
| - log_manager.StageNextLogForUpload();
|
| - log_manager.StoreStagedLogAsUnsent(PersistedLogs::PROVISIONAL_STORE);
|
| - log_manager.StageNextLogForUpload();
|
| log_manager.DiscardStagedLog();
|
| - log_manager.BeginLoggingWithLog(make_scoped_ptr(new MetricsLog(
|
| - "id", 0, MetricsLog::ONGOING_LOG, &client, &pref_service)));
|
| - log_manager.FinishCurrentLog();
|
| - log_manager.StageNextLogForUpload();
|
| - log_manager.StoreStagedLogAsUnsent(PersistedLogs::NORMAL_STORE);
|
| - log_manager.DiscardLastProvisionalStore();
|
| -
|
| - log_manager.PersistUnsentLogs();
|
| - EXPECT_EQ(1U, pref_service.TypeCount(MetricsLog::ONGOING_LOG));
|
| - }
|
| -
|
| - // Ensure that trying to drop more than once is a no-op
|
| - {
|
| - TestLogPrefService pref_service;
|
| - MetricsLogManager log_manager(&pref_service, 0);
|
| - log_manager.LoadPersistedUnsentLogs();
|
| -
|
| - log_manager.BeginLoggingWithLog(make_scoped_ptr(new MetricsLog(
|
| - "id", 0, MetricsLog::ONGOING_LOG, &client, &pref_service)));
|
| - log_manager.FinishCurrentLog();
|
| - log_manager.StageNextLogForUpload();
|
| - log_manager.StoreStagedLogAsUnsent(PersistedLogs::NORMAL_STORE);
|
| - log_manager.BeginLoggingWithLog(make_scoped_ptr(new MetricsLog(
|
| - "id", 0, MetricsLog::ONGOING_LOG, &client, &pref_service)));
|
| - log_manager.FinishCurrentLog();
|
| - log_manager.StageNextLogForUpload();
|
| - log_manager.StoreStagedLogAsUnsent(PersistedLogs::PROVISIONAL_STORE);
|
| - log_manager.DiscardLastProvisionalStore();
|
| - log_manager.DiscardLastProvisionalStore();
|
|
|
| log_manager.PersistUnsentLogs();
|
| + EXPECT_EQ(0U, pref_service.TypeCount(MetricsLog::INITIAL_STABILITY_LOG));
|
| EXPECT_EQ(1U, pref_service.TypeCount(MetricsLog::ONGOING_LOG));
|
| }
|
| }
|
|
|