| Index: chrome/browser/metrics/metrics_service_uitest.cc
|
| diff --git a/chrome/browser/metrics/metrics_service_uitest.cc b/chrome/browser/metrics/metrics_service_uitest.cc
|
| index 9f5f7e70e7cee2be5b3577d487f548ec6315b46b..7245a35c88d584e2af0e9176531d5e71a15c082c 100644
|
| --- a/chrome/browser/metrics/metrics_service_uitest.cc
|
| +++ b/chrome/browser/metrics/metrics_service_uitest.cc
|
| @@ -90,8 +90,14 @@ TEST_F(MetricsServiceTest, CrashRenderers) {
|
| // kill the process for one of the tabs
|
| scoped_refptr<TabProxy> tab(window_->GetTab(1));
|
| ASSERT_TRUE(tab.get());
|
| -
|
| - tab->NavigateToURLAsync(GURL("about:crash"));
|
| + int process_id = 0;
|
| + ASSERT_TRUE(tab->GetProcessID(&process_id));
|
| + ASSERT_NE(0, process_id);
|
| + base::ProcessHandle process_handle;
|
| + ASSERT_TRUE(base::OpenProcessHandle(process_id, &process_handle));
|
| + // Fake Access Violation.
|
| + base::KillProcess(process_handle, 0xc0000005, true);
|
| + base::CloseProcessHandle(process_handle);
|
|
|
| // Give the browser a chance to notice the crashed tab.
|
| PlatformThread::Sleep(1000);
|
| @@ -105,6 +111,6 @@ TEST_F(MetricsServiceTest, CrashRenderers) {
|
| local_state->RegisterIntegerPref(prefs::kStabilityRendererCrashCount, 0);
|
| EXPECT_TRUE(local_state->GetBoolean(prefs::kStabilityExitedCleanly));
|
| EXPECT_EQ(1, local_state->GetInteger(prefs::kStabilityLaunchCount));
|
| - EXPECT_EQ(4, local_state->GetInteger(prefs::kStabilityPageLoadCount));
|
| + EXPECT_EQ(3, local_state->GetInteger(prefs::kStabilityPageLoadCount));
|
| EXPECT_EQ(1, local_state->GetInteger(prefs::kStabilityRendererCrashCount));
|
| }
|
|
|