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..376d34870ba808fbcb66294e6aca45a6dcacbaad |
--- /dev/null |
+++ b/base/task_scheduler/sequence_sort_key_unittest.cc |
@@ -0,0 +1,90 @@ |
+// 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, OperatorLessThan) { |
+ const SequenceSortKey key_a(TaskPriority::USER_BLOCKING, |
+ TimeTicks::FromInternalValue(1000)); |
+ const SequenceSortKey key_b(TaskPriority::USER_BLOCKING, |
+ TimeTicks::FromInternalValue(2000)); |
+ const SequenceSortKey key_c(TaskPriority::USER_VISIBLE, |
+ TimeTicks::FromInternalValue(1000)); |
+ const SequenceSortKey key_d(TaskPriority::USER_VISIBLE, |
+ TimeTicks::FromInternalValue(2000)); |
+ const SequenceSortKey key_e(TaskPriority::BACKGROUND, |
+ TimeTicks::FromInternalValue(1000)); |
+ const SequenceSortKey key_f(TaskPriority::BACKGROUND, |
+ TimeTicks::FromInternalValue(2000)); |
+ |
+ 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); |
+} |
+ |
+TEST(TaskSchedulerSequenceSortKeyTest, OperatorEquals) { |
+ const SequenceSortKey key_a(TaskPriority::USER_BLOCKING, |
+ TimeTicks::FromInternalValue(1000)); |
+ const SequenceSortKey key_b(TaskPriority::USER_BLOCKING, |
+ TimeTicks::FromInternalValue(1000)); |
+ const SequenceSortKey key_c(TaskPriority::USER_VISIBLE, |
+ TimeTicks::FromInternalValue(1000)); |
+ const SequenceSortKey key_d(TaskPriority::USER_BLOCKING, |
+ TimeTicks::FromInternalValue(2000)); |
+ const SequenceSortKey key_e(TaskPriority::USER_VISIBLE, |
+ TimeTicks::FromInternalValue(2000)); |
+ |
+ EXPECT_EQ(key_a, key_b); |
+ EXPECT_FALSE(key_a == key_c); |
+ EXPECT_FALSE(key_a == key_d); |
+ EXPECT_FALSE(key_a == key_e); |
gab
2016/02/19 16:50:47
EXPECT_NE instead of EXPECT_FALSE
fdoray
2016/02/19 22:28:30
As we discussed, I'm testing the operator here.
|
+} |
+ |
+} // namespace internal |
+} // namespace base |