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

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

Issue 2032603002: Migrate WaitableEvent to enum-based constructor in base/ (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@WEvent_enums
Patch Set: undo incorrect template change Created 4 years, 6 months 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 (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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/threading/sequenced_worker_pool.h" 5 #include "base/threading/sequenced_worker_pool.h"
6 6
7 #include <stddef.h> 7 #include <stddef.h>
8 8
9 #include <algorithm> 9 #include <algorithm>
10 #include <memory> 10 #include <memory>
(...skipping 948 matching lines...) Expand 10 before | Expand all | Expand 10 after
959 959
960 TEST_F(SequencedWorkerPoolTest, GetSequencedTaskRunnerForCurrentThread) { 960 TEST_F(SequencedWorkerPoolTest, GetSequencedTaskRunnerForCurrentThread) {
961 EnsureAllWorkersCreated(); 961 EnsureAllWorkersCreated();
962 962
963 // The current thread should not have a sequenced task runner from a 963 // The current thread should not have a sequenced task runner from a
964 // worker pool. 964 // worker pool.
965 scoped_refptr<SequencedTaskRunner> local_task_runner = 965 scoped_refptr<SequencedTaskRunner> local_task_runner =
966 SequencedWorkerPool::GetSequencedTaskRunnerForCurrentThread(); 966 SequencedWorkerPool::GetSequencedTaskRunnerForCurrentThread();
967 EXPECT_FALSE(local_task_runner); 967 EXPECT_FALSE(local_task_runner);
968 968
969 WaitableEvent event(false, false); 969 WaitableEvent event(WaitableEvent::ResetPolicy::AUTOMATIC,
970 WaitableEvent::InitialState::NOT_SIGNALED);
970 Closure signal = Bind(&WaitableEvent::Signal, Unretained(&event)); 971 Closure signal = Bind(&WaitableEvent::Signal, Unretained(&event));
971 scoped_refptr<SequencedTaskRunner> task_runner_1 = 972 scoped_refptr<SequencedTaskRunner> task_runner_1 =
972 pool()->GetSequencedTaskRunner(SequencedWorkerPool::GetSequenceToken()); 973 pool()->GetSequencedTaskRunner(SequencedWorkerPool::GetSequenceToken());
973 scoped_refptr<SequencedTaskRunner> task_runner_2 = 974 scoped_refptr<SequencedTaskRunner> task_runner_2 =
974 pool()->GetSequencedTaskRunner(SequencedWorkerPool::GetSequenceToken()); 975 pool()->GetSequencedTaskRunner(SequencedWorkerPool::GetSequenceToken());
975 task_runner_1->PostTask( 976 task_runner_1->PostTask(
976 FROM_HERE, Bind(&VerifyCurrentSequencedTaskRunner, 977 FROM_HERE, Bind(&VerifyCurrentSequencedTaskRunner,
977 base::Unretained(task_runner_1.get()), true, signal)); 978 base::Unretained(task_runner_1.get()), true, signal));
978 event.Wait(); 979 event.Wait();
979 task_runner_2->PostTask( 980 task_runner_2->PostTask(
(...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after
1018 task_runner->PostTask(FROM_HERE, Bind(&ChecksSequenceOnDestruction::DoNothing, 1019 task_runner->PostTask(FROM_HERE, Bind(&ChecksSequenceOnDestruction::DoNothing,
1019 std::move(check_sequence))); 1020 std::move(check_sequence)));
1020 1021
1021 // Post the callback afterwards, so we can be sure the first task completed. 1022 // Post the callback afterwards, so we can be sure the first task completed.
1022 task_runner->PostTask(FROM_HERE, callback); 1023 task_runner->PostTask(FROM_HERE, callback);
1023 } 1024 }
1024 1025
1025 TEST_F(SequencedWorkerPoolTest, CheckSequenceOnDestruction) { 1026 TEST_F(SequencedWorkerPoolTest, CheckSequenceOnDestruction) {
1026 EnsureAllWorkersCreated(); 1027 EnsureAllWorkersCreated();
1027 1028
1028 WaitableEvent event(false, false); 1029 WaitableEvent event(WaitableEvent::ResetPolicy::AUTOMATIC,
1030 WaitableEvent::InitialState::NOT_SIGNALED);
1029 Closure signal = Bind(&WaitableEvent::Signal, Unretained(&event)); 1031 Closure signal = Bind(&WaitableEvent::Signal, Unretained(&event));
1030 pool()->PostWorkerTask(FROM_HERE, Bind(&VerifySequenceOnDestruction, signal)); 1032 pool()->PostWorkerTask(FROM_HERE, Bind(&VerifySequenceOnDestruction, signal));
1031 event.Wait(); 1033 event.Wait();
1032 } 1034 }
1033 1035
1034 TEST_F(SequencedWorkerPoolTest, ShutsDownCleanWithContinueOnShutdown) { 1036 TEST_F(SequencedWorkerPoolTest, ShutsDownCleanWithContinueOnShutdown) {
1035 scoped_refptr<SequencedTaskRunner> task_runner = 1037 scoped_refptr<SequencedTaskRunner> task_runner =
1036 pool()->GetSequencedTaskRunnerWithShutdownBehavior( 1038 pool()->GetSequencedTaskRunnerWithShutdownBehavior(
1037 pool()->GetSequenceToken(), 1039 pool()->GetSequenceToken(),
1038 base::SequencedWorkerPool::CONTINUE_ON_SHUTDOWN); 1040 base::SequencedWorkerPool::CONTINUE_ON_SHUTDOWN);
(...skipping 121 matching lines...) Expand 10 before | Expand all | Expand 10 after
1160 SequencedWorkerPoolSequencedTaskRunner, SequencedTaskRunnerTest, 1162 SequencedWorkerPoolSequencedTaskRunner, SequencedTaskRunnerTest,
1161 SequencedWorkerPoolSequencedTaskRunnerTestDelegate); 1163 SequencedWorkerPoolSequencedTaskRunnerTestDelegate);
1162 INSTANTIATE_TYPED_TEST_CASE_P( 1164 INSTANTIATE_TYPED_TEST_CASE_P(
1163 SequencedWorkerPoolSequencedTaskRunner, 1165 SequencedWorkerPoolSequencedTaskRunner,
1164 SequencedTaskRunnerDelayedTest, 1166 SequencedTaskRunnerDelayedTest,
1165 SequencedWorkerPoolSequencedTaskRunnerTestDelegate); 1167 SequencedWorkerPoolSequencedTaskRunnerTestDelegate);
1166 1168
1167 } // namespace 1169 } // namespace
1168 1170
1169 } // namespace base 1171 } // namespace base
OLDNEW
« no previous file with comments | « base/threading/sequenced_task_runner_handle_unittest.cc ('k') | base/threading/simple_thread.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698