summaryrefslogtreecommitdiffstats
path: root/content/browser/tracing/tracing_controller_browsertest.cc
diff options
context:
space:
mode:
authorharaken@chromium.org <haraken@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-10-08 01:01:25 +0000
committerharaken@chromium.org <haraken@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-10-08 01:01:25 +0000
commit7ad4e2d50a8ae5cc1502a29166721fa447eb1ee5 (patch)
treea7dcc30be12c22a4d4900a92d58b26a086aabc3b /content/browser/tracing/tracing_controller_browsertest.cc
parent7cc7ebd4924ef763abfbdf334824e075330b0c14 (diff)
downloadchromium_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.cc93
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