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

Side by Side Diff: components/sync_driver/device_count_metrics_provider_unittest.cc

Issue 1907683003: Convert //components/sync_driver from scoped_ptr to std::unique_ptr (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Build fix, address feedback Created 4 years, 8 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
OLDNEW
1 // Copyright 2016 The Chromium Authors. All rights reserved. 1 // Copyright 2016 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 "components/sync_driver/device_count_metrics_provider.h" 5 #include "components/sync_driver/device_count_metrics_provider.h"
6 6
7 #include <memory>
7 #include <string> 8 #include <string>
8 #include <vector> 9 #include <vector>
9 10
10 #include "base/bind.h" 11 #include "base/bind.h"
11 #include "base/memory/scoped_ptr.h"
12 #include "base/test/histogram_tester.h" 12 #include "base/test/histogram_tester.h"
13 #include "components/sync_driver/device_info.h" 13 #include "components/sync_driver/device_info.h"
14 #include "components/sync_driver/device_info_tracker.h" 14 #include "components/sync_driver/device_info_tracker.h"
15 #include "testing/gtest/include/gtest/gtest.h" 15 #include "testing/gtest/include/gtest/gtest.h"
16 16
17 namespace sync_driver { 17 namespace sync_driver {
18 18
19 namespace { 19 namespace {
20 20
21 class FakeTracker : public DeviceInfoTracker { 21 class FakeTracker : public DeviceInfoTracker {
22 public: 22 public:
23 explicit FakeTracker(const int count) : count_(count) {} 23 explicit FakeTracker(const int count) : count_(count) {}
24 24
25 // DeviceInfoTracker 25 // DeviceInfoTracker
26 bool IsSyncing() const override { return false; } 26 bool IsSyncing() const override { return false; }
27 scoped_ptr<DeviceInfo> GetDeviceInfo( 27 std::unique_ptr<DeviceInfo> GetDeviceInfo(
28 const std::string& client_id) const override { 28 const std::string& client_id) const override {
29 return scoped_ptr<DeviceInfo>(); 29 return std::unique_ptr<DeviceInfo>();
30 } 30 }
31 ScopedVector<DeviceInfo> GetAllDeviceInfo() const override { 31 ScopedVector<DeviceInfo> GetAllDeviceInfo() const override {
32 return ScopedVector<DeviceInfo>(); 32 return ScopedVector<DeviceInfo>();
33 } 33 }
34 void AddObserver(Observer* observer) override {} 34 void AddObserver(Observer* observer) override {}
35 void RemoveObserver(Observer* observer) override {} 35 void RemoveObserver(Observer* observer) override {}
36 int CountActiveDevices() const override { return count_; } 36 int CountActiveDevices() const override { return count_; }
37 37
38 private: 38 private:
39 int count_; 39 int count_;
40 }; 40 };
41 41
42 } // namespace 42 } // namespace
43 43
44 class DeviceCountMetricsProviderTest : public testing::Test { 44 class DeviceCountMetricsProviderTest : public testing::Test {
45 public: 45 public:
46 DeviceCountMetricsProviderTest() 46 DeviceCountMetricsProviderTest()
47 : metrics_provider_( 47 : metrics_provider_(
48 base::Bind(&DeviceCountMetricsProviderTest::GetTrackers, 48 base::Bind(&DeviceCountMetricsProviderTest::GetTrackers,
49 base::Unretained(this))) {} 49 base::Unretained(this))) {}
50 50
51 void AddTracker(const int count) { 51 void AddTracker(const int count) {
52 trackers_.push_back(scoped_ptr<DeviceInfoTracker>(new FakeTracker(count))); 52 trackers_.push_back(
53 std::unique_ptr<DeviceInfoTracker>(new FakeTracker(count)));
53 } 54 }
54 void GetTrackers(std::vector<const DeviceInfoTracker*>* trackers) { 55 void GetTrackers(std::vector<const DeviceInfoTracker*>* trackers) {
55 for (const auto& tracker : trackers_) { 56 for (const auto& tracker : trackers_) {
56 trackers->push_back(tracker.get()); 57 trackers->push_back(tracker.get());
57 } 58 }
58 } 59 }
59 60
60 void TestProvider(int expected_device_count) { 61 void TestProvider(int expected_device_count) {
61 base::HistogramTester histogram_tester; 62 base::HistogramTester histogram_tester;
62 metrics_provider_.ProvideGeneralMetrics(nullptr); 63 metrics_provider_.ProvideGeneralMetrics(nullptr);
63 histogram_tester.ExpectUniqueSample("Sync.DeviceCount", 64 histogram_tester.ExpectUniqueSample("Sync.DeviceCount",
64 expected_device_count, 1); 65 expected_device_count, 1);
65 } 66 }
66 67
67 private: 68 private:
68 DeviceCountMetricsProvider metrics_provider_; 69 DeviceCountMetricsProvider metrics_provider_;
69 std::vector<scoped_ptr<DeviceInfoTracker>> trackers_; 70 std::vector<std::unique_ptr<DeviceInfoTracker>> trackers_;
70 }; 71 };
71 72
72 namespace { 73 namespace {
73 74
74 TEST_F(DeviceCountMetricsProviderTest, NoTrackers) { 75 TEST_F(DeviceCountMetricsProviderTest, NoTrackers) {
75 TestProvider(0); 76 TestProvider(0);
76 } 77 }
77 78
78 TEST_F(DeviceCountMetricsProviderTest, SingleTracker) { 79 TEST_F(DeviceCountMetricsProviderTest, SingleTracker) {
79 AddTracker(2); 80 AddTracker(2);
(...skipping 14 matching lines...) Expand all
94 } 95 }
95 96
96 TEST_F(DeviceCountMetricsProviderTest, VeryLarge) { 97 TEST_F(DeviceCountMetricsProviderTest, VeryLarge) {
97 AddTracker(123456789); 98 AddTracker(123456789);
98 TestProvider(100); 99 TestProvider(100);
99 } 100 }
100 101
101 } // namespace 102 } // namespace
102 103
103 } // namespace sync_driver 104 } // namespace sync_driver
OLDNEW
« no previous file with comments | « components/sync_driver/device_count_metrics_provider.h ('k') | components/sync_driver/device_info_data_type_controller.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698