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

Side by Side Diff: apps/benchmark/event_unittest.cc

Issue 1381933002: Fix the benchmark app to handle real-world events (Closed) Base URL: git@github.com:domokit/mojo.git@master
Patch Set: Created 5 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
« apps/benchmark/event.cc ('K') | « apps/benchmark/event.cc ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 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 "apps/benchmark/event.h" 5 #include "apps/benchmark/event.h"
6 6
7 #include <string> 7 #include <string>
8 #include <vector> 8 #include <vector>
9 9
10 #include "base/strings/string_util.h" 10 #include "base/strings/string_util.h"
(...skipping 127 matching lines...) Expand 10 before | Expand all | Expand 10 after
138 EXPECT_EQ(base::TimeTicks::FromInternalValue(1), events[0].timestamp); 138 EXPECT_EQ(base::TimeTicks::FromInternalValue(1), events[0].timestamp);
139 EXPECT_EQ(base::TimeDelta::FromInternalValue(2), events[0].duration); 139 EXPECT_EQ(base::TimeDelta::FromInternalValue(2), events[0].duration);
140 140
141 EXPECT_EQ(EventType::COMPLETE, events[1].type); 141 EXPECT_EQ(EventType::COMPLETE, events[1].type);
142 EXPECT_EQ("t2 event", events[1].name); 142 EXPECT_EQ("t2 event", events[1].name);
143 EXPECT_EQ("cc", events[1].categories); 143 EXPECT_EQ("cc", events[1].categories);
144 EXPECT_EQ(base::TimeTicks::FromInternalValue(2), events[1].timestamp); 144 EXPECT_EQ(base::TimeTicks::FromInternalValue(2), events[1].timestamp);
145 EXPECT_EQ(base::TimeDelta::FromInternalValue(2), events[1].duration); 145 EXPECT_EQ(base::TimeDelta::FromInternalValue(2), events[1].duration);
146 } 146 }
147 147
148 TEST(GetEventsTest, DurationEventsIdsString) {
ppi 2015/10/01 13:31:16 DurationEventTidIsString
etiennej 2015/10/01 13:41:47 Done.
149 std::vector<std::string> event_specs(2);
150 event_specs[0] =
151 "{\"tid\":\"1\",\"ts\":1,\"ph\":\"B\",\"cat\":\"cc\","
152 "\"name\":\"t1 event\"}";
153 event_specs[1] = "{\"tid\":1,\"ts\":3,\"ph\":\"E\"}";
154
155 std::string trace_json = "[" + JoinString(event_specs, ',') + "]";
156 std::vector<Event> events;
157 ASSERT_TRUE(GetEvents(trace_json, &events));
158 ASSERT_EQ(1u, events.size());
159
160 EXPECT_EQ(EventType::COMPLETE, events[0].type);
161 EXPECT_EQ("t1 event", events[0].name);
162 EXPECT_EQ("cc", events[0].categories);
163 EXPECT_EQ(base::TimeTicks::FromInternalValue(1), events[0].timestamp);
164 EXPECT_EQ(base::TimeDelta::FromInternalValue(2), events[0].duration);
165 }
166
148 TEST(GetEventsTest, AsyncEvents) { 167 TEST(GetEventsTest, AsyncEvents) {
149 std::vector<std::string> event_specs(4); 168 std::vector<std::string> event_specs(4);
150 event_specs[0] = 169 event_specs[0] =
151 "{\"tid\":1001,\"id\":1,\"ts\":1,\"ph\":\"S\",\"cat\":\"cc\",\"name\":" 170 "{\"tid\":1001,\"id\":1,\"ts\":1,\"ph\":\"S\",\"cat\":\"cc\",\"name\":"
152 "\"t1 event\"}"; 171 "\"t1 event\"}";
153 event_specs[1] = 172 event_specs[1] =
154 "{\"tid\":1002,\"id\":2,\"ts\":2,\"ph\":\"S\",\"cat\":\"cc\",\"name\":" 173 "{\"tid\":1002,\"id\":2,\"ts\":2,\"ph\":\"S\",\"cat\":\"cc\",\"name\":"
155 "\"t2 event\"}"; 174 "\"t2 event\"}";
156 event_specs[2] = 175 event_specs[2] =
157 "{\"tid\":1003,\"id\":1,\"ts\":3,\"ph\":\"F\",\"cat\":\"cc\",\"name\":" 176 "{\"tid\":1003,\"id\":1,\"ts\":3,\"ph\":\"F\",\"cat\":\"cc\",\"name\":"
(...skipping 13 matching lines...) Expand all
171 EXPECT_EQ(base::TimeTicks::FromInternalValue(1), events[0].timestamp); 190 EXPECT_EQ(base::TimeTicks::FromInternalValue(1), events[0].timestamp);
172 EXPECT_EQ(base::TimeDelta::FromInternalValue(2), events[0].duration); 191 EXPECT_EQ(base::TimeDelta::FromInternalValue(2), events[0].duration);
173 192
174 EXPECT_EQ(EventType::COMPLETE, events[1].type); 193 EXPECT_EQ(EventType::COMPLETE, events[1].type);
175 EXPECT_EQ("t2 event", events[1].name); 194 EXPECT_EQ("t2 event", events[1].name);
176 EXPECT_EQ("cc", events[1].categories); 195 EXPECT_EQ("cc", events[1].categories);
177 EXPECT_EQ(base::TimeTicks::FromInternalValue(2), events[1].timestamp); 196 EXPECT_EQ(base::TimeTicks::FromInternalValue(2), events[1].timestamp);
178 EXPECT_EQ(base::TimeDelta::FromInternalValue(2), events[1].duration); 197 EXPECT_EQ(base::TimeDelta::FromInternalValue(2), events[1].duration);
179 } 198 }
180 199
200 TEST(GetEventsTest, AsyncEventIdsIsString) {
ppi 2015/10/01 13:31:16 Either "IdIsString" or "IdsAreString"
etiennej 2015/10/01 13:41:47 Done.
201 std::vector<std::string> event_specs(2);
202 event_specs[0] =
203 "{\"tid\":1001,\"id\":\"a\",\"ts\":1,\"ph\":\"S\",\"cat\":\"cc\","
204 "\"name\":\"t1 event\"}";
205 event_specs[1] =
206 "{\"tid\":1003,\"id\":\"a\",\"ts\":3,\"ph\":\"F\",\"cat\":\"cc\","
207 "\"name\":\"t1 event\"}";
208
209 std::string trace_json = "[" + JoinString(event_specs, ',') + "]";
210 std::vector<Event> events;
211 ASSERT_TRUE(GetEvents(trace_json, &events));
212 ASSERT_EQ(1u, events.size());
213
214 EXPECT_EQ(EventType::COMPLETE, events[0].type);
215 EXPECT_EQ("t1 event", events[0].name);
216 EXPECT_EQ("cc", events[0].categories);
217 EXPECT_EQ(base::TimeTicks::FromInternalValue(1), events[0].timestamp);
218 EXPECT_EQ(base::TimeDelta::FromInternalValue(2), events[0].duration);
219 }
220
181 } // namespace 221 } // namespace
182 222
183 } // namespace benchmark 223 } // namespace benchmark
OLDNEW
« apps/benchmark/event.cc ('K') | « apps/benchmark/event.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698