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

Unified Diff: components/metrics/metrics_service_unittest.cc

Issue 310393006: Componentize MetricsService unittest (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Rebase Created 6 years, 6 months 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « components/components_tests.gyp ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: components/metrics/metrics_service_unittest.cc
diff --git a/chrome/browser/metrics/metrics_service_unittest.cc b/components/metrics/metrics_service_unittest.cc
similarity index 85%
rename from chrome/browser/metrics/metrics_service_unittest.cc
rename to components/metrics/metrics_service_unittest.cc
index ceb332866e8f56d15a972b76acc5e579d15923ff..0fae11dfd412db7c70e6b906f9b0072ad9d4f22b 100644
--- a/chrome/browser/metrics/metrics_service_unittest.cc
+++ b/components/metrics/metrics_service_unittest.cc
@@ -7,25 +7,18 @@
#include <string>
#include "base/bind.h"
+#include "base/message_loop/message_loop.h"
#include "base/prefs/testing_pref_service.h"
#include "base/threading/platform_thread.h"
-#include "chrome/browser/google/google_util.h"
-#include "chrome/common/pref_names.h"
-#include "chrome/test/base/scoped_testing_local_state.h"
-#include "chrome/test/base/testing_browser_process.h"
#include "components/metrics/compression_utils.h"
#include "components/metrics/metrics_log.h"
+#include "components/metrics/metrics_pref_names.h"
#include "components/metrics/metrics_service_observer.h"
#include "components/metrics/metrics_state_manager.h"
#include "components/metrics/test_metrics_service_client.h"
#include "components/variations/metrics_util.h"
-#include "content/public/test/test_browser_thread_bundle.h"
#include "testing/gtest/include/gtest/gtest.h"
-#if defined(OS_CHROMEOS)
-#include "chromeos/login/login_state.h"
-#endif // defined(OS_CHROMEOS)
-
namespace {
using metrics::MetricsLogManager;
@@ -70,23 +63,11 @@ class MetricsServiceTest : public testing::Test {
GetLocalState(),
base::Bind(&MetricsServiceTest::is_metrics_reporting_enabled,
base::Unretained(this)));
-#if defined(OS_CHROMEOS)
- // TODO(blundell): Remove this code once MetricsService no longer creates
- // ChromeOSMetricsProvider. Also remove the #include of login_state.h.
- // (http://crbug.com/375776)
- if (!chromeos::LoginState::IsInitialized())
- chromeos::LoginState::Initialize();
-#endif // defined(OS_CHROMEOS)
}
virtual ~MetricsServiceTest() {
MetricsService::SetExecutionPhase(MetricsService::UNINITIALIZED_PHASE,
GetLocalState());
-#if defined(OS_CHROMEOS)
- // TODO(blundell): Remove this code once MetricsService no longer creates
- // ChromeOSMetricsProvider.
- chromeos::LoginState::Shutdown();
-#endif // defined(OS_CHROMEOS)
}
metrics::MetricsStateManager* GetMetricsStateManager() {
@@ -130,10 +111,10 @@ class MetricsServiceTest : public testing::Test {
return is_metrics_reporting_enabled_;
}
- content::TestBrowserThreadBundle thread_bundle_;
bool is_metrics_reporting_enabled_;
TestingPrefServiceSimple testing_local_state_;
scoped_ptr<metrics::MetricsStateManager> metrics_state_manager_;
+ base::MessageLoop message_loop;
DISALLOW_COPY_AND_ASSIGN(MetricsServiceTest);
};
@@ -170,35 +151,29 @@ TEST_F(MetricsServiceTest, InitialStabilityLogAfterCleanShutDown) {
}
TEST_F(MetricsServiceTest, InitialStabilityLogAfterCrash) {
- // TODO(asvitkine): Eliminate using |testing_local_state| in favor of using
- // |GetLocalState()| once MetricsService no longer internally creates metrics
- // providers that rely on g_browser_process->local_state() being correctly
- // set up. crbug.com/375776.
- ScopedTestingLocalState testing_local_state(
- TestingBrowserProcess::GetGlobal());
- TestingPrefServiceSimple* local_state = testing_local_state.Get();
EnableMetricsReporting();
- local_state->ClearPref(metrics::prefs::kStabilityExitedCleanly);
+ GetLocalState()->ClearPref(metrics::prefs::kStabilityExitedCleanly);
// Set up prefs to simulate restarting after a crash.
// Save an existing system profile to prefs, to correspond to what would be
// saved from a previous session.
metrics::TestMetricsServiceClient client;
- TestMetricsLog log("client", 1, &client, local_state);
+ TestMetricsLog log("client", 1, &client, GetLocalState());
log.RecordEnvironment(std::vector<metrics::MetricsProvider*>(),
std::vector<variations::ActiveGroupId>());
// Record stability build time and version from previous session, so that
// stability metrics (including exited cleanly flag) won't be cleared.
- local_state->SetInt64(metrics::prefs::kStabilityStatsBuildTime,
+ GetLocalState()->SetInt64(metrics::prefs::kStabilityStatsBuildTime,
MetricsLog::GetBuildTime());
- local_state->SetString(metrics::prefs::kStabilityStatsVersion,
+ GetLocalState()->SetString(metrics::prefs::kStabilityStatsVersion,
client.GetVersionString());
- local_state->SetBoolean(metrics::prefs::kStabilityExitedCleanly, false);
+ GetLocalState()->SetBoolean(metrics::prefs::kStabilityExitedCleanly, false);
- TestMetricsService service(GetMetricsStateManager(), &client, local_state);
+ TestMetricsService service(
+ GetMetricsStateManager(), &client, GetLocalState());
service.InitializeMetricsRecordingState();
// The initial stability log should be generated and persisted in unsent logs.
« no previous file with comments | « components/components_tests.gyp ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698