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
3 // found in the LICENSE file.
5 #include "base/test/thread_test_helper.h"
8 #include "base/location.h"
9 #include "base/threading/thread_restrictions.h"
13 ThreadTestHelper::ThreadTestHelper(
14 scoped_refptr
<SingleThreadTaskRunner
> target_thread
)
15 : test_result_(false),
16 target_thread_(target_thread
.Pass()),
17 done_event_(false, false) {
20 bool ThreadTestHelper::Run() {
21 if (!target_thread_
->PostTask(
22 FROM_HERE
, base::Bind(&ThreadTestHelper::RunInThread
, this))) {
25 base::ThreadRestrictions::ScopedAllowWait allow_wait
;
30 void ThreadTestHelper::RunTest() { set_test_result(true); }
32 ThreadTestHelper::~ThreadTestHelper() {}
34 void ThreadTestHelper::RunInThread() {