Chromium Code Reviews| Index: base/task_scheduler/sequence_sort_key_unittest.cc |
| diff --git a/base/task_scheduler/sequence_sort_key_unittest.cc b/base/task_scheduler/sequence_sort_key_unittest.cc |
| new file mode 100644 |
| index 0000000000000000000000000000000000000000..e52d6150c2150adf61a3834313800162844746d1 |
| --- /dev/null |
| +++ b/base/task_scheduler/sequence_sort_key_unittest.cc |
| @@ -0,0 +1,72 @@ |
| +// Copyright 2016 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. |
| + |
| +#include "base/task_scheduler/sequence_sort_key.h" |
| + |
| +#include "base/task_scheduler/task_traits.h" |
| +#include "base/time/time.h" |
| +#include "testing/gtest/include/gtest/gtest.h" |
| + |
| +namespace base { |
| +namespace internal { |
| + |
| +TEST(TaskSchedulerSequenceSortKeyTest, Comparison) { |
|
robliao
2016/02/19 02:33:43
Add some equality tests too.
fdoray
2016/02/19 14:12:14
Done.
|
| + SequenceSortKey key_a(TaskPriority::USER_BLOCKING, |
| + TimeTicks::FromInternalValue(0)); |
|
robliao
2016/02/19 02:33:43
Go for some values other than 0 and 1 for the Time
fdoray
2016/02/19 14:12:15
Done.
|
| + SequenceSortKey key_b(TaskPriority::USER_BLOCKING, |
| + TimeTicks::FromInternalValue(1)); |
| + SequenceSortKey key_c(TaskPriority::USER_VISIBLE, |
| + TimeTicks::FromInternalValue(0)); |
| + SequenceSortKey key_d(TaskPriority::USER_VISIBLE, |
| + TimeTicks::FromInternalValue(1)); |
| + SequenceSortKey key_e(TaskPriority::BACKGROUND, |
| + TimeTicks::FromInternalValue(0)); |
| + SequenceSortKey key_f(TaskPriority::BACKGROUND, |
| + TimeTicks::FromInternalValue(1)); |
| + |
| + EXPECT_FALSE(key_a < key_a); |
| + EXPECT_LT(key_b, key_a); |
| + EXPECT_LT(key_c, key_a); |
| + EXPECT_LT(key_d, key_a); |
| + EXPECT_LT(key_e, key_a); |
| + EXPECT_LT(key_f, key_a); |
| + |
| + EXPECT_FALSE(key_a < key_b); |
| + EXPECT_FALSE(key_b < key_b); |
| + EXPECT_LT(key_c, key_b); |
| + EXPECT_LT(key_d, key_b); |
| + EXPECT_LT(key_e, key_b); |
| + EXPECT_LT(key_f, key_b); |
| + |
| + EXPECT_FALSE(key_a < key_c); |
| + EXPECT_FALSE(key_b < key_c); |
| + EXPECT_FALSE(key_c < key_c); |
| + EXPECT_LT(key_d, key_c); |
| + EXPECT_LT(key_e, key_c); |
| + EXPECT_LT(key_f, key_c); |
| + |
| + EXPECT_FALSE(key_a < key_d); |
| + EXPECT_FALSE(key_b < key_d); |
| + EXPECT_FALSE(key_c < key_d); |
| + EXPECT_FALSE(key_d < key_d); |
| + EXPECT_LT(key_e, key_d); |
| + EXPECT_LT(key_f, key_d); |
| + |
| + EXPECT_FALSE(key_a < key_e); |
| + EXPECT_FALSE(key_b < key_e); |
| + EXPECT_FALSE(key_c < key_e); |
| + EXPECT_FALSE(key_d < key_e); |
| + EXPECT_FALSE(key_e < key_e); |
| + EXPECT_LT(key_f, key_e); |
| + |
| + EXPECT_FALSE(key_a < key_f); |
| + EXPECT_FALSE(key_b < key_f); |
| + EXPECT_FALSE(key_c < key_f); |
| + EXPECT_FALSE(key_d < key_f); |
| + EXPECT_FALSE(key_e < key_f); |
| + EXPECT_FALSE(key_f < key_f); |
| +} |
| + |
| +} // namespace internal |
| +} // namespace base |