 Chromium Code Reviews
 Chromium Code Reviews Issue 2829083002:
  Add constexpr TaskTraits constructor.  (Closed)
    
  
    Issue 2829083002:
  Add constexpr TaskTraits constructor.  (Closed) 
  | Index: base/task_scheduler/task_traits_unittest.nc | 
| diff --git a/base/task_scheduler/task_traits_unittest.nc b/base/task_scheduler/task_traits_unittest.nc | 
| new file mode 100644 | 
| index 0000000000000000000000000000000000000000..6afe2d1a2fd9128ca0cce9ebe8236afd76946eb8 | 
| --- /dev/null | 
| +++ b/base/task_scheduler/task_traits_unittest.nc | 
| @@ -0,0 +1,31 @@ | 
| +// Copyright 2017 The Chromium Authors. All rights reserved. | 
| +// Use of this source code is governed by a BSD-style license that can be | 
| +// found in the LICENSE file. | 
| + | 
| +// This is a "No Compile Test" suite. | 
| +// http://dev.chromium.org/developers/testing/no-compile-tests | 
| + | 
| +#include "base/task_scheduler/task_traits.h" | 
| + | 
| +namespace base { | 
| + | 
| +#if defined(NCTEST_TASK_TRAITS_MULTIPLE_MAY_BLOCK) // [r"Multiple arguments of the same type were provided to the constructor of TaskTraits."] | 
| +constexpr TaskTraits traits = {MayBlock(), MayBlock()}; | 
| +#elif defined(NCTEST_TASK_TRAITS_MULTIPLE_WITH_BASE_SYNC_PRIMITIVES) // [r"Multiple arguments of the same type were provided to the constructor of TaskTraits."] | 
| +constexpr TaskTraits traits = {WithBaseSyncPrimitives(), | 
| + WithBaseSyncPrimitives()}; | 
| +#elif defined(NCTEST_TASK_TRAITS_MULTIPLE_TASK_PRIORITY) // [r"Multiple arguments of the same type were provided to the constructor of TaskTraits."] | 
| +constexpr TaskTraits traits = {TaskPriority::BACKGROUND, | 
| + TaskPriority::USER_BLOCKING}; | 
| +#elif defined(NCTEST_TASK_TRAITS_MULTIPLE_SHUTDOWN_BEHAVIOR) // [r"Multiple arguments of the same type were provided to the constructor of TaskTraits."] | 
| +constexpr TaskTraits traits = {TaskShutdownBehavior::BLOCK_SHUTDOWN, | 
| + TaskShutdownBehavior::BLOCK_SHUTDOWN}; | 
| +#elif defined(NCTEST_TASK_TRAITS_MULTIPLE_SAME_TYPE_MIX) // [r"Multiple arguments of the same type were provided to the constructor of TaskTraits."] | 
| +constexpr TaskTraits traits = {TaskShutdownBehavior::BLOCK_SHUTDOWN, | 
| + MayBlock(), | 
| + TaskShutdownBehavior::CONTINUE_ON_SHUTDOWN}; | 
| +#elif defined(NCTEST_TASK_TRAITS_INVALID_TYPE) // [r"Argument of invalid type provided to the constructor of TaskTraits."] | 
| 
gab
2017/04/28 18:15:43
Update regex
 
fdoray
2017/04/28 18:40:36
Done.
 | 
| +constexpr TaskTraits traits = {TaskShutdownBehavior::BLOCK_SHUTDOWN, true}; | 
| +#endif | 
| + | 
| +} // namespace base |