Index: content/browser/renderer_host/render_widget_host_unittest.cc |
diff --git a/content/browser/renderer_host/render_widget_host_unittest.cc b/content/browser/renderer_host/render_widget_host_unittest.cc |
index 9d95b9ae321db9c25ecf6a1a8594e79a66cd6f47..01e9fa9c38d061978cadccf0230950fde81429e1 100644 |
--- a/content/browser/renderer_host/render_widget_host_unittest.cc |
+++ b/content/browser/renderer_host/render_widget_host_unittest.cc |
@@ -152,7 +152,6 @@ class MockRenderWidgetHost : public RenderWidgetHostImpl { |
process, |
routing_id, |
false), |
- unresponsive_timer_fired_(false), |
new_content_rendering_timeout_fired_(false) { |
acked_touch_event_type_ = blink::WebInputEvent::Undefined; |
} |
@@ -174,10 +173,6 @@ class MockRenderWidgetHost : public RenderWidgetHostImpl { |
RenderWidgetHostImpl::OnTouchEventAck(event, ack_result); |
} |
- bool unresponsive_timer_fired() const { |
- return unresponsive_timer_fired_; |
- } |
- |
bool new_content_rendering_timeout_fired() const { |
return new_content_rendering_timeout_fired_; |
} |
@@ -200,15 +195,10 @@ class MockRenderWidgetHost : public RenderWidgetHostImpl { |
} |
protected: |
- void NotifyRendererUnresponsive() override { |
- unresponsive_timer_fired_ = true; |
- } |
- |
void NotifyNewContentRenderingTimeoutForTesting() override { |
new_content_rendering_timeout_fired_ = true; |
} |
- bool unresponsive_timer_fired_; |
bool new_content_rendering_timeout_fired_; |
WebInputEvent::Type acked_touch_event_type_; |
@@ -349,7 +339,8 @@ class MockRenderWidgetHostDelegate : public RenderWidgetHostDelegate { |
unhandled_keyboard_event_called_(false), |
unhandled_keyboard_event_type_(WebInputEvent::Undefined), |
handle_wheel_event_(false), |
- handle_wheel_event_called_(false) {} |
+ handle_wheel_event_called_(false), |
+ unresponsive_timer_fired_(false) {} |
~MockRenderWidgetHostDelegate() override {} |
// Tests that make sure we ignore keyboard event acknowledgments to events we |
@@ -384,6 +375,8 @@ class MockRenderWidgetHostDelegate : public RenderWidgetHostDelegate { |
bool handle_wheel_event_called() const { return handle_wheel_event_called_; } |
+ bool unresponsive_timer_fired() const { return unresponsive_timer_fired_; } |
+ |
protected: |
bool PreHandleKeyboardEvent(const NativeWebKeyboardEvent& event, |
bool* is_keyboard_shortcut) override { |
@@ -403,6 +396,10 @@ class MockRenderWidgetHostDelegate : public RenderWidgetHostDelegate { |
return handle_wheel_event_; |
} |
+ void RendererUnresponsive(RenderWidgetHostImpl* render_widget_host) override { |
+ unresponsive_timer_fired_ = true; |
+ } |
+ |
void Cut() override {} |
void Copy() override {} |
void Paste() override {} |
@@ -419,6 +416,8 @@ class MockRenderWidgetHostDelegate : public RenderWidgetHostDelegate { |
bool handle_wheel_event_; |
bool handle_wheel_event_called_; |
+ |
+ bool unresponsive_timer_fired_; |
}; |
// RenderWidgetHostTest -------------------------------------------------------- |
@@ -1066,7 +1065,7 @@ TEST_F(RenderWidgetHostTest, DontPostponeHangMonitorTimeout) { |
host_->StartHangMonitorTimeout(TimeDelta::FromMilliseconds(10)); |
// Immediately try to add a long 30 second timeout. |
- EXPECT_FALSE(host_->unresponsive_timer_fired()); |
+ EXPECT_FALSE(delegate_->unresponsive_timer_fired()); |
host_->StartHangMonitorTimeout(TimeDelta::FromSeconds(30)); |
// Wait long enough for first timeout and see if it fired. |
@@ -1074,7 +1073,7 @@ TEST_F(RenderWidgetHostTest, DontPostponeHangMonitorTimeout) { |
FROM_HERE, base::MessageLoop::QuitWhenIdleClosure(), |
TimeDelta::FromMilliseconds(10)); |
base::MessageLoop::current()->Run(); |
- EXPECT_TRUE(host_->unresponsive_timer_fired()); |
+ EXPECT_TRUE(delegate_->unresponsive_timer_fired()); |
} |
// Test that the hang monitor timer expires properly if it is started, stopped, |
@@ -1085,7 +1084,7 @@ TEST_F(RenderWidgetHostTest, StopAndStartHangMonitorTimeout) { |
host_->StopHangMonitorTimeout(); |
// Start it again to ensure it still works. |
- EXPECT_FALSE(host_->unresponsive_timer_fired()); |
+ EXPECT_FALSE(delegate_->unresponsive_timer_fired()); |
host_->StartHangMonitorTimeout(TimeDelta::FromMilliseconds(10)); |
// Wait long enough for first timeout and see if it fired. |
@@ -1093,7 +1092,7 @@ TEST_F(RenderWidgetHostTest, StopAndStartHangMonitorTimeout) { |
FROM_HERE, base::MessageLoop::QuitWhenIdleClosure(), |
TimeDelta::FromMilliseconds(40)); |
base::MessageLoop::current()->Run(); |
- EXPECT_TRUE(host_->unresponsive_timer_fired()); |
+ EXPECT_TRUE(delegate_->unresponsive_timer_fired()); |
} |
// Test that the hang monitor timer expires properly if it is started, then |
@@ -1103,7 +1102,7 @@ TEST_F(RenderWidgetHostTest, ShorterDelayHangMonitorTimeout) { |
host_->StartHangMonitorTimeout(TimeDelta::FromMilliseconds(100)); |
// Start it again with shorter delay. |
- EXPECT_FALSE(host_->unresponsive_timer_fired()); |
+ EXPECT_FALSE(delegate_->unresponsive_timer_fired()); |
host_->StartHangMonitorTimeout(TimeDelta::FromMilliseconds(20)); |
// Wait long enough for the second timeout and see if it fired. |
@@ -1111,7 +1110,7 @@ TEST_F(RenderWidgetHostTest, ShorterDelayHangMonitorTimeout) { |
FROM_HERE, base::MessageLoop::QuitWhenIdleClosure(), |
TimeDelta::FromMilliseconds(25)); |
base::MessageLoop::current()->Run(); |
- EXPECT_TRUE(host_->unresponsive_timer_fired()); |
+ EXPECT_TRUE(delegate_->unresponsive_timer_fired()); |
} |
// Test that the hang monitor timer is effectively disabled when the widget is |
@@ -1124,12 +1123,12 @@ TEST_F(RenderWidgetHostTest, HangMonitorTimeoutDisabledForInputWhenHidden) { |
host_->WasHidden(); |
// The timeout should not fire. |
- EXPECT_FALSE(host_->unresponsive_timer_fired()); |
+ EXPECT_FALSE(delegate_->unresponsive_timer_fired()); |
base::ThreadTaskRunnerHandle::Get()->PostDelayedTask( |
FROM_HERE, base::MessageLoop::QuitWhenIdleClosure(), |
TimeDelta::FromMicroseconds(2)); |
base::MessageLoop::current()->Run(); |
- EXPECT_FALSE(host_->unresponsive_timer_fired()); |
+ EXPECT_FALSE(delegate_->unresponsive_timer_fired()); |
// The timeout should never reactivate while hidden. |
SimulateMouseEvent(WebInputEvent::MouseMove, 10, 10, 0, false); |
@@ -1137,7 +1136,7 @@ TEST_F(RenderWidgetHostTest, HangMonitorTimeoutDisabledForInputWhenHidden) { |
FROM_HERE, base::MessageLoop::QuitWhenIdleClosure(), |
TimeDelta::FromMicroseconds(2)); |
base::MessageLoop::current()->Run(); |
- EXPECT_FALSE(host_->unresponsive_timer_fired()); |
+ EXPECT_FALSE(delegate_->unresponsive_timer_fired()); |
// Showing the widget should restore the timeout, as the events have |
// not yet been ack'ed. |
@@ -1146,7 +1145,7 @@ TEST_F(RenderWidgetHostTest, HangMonitorTimeoutDisabledForInputWhenHidden) { |
FROM_HERE, base::MessageLoop::QuitWhenIdleClosure(), |
TimeDelta::FromMicroseconds(2)); |
base::MessageLoop::current()->Run(); |
- EXPECT_TRUE(host_->unresponsive_timer_fired()); |
+ EXPECT_TRUE(delegate_->unresponsive_timer_fired()); |
} |
// Test that the hang monitor catches two input events but only one ack. |
@@ -1168,7 +1167,7 @@ TEST_F(RenderWidgetHostTest, MultipleInputEvents) { |
FROM_HERE, base::MessageLoop::QuitWhenIdleClosure(), |
TimeDelta::FromMicroseconds(20)); |
base::MessageLoop::current()->Run(); |
- EXPECT_TRUE(host_->unresponsive_timer_fired()); |
+ EXPECT_TRUE(delegate_->unresponsive_timer_fired()); |
} |
// Test that the rendering timeout for newly loaded content fires |