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

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

Issue 2406703002: tracing: remove sampling state profiler (Closed)
Patch Set: . Created 4 years, 2 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
« no previous file with comments | « base/trace_event/trace_event.h ('k') | base/trace_event/trace_log.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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 "base/trace_event/trace_event.h" 5 #include "base/trace_event/trace_event.h"
6 6
7 #include <math.h> 7 #include <math.h>
8 #include <stddef.h> 8 #include <stddef.h>
9 #include <stdint.h> 9 #include <stdint.h>
10 10
(...skipping 2134 matching lines...) Expand 10 before | Expand all | Expand 10 after
2145 // are also enabled. 2145 // are also enabled.
2146 trace_log->SetEnabled(TraceConfig("disabled-by-default-foo", ""), 2146 trace_log->SetEnabled(TraceConfig("disabled-by-default-foo", ""),
2147 TraceLog::RECORDING_MODE); 2147 TraceLog::RECORDING_MODE);
2148 EXPECT_TRUE(*trace_log->GetCategoryGroupEnabled("disabled-by-default-foo")); 2148 EXPECT_TRUE(*trace_log->GetCategoryGroupEnabled("disabled-by-default-foo"));
2149 EXPECT_TRUE(*trace_log->GetCategoryGroupEnabled("foo")); 2149 EXPECT_TRUE(*trace_log->GetCategoryGroupEnabled("foo"));
2150 EXPECT_TRUE(*trace_log->GetCategoryGroupEnabled("bar")); 2150 EXPECT_TRUE(*trace_log->GetCategoryGroupEnabled("bar"));
2151 EXPECT_FALSE(*trace_log->GetCategoryGroupEnabled("disabled-by-default-bar")); 2151 EXPECT_FALSE(*trace_log->GetCategoryGroupEnabled("disabled-by-default-bar"));
2152 trace_log->SetDisabled(); 2152 trace_log->SetDisabled();
2153 } 2153 }
2154 2154
2155 TEST_F(TraceEventTestFixture, TraceSampling) {
2156 TraceLog::GetInstance()->SetEnabled(
2157 TraceConfig(kRecordAllCategoryFilter, "record-until-full,enable-sampling"),
2158 TraceLog::RECORDING_MODE);
2159
2160 TRACE_EVENT_SET_SAMPLING_STATE_FOR_BUCKET(1, "cc", "Stuff");
2161 TraceLog::GetInstance()->WaitSamplingEventForTesting();
2162 TRACE_EVENT_SET_SAMPLING_STATE_FOR_BUCKET(1, "cc", "Things");
2163 TraceLog::GetInstance()->WaitSamplingEventForTesting();
2164
2165 EndTraceAndFlush();
2166
2167 // Make sure we hit at least once.
2168 EXPECT_TRUE(FindNamePhase("Stuff", "P"));
2169 EXPECT_TRUE(FindNamePhase("Things", "P"));
2170 }
2171
2172 TEST_F(TraceEventTestFixture, TraceSamplingScope) {
2173 TraceLog::GetInstance()->SetEnabled(
2174 TraceConfig(kRecordAllCategoryFilter, "record-until-full,enable-sampling"),
2175 TraceLog::RECORDING_MODE);
2176
2177 TRACE_EVENT_SCOPED_SAMPLING_STATE("AAA", "name");
2178 TraceLog::GetInstance()->WaitSamplingEventForTesting();
2179 {
2180 EXPECT_STREQ(TRACE_EVENT_GET_SAMPLING_STATE(), "AAA");
2181 TRACE_EVENT_SCOPED_SAMPLING_STATE("BBB", "name");
2182 TraceLog::GetInstance()->WaitSamplingEventForTesting();
2183 EXPECT_STREQ(TRACE_EVENT_GET_SAMPLING_STATE(), "BBB");
2184 }
2185 TraceLog::GetInstance()->WaitSamplingEventForTesting();
2186 {
2187 EXPECT_STREQ(TRACE_EVENT_GET_SAMPLING_STATE(), "AAA");
2188 TRACE_EVENT_SCOPED_SAMPLING_STATE("CCC", "name");
2189 TraceLog::GetInstance()->WaitSamplingEventForTesting();
2190 EXPECT_STREQ(TRACE_EVENT_GET_SAMPLING_STATE(), "CCC");
2191 }
2192 TraceLog::GetInstance()->WaitSamplingEventForTesting();
2193 {
2194 EXPECT_STREQ(TRACE_EVENT_GET_SAMPLING_STATE(), "AAA");
2195 TRACE_EVENT_SET_SAMPLING_STATE("DDD", "name");
2196 TraceLog::GetInstance()->WaitSamplingEventForTesting();
2197 EXPECT_STREQ(TRACE_EVENT_GET_SAMPLING_STATE(), "DDD");
2198 }
2199 TraceLog::GetInstance()->WaitSamplingEventForTesting();
2200 EXPECT_STREQ(TRACE_EVENT_GET_SAMPLING_STATE(), "DDD");
2201
2202 EndTraceAndFlush();
2203 }
2204
2205 class MyData : public ConvertableToTraceFormat { 2155 class MyData : public ConvertableToTraceFormat {
2206 public: 2156 public:
2207 MyData() {} 2157 MyData() {}
2208 ~MyData() override {} 2158 ~MyData() override {}
2209 2159
2210 void AppendAsTraceFormat(std::string* out) const override { 2160 void AppendAsTraceFormat(std::string* out) const override {
2211 out->append("{\"foo\":1}"); 2161 out->append("{\"foo\":1}");
2212 } 2162 }
2213 2163
2214 private: 2164 private:
(...skipping 805 matching lines...) Expand 10 before | Expand all | Expand 10 after
3020 TraceConfig(kRecordAllCategoryFilter, RECORD_UNTIL_FULL))); 2970 TraceConfig(kRecordAllCategoryFilter, RECORD_UNTIL_FULL)));
3021 2971
3022 EXPECT_EQ(TraceLog::kInternalRecordContinuously, 2972 EXPECT_EQ(TraceLog::kInternalRecordContinuously,
3023 trace_log->GetInternalOptionsFromTraceConfig( 2973 trace_log->GetInternalOptionsFromTraceConfig(
3024 TraceConfig(kRecordAllCategoryFilter, RECORD_CONTINUOUSLY))); 2974 TraceConfig(kRecordAllCategoryFilter, RECORD_CONTINUOUSLY)));
3025 2975
3026 EXPECT_EQ(TraceLog::kInternalEchoToConsole, 2976 EXPECT_EQ(TraceLog::kInternalEchoToConsole,
3027 trace_log->GetInternalOptionsFromTraceConfig( 2977 trace_log->GetInternalOptionsFromTraceConfig(
3028 TraceConfig(kRecordAllCategoryFilter, ECHO_TO_CONSOLE))); 2978 TraceConfig(kRecordAllCategoryFilter, ECHO_TO_CONSOLE)));
3029 2979
3030 EXPECT_EQ( 2980 EXPECT_EQ(TraceLog::kInternalEchoToConsole,
3031 TraceLog::kInternalRecordUntilFull | TraceLog::kInternalEnableSampling, 2981 trace_log->GetInternalOptionsFromTraceConfig(
3032 trace_log->GetInternalOptionsFromTraceConfig( 2982 TraceConfig("*", "trace-to-console,enable-systrace")));
3033 TraceConfig(kRecordAllCategoryFilter,
3034 "record-until-full,enable-sampling")));
3035
3036 EXPECT_EQ(
3037 TraceLog::kInternalRecordContinuously | TraceLog::kInternalEnableSampling,
3038 trace_log->GetInternalOptionsFromTraceConfig(
3039 TraceConfig(kRecordAllCategoryFilter,
3040 "record-continuously,enable-sampling")));
3041
3042 EXPECT_EQ(
3043 TraceLog::kInternalEchoToConsole | TraceLog::kInternalEnableSampling,
3044 trace_log->GetInternalOptionsFromTraceConfig(
3045 TraceConfig(kRecordAllCategoryFilter,
3046 "trace-to-console,enable-sampling")));
3047
3048 EXPECT_EQ(
3049 TraceLog::kInternalEchoToConsole | TraceLog::kInternalEnableSampling,
3050 trace_log->GetInternalOptionsFromTraceConfig(
3051 TraceConfig("*",
3052 "trace-to-console,enable-sampling,enable-systrace")));
3053 } 2983 }
3054 2984
3055 void SetBlockingFlagAndBlockUntilStopped(WaitableEvent* task_start_event, 2985 void SetBlockingFlagAndBlockUntilStopped(WaitableEvent* task_start_event,
3056 WaitableEvent* task_stop_event) { 2986 WaitableEvent* task_stop_event) {
3057 TraceLog::GetInstance()->SetCurrentThreadBlocksMessageLoop(); 2987 TraceLog::GetInstance()->SetCurrentThreadBlocksMessageLoop();
3058 BlockUntilStopped(task_start_event, task_stop_event); 2988 BlockUntilStopped(task_start_event, task_stop_event);
3059 } 2989 }
3060 2990
3061 TEST_F(TraceEventTestFixture, SetCurrentThreadBlocksMessageLoopAfterTracing) { 2991 TEST_F(TraceEventTestFixture, SetCurrentThreadBlocksMessageLoopAfterTracing) {
3062 BeginTrace(); 2992 BeginTrace();
(...skipping 339 matching lines...) Expand 10 before | Expand all | Expand 10 after
3402 3332
3403 TEST_F(TraceEventTestFixture, ClockSyncEventsAreAlwaysAddedToTrace) { 3333 TEST_F(TraceEventTestFixture, ClockSyncEventsAreAlwaysAddedToTrace) {
3404 BeginSpecificTrace("-*"); 3334 BeginSpecificTrace("-*");
3405 TRACE_EVENT_CLOCK_SYNC_RECEIVER(1); 3335 TRACE_EVENT_CLOCK_SYNC_RECEIVER(1);
3406 EndTraceAndFlush(); 3336 EndTraceAndFlush();
3407 EXPECT_TRUE(FindNamePhase("clock_sync", "c")); 3337 EXPECT_TRUE(FindNamePhase("clock_sync", "c"));
3408 } 3338 }
3409 3339
3410 } // namespace trace_event 3340 } // namespace trace_event
3411 } // namespace base 3341 } // namespace base
OLDNEW
« no previous file with comments | « base/trace_event/trace_event.h ('k') | base/trace_event/trace_log.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698