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

Unified Diff: base/debug/trace_event_unittest.cc

Issue 11823016: Trace category groups and category filter. (Closed) Base URL: http://git.chromium.org/chromium/src.git@master
Patch Set: Tagged category support cleanup, parameter renaming, documentation updated. Created 7 years, 11 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 side-by-side diff with in-line comments
Download patch
Index: base/debug/trace_event_unittest.cc
diff --git a/base/debug/trace_event_unittest.cc b/base/debug/trace_event_unittest.cc
index 3f5ddd6fb5c2ddcd409147064243a745403bf46d..408ef57fdbae548e99ed61739d300226a2520813 100644
--- a/base/debug/trace_event_unittest.cc
+++ b/base/debug/trace_event_unittest.cc
@@ -744,6 +744,9 @@ TEST_F(TraceEventTestFixture, Categories) {
BeginTrace();
TRACE_EVENT_INSTANT0("c3", "name");
TRACE_EVENT_INSTANT0("c4", "name");
+ //Categories made of more than one tag.
+ TRACE_EVENT_INSTANT0("c5,c6", "name");
+ TRACE_EVENT_INSTANT0("c7, c8", "name");
EndTraceAndFlush();
std::vector<std::string> cats;
TraceLog::GetInstance()->GetKnownCategories(&cats);
@@ -751,18 +754,21 @@ TEST_F(TraceEventTestFixture, Categories) {
EXPECT_TRUE(std::find(cats.begin(), cats.end(), "c2") != cats.end());
EXPECT_TRUE(std::find(cats.begin(), cats.end(), "c3") != cats.end());
EXPECT_TRUE(std::find(cats.begin(), cats.end(), "c4") != cats.end());
+ EXPECT_TRUE(std::find(cats.begin(), cats.end(), "c5,c6") != cats.end());
+ EXPECT_TRUE(std::find(cats.begin(), cats.end(), "c7, c8") != cats.end());
- const std::vector<std::string> empty_categories;
- std::vector<std::string> included_categories;
- std::vector<std::string> excluded_categories;
+ const std::vector<std::string> empty_tag_patterns;
+ std::vector<std::string> included_tag_patterns;
+ std::vector<std::string> excluded_tag_patterns;
// Test that category filtering works.
// Include nonexistent category -> no events
Clear();
- included_categories.clear();
- included_categories.push_back("not_found823564786");
- TraceLog::GetInstance()->SetEnabled(included_categories, empty_categories);
+ included_tag_patterns.clear();
+ included_tag_patterns.push_back("not_found823564786");
+ TraceLog::GetInstance()->SetEnabled(included_tag_patterns,
+ empty_tag_patterns);
TRACE_EVENT_INSTANT0("cat1", "name");
TRACE_EVENT_INSTANT0("cat2", "name");
EndTraceAndFlush();
@@ -770,9 +776,10 @@ TEST_F(TraceEventTestFixture, Categories) {
// Include existent category -> only events of that category
Clear();
- included_categories.clear();
- included_categories.push_back("inc");
- TraceLog::GetInstance()->SetEnabled(included_categories, empty_categories);
+ included_tag_patterns.clear();
+ included_tag_patterns.push_back("inc");
+ TraceLog::GetInstance()->SetEnabled(included_tag_patterns,
+ empty_tag_patterns);
TRACE_EVENT_INSTANT0("inc", "name");
TRACE_EVENT_INSTANT0("inc2", "name");
EndTraceAndFlush();
@@ -781,11 +788,14 @@ TEST_F(TraceEventTestFixture, Categories) {
// Include existent wildcard -> all categories matching wildcard
Clear();
- included_categories.clear();
- included_categories.push_back("inc_wildcard_*");
- included_categories.push_back("inc_wildchar_?_end");
- TraceLog::GetInstance()->SetEnabled(included_categories, empty_categories);
+ included_tag_patterns.clear();
+ included_tag_patterns.push_back("inc_wildcard_*");
+ included_tag_patterns.push_back("inc_wildchar_?_end");
+ TraceLog::GetInstance()->SetEnabled(included_tag_patterns,
+ empty_tag_patterns);
TRACE_EVENT_INSTANT0("inc_wildcard_abc", "included");
+ TRACE_EVENT_INSTANT0("inc_wildcard_tag,other_tag", "included");
+ TRACE_EVENT_INSTANT0("non_included_tag , inc_wildcard_tag", "included");
TRACE_EVENT_INSTANT0("inc_wildcard_", "included");
TRACE_EVENT_INSTANT0("inc_wildchar_x_end", "included");
TRACE_EVENT_INSTANT0("inc_wildchar_bla_end", "not_inc");
@@ -793,40 +803,51 @@ TEST_F(TraceEventTestFixture, Categories) {
TRACE_EVENT_INSTANT0("cat2", "not_inc");
EndTraceAndFlush();
EXPECT_TRUE(FindMatchingValue("cat", "inc_wildcard_abc"));
+ EXPECT_TRUE(FindMatchingValue("cat", "inc_wildcard_tag,other_tag"));
+ EXPECT_TRUE(FindMatchingValue("cat", "non_included_tag , inc_wildcard_tag"));
EXPECT_TRUE(FindMatchingValue("cat", "inc_wildcard_"));
EXPECT_TRUE(FindMatchingValue("cat", "inc_wildchar_x_end"));
EXPECT_FALSE(FindMatchingValue("name", "not_inc"));
- included_categories.clear();
+ included_tag_patterns.clear();
// Exclude nonexistent category -> all events
Clear();
- excluded_categories.clear();
- excluded_categories.push_back("not_found823564786");
- TraceLog::GetInstance()->SetEnabled(empty_categories, excluded_categories);
+ excluded_tag_patterns.clear();
+ excluded_tag_patterns.push_back("not_found823564786");
+ TraceLog::GetInstance()->SetEnabled(empty_tag_patterns,
+ excluded_tag_patterns);
TRACE_EVENT_INSTANT0("cat1", "name");
TRACE_EVENT_INSTANT0("cat2", "name");
+ TRACE_EVENT_INSTANT0("tag1, tag2", "name");
EndTraceAndFlush();
EXPECT_TRUE(FindMatchingValue("cat", "cat1"));
EXPECT_TRUE(FindMatchingValue("cat", "cat2"));
+ EXPECT_TRUE(FindMatchingValue("cat", "tag1, tag2"));
// Exclude existent category -> only events of other categories
Clear();
- excluded_categories.clear();
- excluded_categories.push_back("inc");
- TraceLog::GetInstance()->SetEnabled(empty_categories, excluded_categories);
+ excluded_tag_patterns.clear();
+ excluded_tag_patterns.push_back("inc");
+ TraceLog::GetInstance()->SetEnabled(empty_tag_patterns,
+ excluded_tag_patterns);
TRACE_EVENT_INSTANT0("inc", "name");
+ TRACE_EVENT_INSTANT0("inc2, inc", "name");
+ TRACE_EVENT_INSTANT0("inc, inc2", "name");
TRACE_EVENT_INSTANT0("inc2", "name");
EndTraceAndFlush();
EXPECT_TRUE(FindMatchingValue("cat", "inc2"));
EXPECT_FALSE(FindMatchingValue("cat", "inc"));
+ EXPECT_FALSE(FindMatchingValue("cat", "inc2, inc"));
+ EXPECT_FALSE(FindMatchingValue("cat", "inc, inc2"));
// Exclude existent wildcard -> all categories not matching wildcard
Clear();
- excluded_categories.clear();
- excluded_categories.push_back("inc_wildcard_*");
- excluded_categories.push_back("inc_wildchar_?_end");
- TraceLog::GetInstance()->SetEnabled(empty_categories, excluded_categories);
+ excluded_tag_patterns.clear();
+ excluded_tag_patterns.push_back("inc_wildcard_*");
+ excluded_tag_patterns.push_back("inc_wildchar_?_end");
+ TraceLog::GetInstance()->SetEnabled(empty_tag_patterns,
+ excluded_tag_patterns);
TRACE_EVENT_INSTANT0("inc_wildcard_abc", "not_inc");
TRACE_EVENT_INSTANT0("inc_wildcard_", "not_inc");
TRACE_EVENT_INSTANT0("inc_wildchar_x_end", "not_inc");

Powered by Google App Engine
This is Rietveld 408576698