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

Unified Diff: base/trace_event/trace_event_unittest.cc

Issue 2499583003: [OBSOLETE] tracing: split trace event filter logic out of TraceLog (Closed)
Patch Set: . Created 4 years, 1 month 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/trace_event/trace_event_unittest.cc
diff --git a/base/trace_event/trace_event_unittest.cc b/base/trace_event/trace_event_unittest.cc
index 81d043ac3945d3582b0a99c22f4adb22d1bd8a21..93f371344ff0d99a7cc6f8f570e8663e6d8c5f3b 100644
--- a/base/trace_event/trace_event_unittest.cc
+++ b/base/trace_event/trace_event_unittest.cc
@@ -30,8 +30,12 @@
#include "base/threading/platform_thread.h"
#include "base/threading/thread.h"
#include "base/time/time.h"
+#include "base/trace_event/event_filter_registry.h"
+#include "base/trace_event/event_name_filter.h"
+#include "base/trace_event/heap_profiler_event_filter.h"
#include "base/trace_event/trace_buffer.h"
#include "base/trace_event/trace_event.h"
+#include "base/trace_event/trace_event_filter.h"
#include "base/trace_event/trace_event_synthetic_delay.h"
#include "base/values.h"
#include "testing/gmock/include/gmock/gmock.h"
@@ -2956,17 +2960,21 @@ TEST_F(TraceEventTestFixture, SyntheticDelayConfigurationToString) {
EXPECT_EQ(filter, config.ToCategoryFilterString());
}
-class TestEventFilter : public TraceLog::TraceEventFilter {
+class TestEventFilter : public TraceEventFilter {
public:
+ static const char kName[];
+
bool FilterTraceEvent(const TraceEvent& trace_event) const override {
filter_trace_event_hit_count_++;
return filter_return_value_;
}
- void EndEvent(const char* category_group, const char* name) override {
+ void EndEvent(const char* category_group, const char* name) const override {
end_event_hit_count_++;
}
+ const char* name() const override { return kName; }
+
static void set_filter_return_value(bool value) {
filter_return_value_ = value;
}
@@ -2987,14 +2995,11 @@ class TestEventFilter : public TraceLog::TraceEventFilter {
static bool filter_return_value_;
};
+const char TestEventFilter::kName[] = "testing_predicate";
size_t TestEventFilter::filter_trace_event_hit_count_ = 0;
size_t TestEventFilter::end_event_hit_count_ = 0;
bool TestEventFilter::filter_return_value_ = false;
-std::unique_ptr<TraceLog::TraceEventFilter> ConstructTestEventFilter() {
- return WrapUnique(new TestEventFilter);
-}
-
TEST_F(TraceEventTestFixture, TraceFilteringMode) {
const char config_json[] =
"{"
@@ -3007,8 +3012,9 @@ TEST_F(TraceEventTestFixture, TraceFilteringMode) {
"}";
// Run RECORDING_MODE within FILTERING_MODE:
+ TestEventFilter::clear_counts();
TestEventFilter::set_filter_return_value(true);
- TraceLog::SetTraceEventFilterConstructorForTesting(ConstructTestEventFilter);
+ EventFilterRegistry::RegisterFilterLocked<TestEventFilter>();
// Only filtering mode is enabled with test filters.
TraceLog::GetInstance()->SetEnabled(TraceConfig(config_json),
@@ -3111,8 +3117,10 @@ TEST_F(TraceEventTestFixture, EventFiltering) {
" ]"
"}";
+ TestEventFilter::clear_counts();
TestEventFilter::set_filter_return_value(true);
- TraceLog::SetTraceEventFilterConstructorForTesting(ConstructTestEventFilter);
+ EventFilterRegistry::RegisterFilterLocked<TestEventFilter>();
+
TraceConfig trace_config(config_json);
TraceLog::GetInstance()->SetEnabled(
trace_config, TraceLog::RECORDING_MODE | TraceLog::FILTERING_MODE);
@@ -3150,7 +3158,7 @@ TEST_F(TraceEventTestFixture, EventWhitelistFiltering) {
" "
" ]"
"}",
- TraceLog::TraceEventFilter::kEventWhitelistPredicate);
+ EventNameFilter::kName);
TraceConfig trace_config(config_json);
TraceLog::GetInstance()->SetEnabled(
@@ -3182,7 +3190,7 @@ TEST_F(TraceEventTestFixture, HeapProfilerFiltering) {
" }"
" ]"
"}",
- TraceLog::TraceEventFilter::kHeapProfilerPredicate);
+ HeapProfilerEventFilter::kName);
TraceConfig trace_config(config_json);
TraceLog::GetInstance()->SetEnabled(

Powered by Google App Engine
This is Rietveld 408576698