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

Side by Side Diff: net/base/net_log_unittest.cc

Issue 667923003: Standardize usage of virtual/override/final in net/ (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 6 years, 2 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
« no previous file with comments | « net/base/net_log_logger.h ('k') | net/base/net_util_icu.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2013 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 "net/base/net_log_unittest.h" 5 #include "net/base/net_log_unittest.h"
6 6
7 #include "base/bind.h" 7 #include "base/bind.h"
8 #include "base/memory/scoped_vector.h" 8 #include "base/memory/scoped_vector.h"
9 #include "base/synchronization/waitable_event.h" 9 #include "base/synchronization/waitable_event.h"
10 #include "base/threading/simple_thread.h" 10 #include "base/threading/simple_thread.h"
(...skipping 57 matching lines...) Expand 10 before | Expand all | Expand 10 after
68 EXPECT_EQ(log_level, logged_log_level); 68 EXPECT_EQ(log_level, logged_log_level);
69 69
70 net_log.Clear(); 70 net_log.Clear();
71 } 71 }
72 } 72 }
73 73
74 class CountingObserver : public NetLog::ThreadSafeObserver { 74 class CountingObserver : public NetLog::ThreadSafeObserver {
75 public: 75 public:
76 CountingObserver() : count_(0) {} 76 CountingObserver() : count_(0) {}
77 77
78 virtual ~CountingObserver() { 78 ~CountingObserver() override {
79 if (net_log()) 79 if (net_log())
80 net_log()->RemoveThreadSafeObserver(this); 80 net_log()->RemoveThreadSafeObserver(this);
81 } 81 }
82 82
83 virtual void OnAddEntry(const NetLog::Entry& entry) override { 83 void OnAddEntry(const NetLog::Entry& entry) override { ++count_; }
84 ++count_;
85 }
86 84
87 int count() const { return count_; } 85 int count() const { return count_; }
88 86
89 private: 87 private:
90 int count_; 88 int count_;
91 }; 89 };
92 90
93 class LoggingObserver : public NetLog::ThreadSafeObserver { 91 class LoggingObserver : public NetLog::ThreadSafeObserver {
94 public: 92 public:
95 LoggingObserver() {} 93 LoggingObserver() {}
96 94
97 virtual ~LoggingObserver() { 95 ~LoggingObserver() override {
98 if (net_log()) 96 if (net_log())
99 net_log()->RemoveThreadSafeObserver(this); 97 net_log()->RemoveThreadSafeObserver(this);
100 } 98 }
101 99
102 virtual void OnAddEntry(const NetLog::Entry& entry) override { 100 void OnAddEntry(const NetLog::Entry& entry) override {
103 base::Value* value = entry.ToValue(); 101 base::Value* value = entry.ToValue();
104 base::DictionaryValue* dict = NULL; 102 base::DictionaryValue* dict = NULL;
105 ASSERT_TRUE(value->GetAsDictionary(&dict)); 103 ASSERT_TRUE(value->GetAsDictionary(&dict));
106 values_.push_back(dict); 104 values_.push_back(dict);
107 } 105 }
108 106
109 size_t GetNumValues() const { return values_.size(); } 107 size_t GetNumValues() const { return values_.size(); }
110 base::DictionaryValue* GetValue(size_t index) const { return values_[index]; } 108 base::DictionaryValue* GetValue(size_t index) const { return values_[index]; }
111 109
112 private: 110 private:
(...skipping 18 matching lines...) Expand all
131 start_event_(NULL) { 129 start_event_(NULL) {
132 } 130 }
133 131
134 // We'll wait for |start_event| to be triggered before calling a subclass's 132 // We'll wait for |start_event| to be triggered before calling a subclass's
135 // subclass's RunTestThread() function. 133 // subclass's RunTestThread() function.
136 void Init(NetLog* net_log, base::WaitableEvent* start_event) { 134 void Init(NetLog* net_log, base::WaitableEvent* start_event) {
137 start_event_ = start_event; 135 start_event_ = start_event;
138 net_log_ = net_log; 136 net_log_ = net_log;
139 } 137 }
140 138
141 virtual void Run() override { 139 void Run() override {
142 start_event_->Wait(); 140 start_event_->Wait();
143 RunTestThread(); 141 RunTestThread();
144 } 142 }
145 143
146 // Subclasses must override this with the code they want to run on their 144 // Subclasses must override this with the code they want to run on their
147 // thread. 145 // thread.
148 virtual void RunTestThread() = 0; 146 virtual void RunTestThread() = 0;
149 147
150 protected: 148 protected:
151 NetLog* net_log_; 149 NetLog* net_log_;
152 150
153 private: 151 private:
154 // Only triggered once all threads have been created, to make it less likely 152 // Only triggered once all threads have been created, to make it less likely
155 // each thread completes before the next one starts. 153 // each thread completes before the next one starts.
156 base::WaitableEvent* start_event_; 154 base::WaitableEvent* start_event_;
157 155
158 DISALLOW_COPY_AND_ASSIGN(NetLogTestThread); 156 DISALLOW_COPY_AND_ASSIGN(NetLogTestThread);
159 }; 157 };
160 158
161 // A thread that adds a bunch of events to the NetLog. 159 // A thread that adds a bunch of events to the NetLog.
162 class AddEventsTestThread : public NetLogTestThread { 160 class AddEventsTestThread : public NetLogTestThread {
163 public: 161 public:
164 AddEventsTestThread() {} 162 AddEventsTestThread() {}
165 virtual ~AddEventsTestThread() {} 163 ~AddEventsTestThread() override {}
166 164
167 private: 165 private:
168 virtual void RunTestThread() override { 166 void RunTestThread() override {
169 for (int i = 0; i < kEvents; ++i) 167 for (int i = 0; i < kEvents; ++i)
170 AddEvent(net_log_); 168 AddEvent(net_log_);
171 } 169 }
172 170
173 DISALLOW_COPY_AND_ASSIGN(AddEventsTestThread); 171 DISALLOW_COPY_AND_ASSIGN(AddEventsTestThread);
174 }; 172 };
175 173
176 // A thread that adds and removes an observer from the NetLog repeatedly. 174 // A thread that adds and removes an observer from the NetLog repeatedly.
177 class AddRemoveObserverTestThread : public NetLogTestThread { 175 class AddRemoveObserverTestThread : public NetLogTestThread {
178 public: 176 public:
179 AddRemoveObserverTestThread() {} 177 AddRemoveObserverTestThread() {}
180 178
181 virtual ~AddRemoveObserverTestThread() { 179 ~AddRemoveObserverTestThread() override { EXPECT_TRUE(!observer_.net_log()); }
182 EXPECT_TRUE(!observer_.net_log());
183 }
184 180
185 private: 181 private:
186 virtual void RunTestThread() override { 182 void RunTestThread() override {
187 for (int i = 0; i < kEvents; ++i) { 183 for (int i = 0; i < kEvents; ++i) {
188 ASSERT_FALSE(observer_.net_log()); 184 ASSERT_FALSE(observer_.net_log());
189 185
190 net_log_->AddThreadSafeObserver(&observer_, NetLog::LOG_ALL_BUT_BYTES); 186 net_log_->AddThreadSafeObserver(&observer_, NetLog::LOG_ALL_BUT_BYTES);
191 ASSERT_EQ(net_log_, observer_.net_log()); 187 ASSERT_EQ(net_log_, observer_.net_log());
192 ASSERT_EQ(NetLog::LOG_ALL_BUT_BYTES, observer_.log_level()); 188 ASSERT_EQ(NetLog::LOG_ALL_BUT_BYTES, observer_.log_level());
193 ASSERT_LE(net_log_->GetLogLevel(), NetLog::LOG_ALL_BUT_BYTES); 189 ASSERT_LE(net_log_->GetLogLevel(), NetLog::LOG_ALL_BUT_BYTES);
194 190
195 net_log_->SetObserverLogLevel(&observer_, NetLog::LOG_ALL); 191 net_log_->SetObserverLogLevel(&observer_, NetLog::LOG_ALL);
196 ASSERT_EQ(net_log_, observer_.net_log()); 192 ASSERT_EQ(net_log_, observer_.net_log());
(...skipping 155 matching lines...) Expand 10 before | Expand all | Expand 10 after
352 NetLog net_log; 348 NetLog net_log;
353 349
354 // Run a bunch of threads to completion, each of which will repeatedly add 350 // Run a bunch of threads to completion, each of which will repeatedly add
355 // and remove an observer, and set its logging level. 351 // and remove an observer, and set its logging level.
356 RunTestThreads<AddRemoveObserverTestThread>(&net_log); 352 RunTestThreads<AddRemoveObserverTestThread>(&net_log);
357 } 353 }
358 354
359 } // namespace 355 } // namespace
360 356
361 } // namespace net 357 } // namespace net
OLDNEW
« no previous file with comments | « net/base/net_log_logger.h ('k') | net/base/net_util_icu.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698