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

Unified Diff: base/synchronization/waitable_event_watcher_unittest.cc

Issue 12094106: Refactor: Simplify WaitableEventWatcher. (Closed) Base URL: http://git.chromium.org/chromium/src.git@master
Patch Set: Created 7 years, 10 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
Index: base/synchronization/waitable_event_watcher_unittest.cc
diff --git a/base/synchronization/waitable_event_watcher_unittest.cc b/base/synchronization/waitable_event_watcher_unittest.cc
index 03ab800899c1e8abe088647fd1d88a2a6cfccd1d..a35c7c9ecdee0976f367f3cbe90f557b2dc48e59 100644
--- a/base/synchronization/waitable_event_watcher_unittest.cc
+++ b/base/synchronization/waitable_event_watcher_unittest.cc
@@ -2,6 +2,8 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
+#include "base/bind.h"
+#include "base/callback.h"
#include "base/message_loop.h"
#include "base/synchronization/waitable_event.h"
#include "base/synchronization/waitable_event_watcher.h"
@@ -23,18 +25,15 @@ const MessageLoop::Type testing_message_loops[] = {
const int kNumTestingMessageLoops = arraysize(testing_message_loops);
-class QuitDelegate : public WaitableEventWatcher::Delegate {
- public:
- virtual void OnWaitableEventSignaled(WaitableEvent* event) OVERRIDE {
- MessageLoop::current()->QuitWhenIdle();
- }
-};
+void QuitWhenSignaled(WaitableEvent* event) {
+ MessageLoop::current()->QuitWhenIdle();
+}
-class DecrementCountDelegate : public WaitableEventWatcher::Delegate {
+class DecrementCountContainer {
public:
- explicit DecrementCountDelegate(int* counter) : counter_(counter) {
+ explicit DecrementCountContainer(int* counter) : counter_(counter) {
}
- virtual void OnWaitableEventSignaled(WaitableEvent* object) OVERRIDE {
+ void OnWaitableEventSignaled(WaitableEvent* object) {
--(*counter_);
}
private:
@@ -50,8 +49,7 @@ void RunTest_BasicSignal(MessageLoop::Type message_loop_type) {
WaitableEventWatcher watcher;
EXPECT_TRUE(watcher.GetWatchedEvent() == NULL);
- QuitDelegate delegate;
- watcher.StartWatching(&event, &delegate);
+ watcher.StartWatching(&event, Bind(&QuitWhenSignaled));
EXPECT_EQ(&event, watcher.GetWatchedEvent());
event.Signal();
@@ -69,8 +67,7 @@ void RunTest_BasicCancel(MessageLoop::Type message_loop_type) {
WaitableEventWatcher watcher;
- QuitDelegate delegate;
- watcher.StartWatching(&event, &delegate);
+ watcher.StartWatching(&event, Bind(&QuitWhenSignaled));
watcher.StopWatching();
}
@@ -84,9 +81,11 @@ void RunTest_CancelAfterSet(MessageLoop::Type message_loop_type) {
WaitableEventWatcher watcher;
int counter = 1;
- DecrementCountDelegate delegate(&counter);
-
- watcher.StartWatching(&event, &delegate);
+ DecrementCountContainer delegate(&counter);
+ WaitableEventWatcher::EventCallback callback =
+ Bind(&DecrementCountContainer::OnWaitableEventSignaled,
+ Unretained(&delegate));
+ watcher.StartWatching(&event, callback);
event.Signal();
@@ -111,8 +110,7 @@ void RunTest_OutlivesMessageLoop(MessageLoop::Type message_loop_type) {
{
MessageLoop message_loop(message_loop_type);
- QuitDelegate delegate;
- watcher.StartWatching(&event, &delegate);
+ watcher.StartWatching(&event, Bind(&QuitWhenSignaled));
}
}
}
@@ -127,8 +125,8 @@ void RunTest_DeleteUnder(MessageLoop::Type message_loop_type) {
WaitableEventWatcher watcher;
WaitableEvent* event = new WaitableEvent(false, false);
- QuitDelegate delegate;
- watcher.StartWatching(event, &delegate);
+
+ watcher.StartWatching(event, Bind(&QuitWhenSignaled));
delete event;
}
}
« no previous file with comments | « base/synchronization/waitable_event_watcher_posix.cc ('k') | base/synchronization/waitable_event_watcher_win.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698