| 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");
|
|
|