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

Side by Side Diff: base/task_scheduler/task_traits_unittest.cc

Issue 2829083002: Add constexpr TaskTraits constructor. (Closed)
Patch Set: rebase Created 3 years, 8 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
(Empty)
1 // Copyright 2017 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.
4
5 #include "base/task_scheduler/task_traits.h"
6
7 #include "testing/gtest/include/gtest/gtest.h"
8
9 namespace base {
10
11 TEST(TaskSchedulerTaskTraitsTest, Default) {
12 constexpr TaskTraits traits;
13 EXPECT_FALSE(traits.may_block());
14 EXPECT_FALSE(traits.with_base_sync_primitives());
15 EXPECT_EQ(TaskPriority::INHERITED, traits.priority());
16 EXPECT_EQ(TaskShutdownBehavior::SKIP_ON_SHUTDOWN, traits.shutdown_behavior());
17 }
18
19 TEST(TaskSchedulerTaskTraitsTest, MayBlock) {
20 constexpr TaskTraits traits = {MayBlock()};
21 EXPECT_TRUE(traits.may_block());
22 EXPECT_FALSE(traits.with_base_sync_primitives());
23 EXPECT_EQ(TaskPriority::INHERITED, traits.priority());
24 EXPECT_EQ(TaskShutdownBehavior::SKIP_ON_SHUTDOWN, traits.shutdown_behavior());
25 }
26
27 TEST(TaskSchedulerTaskTraitsTest, WithBaseSyncPrimitives) {
28 constexpr TaskTraits traits = {WithBaseSyncPrimitives()};
29 EXPECT_FALSE(traits.may_block());
30 EXPECT_TRUE(traits.with_base_sync_primitives());
31 EXPECT_EQ(TaskPriority::INHERITED, traits.priority());
32 EXPECT_EQ(TaskShutdownBehavior::SKIP_ON_SHUTDOWN, traits.shutdown_behavior());
33 }
34
35 TEST(TaskSchedulerTaskTraitsTest, TaskPriority) {
36 constexpr TaskTraits traits = {TaskPriority::USER_VISIBLE};
37 EXPECT_FALSE(traits.may_block());
38 EXPECT_FALSE(traits.with_base_sync_primitives());
39 EXPECT_EQ(TaskPriority::USER_VISIBLE, traits.priority());
40 EXPECT_EQ(TaskShutdownBehavior::SKIP_ON_SHUTDOWN, traits.shutdown_behavior());
41 }
42
43 TEST(TaskSchedulerTaskTraitsTest, TaskShutdownBehavior) {
44 constexpr TaskTraits traits = {TaskShutdownBehavior::BLOCK_SHUTDOWN};
45 EXPECT_FALSE(traits.may_block());
46 EXPECT_FALSE(traits.with_base_sync_primitives());
47 EXPECT_EQ(TaskPriority::INHERITED, traits.priority());
48 EXPECT_EQ(TaskShutdownBehavior::BLOCK_SHUTDOWN, traits.shutdown_behavior());
49 }
50
51 TEST(TaskSchedulerTaskTraitsTest, MultipleTraits) {
52 constexpr TaskTraits traits = {MayBlock(), WithBaseSyncPrimitives(),
53 TaskPriority::USER_VISIBLE,
54 TaskShutdownBehavior::BLOCK_SHUTDOWN};
55 EXPECT_TRUE(traits.may_block());
56 EXPECT_TRUE(traits.with_base_sync_primitives());
57 EXPECT_EQ(TaskPriority::USER_VISIBLE, traits.priority());
58 EXPECT_EQ(TaskShutdownBehavior::BLOCK_SHUTDOWN, traits.shutdown_behavior());
59 }
60
61 } // namespace base
OLDNEW
« base/task_scheduler/task_traits.h ('K') | « base/task_scheduler/task_traits.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698