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

Side by Side Diff: base/threading/sequenced_task_runner_handle_unittest.cc

Issue 1417353006: Tests: Simplify SequencedWorkerPoolOwner, call Shutdown on destructor. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: adjust formatting and rebase Created 5 years 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 unified diff | Download patch
OLDNEW
1 // Copyright 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 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/callback.h" 6 #include "base/callback.h"
7 #include "base/location.h" 7 #include "base/location.h"
8 #include "base/memory/ref_counted.h" 8 #include "base/memory/ref_counted.h"
9 #include "base/memory/scoped_ptr.h" 9 #include "base/memory/scoped_ptr.h"
10 #include "base/message_loop/message_loop.h" 10 #include "base/message_loop/message_loop.h"
(...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after
54 TEST_F(SequencedTaskRunnerHandleTest, FromSequencedWorkerPool) { 54 TEST_F(SequencedTaskRunnerHandleTest, FromSequencedWorkerPool) {
55 // Wrap the SequencedWorkerPool to avoid leaks due to its asynchronous 55 // Wrap the SequencedWorkerPool to avoid leaks due to its asynchronous
56 // destruction. 56 // destruction.
57 SequencedWorkerPoolOwner owner(3, "Test"); 57 SequencedWorkerPoolOwner owner(3, "Test");
58 WaitableEvent event(false, false); 58 WaitableEvent event(false, false);
59 owner.pool()->PostSequencedWorkerTask( 59 owner.pool()->PostSequencedWorkerTask(
60 owner.pool()->GetSequenceToken(), FROM_HERE, 60 owner.pool()->GetSequenceToken(), FROM_HERE,
61 base::Bind(&SequencedTaskRunnerHandleTest::GetTaskRunner, 61 base::Bind(&SequencedTaskRunnerHandleTest::GetTaskRunner,
62 base::Bind(&WaitableEvent::Signal, base::Unretained(&event)))); 62 base::Bind(&WaitableEvent::Signal, base::Unretained(&event))));
63 event.Wait(); 63 event.Wait();
64 owner.pool()->Shutdown();
65 } 64 }
66 65
67 class ThreadRunner : public DelegateSimpleThread::Delegate { 66 class ThreadRunner : public DelegateSimpleThread::Delegate {
68 public: 67 public:
69 void Run() override { 68 void Run() override {
70 ASSERT_FALSE(SequencedTaskRunnerHandle::IsSet()); 69 ASSERT_FALSE(SequencedTaskRunnerHandle::IsSet());
71 } 70 }
72 71
73 private: 72 private:
74 Closure callback_; 73 Closure callback_;
75 }; 74 };
76 75
77 TEST_F(SequencedTaskRunnerHandleTest, FromSimpleThread) { 76 TEST_F(SequencedTaskRunnerHandleTest, FromSimpleThread) {
78 ThreadRunner thread_runner; 77 ThreadRunner thread_runner;
79 DelegateSimpleThread thread(&thread_runner, "Background thread"); 78 DelegateSimpleThread thread(&thread_runner, "Background thread");
80 thread.Start(); 79 thread.Start();
81 thread.Join(); 80 thread.Join();
82 } 81 }
83 82
84 } // namespace 83 } // namespace
85 } // namespace base 84 } // namespace base
OLDNEW
« no previous file with comments | « base/test/sequenced_worker_pool_owner.cc ('k') | base/threading/sequenced_worker_pool_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698