diff options
author | mpcomplete@chromium.org <mpcomplete@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-10-22 00:15:14 +0000 |
---|---|---|
committer | mpcomplete@chromium.org <mpcomplete@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-10-22 00:15:14 +0000 |
commit | a4ecc3d225e129390b8a80ddbee445e31fde2a94 (patch) | |
tree | 27271c2842597520c794b4e36943793aafd676dc /base/debug/trace_event_unittest.cc | |
parent | 35d849dc495e21eaceb75badc6541c1d30bffb79 (diff) | |
download | chromium_src-a4ecc3d225e129390b8a80ddbee445e31fde2a94.zip chromium_src-a4ecc3d225e129390b8a80ddbee445e31fde2a94.tar.gz chromium_src-a4ecc3d225e129390b8a80ddbee445e31fde2a94.tar.bz2 |
Revert: Internalize JSON chunk merging to trace_event.h API.
BUG=100291
TEST=base_unittests, content_unittests
Review URL: http://codereview.chromium.org/8355024
Review URL: http://codereview.chromium.org/8369021
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@106812 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'base/debug/trace_event_unittest.cc')
-rw-r--r-- | base/debug/trace_event_unittest.cc | 54 |
1 files changed, 14 insertions, 40 deletions
diff --git a/base/debug/trace_event_unittest.cc b/base/debug/trace_event_unittest.cc index c30c773..0ccf440 100644 --- a/base/debug/trace_event_unittest.cc +++ b/base/debug/trace_event_unittest.cc @@ -40,7 +40,7 @@ class TraceEventTestFixture : public testing::Test { // up multiple times when testing AtExit. Use ManualTestSetUp for this. void ManualTestSetUp(); void OnTraceDataCollected( - scoped_refptr<TraceLog::RefCountedString> events_str); + scoped_refptr<TraceLog::RefCountedString> json_events_str); bool FindMatchingTraceEntry(const JsonKeyValue* key_values); bool FindNamePhase(const char* name, const char* phase); bool FindMatchingValue(const char* key, @@ -48,13 +48,12 @@ class TraceEventTestFixture : public testing::Test { bool FindNonMatchingValue(const char* key, const char* value); void Clear() { + trace_string_.clear(); trace_parsed_.Clear(); - json_output_.json_output.clear(); } + std::string trace_string_; ListValue trace_parsed_; - base::debug::TraceResultBuffer trace_buffer_; - base::debug::TraceResultBuffer::SimpleOutput json_output_; private: // We want our singleton torn down after each test. @@ -71,19 +70,15 @@ void TraceEventTestFixture::ManualTestSetUp() { tracelog->SetOutputCallback( base::Bind(&TraceEventTestFixture::OnTraceDataCollected, base::Unretained(this))); - trace_buffer_.SetOutputCallback(json_output_.GetCallback()); } void TraceEventTestFixture::OnTraceDataCollected( - scoped_refptr<TraceLog::RefCountedString> events_str) { + scoped_refptr<TraceLog::RefCountedString> json_events_str) { AutoLock lock(lock_); - json_output_.json_output.clear(); - trace_buffer_.Start(); - trace_buffer_.AddFragment(events_str->data); - trace_buffer_.Finish(); + trace_string_ += json_events_str->data; scoped_ptr<Value> root; - root.reset(base::JSONReader::Read(json_output_.json_output, false)); + root.reset(base::JSONReader::Read(json_events_str->data, false)); ListValue* root_list = NULL; ASSERT_TRUE(root.get()); @@ -286,7 +281,8 @@ void TraceWithAllMacroVariants(WaitableEvent* task_complete_event) { task_complete_event->Signal(); } -void ValidateAllTraceMacrosCreatedData(const ListValue& trace_parsed) { +void ValidateAllTraceMacrosCreatedData(const ListValue& trace_parsed, + const std::string& trace_string) { DictionaryValue* item = NULL; #define EXPECT_FIND_(string) \ @@ -349,7 +345,7 @@ void ValidateAllTraceMacrosCreatedData(const ListValue& trace_parsed) { } void TraceManyInstantEvents(int thread_id, int num_events, - WaitableEvent* task_complete_event) { + WaitableEvent* task_complete_event) { for (int i = 0; i < num_events; i++) { TRACE_EVENT_INSTANT2("all", "multi thread event", "thread", thread_id, @@ -361,8 +357,8 @@ void TraceManyInstantEvents(int thread_id, int num_events, } void ValidateInstantEventPresentOnEveryThread(const ListValue& trace_parsed, - int num_threads, - int num_events) { + const std::string& trace_string, + int num_threads, int num_events) { std::map<int, std::map<int, bool> > results; size_t trace_parsed_count = trace_parsed.GetSize(); @@ -410,7 +406,7 @@ TEST_F(TraceEventTestFixture, DataCaptured) { TraceLog::GetInstance()->SetEnabled(false); - ValidateAllTraceMacrosCreatedData(trace_parsed_); + ValidateAllTraceMacrosCreatedData(trace_parsed_, trace_string_); } // Test that categories work. @@ -691,7 +687,7 @@ TEST_F(TraceEventTestFixture, DataCapturedOnThread) { thread.Stop(); TraceLog::GetInstance()->SetEnabled(false); - ValidateAllTraceMacrosCreatedData(trace_parsed_); + ValidateAllTraceMacrosCreatedData(trace_parsed_, trace_string_); } // Test that data sent from multiple threads is gathered @@ -724,7 +720,7 @@ TEST_F(TraceEventTestFixture, DataCapturedManyThreads) { TraceLog::GetInstance()->SetEnabled(false); - ValidateInstantEventPresentOnEveryThread(trace_parsed_, + ValidateInstantEventPresentOnEveryThread(trace_parsed_, trace_string_, num_threads, num_events); } @@ -929,27 +925,5 @@ TEST_F(TraceEventTestFixture, DeepCopy) { EXPECT_EQ("val2", s); } -// Test that TraceResultBuffer outputs the correct result whether it is added -// in chunks or added all at once. -TEST_F(TraceEventTestFixture, TraceResultBuffer) { - ManualTestSetUp(); - - Clear(); - - trace_buffer_.Start(); - trace_buffer_.AddFragment("bla1"); - trace_buffer_.AddFragment("bla2"); - trace_buffer_.AddFragment("bla3,bla4"); - trace_buffer_.Finish(); - EXPECT_STREQ(json_output_.json_output.c_str(), "[bla1,bla2,bla3,bla4]"); - - Clear(); - - trace_buffer_.Start(); - trace_buffer_.AddFragment("bla1,bla2,bla3,bla4"); - trace_buffer_.Finish(); - EXPECT_STREQ(json_output_.json_output.c_str(), "[bla1,bla2,bla3,bla4]"); -} - } // namespace debug } // namespace base |