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

Unified Diff: base/win/object_watcher_unittest.cc

Issue 1446363003: Deleted OS_WIN and all Windows specific files from base. (Closed) Base URL: https://github.com/domokit/mojo.git@base_tests
Patch Set: Created 5 years, 1 month 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
« no previous file with comments | « base/win/object_watcher.cc ('k') | base/win/pe_image.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: base/win/object_watcher_unittest.cc
diff --git a/base/win/object_watcher_unittest.cc b/base/win/object_watcher_unittest.cc
deleted file mode 100644
index b30ca41a4fe4d3f6cb37455a72ed57ed69d063e4..0000000000000000000000000000000000000000
--- a/base/win/object_watcher_unittest.cc
+++ /dev/null
@@ -1,174 +0,0 @@
-// Copyright (c) 2011 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-#include "base/win/object_watcher.h"
-
-#include <process.h>
-
-#include "base/message_loop/message_loop.h"
-#include "base/run_loop.h"
-#include "testing/gtest/include/gtest/gtest.h"
-
-namespace base {
-namespace win {
-
-namespace {
-
-class QuitDelegate : public ObjectWatcher::Delegate {
- public:
- void OnObjectSignaled(HANDLE object) override {
- MessageLoop::current()->QuitWhenIdle();
- }
-};
-
-class DecrementCountDelegate : public ObjectWatcher::Delegate {
- public:
- explicit DecrementCountDelegate(int* counter) : counter_(counter) {
- }
- void OnObjectSignaled(HANDLE object) override { --(*counter_); }
-
- private:
- int* counter_;
-};
-
-void RunTest_BasicSignal(MessageLoop::Type message_loop_type) {
- MessageLoop message_loop(message_loop_type);
-
- ObjectWatcher watcher;
- EXPECT_FALSE(watcher.IsWatching());
-
- // A manual-reset event that is not yet signaled.
- HANDLE event = CreateEvent(NULL, TRUE, FALSE, NULL);
-
- QuitDelegate delegate;
- bool ok = watcher.StartWatching(event, &delegate);
- EXPECT_TRUE(ok);
- EXPECT_TRUE(watcher.IsWatching());
- EXPECT_EQ(event, watcher.GetWatchedObject());
-
- SetEvent(event);
-
- MessageLoop::current()->Run();
-
- EXPECT_FALSE(watcher.IsWatching());
- CloseHandle(event);
-}
-
-void RunTest_BasicCancel(MessageLoop::Type message_loop_type) {
- MessageLoop message_loop(message_loop_type);
-
- ObjectWatcher watcher;
-
- // A manual-reset event that is not yet signaled.
- HANDLE event = CreateEvent(NULL, TRUE, FALSE, NULL);
-
- QuitDelegate delegate;
- bool ok = watcher.StartWatching(event, &delegate);
- EXPECT_TRUE(ok);
-
- watcher.StopWatching();
-
- CloseHandle(event);
-}
-
-void RunTest_CancelAfterSet(MessageLoop::Type message_loop_type) {
- MessageLoop message_loop(message_loop_type);
-
- ObjectWatcher watcher;
-
- int counter = 1;
- DecrementCountDelegate delegate(&counter);
-
- // A manual-reset event that is not yet signaled.
- HANDLE event = CreateEvent(NULL, TRUE, FALSE, NULL);
-
- bool ok = watcher.StartWatching(event, &delegate);
- EXPECT_TRUE(ok);
-
- SetEvent(event);
-
- // Let the background thread do its business
- Sleep(30);
-
- watcher.StopWatching();
-
- RunLoop().RunUntilIdle();
-
- // Our delegate should not have fired.
- EXPECT_EQ(1, counter);
-
- CloseHandle(event);
-}
-
-void RunTest_SignalBeforeWatch(MessageLoop::Type message_loop_type) {
- MessageLoop message_loop(message_loop_type);
-
- ObjectWatcher watcher;
-
- // A manual-reset event that is signaled before we begin watching.
- HANDLE event = CreateEvent(NULL, TRUE, TRUE, NULL);
-
- QuitDelegate delegate;
- bool ok = watcher.StartWatching(event, &delegate);
- EXPECT_TRUE(ok);
-
- MessageLoop::current()->Run();
-
- EXPECT_FALSE(watcher.IsWatching());
- CloseHandle(event);
-}
-
-void RunTest_OutlivesMessageLoop(MessageLoop::Type message_loop_type) {
- // Simulate a MessageLoop that dies before an ObjectWatcher. This ordinarily
- // doesn't happen when people use the Thread class, but it can happen when
- // people use the Singleton pattern or atexit.
- HANDLE event = CreateEvent(NULL, TRUE, FALSE, NULL); // not signaled
- {
- ObjectWatcher watcher;
- {
- MessageLoop message_loop(message_loop_type);
-
- QuitDelegate delegate;
- watcher.StartWatching(event, &delegate);
- }
- }
- CloseHandle(event);
-}
-
-} // namespace
-
-//-----------------------------------------------------------------------------
-
-TEST(ObjectWatcherTest, BasicSignal) {
- RunTest_BasicSignal(MessageLoop::TYPE_DEFAULT);
- RunTest_BasicSignal(MessageLoop::TYPE_IO);
- RunTest_BasicSignal(MessageLoop::TYPE_UI);
-}
-
-TEST(ObjectWatcherTest, BasicCancel) {
- RunTest_BasicCancel(MessageLoop::TYPE_DEFAULT);
- RunTest_BasicCancel(MessageLoop::TYPE_IO);
- RunTest_BasicCancel(MessageLoop::TYPE_UI);
-}
-
-TEST(ObjectWatcherTest, CancelAfterSet) {
- RunTest_CancelAfterSet(MessageLoop::TYPE_DEFAULT);
- RunTest_CancelAfterSet(MessageLoop::TYPE_IO);
- RunTest_CancelAfterSet(MessageLoop::TYPE_UI);
-}
-
-TEST(ObjectWatcherTest, SignalBeforeWatch) {
- RunTest_SignalBeforeWatch(MessageLoop::TYPE_DEFAULT);
- RunTest_SignalBeforeWatch(MessageLoop::TYPE_IO);
- RunTest_SignalBeforeWatch(MessageLoop::TYPE_UI);
-}
-
-TEST(ObjectWatcherTest, OutlivesMessageLoop) {
- RunTest_OutlivesMessageLoop(MessageLoop::TYPE_DEFAULT);
- RunTest_OutlivesMessageLoop(MessageLoop::TYPE_IO);
- RunTest_OutlivesMessageLoop(MessageLoop::TYPE_UI);
-}
-
-} // namespace win
-} // namespace base
« no previous file with comments | « base/win/object_watcher.cc ('k') | base/win/pe_image.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698