OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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/debug/trace_event_unittest.h" | 5 #include "base/debug/trace_event_unittest.h" |
6 | 6 |
7 #include "base/bind.h" | 7 #include "base/bind.h" |
8 #include "base/command_line.h" | 8 #include "base/command_line.h" |
9 #include "base/debug/trace_event.h" | 9 #include "base/debug/trace_event.h" |
10 #include "base/json/json_reader.h" | 10 #include "base/json/json_reader.h" |
(...skipping 354 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
365 TRACE_EVENT_INSTANT_ETW("TRACE_EVENT_INSTANT_ETW1 call", 5, "value"); | 365 TRACE_EVENT_INSTANT_ETW("TRACE_EVENT_INSTANT_ETW1 call", 5, "value"); |
366 | 366 |
367 TRACE_COUNTER1("all", "TRACE_COUNTER1 call", 31415); | 367 TRACE_COUNTER1("all", "TRACE_COUNTER1 call", 31415); |
368 TRACE_COUNTER2("all", "TRACE_COUNTER2 call", | 368 TRACE_COUNTER2("all", "TRACE_COUNTER2 call", |
369 "a", 30000, | 369 "a", 30000, |
370 "b", 1415); | 370 "b", 1415); |
371 | 371 |
372 TRACE_COUNTER_ID1("all", "TRACE_COUNTER_ID1 call", 0x319009, 31415); | 372 TRACE_COUNTER_ID1("all", "TRACE_COUNTER_ID1 call", 0x319009, 31415); |
373 TRACE_COUNTER_ID2("all", "TRACE_COUNTER_ID2 call", 0x319009, | 373 TRACE_COUNTER_ID2("all", "TRACE_COUNTER_ID2 call", 0x319009, |
374 "a", 30000, "b", 1415); | 374 "a", 30000, "b", 1415); |
| 375 |
| 376 TRACE_EVENT_COPY_BEGIN_WITH_ID_TID_AND_TIMESTAMP0("all", |
| 377 "TRACE_EVENT_COPY_BEGIN_WITH_ID_TID_AND_TIMESTAMP0 call", |
| 378 1, 42, 12345); |
| 379 TRACE_EVENT_COPY_END_WITH_ID_TID_AND_TIMESTAMP0("all", |
| 380 "TRACE_EVENT_COPY_END_WITH_ID_TID_AND_TIMESTAMP0 call", |
| 381 1, 42, 23456); |
| 382 |
| 383 TRACE_EVENT_BEGIN_WITH_ID_TID_AND_TIMESTAMP0("all", |
| 384 "TRACE_EVENT_BEGIN_WITH_ID_TID_AND_TIMESTAMP0 call", |
| 385 2, 42, 34567); |
| 386 TRACE_EVENT_END_WITH_ID_TID_AND_TIMESTAMP0("all", |
| 387 "TRACE_EVENT_END_WITH_ID_TID_AND_TIMESTAMP0 call", |
| 388 2, 42, 45678); |
| 389 |
375 } // Scope close causes TRACE_EVENT0 etc to send their END events. | 390 } // Scope close causes TRACE_EVENT0 etc to send their END events. |
376 | 391 |
377 if (task_complete_event) | 392 if (task_complete_event) |
378 task_complete_event->Signal(); | 393 task_complete_event->Signal(); |
379 } | 394 } |
380 | 395 |
381 void ValidateAllTraceMacrosCreatedData(const ListValue& trace_parsed) { | 396 void ValidateAllTraceMacrosCreatedData(const ListValue& trace_parsed) { |
382 const DictionaryValue* item = NULL; | 397 const DictionaryValue* item = NULL; |
383 | 398 |
384 #define EXPECT_FIND_(string) \ | 399 #define EXPECT_FIND_(string) \ |
(...skipping 189 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
574 EXPECT_TRUE((item && item->GetString("ph", &ph))); | 589 EXPECT_TRUE((item && item->GetString("ph", &ph))); |
575 EXPECT_EQ("C", ph); | 590 EXPECT_EQ("C", ph); |
576 | 591 |
577 int value; | 592 int value; |
578 EXPECT_TRUE((item && item->GetInteger("args.a", &value))); | 593 EXPECT_TRUE((item && item->GetInteger("args.a", &value))); |
579 EXPECT_EQ(30000, value); | 594 EXPECT_EQ(30000, value); |
580 | 595 |
581 EXPECT_TRUE((item && item->GetInteger("args.b", &value))); | 596 EXPECT_TRUE((item && item->GetInteger("args.b", &value))); |
582 EXPECT_EQ(1415, value); | 597 EXPECT_EQ(1415, value); |
583 } | 598 } |
| 599 |
| 600 EXPECT_FIND_( |
| 601 "TRACE_EVENT_COPY_BEGIN_WITH_ID_TID_AND_TIMESTAMP0 call"); |
| 602 { |
| 603 int val; |
| 604 EXPECT_TRUE((item && item->GetInteger("ts", &val))); |
| 605 EXPECT_EQ(12345, val); |
| 606 EXPECT_TRUE((item && item->GetInteger("tid", &val))); |
| 607 EXPECT_EQ(42, val); |
| 608 std::string id; |
| 609 EXPECT_TRUE((item && item->GetString("id", &id))); |
| 610 EXPECT_EQ("1", id); |
| 611 } |
| 612 |
| 613 EXPECT_FIND_( |
| 614 "TRACE_EVENT_COPY_END_WITH_ID_TID_AND_TIMESTAMP0 call"); |
| 615 { |
| 616 int val; |
| 617 EXPECT_TRUE((item && item->GetInteger("ts", &val))); |
| 618 EXPECT_EQ(23456, val); |
| 619 EXPECT_TRUE((item && item->GetInteger("tid", &val))); |
| 620 EXPECT_EQ(42, val); |
| 621 std::string id; |
| 622 EXPECT_TRUE((item && item->GetString("id", &id))); |
| 623 EXPECT_EQ("1", id); |
| 624 } |
| 625 |
| 626 EXPECT_FIND_( |
| 627 "TRACE_EVENT_BEGIN_WITH_ID_TID_AND_TIMESTAMP0 call"); |
| 628 { |
| 629 int val; |
| 630 EXPECT_TRUE((item && item->GetInteger("ts", &val))); |
| 631 EXPECT_EQ(34567, val); |
| 632 EXPECT_TRUE((item && item->GetInteger("tid", &val))); |
| 633 EXPECT_EQ(42, val); |
| 634 std::string id; |
| 635 EXPECT_TRUE((item && item->GetString("id", &id))); |
| 636 EXPECT_EQ("2", id); |
| 637 } |
| 638 |
| 639 EXPECT_FIND_( |
| 640 "TRACE_EVENT_END_WITH_ID_TID_AND_TIMESTAMP0 call"); |
| 641 { |
| 642 int val; |
| 643 EXPECT_TRUE((item && item->GetInteger("ts", &val))); |
| 644 EXPECT_EQ(45678, val); |
| 645 EXPECT_TRUE((item && item->GetInteger("tid", &val))); |
| 646 EXPECT_EQ(42, val); |
| 647 std::string id; |
| 648 EXPECT_TRUE((item && item->GetString("id", &id))); |
| 649 EXPECT_EQ("2", id); |
| 650 } |
584 } | 651 } |
585 | 652 |
586 void TraceManyInstantEvents(int thread_id, int num_events, | 653 void TraceManyInstantEvents(int thread_id, int num_events, |
587 WaitableEvent* task_complete_event) { | 654 WaitableEvent* task_complete_event) { |
588 for (int i = 0; i < num_events; i++) { | 655 for (int i = 0; i < num_events; i++) { |
589 TRACE_EVENT_INSTANT2("all", "multi thread event", | 656 TRACE_EVENT_INSTANT2("all", "multi thread event", |
590 "thread", thread_id, | 657 "thread", thread_id, |
591 "event", i); | 658 "event", i); |
592 } | 659 } |
593 | 660 |
(...skipping 738 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1332 Clear(); | 1399 Clear(); |
1333 | 1400 |
1334 trace_buffer_.Start(); | 1401 trace_buffer_.Start(); |
1335 trace_buffer_.AddFragment("bla1,bla2,bla3,bla4"); | 1402 trace_buffer_.AddFragment("bla1,bla2,bla3,bla4"); |
1336 trace_buffer_.Finish(); | 1403 trace_buffer_.Finish(); |
1337 EXPECT_STREQ(json_output_.json_output.c_str(), "[bla1,bla2,bla3,bla4]"); | 1404 EXPECT_STREQ(json_output_.json_output.c_str(), "[bla1,bla2,bla3,bla4]"); |
1338 } | 1405 } |
1339 | 1406 |
1340 } // namespace debug | 1407 } // namespace debug |
1341 } // namespace base | 1408 } // namespace base |
OLD | NEW |