diff options
author | haraken@chromium.org <haraken@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-10-08 01:01:25 +0000 |
---|---|---|
committer | haraken@chromium.org <haraken@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-10-08 01:01:25 +0000 |
commit | 7ad4e2d50a8ae5cc1502a29166721fa447eb1ee5 (patch) | |
tree | a7dcc30be12c22a4d4900a92d58b26a086aabc3b /content/browser/tracing/tracing_controller_browsertest.cc | |
parent | 7cc7ebd4924ef763abfbdf334824e075330b0c14 (diff) | |
download | chromium_src-7ad4e2d50a8ae5cc1502a29166721fa447eb1ee5.zip chromium_src-7ad4e2d50a8ae5cc1502a29166721fa447eb1ee5.tar.gz chromium_src-7ad4e2d50a8ae5cc1502a29166721fa447eb1ee5.tar.bz2 |
Revert 227354 "Revert "Implement TracingController::{Enable,Disa..."
The original CL was reverted because it increased the binary size of
nacl-helper/data by 0.45%, but the increase was just 128 bytes.
So I'll reland this CL, supressing the size failure.
> Revert "Implement TracingController::{Enable,Disable,Capture}Monitoring"
> Revert "Fix failures in chrome os after r227262"
> Revert "Fix the content_browser breakage after r227269"
>
> Caused sizes regression on linux for nacl-helper-data.
>
> TBR=haraken
> BUG=304789
>
> > Implement TracingController::{Enable,Disable,Capture}Monitoring
> >
> > This CL implements TracingController::EnableMonitoring,
> > TracingController::DisableMonitoring and
> > TracingController::CaptureMonitoringSnapshot.
> >
> > BUG=241743
> > TEST=base_unittests::TraceEventTestFixture.TraceContinuousSampling,
> > content_browsertests::TracingControllerTest.EnableCaptureAndDisableMonitoring
> >
> > Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=226701
> >
> > R=dsinclair@chromium.org, joi@chromium.org, nduca@chromium.org, tsepez@chromium.org
> >
> > Review URL: https://codereview.chromium.org/23531042
>
> Review URL: https://codereview.chromium.org/26294003
TBR=justinlin@chromium.org
Review URL: https://codereview.chromium.org/26272005
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@227413 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'content/browser/tracing/tracing_controller_browsertest.cc')
-rw-r--r-- | content/browser/tracing/tracing_controller_browsertest.cc | 93 |
1 files changed, 90 insertions, 3 deletions
diff --git a/content/browser/tracing/tracing_controller_browsertest.cc b/content/browser/tracing/tracing_controller_browsertest.cc index c88932e..a3a589f 100644 --- a/content/browser/tracing/tracing_controller_browsertest.cc +++ b/content/browser/tracing/tracing_controller_browsertest.cc @@ -20,6 +20,9 @@ class TracingControllerTest : public ContentBrowserTest { get_categories_done_callback_count_ = 0; enable_recording_done_callback_count_ = 0; disable_recording_done_callback_count_ = 0; + enable_monitoring_done_callback_count_ = 0; + disable_monitoring_done_callback_count_ = 0; + capture_monitoring_snapshot_done_callback_count_ = 0; ContentBrowserTest::SetUp(); } @@ -47,6 +50,29 @@ class TracingControllerTest : public ContentBrowserTest { scoped_ptr<base::FilePath> file_path) { disable_recording_done_callback_count_++; EXPECT_TRUE(PathExists(*file_path)); + int64 file_size; + file_util::GetFileSize(*file_path, &file_size); + EXPECT_TRUE(file_size > 0); + quit_callback.Run(); + } + + void EnableMonitoringDoneCallbackTest(base::Closure quit_callback) { + enable_monitoring_done_callback_count_++; + quit_callback.Run(); + } + + void DisableMonitoringDoneCallbackTest(base::Closure quit_callback) { + disable_monitoring_done_callback_count_++; + quit_callback.Run(); + } + + void CaptureMonitoringSnapshotDoneCallbackTest( + base::Closure quit_callback, scoped_ptr<base::FilePath> file_path) { + capture_monitoring_snapshot_done_callback_count_++; + EXPECT_TRUE(PathExists(*file_path)); + int64 file_size; + file_util::GetFileSize(*file_path, &file_size); + EXPECT_TRUE(file_size > 0); quit_callback.Run(); } @@ -62,10 +88,25 @@ class TracingControllerTest : public ContentBrowserTest { return disable_recording_done_callback_count_; } + int enable_monitoring_done_callback_count() const { + return enable_monitoring_done_callback_count_; + } + + int disable_monitoring_done_callback_count() const { + return disable_monitoring_done_callback_count_; + } + + int capture_monitoring_snapshot_done_callback_count() const { + return capture_monitoring_snapshot_done_callback_count_; + } + private: int get_categories_done_callback_count_; int enable_recording_done_callback_count_; int disable_recording_done_callback_count_; + int enable_monitoring_done_callback_count_; + int disable_monitoring_done_callback_count_; + int capture_monitoring_snapshot_done_callback_count_; }; IN_PROC_BROWSER_TEST_F(TracingControllerTest, GetCategories) { @@ -94,8 +135,9 @@ IN_PROC_BROWSER_TEST_F(TracingControllerTest, EnableAndDisableRecording) { base::Bind(&TracingControllerTest::EnableRecordingDoneCallbackTest, base::Unretained(this), run_loop.QuitClosure()); - controller->EnableRecording(base::debug::CategoryFilter("*"), - TracingController::Options(), callback); + bool result = controller->EnableRecording(base::debug::CategoryFilter("*"), + TracingController::Options(), callback); + EXPECT_TRUE(result); run_loop.Run(); EXPECT_EQ(enable_recording_done_callback_count(), 1); } @@ -106,10 +148,55 @@ IN_PROC_BROWSER_TEST_F(TracingControllerTest, EnableAndDisableRecording) { base::Bind(&TracingControllerTest::DisableRecordingDoneCallbackTest, base::Unretained(this), run_loop.QuitClosure()); - controller->DisableRecording(callback); + bool result = controller->DisableRecording(callback); + EXPECT_TRUE(result); run_loop.Run(); EXPECT_EQ(disable_recording_done_callback_count(), 1); } } +IN_PROC_BROWSER_TEST_F(TracingControllerTest, + EnableCaptureAndDisableMonitoring) { + Navigate(shell()); + + TracingController* controller = TracingController::GetInstance(); + + { + base::RunLoop run_loop; + TracingController::EnableMonitoringDoneCallback callback = + base::Bind(&TracingControllerTest::EnableMonitoringDoneCallbackTest, + base::Unretained(this), + run_loop.QuitClosure()); + bool result = controller->EnableMonitoring(base::debug::CategoryFilter("*"), + TracingController::ENABLE_SAMPLING, callback); + EXPECT_TRUE(result); + run_loop.Run(); + EXPECT_EQ(enable_monitoring_done_callback_count(), 1); + } + + { + base::RunLoop run_loop; + TracingController::TracingFileResultCallback callback = + base::Bind(&TracingControllerTest:: + CaptureMonitoringSnapshotDoneCallbackTest, + base::Unretained(this), + run_loop.QuitClosure()); + controller->CaptureMonitoringSnapshot(callback); + run_loop.Run(); + EXPECT_EQ(capture_monitoring_snapshot_done_callback_count(), 1); + } + + { + base::RunLoop run_loop; + TracingController::DisableMonitoringDoneCallback callback = + base::Bind(&TracingControllerTest::DisableMonitoringDoneCallbackTest, + base::Unretained(this), + run_loop.QuitClosure()); + bool result = controller->DisableMonitoring(callback); + EXPECT_TRUE(result); + run_loop.Run(); + EXPECT_EQ(disable_monitoring_done_callback_count(), 1); + } +} + } // namespace content |