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

Side by Side Diff: chrome/browser/metrics/chrome_metrics_service_accessor_unittest.cc

Issue 289373007: Rename MetricsServiceHelper to ChromeMetricsServiceAccessor. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Rebase again. Created 6 years, 7 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
(Empty)
1 // Copyright (c) 2014 The Chromium Authors. All rights reserved.
Ilya Sherman 2014/05/20 15:18:11 Ultra nit: Please omit the "(c)" (in all the new f
motek. 2014/05/20 15:54:39 Done.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 #include "chrome/browser/metrics/chrome_metrics_service_accessor.h"
6
7 #include "chrome/common/pref_names.h"
8 #include "chrome/test/base/scoped_testing_local_state.h"
9 #include "chrome/test/base/testing_browser_process.h"
10 #include "testing/gtest/include/gtest/gtest.h"
11
12 namespace {
13
14 class ChromeMetricsServiceAccessorTest : public testing::Test {
15 public:
16 ChromeMetricsServiceAccessorTest()
17 : testing_local_state_(TestingBrowserProcess::GetGlobal()) {
18 }
19
20 PrefService* GetLocalState() {
21 return testing_local_state_.Get();
22 }
23
24 private:
25 ScopedTestingLocalState testing_local_state_;
26
27 DISALLOW_COPY_AND_ASSIGN(ChromeMetricsServiceAccessorTest);
28 };
29
30 } // namespace
Ilya Sherman 2014/05/20 15:18:11 nit: The actual test harness classes shouldn't be
motek. 2014/05/20 15:54:39 Done.
31
32
33 TEST_F(ChromeMetricsServiceAccessorTest, MetricsReportingEnabled) {
34 #if !defined(OS_CHROMEOS)
35 GetLocalState()->SetBoolean(prefs::kMetricsReportingEnabled, false);
36 EXPECT_FALSE(ChromeMetricsServiceAccessor::IsMetricsReportingEnabled());
37 GetLocalState()->SetBoolean(prefs::kMetricsReportingEnabled, true);
38 EXPECT_TRUE(ChromeMetricsServiceAccessor::IsMetricsReportingEnabled());
39 GetLocalState()->ClearPref(prefs::kMetricsReportingEnabled);
40 EXPECT_FALSE(ChromeMetricsServiceAccessor::IsMetricsReportingEnabled());
41 #else
42 // ChromeOS does not register prefs::kMetricsReportingEnabled and uses
43 // device settings for metrics reporting.
44 EXPECT_FALSE(ChromeMetricsServiceAccessor::IsMetricsReportingEnabled());
45 #endif
46 }
47
48 TEST_F(ChromeMetricsServiceAccessorTest, CrashReportingEnabled) {
49 #if defined(GOOGLE_CHROME_BUILD)
50 // ChromeOS has different device settings for crash reporting.
51 #if !defined(OS_CHROMEOS)
52 #if defined(OS_ANDROID)
53 const char* crash_pref = prefs::kCrashReportingEnabled;
54 #else
55 const char* crash_pref = prefs::kMetricsReportingEnabled;
56 #endif
57 GetLocalState()->SetBoolean(crash_pref, false);
58 EXPECT_FALSE(ChromeMetricsServiceAccessor::IsCrashReportingEnabled());
59 GetLocalState()->SetBoolean(crash_pref, true);
60 EXPECT_TRUE(ChromeMetricsServiceAccessor::IsCrashReportingEnabled());
61 GetLocalState()->ClearPref(crash_pref);
62 EXPECT_FALSE(ChromeMetricsServiceAccessor::IsCrashReportingEnabled());
63 #endif // !defined(OS_CHROMEOS)
64 #else // defined(GOOGLE_CHROME_BUILD)
65 // Chromium branded browsers never have crash reporting enabled.
66 EXPECT_FALSE(ChromeMetricsServiceAccessor::IsCrashReportingEnabled());
67 #endif // defined(GOOGLE_CHROME_BUILD)
68 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698