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

Side by Side Diff: base/trace_event/trace_event_unittest.cc

Issue 1239593002: Implement a new flow event API that allows binding flow events and regular events. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Mainly incorporates context_id into the new flow event APIs. Created 5 years, 5 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 (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 <math.h> 5 #include <math.h>
6 #include <cstdlib> 6 #include <cstdlib>
7 7
8 #include "base/bind.h" 8 #include "base/bind.h"
9 #include "base/command_line.h" 9 #include "base/command_line.h"
10 #include "base/json/json_reader.h" 10 #include "base/json/json_reader.h"
(...skipping 1406 matching lines...) Expand 10 before | Expand all | Expand 10 after
1417 EXPECT_EQ(0u, tracer->GetStatus().event_count); 1417 EXPECT_EQ(0u, tracer->GetStatus().event_count);
1418 const unsigned char* category_group_enabled = 1418 const unsigned char* category_group_enabled =
1419 TRACE_EVENT_API_GET_CATEGORY_GROUP_ENABLED("cat"); 1419 TRACE_EVENT_API_GET_CATEGORY_GROUP_ENABLED("cat");
1420 1420
1421 { 1421 {
1422 BeginTrace(); 1422 BeginTrace();
1423 // Test that string arguments are copied. 1423 // Test that string arguments are copied.
1424 TraceEventHandle handle1 = 1424 TraceEventHandle handle1 =
1425 trace_event_internal::AddTraceEvent( 1425 trace_event_internal::AddTraceEvent(
1426 TRACE_EVENT_PHASE_INSTANT, category_group_enabled, "name1", 0, 0, 1426 TRACE_EVENT_PHASE_INSTANT, category_group_enabled, "name1", 0, 0,
1427 trace_event_internal::kNoId,
1427 "arg1", std::string("argval"), "arg2", std::string("argval")); 1428 "arg1", std::string("argval"), "arg2", std::string("argval"));
1428 // Test that static TRACE_STR_COPY string arguments are copied. 1429 // Test that static TRACE_STR_COPY string arguments are copied.
1429 TraceEventHandle handle2 = 1430 TraceEventHandle handle2 =
1430 trace_event_internal::AddTraceEvent( 1431 trace_event_internal::AddTraceEvent(
1431 TRACE_EVENT_PHASE_INSTANT, category_group_enabled, "name2", 0, 0, 1432 TRACE_EVENT_PHASE_INSTANT, category_group_enabled, "name2", 0, 0,
1433 trace_event_internal::kNoId,
1432 "arg1", TRACE_STR_COPY("argval"), 1434 "arg1", TRACE_STR_COPY("argval"),
1433 "arg2", TRACE_STR_COPY("argval")); 1435 "arg2", TRACE_STR_COPY("argval"));
1434 EXPECT_GT(tracer->GetStatus().event_count, 1u); 1436 EXPECT_GT(tracer->GetStatus().event_count, 1u);
1435 const TraceEvent* event1 = tracer->GetEventByHandle(handle1); 1437 const TraceEvent* event1 = tracer->GetEventByHandle(handle1);
1436 const TraceEvent* event2 = tracer->GetEventByHandle(handle2); 1438 const TraceEvent* event2 = tracer->GetEventByHandle(handle2);
1437 ASSERT_TRUE(event1); 1439 ASSERT_TRUE(event1);
1438 ASSERT_TRUE(event2); 1440 ASSERT_TRUE(event2);
1439 EXPECT_STREQ("name1", event1->name()); 1441 EXPECT_STREQ("name1", event1->name());
1440 EXPECT_STREQ("name2", event2->name()); 1442 EXPECT_STREQ("name2", event2->name());
1441 EXPECT_TRUE(event1->parameter_copy_storage() != NULL); 1443 EXPECT_TRUE(event1->parameter_copy_storage() != NULL);
1442 EXPECT_TRUE(event2->parameter_copy_storage() != NULL); 1444 EXPECT_TRUE(event2->parameter_copy_storage() != NULL);
1443 EXPECT_GT(event1->parameter_copy_storage()->size(), 0u); 1445 EXPECT_GT(event1->parameter_copy_storage()->size(), 0u);
1444 EXPECT_GT(event2->parameter_copy_storage()->size(), 0u); 1446 EXPECT_GT(event2->parameter_copy_storage()->size(), 0u);
1445 EndTraceAndFlush(); 1447 EndTraceAndFlush();
1446 } 1448 }
1447 1449
1448 { 1450 {
1449 BeginTrace(); 1451 BeginTrace();
1450 // Test that static literal string arguments are not copied. 1452 // Test that static literal string arguments are not copied.
1451 TraceEventHandle handle1 = 1453 TraceEventHandle handle1 =
1452 trace_event_internal::AddTraceEvent( 1454 trace_event_internal::AddTraceEvent(
1453 TRACE_EVENT_PHASE_INSTANT, category_group_enabled, "name1", 0, 0, 1455 TRACE_EVENT_PHASE_INSTANT, category_group_enabled, "name1", 0, 0,
1456 trace_event_internal::kNoId,
1454 "arg1", "argval", "arg2", "argval"); 1457 "arg1", "argval", "arg2", "argval");
dsinclair 2015/07/21 18:11:49 this would probably fit on the line above
1455 // Test that static TRACE_STR_COPY NULL string arguments are not copied. 1458 // Test that static TRACE_STR_COPY NULL string arguments are not copied.
1456 const char* str1 = NULL; 1459 const char* str1 = NULL;
1457 const char* str2 = NULL; 1460 const char* str2 = NULL;
1458 TraceEventHandle handle2 = 1461 TraceEventHandle handle2 =
1459 trace_event_internal::AddTraceEvent( 1462 trace_event_internal::AddTraceEvent(
1460 TRACE_EVENT_PHASE_INSTANT, category_group_enabled, "name2", 0, 0, 1463 TRACE_EVENT_PHASE_INSTANT, category_group_enabled, "name2", 0, 0,
1464 trace_event_internal::kNoId,
1461 "arg1", TRACE_STR_COPY(str1), 1465 "arg1", TRACE_STR_COPY(str1),
1462 "arg2", TRACE_STR_COPY(str2)); 1466 "arg2", TRACE_STR_COPY(str2));
1463 EXPECT_GT(tracer->GetStatus().event_count, 1u); 1467 EXPECT_GT(tracer->GetStatus().event_count, 1u);
1464 const TraceEvent* event1 = tracer->GetEventByHandle(handle1); 1468 const TraceEvent* event1 = tracer->GetEventByHandle(handle1);
1465 const TraceEvent* event2 = tracer->GetEventByHandle(handle2); 1469 const TraceEvent* event2 = tracer->GetEventByHandle(handle2);
1466 ASSERT_TRUE(event1); 1470 ASSERT_TRUE(event1);
1467 ASSERT_TRUE(event2); 1471 ASSERT_TRUE(event2);
1468 EXPECT_STREQ("name1", event1->name()); 1472 EXPECT_STREQ("name1", event1->name());
1469 EXPECT_STREQ("name2", event2->name()); 1473 EXPECT_STREQ("name2", event2->name());
1470 EXPECT_TRUE(event1->parameter_copy_storage() == NULL); 1474 EXPECT_TRUE(event1->parameter_copy_storage() == NULL);
(...skipping 1488 matching lines...) Expand 10 before | Expand all | Expand 10 after
2959 } 2963 }
2960 2964
2961 TEST_F(TraceEventTestFixture, SyntheticDelayConfigurationToString) { 2965 TEST_F(TraceEventTestFixture, SyntheticDelayConfigurationToString) {
2962 const char filter[] = "DELAY(test.Delay;16;oneshot)"; 2966 const char filter[] = "DELAY(test.Delay;16;oneshot)";
2963 TraceConfig config(filter, ""); 2967 TraceConfig config(filter, "");
2964 EXPECT_EQ(filter, config.ToCategoryFilterString()); 2968 EXPECT_EQ(filter, config.ToCategoryFilterString());
2965 } 2969 }
2966 2970
2967 } // namespace trace_event 2971 } // namespace trace_event
2968 } // namespace base 2972 } // namespace base
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698