| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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/metrics/metrics_service.h" | 5 #include "chrome/browser/metrics/metrics_service.h" |
| 6 | 6 |
| 7 #include <string> | 7 #include <string> |
| 8 | 8 |
| 9 #include "base/command_line.h" | 9 #include "base/command_line.h" |
| 10 #include "base/threading/platform_thread.h" | 10 #include "base/threading/platform_thread.h" |
| (...skipping 276 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 287 service.log_manager_.BeginLoggingWithLog( | 287 service.log_manager_.BeginLoggingWithLog( |
| 288 new MetricsLog("clientID", 1, MetricsLog::ONGOING_LOG)); | 288 new MetricsLog("clientID", 1, MetricsLog::ONGOING_LOG)); |
| 289 service.GetCurrentSyntheticFieldTrials(&synthetic_trials); | 289 service.GetCurrentSyntheticFieldTrials(&synthetic_trials); |
| 290 EXPECT_EQ(3U, synthetic_trials.size()); | 290 EXPECT_EQ(3U, synthetic_trials.size()); |
| 291 EXPECT_TRUE(HasSyntheticTrial(synthetic_trials, "TestTrial1", "Group2")); | 291 EXPECT_TRUE(HasSyntheticTrial(synthetic_trials, "TestTrial1", "Group2")); |
| 292 EXPECT_TRUE(HasSyntheticTrial(synthetic_trials, "TestTrial2", "Group2")); | 292 EXPECT_TRUE(HasSyntheticTrial(synthetic_trials, "TestTrial2", "Group2")); |
| 293 EXPECT_TRUE(HasSyntheticTrial(synthetic_trials, "TestTrial3", "Group3")); | 293 EXPECT_TRUE(HasSyntheticTrial(synthetic_trials, "TestTrial3", "Group3")); |
| 294 service.log_manager_.FinishCurrentLog(); | 294 service.log_manager_.FinishCurrentLog(); |
| 295 } | 295 } |
| 296 | 296 |
| 297 TEST_F(MetricsServiceTest, MetricsReportingEnabled) { | |
| 298 #if !defined(OS_CHROMEOS) | |
| 299 GetLocalState()->SetBoolean(prefs::kMetricsReportingEnabled, false); | |
| 300 EXPECT_FALSE(MetricsServiceHelper::IsMetricsReportingEnabled()); | |
| 301 GetLocalState()->SetBoolean(prefs::kMetricsReportingEnabled, true); | |
| 302 EXPECT_TRUE(MetricsServiceHelper::IsMetricsReportingEnabled()); | |
| 303 GetLocalState()->ClearPref(prefs::kMetricsReportingEnabled); | |
| 304 EXPECT_FALSE(MetricsServiceHelper::IsMetricsReportingEnabled()); | |
| 305 #else | |
| 306 // ChromeOS does not register prefs::kMetricsReportingEnabled and uses | |
| 307 // device settings for metrics reporting. | |
| 308 EXPECT_FALSE(MetricsServiceHelper::IsMetricsReportingEnabled()); | |
| 309 #endif | |
| 310 } | |
| 311 | |
| 312 TEST_F(MetricsServiceTest, CrashReportingEnabled) { | |
| 313 #if defined(GOOGLE_CHROME_BUILD) | |
| 314 // ChromeOS has different device settings for crash reporting. | |
| 315 #if !defined(OS_CHROMEOS) | |
| 316 #if defined(OS_ANDROID) | |
| 317 const char* crash_pref = prefs::kCrashReportingEnabled; | |
| 318 #else | |
| 319 const char* crash_pref = prefs::kMetricsReportingEnabled; | |
| 320 #endif | |
| 321 GetLocalState()->SetBoolean(crash_pref, false); | |
| 322 EXPECT_FALSE(MetricsServiceHelper::IsCrashReportingEnabled()); | |
| 323 GetLocalState()->SetBoolean(crash_pref, true); | |
| 324 EXPECT_TRUE(MetricsServiceHelper::IsCrashReportingEnabled()); | |
| 325 GetLocalState()->ClearPref(crash_pref); | |
| 326 EXPECT_FALSE(MetricsServiceHelper::IsCrashReportingEnabled()); | |
| 327 #endif // !defined(OS_CHROMEOS) | |
| 328 #else // defined(GOOGLE_CHROME_BUILD) | |
| 329 // Chromium branded browsers never have crash reporting enabled. | |
| 330 EXPECT_FALSE(MetricsServiceHelper::IsCrashReportingEnabled()); | |
| 331 #endif // defined(GOOGLE_CHROME_BUILD) | |
| 332 } | |
| 333 | |
| 334 TEST_F(MetricsServiceTest, MetricsServiceObserver) { | 297 TEST_F(MetricsServiceTest, MetricsServiceObserver) { |
| 335 MetricsService service(GetMetricsStateManager()); | 298 MetricsService service(GetMetricsStateManager()); |
| 336 TestMetricsServiceObserver observer1; | 299 TestMetricsServiceObserver observer1; |
| 337 TestMetricsServiceObserver observer2; | 300 TestMetricsServiceObserver observer2; |
| 338 | 301 |
| 339 service.AddObserver(&observer1); | 302 service.AddObserver(&observer1); |
| 340 EXPECT_EQ(0, observer1.observed()); | 303 EXPECT_EQ(0, observer1.observed()); |
| 341 EXPECT_EQ(0, observer2.observed()); | 304 EXPECT_EQ(0, observer2.observed()); |
| 342 | 305 |
| 343 service.OpenNewLog(); | 306 service.OpenNewLog(); |
| (...skipping 10 matching lines...) Expand all Loading... |
| 354 | 317 |
| 355 service.RemoveObserver(&observer1); | 318 service.RemoveObserver(&observer1); |
| 356 | 319 |
| 357 service.OpenNewLog(); | 320 service.OpenNewLog(); |
| 358 EXPECT_EQ(2, observer1.observed()); | 321 EXPECT_EQ(2, observer1.observed()); |
| 359 EXPECT_EQ(2, observer2.observed()); | 322 EXPECT_EQ(2, observer2.observed()); |
| 360 service.log_manager_.FinishCurrentLog(); | 323 service.log_manager_.FinishCurrentLog(); |
| 361 | 324 |
| 362 service.RemoveObserver(&observer2); | 325 service.RemoveObserver(&observer2); |
| 363 } | 326 } |
| OLD | NEW |