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

Side by Side Diff: base/sequence_token_unittest.cc

Issue 2392903002: Add a task_scheduler tracing category which will record an extra event per task. (Closed)
Patch Set: cleaner order Created 4 years, 2 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 2016 The Chromium Authors. All rights reserved. 1 // Copyright 2016 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/sequence_token.h" 5 #include "base/sequence_token.h"
6 6
7 #include "base/strings/string_number_conversions.h"
7 #include "testing/gtest/include/gtest/gtest.h" 8 #include "testing/gtest/include/gtest/gtest.h"
8 9
9 namespace base { 10 namespace base {
10 11
11 TEST(SequenceTokenTest, IsValid) { 12 TEST(SequenceTokenTest, IsValid) {
12 EXPECT_FALSE(SequenceToken().IsValid()); 13 EXPECT_FALSE(SequenceToken().IsValid());
13 EXPECT_TRUE(SequenceToken::Create().IsValid()); 14 EXPECT_TRUE(SequenceToken::Create().IsValid());
14 } 15 }
15 16
16 TEST(SequenceTokenTest, OperatorEquals) { 17 TEST(SequenceTokenTest, OperatorEquals) {
(...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after
55 { 56 {
56 ScopedSetSequenceTokenForCurrentThread 57 ScopedSetSequenceTokenForCurrentThread
57 scoped_set_sequence_token_for_current_thread(token); 58 scoped_set_sequence_token_for_current_thread(token);
58 EXPECT_TRUE(SequenceToken::GetForCurrentThread().IsValid()); 59 EXPECT_TRUE(SequenceToken::GetForCurrentThread().IsValid());
59 EXPECT_EQ(token, SequenceToken::GetForCurrentThread()); 60 EXPECT_EQ(token, SequenceToken::GetForCurrentThread());
60 } 61 }
61 62
62 EXPECT_FALSE(SequenceToken::GetForCurrentThread().IsValid()); 63 EXPECT_FALSE(SequenceToken::GetForCurrentThread().IsValid());
63 } 64 }
64 65
66 TEST(SequenceTokenTest, ToString) {
67 const SequenceToken token1 = SequenceToken::Create();
68 const SequenceToken token2 = SequenceToken::Create();
69
70 const std::string token1_str = token1.ToString();
71 const std::string token2_str = token2.ToString();
72
73 // Confirm that the strings are numerical representations.
74 int token1_int = -1;
75 int token2_int = -1;
76 EXPECT_TRUE(StringToInt(token1_str, &token1_int));
77 EXPECT_TRUE(StringToInt(token2_str, &token2_int));
78
79 // Confirm that they are unique.
80 EXPECT_NE(token1_str, token2_str);
81 EXPECT_NE(token1_int, token2_int);
82 }
83
65 // Expect a default-constructed TaskToken to be invalid and not equal to 84 // Expect a default-constructed TaskToken to be invalid and not equal to
66 // another invalid TaskToken. 85 // another invalid TaskToken.
67 TEST(TaskTokenTest, InvalidDefaultConstructed) { 86 TEST(TaskTokenTest, InvalidDefaultConstructed) {
68 EXPECT_FALSE(TaskToken().IsValid()); 87 EXPECT_FALSE(TaskToken().IsValid());
69 EXPECT_NE(TaskToken(), TaskToken()); 88 EXPECT_NE(TaskToken(), TaskToken());
70 } 89 }
71 90
72 // Expect a TaskToken returned by TaskToken::GetForCurrentThread() outside the 91 // Expect a TaskToken returned by TaskToken::GetForCurrentThread() outside the
73 // scope of a ScopedSetSequenceTokenForCurrentThread to be invalid. 92 // scope of a ScopedSetSequenceTokenForCurrentThread to be invalid.
74 TEST(TaskTokenTest, InvalidOutsideScope) { 93 TEST(TaskTokenTest, InvalidOutsideScope) {
(...skipping 41 matching lines...) Expand 10 before | Expand all | Expand 10 after
116 scoped_set_sequence_token_for_current_thread(SequenceToken::Create()); 135 scoped_set_sequence_token_for_current_thread(SequenceToken::Create());
117 token_b = TaskToken::GetForCurrentThread(); 136 token_b = TaskToken::GetForCurrentThread();
118 } 137 }
119 138
120 EXPECT_TRUE(token_a.IsValid()); 139 EXPECT_TRUE(token_a.IsValid());
121 EXPECT_TRUE(token_b.IsValid()); 140 EXPECT_TRUE(token_b.IsValid());
122 EXPECT_NE(token_a, token_b); 141 EXPECT_NE(token_a, token_b);
123 } 142 }
124 143
125 } // namespace base 144 } // namespace base
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698