OLD | NEW |
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 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 "base/bind.h" | 5 #include "base/bind.h" |
6 #include "base/memory/scoped_ptr.h" | 6 #include "base/memory/scoped_ptr.h" |
7 #include "base/message_loop.h" | 7 #include "base/message_loop.h" |
8 #include "base/message_loop_proxy.h" | 8 #include "base/message_loop_proxy.h" |
9 #include "content/browser/browser_thread_impl.h" | 9 #include "content/browser/browser_thread_impl.h" |
10 #include "content/test/test_browser_thread.h" | 10 #include "content/test/test_browser_thread.h" |
(...skipping 86 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
97 } | 97 } |
98 | 98 |
99 TEST_F(BrowserThreadTest, Release) { | 99 TEST_F(BrowserThreadTest, Release) { |
100 BrowserThread::ReleaseSoon(BrowserThread::UI, FROM_HERE, this); | 100 BrowserThread::ReleaseSoon(BrowserThread::UI, FROM_HERE, this); |
101 MessageLoop::current()->Run(); | 101 MessageLoop::current()->Run(); |
102 } | 102 } |
103 | 103 |
104 TEST_F(BrowserThreadTest, TaskToNonExistentThreadIsDeleted) { | 104 TEST_F(BrowserThreadTest, TaskToNonExistentThreadIsDeleted) { |
105 bool deleted = false; | 105 bool deleted = false; |
106 BrowserThread::PostTask( | 106 BrowserThread::PostTask( |
107 BrowserThread::WEBKIT, FROM_HERE, | 107 BrowserThread::WEBKIT_DEPRECATED, FROM_HERE, |
108 new DummyTask(&deleted)); | 108 new DummyTask(&deleted)); |
109 EXPECT_TRUE(deleted); | 109 EXPECT_TRUE(deleted); |
110 } | 110 } |
111 | 111 |
112 TEST_F(BrowserThreadTest, ReleasedOnCorrectThread) { | 112 TEST_F(BrowserThreadTest, ReleasedOnCorrectThread) { |
113 { | 113 { |
114 scoped_refptr<DeletedOnFile> test( | 114 scoped_refptr<DeletedOnFile> test( |
115 new DeletedOnFile(MessageLoop::current())); | 115 new DeletedOnFile(MessageLoop::current())); |
116 } | 116 } |
117 MessageLoop::current()->Run(); | 117 MessageLoop::current()->Run(); |
(...skipping 27 matching lines...) Expand all Loading... |
145 base::Bind(&BrowserThreadTest::DoNothing), | 145 base::Bind(&BrowserThreadTest::DoNothing), |
146 base::Bind(&MessageLoop::Quit, | 146 base::Bind(&MessageLoop::Quit, |
147 base::Unretained(MessageLoop::current()->current())))); | 147 base::Unretained(MessageLoop::current()->current())))); |
148 MessageLoop::current()->Run(); | 148 MessageLoop::current()->Run(); |
149 } | 149 } |
150 | 150 |
151 | 151 |
152 TEST_F(BrowserThreadTest, TaskToNonExistentThreadIsDeletedViaMessageLoopProxy) { | 152 TEST_F(BrowserThreadTest, TaskToNonExistentThreadIsDeletedViaMessageLoopProxy) { |
153 bool deleted = false; | 153 bool deleted = false; |
154 scoped_refptr<base::MessageLoopProxy> message_loop_proxy = | 154 scoped_refptr<base::MessageLoopProxy> message_loop_proxy = |
155 BrowserThread::GetMessageLoopProxyForThread(BrowserThread::WEBKIT); | 155 BrowserThread::GetMessageLoopProxyForThread( |
| 156 BrowserThread::WEBKIT_DEPRECATED); |
156 message_loop_proxy->PostTask(FROM_HERE, new DummyTask(&deleted)); | 157 message_loop_proxy->PostTask(FROM_HERE, new DummyTask(&deleted)); |
157 EXPECT_TRUE(deleted); | 158 EXPECT_TRUE(deleted); |
158 } | 159 } |
159 | 160 |
160 TEST_F(BrowserThreadTest, PostTaskViaMessageLoopProxyAfterThreadExits) { | 161 TEST_F(BrowserThreadTest, PostTaskViaMessageLoopProxyAfterThreadExits) { |
161 scoped_ptr<BrowserThreadImpl> io_thread( | 162 scoped_ptr<BrowserThreadImpl> io_thread( |
162 new BrowserThreadImpl(BrowserThread::IO)); | 163 new BrowserThreadImpl(BrowserThread::IO)); |
163 io_thread->Start(); | 164 io_thread->Start(); |
164 io_thread->Stop(); | 165 io_thread->Stop(); |
165 | 166 |
(...skipping 13 matching lines...) Expand all Loading... |
179 } | 180 } |
180 bool deleted = false; | 181 bool deleted = false; |
181 scoped_refptr<base::MessageLoopProxy> message_loop_proxy = | 182 scoped_refptr<base::MessageLoopProxy> message_loop_proxy = |
182 BrowserThread::GetMessageLoopProxyForThread(BrowserThread::IO); | 183 BrowserThread::GetMessageLoopProxyForThread(BrowserThread::IO); |
183 bool ret = message_loop_proxy->PostTask(FROM_HERE, new DummyTask(&deleted)); | 184 bool ret = message_loop_proxy->PostTask(FROM_HERE, new DummyTask(&deleted)); |
184 EXPECT_FALSE(ret); | 185 EXPECT_FALSE(ret); |
185 EXPECT_TRUE(deleted); | 186 EXPECT_TRUE(deleted); |
186 } | 187 } |
187 | 188 |
188 } | 189 } |
OLD | NEW |