| Index: content/browser/browser_thread_unittest.cc
|
| diff --git a/content/browser/browser_thread_unittest.cc b/content/browser/browser_thread_unittest.cc
|
| index 0a3ff1717a44ad6715d2cc5d453df002812eaec1..f5f6e478d029559f8ea229eaa22ee6f303c5ae1a 100644
|
| --- a/content/browser/browser_thread_unittest.cc
|
| +++ b/content/browser/browser_thread_unittest.cc
|
| @@ -2,6 +2,7 @@
|
| // 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/memory/scoped_ptr.h"
|
| #include "base/message_loop.h"
|
| #include "base/message_loop_proxy.h"
|
| @@ -34,6 +35,9 @@ class BrowserThreadTest : public testing::Test {
|
| message_loop->PostTask(FROM_HERE, new MessageLoop::QuitTask);
|
| }
|
|
|
| + static void DoNothing() {
|
| + }
|
| +
|
| class DummyTask : public Task {
|
| public:
|
| explicit DummyTask(bool* deleted) : deleted_(deleted) { }
|
| @@ -130,6 +134,19 @@ TEST_F(BrowserThreadTest, ReleaseViaMessageLoopProxy) {
|
| MessageLoop::current()->Run();
|
| }
|
|
|
| +TEST_F(BrowserThreadTest, PostTaskAndReply) {
|
| + // Most of the heavy testing for PostTaskAndReply() is done inside the
|
| + // MessageLoopProxy test. This just makes sure we get piped through at all.
|
| + ASSERT_TRUE(BrowserThread::PostTaskAndReply(
|
| + BrowserThread::FILE,
|
| + FROM_HERE,
|
| + base::Bind(&BrowserThreadTest::DoNothing),
|
| + base::Bind(&MessageLoop::Quit,
|
| + base::Unretained(MessageLoop::current()->current()))));
|
| + MessageLoop::current()->Run();
|
| +}
|
| +
|
| +
|
| TEST_F(BrowserThreadTest, TaskToNonExistentThreadIsDeletedViaMessageLoopProxy) {
|
| bool deleted = false;
|
| scoped_refptr<base::MessageLoopProxy> message_loop_proxy =
|
| @@ -163,4 +180,3 @@ TEST_F(BrowserThreadTest, PostTaskViaMessageLoopProxyAfterThreadIsDeleted) {
|
| EXPECT_FALSE(ret);
|
| EXPECT_TRUE(deleted);
|
| }
|
| -
|
|
|