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/time.h" | 7 #include "base/time/time.h" |
8 #include "content/browser/devtools/devtools_manager.h" | 8 #include "content/browser/devtools/devtools_manager.h" |
9 #include "content/browser/devtools/shared_worker_devtools_manager.h" | 9 #include "content/browser/devtools/shared_worker_devtools_manager.h" |
10 #include "content/browser/shared_worker/shared_worker_instance.h" | 10 #include "content/browser/shared_worker/shared_worker_instance.h" |
(...skipping 258 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
269 EXPECT_TRUE(delegate.renderer_unresponsive_received()); | 269 EXPECT_TRUE(delegate.renderer_unresponsive_received()); |
270 | 270 |
271 contents()->SetDelegate(NULL); | 271 contents()->SetDelegate(NULL); |
272 } | 272 } |
273 | 273 |
274 TEST_F(DevToolsManagerTest, ReattachOnCancelPendingNavigation) { | 274 TEST_F(DevToolsManagerTest, ReattachOnCancelPendingNavigation) { |
275 // Navigate to URL. First URL should use first RenderViewHost. | 275 // Navigate to URL. First URL should use first RenderViewHost. |
276 const GURL url("http://www.google.com"); | 276 const GURL url("http://www.google.com"); |
277 controller().LoadURL( | 277 controller().LoadURL( |
278 url, Referrer(), ui::PAGE_TRANSITION_TYPED, std::string()); | 278 url, Referrer(), ui::PAGE_TRANSITION_TYPED, std::string()); |
| 279 NavigationEntry* entry = controller().GetPendingEntry(); |
279 contents()->TestDidNavigate( | 280 contents()->TestDidNavigate( |
280 contents()->GetMainFrame(), 1, url, ui::PAGE_TRANSITION_TYPED); | 281 contents()->GetMainFrame(), 1, entry->GetUniqueID(), true, url, |
| 282 ui::PAGE_TRANSITION_TYPED); |
281 EXPECT_FALSE(contents()->cross_navigation_pending()); | 283 EXPECT_FALSE(contents()->cross_navigation_pending()); |
282 | 284 |
283 TestDevToolsClientHost client_host; | 285 TestDevToolsClientHost client_host; |
284 client_host.InspectAgentHost( | 286 client_host.InspectAgentHost( |
285 DevToolsAgentHost::GetOrCreateFor(web_contents()).get()); | 287 DevToolsAgentHost::GetOrCreateFor(web_contents()).get()); |
286 | 288 |
287 // Navigate to new site which should get a new RenderViewHost. | 289 // Navigate to new site which should get a new RenderViewHost. |
288 const GURL url2("http://www.yahoo.com"); | 290 const GURL url2("http://www.yahoo.com"); |
289 controller().LoadURL( | 291 controller().LoadURL( |
290 url2, Referrer(), ui::PAGE_TRANSITION_TYPED, std::string()); | 292 url2, Referrer(), ui::PAGE_TRANSITION_TYPED, std::string()); |
291 EXPECT_TRUE(contents()->cross_navigation_pending()); | 293 EXPECT_TRUE(contents()->cross_navigation_pending()); |
292 EXPECT_EQ(client_host.agent_host(), | 294 EXPECT_EQ(client_host.agent_host(), |
293 DevToolsAgentHost::GetOrCreateFor(web_contents()).get()); | 295 DevToolsAgentHost::GetOrCreateFor(web_contents()).get()); |
294 | 296 |
295 // Interrupt pending navigation and navigate back to the original site. | 297 // Interrupt pending navigation and navigate back to the original site. |
296 controller().LoadURL( | 298 controller().LoadURL( |
297 url, Referrer(), ui::PAGE_TRANSITION_TYPED, std::string()); | 299 url, Referrer(), ui::PAGE_TRANSITION_TYPED, std::string()); |
| 300 entry = controller().GetPendingEntry(); |
298 contents()->TestDidNavigate( | 301 contents()->TestDidNavigate( |
299 contents()->GetMainFrame(), 1, url, ui::PAGE_TRANSITION_TYPED); | 302 contents()->GetMainFrame(), 1, entry->GetUniqueID(), true, url, |
| 303 ui::PAGE_TRANSITION_TYPED); |
300 EXPECT_FALSE(contents()->cross_navigation_pending()); | 304 EXPECT_FALSE(contents()->cross_navigation_pending()); |
301 EXPECT_EQ(client_host.agent_host(), | 305 EXPECT_EQ(client_host.agent_host(), |
302 DevToolsAgentHost::GetOrCreateFor(web_contents()).get()); | 306 DevToolsAgentHost::GetOrCreateFor(web_contents()).get()); |
303 client_host.Close(); | 307 client_host.Close(); |
304 } | 308 } |
305 | 309 |
306 class TestExternalAgentDelegate: public DevToolsExternalAgentProxyDelegate { | 310 class TestExternalAgentDelegate: public DevToolsExternalAgentProxyDelegate { |
307 std::map<std::string,int> event_counter_; | 311 std::map<std::string,int> event_counter_; |
308 | 312 |
309 void recordEvent(const std::string& name) { | 313 void recordEvent(const std::string& name) { |
(...skipping 141 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
451 scheduler.Run(); | 455 scheduler.Run(); |
452 EXPECT_TRUE(scheduler.IsEmpty()); | 456 EXPECT_TRUE(scheduler.IsEmpty()); |
453 EXPECT_EQ(4, observer->updates_count()); | 457 EXPECT_EQ(4, observer->updates_count()); |
454 | 458 |
455 manager->RemoveObserver(observer.get()); | 459 manager->RemoveObserver(observer.get()); |
456 | 460 |
457 EXPECT_TRUE(scheduler.IsEmpty()); | 461 EXPECT_TRUE(scheduler.IsEmpty()); |
458 } | 462 } |
459 | 463 |
460 } // namespace content | 464 } // namespace content |
OLD | NEW |