| Index: base/debug/trace_event_unittest.cc
|
| diff --git a/base/debug/trace_event_unittest.cc b/base/debug/trace_event_unittest.cc
|
| index 000097e16e0c58f739cf9376d955ef58bf728261..17ec0bd0c5bb9c69a231d46bdef3e51b147ad7d7 100644
|
| --- a/base/debug/trace_event_unittest.cc
|
| +++ b/base/debug/trace_event_unittest.cc
|
| @@ -1802,9 +1802,9 @@ TEST_F(TraceEventTestFixture, TraceSampling) {
|
| WaitableEvent* sampled = new WaitableEvent(false, false);
|
| TraceLog::GetInstance()->InstallWaitableEventForSamplingTesting(sampled);
|
|
|
| - TRACE_EVENT_SAMPLE_STATE(1, "cc", "Stuff");
|
| + TRACE_EVENT_SAMPLING_STATE0("cc", "Stuff");
|
| sampled->Wait();
|
| - TRACE_EVENT_SAMPLE_STATE(1, "cc", "Things");
|
| + TRACE_EVENT_SAMPLING_STATE0("cc", "Things");
|
| sampled->Wait();
|
|
|
| EndTraceAndFlush();
|
| @@ -1815,6 +1815,49 @@ TEST_F(TraceEventTestFixture, TraceSampling) {
|
| }
|
| #endif // !CHROME_SPLIT_DLL
|
|
|
| +// Not supported in split dll build. http://crbug.com/237249
|
| +#if !defined(CHROME_SPLIT_DLL)
|
| +TEST_F(TraceEventTestFixture, TraceSamplingScope) {
|
| + ManualTestSetUp();
|
| +
|
| + event_watch_notification_ = 0;
|
| + TraceLog::GetInstance()->SetEnabled(
|
| + CategoryFilter("*"),
|
| + TraceLog::Options(TraceLog::RECORD_UNTIL_FULL |
|
| + TraceLog::ENABLE_SAMPLING));
|
| +
|
| + WaitableEvent* sampled = new WaitableEvent(false, false);
|
| + TraceLog::GetInstance()->InstallWaitableEventForSamplingTesting(sampled);
|
| +
|
| + TraceEventSamplingState0Scope scope("AAA\0name");
|
| + sampled->Wait();
|
| + {
|
| + EXPECT_STREQ(TraceEventSamplingState0Scope::Current(), "AAA");
|
| + TraceEventSamplingState0Scope scope2("BBB\0name");
|
| + sampled->Wait();
|
| + EXPECT_STREQ(TraceEventSamplingState0Scope::Current(), "BBB");
|
| + }
|
| + sampled->Wait();
|
| + {
|
| + EXPECT_STREQ(TraceEventSamplingState0Scope::Current(), "AAA");
|
| + TraceEventSamplingState0Scope scope2("CCC\0name");
|
| + sampled->Wait();
|
| + EXPECT_STREQ(TraceEventSamplingState0Scope::Current(), "CCC");
|
| + }
|
| + sampled->Wait();
|
| + {
|
| + EXPECT_STREQ(TraceEventSamplingState0Scope::Current(), "AAA");
|
| + TraceEventSamplingState0Scope::Set("DDD\0name");
|
| + sampled->Wait();
|
| + EXPECT_STREQ(TraceEventSamplingState0Scope::Current(), "DDD");
|
| + }
|
| + sampled->Wait();
|
| + EXPECT_STREQ(TraceEventSamplingState0Scope::Current(), "DDD");
|
| +
|
| + EndTraceAndFlush();
|
| +}
|
| +#endif // !CHROME_SPLIT_DLL
|
| +
|
| class MyData : public base::debug::ConvertableToTraceFormat {
|
| public:
|
| MyData() {}
|
|
|