OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "base/basictypes.h" | 5 #include "base/basictypes.h" |
6 #include "base/memory/scoped_ptr.h" | 6 #include "base/memory/scoped_ptr.h" |
7 #include "base/time.h" | 7 #include "base/time.h" |
8 #include "content/browser/devtools/devtools_manager_impl.h" | 8 #include "content/browser/devtools/devtools_manager_impl.h" |
9 #include "content/browser/devtools/render_view_devtools_agent_host.h" | 9 #include "content/browser/devtools/render_view_devtools_agent_host.h" |
10 #include "content/browser/renderer_host/test_render_view_host.h" | 10 #include "content/browser/renderer_host/test_render_view_host.h" |
(...skipping 118 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
129 }; | 129 }; |
130 | 130 |
131 TEST_F(DevToolsManagerTest, OpenAndManuallyCloseDevToolsClientHost) { | 131 TEST_F(DevToolsManagerTest, OpenAndManuallyCloseDevToolsClientHost) { |
132 DevToolsManager* manager = DevToolsManager::GetInstance(); | 132 DevToolsManager* manager = DevToolsManager::GetInstance(); |
133 | 133 |
134 scoped_refptr<DevToolsAgentHost> agent( | 134 scoped_refptr<DevToolsAgentHost> agent( |
135 DevToolsAgentHost::GetOrCreateFor(rvh())); | 135 DevToolsAgentHost::GetOrCreateFor(rvh())); |
136 EXPECT_FALSE(agent->IsAttached()); | 136 EXPECT_FALSE(agent->IsAttached()); |
137 | 137 |
138 TestDevToolsClientHost client_host; | 138 TestDevToolsClientHost client_host; |
139 manager->RegisterDevToolsClientHostFor(agent, &client_host); | 139 manager->RegisterDevToolsClientHostFor(agent.get(), &client_host); |
140 // Test that the connection is established. | 140 // Test that the connection is established. |
141 EXPECT_TRUE(agent->IsAttached()); | 141 EXPECT_TRUE(agent->IsAttached()); |
142 EXPECT_EQ(agent, manager->GetDevToolsAgentHostFor(&client_host)); | 142 EXPECT_EQ(agent, manager->GetDevToolsAgentHostFor(&client_host)); |
143 EXPECT_EQ(0, TestDevToolsClientHost::close_counter); | 143 EXPECT_EQ(0, TestDevToolsClientHost::close_counter); |
144 | 144 |
145 client_host.Close(manager); | 145 client_host.Close(manager); |
146 EXPECT_EQ(1, TestDevToolsClientHost::close_counter); | 146 EXPECT_EQ(1, TestDevToolsClientHost::close_counter); |
147 EXPECT_FALSE(agent->IsAttached()); | 147 EXPECT_FALSE(agent->IsAttached()); |
148 } | 148 } |
149 | 149 |
150 TEST_F(DevToolsManagerTest, ForwardMessageToClient) { | 150 TEST_F(DevToolsManagerTest, ForwardMessageToClient) { |
151 DevToolsManagerImpl* manager = DevToolsManagerImpl::GetInstance(); | 151 DevToolsManagerImpl* manager = DevToolsManagerImpl::GetInstance(); |
152 | 152 |
153 TestDevToolsClientHost client_host; | 153 TestDevToolsClientHost client_host; |
154 scoped_refptr<DevToolsAgentHost> agent_host( | 154 scoped_refptr<DevToolsAgentHost> agent_host( |
155 DevToolsAgentHost::GetOrCreateFor(rvh())); | 155 DevToolsAgentHost::GetOrCreateFor(rvh())); |
156 manager->RegisterDevToolsClientHostFor(agent_host, &client_host); | 156 manager->RegisterDevToolsClientHostFor(agent_host.get(), &client_host); |
157 EXPECT_EQ(0, TestDevToolsClientHost::close_counter); | 157 EXPECT_EQ(0, TestDevToolsClientHost::close_counter); |
158 | 158 |
159 std::string m = "test message"; | 159 std::string m = "test message"; |
160 agent_host = DevToolsAgentHost::GetOrCreateFor(rvh()); | 160 agent_host = DevToolsAgentHost::GetOrCreateFor(rvh()); |
161 manager->DispatchOnInspectorFrontend(agent_host, m); | 161 manager->DispatchOnInspectorFrontend(agent_host.get(), m); |
162 EXPECT_TRUE(&m == client_host.last_sent_message); | 162 EXPECT_TRUE(&m == client_host.last_sent_message); |
163 | 163 |
164 client_host.Close(manager); | 164 client_host.Close(manager); |
165 EXPECT_EQ(1, TestDevToolsClientHost::close_counter); | 165 EXPECT_EQ(1, TestDevToolsClientHost::close_counter); |
166 } | 166 } |
167 | 167 |
168 TEST_F(DevToolsManagerTest, NoUnresponsiveDialogInInspectedContents) { | 168 TEST_F(DevToolsManagerTest, NoUnresponsiveDialogInInspectedContents) { |
169 TestRenderViewHost* inspected_rvh = test_rvh(); | 169 TestRenderViewHost* inspected_rvh = test_rvh(); |
170 inspected_rvh->set_render_view_created(true); | 170 inspected_rvh->set_render_view_created(true); |
171 EXPECT_FALSE(contents()->GetDelegate()); | 171 EXPECT_FALSE(contents()->GetDelegate()); |
172 TestWebContentsDelegate delegate; | 172 TestWebContentsDelegate delegate; |
173 contents()->SetDelegate(&delegate); | 173 contents()->SetDelegate(&delegate); |
174 | 174 |
175 TestDevToolsClientHost client_host; | 175 TestDevToolsClientHost client_host; |
176 scoped_refptr<DevToolsAgentHost> agent_host( | 176 scoped_refptr<DevToolsAgentHost> agent_host( |
177 DevToolsAgentHost::GetOrCreateFor(inspected_rvh)); | 177 DevToolsAgentHost::GetOrCreateFor(inspected_rvh)); |
178 DevToolsManager::GetInstance()-> | 178 DevToolsManager::GetInstance()->RegisterDevToolsClientHostFor( |
179 RegisterDevToolsClientHostFor(agent_host, &client_host); | 179 agent_host.get(), &client_host); |
180 | 180 |
181 // Start with a short timeout. | 181 // Start with a short timeout. |
182 inspected_rvh->StartHangMonitorTimeout(TimeDelta::FromMilliseconds(10)); | 182 inspected_rvh->StartHangMonitorTimeout(TimeDelta::FromMilliseconds(10)); |
183 // Wait long enough for first timeout and see if it fired. | 183 // Wait long enough for first timeout and see if it fired. |
184 base::MessageLoop::current()->PostDelayedTask( | 184 base::MessageLoop::current()->PostDelayedTask( |
185 FROM_HERE, | 185 FROM_HERE, |
186 base::MessageLoop::QuitClosure(), | 186 base::MessageLoop::QuitClosure(), |
187 TimeDelta::FromMilliseconds(10)); | 187 TimeDelta::FromMilliseconds(10)); |
188 base::MessageLoop::current()->Run(); | 188 base::MessageLoop::current()->Run(); |
189 EXPECT_FALSE(delegate.renderer_unresponsive_received()); | 189 EXPECT_FALSE(delegate.renderer_unresponsive_received()); |
(...skipping 86 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
276 | 276 |
277 scoped_ptr<DevToolsExternalAgentProxy> proxy( | 277 scoped_ptr<DevToolsExternalAgentProxy> proxy( |
278 DevToolsExternalAgentProxy::Create(&delegate)); | 278 DevToolsExternalAgentProxy::Create(&delegate)); |
279 | 279 |
280 scoped_refptr<DevToolsAgentHost> agent_host = proxy->GetAgentHost(); | 280 scoped_refptr<DevToolsAgentHost> agent_host = proxy->GetAgentHost(); |
281 EXPECT_EQ(agent_host, DevToolsAgentHost::GetForId(agent_host->GetId())); | 281 EXPECT_EQ(agent_host, DevToolsAgentHost::GetForId(agent_host->GetId())); |
282 | 282 |
283 DevToolsManager* manager = DevToolsManager::GetInstance(); | 283 DevToolsManager* manager = DevToolsManager::GetInstance(); |
284 | 284 |
285 TestDevToolsClientHost client_host; | 285 TestDevToolsClientHost client_host; |
286 manager->RegisterDevToolsClientHostFor(agent_host, &client_host); | 286 manager->RegisterDevToolsClientHostFor(agent_host.get(), &client_host); |
287 | 287 |
288 manager->DispatchOnInspectorBackend(&client_host, "message1"); | 288 manager->DispatchOnInspectorBackend(&client_host, "message1"); |
289 manager->DispatchOnInspectorBackend(&client_host, "message2"); | 289 manager->DispatchOnInspectorBackend(&client_host, "message2"); |
290 manager->DispatchOnInspectorBackend(&client_host, "message2"); | 290 manager->DispatchOnInspectorBackend(&client_host, "message2"); |
291 | 291 |
292 client_host.Close(manager); | 292 client_host.Close(manager); |
293 } | 293 } |
294 | 294 |
295 } // namespace content | 295 } // namespace content |
OLD | NEW |