| 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 "chrome/browser/captive_portal/captive_portal_tab_helper.h" | 5 #include "chrome/browser/captive_portal/captive_portal_tab_helper.h" |
| 6 | 6 |
| 7 #include "base/callback.h" | 7 #include "base/callback.h" |
| 8 #include "base/memory/scoped_ptr.h" | 8 #include "base/memory/scoped_ptr.h" |
| 9 #include "chrome/browser/captive_portal/captive_portal_service.h" | 9 #include "chrome/browser/captive_portal/captive_portal_service.h" |
| 10 #include "chrome/browser/captive_portal/captive_portal_tab_reloader.h" | 10 #include "chrome/browser/captive_portal/captive_portal_tab_reloader.h" |
| (...skipping 69 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 80 | 80 |
| 81 void TearDown() override { | 81 void TearDown() override { |
| 82 web_contents2_.reset(NULL); | 82 web_contents2_.reset(NULL); |
| 83 web_contents1_.reset(NULL); | 83 web_contents1_.reset(NULL); |
| 84 ChromeRenderViewHostTestHarness::TearDown(); | 84 ChromeRenderViewHostTestHarness::TearDown(); |
| 85 } | 85 } |
| 86 | 86 |
| 87 // Simulates a successful load of |url|. | 87 // Simulates a successful load of |url|. |
| 88 void SimulateSuccess(const GURL& url, | 88 void SimulateSuccess(const GURL& url, |
| 89 content::RenderViewHost* render_view_host) { | 89 content::RenderViewHost* render_view_host) { |
| 90 EXPECT_CALL(mock_reloader(), OnLoadStart(url.SchemeIsSecure())).Times(1); | 90 EXPECT_CALL(mock_reloader(), OnLoadStart(url.SchemeUsesTLS())).Times(1); |
| 91 tab_helper().DidStartProvisionalLoadForFrame( | 91 tab_helper().DidStartProvisionalLoadForFrame( |
| 92 render_view_host->GetMainFrame(), url, false, false); | 92 render_view_host->GetMainFrame(), url, false, false); |
| 93 | 93 |
| 94 EXPECT_CALL(mock_reloader(), OnLoadCommitted(net::OK)).Times(1); | 94 EXPECT_CALL(mock_reloader(), OnLoadCommitted(net::OK)).Times(1); |
| 95 tab_helper().DidCommitProvisionalLoadForFrame( | 95 tab_helper().DidCommitProvisionalLoadForFrame( |
| 96 render_view_host->GetMainFrame(), | 96 render_view_host->GetMainFrame(), |
| 97 url, | 97 url, |
| 98 ui::PAGE_TRANSITION_LINK); | 98 ui::PAGE_TRANSITION_LINK); |
| 99 } | 99 } |
| 100 | 100 |
| 101 // Simulates a connection timeout while requesting |url|. | 101 // Simulates a connection timeout while requesting |url|. |
| 102 void SimulateTimeout(const GURL& url, | 102 void SimulateTimeout(const GURL& url, |
| 103 content::RenderViewHost* render_view_host) { | 103 content::RenderViewHost* render_view_host) { |
| 104 EXPECT_CALL(mock_reloader(), OnLoadStart(url.SchemeIsSecure())).Times(1); | 104 EXPECT_CALL(mock_reloader(), OnLoadStart(url.SchemeUsesTLS())).Times(1); |
| 105 tab_helper().DidStartProvisionalLoadForFrame( | 105 tab_helper().DidStartProvisionalLoadForFrame( |
| 106 render_view_host->GetMainFrame(), url, false, false); | 106 render_view_host->GetMainFrame(), url, false, false); |
| 107 | 107 |
| 108 tab_helper().DidFailProvisionalLoad(render_view_host->GetMainFrame(), | 108 tab_helper().DidFailProvisionalLoad(render_view_host->GetMainFrame(), |
| 109 url, | 109 url, |
| 110 net::ERR_TIMED_OUT, | 110 net::ERR_TIMED_OUT, |
| 111 base::string16()); | 111 base::string16()); |
| 112 | 112 |
| 113 // Provisional load starts for the error page. | 113 // Provisional load starts for the error page. |
| 114 tab_helper().DidStartProvisionalLoadForFrame( | 114 tab_helper().DidStartProvisionalLoadForFrame( |
| 115 render_view_host->GetMainFrame(), GURL(kErrorPageUrl), true, false); | 115 render_view_host->GetMainFrame(), GURL(kErrorPageUrl), true, false); |
| 116 | 116 |
| 117 EXPECT_CALL(mock_reloader(), OnLoadCommitted(net::ERR_TIMED_OUT)).Times(1); | 117 EXPECT_CALL(mock_reloader(), OnLoadCommitted(net::ERR_TIMED_OUT)).Times(1); |
| 118 tab_helper().DidCommitProvisionalLoadForFrame( | 118 tab_helper().DidCommitProvisionalLoadForFrame( |
| 119 render_view_host->GetMainFrame(), | 119 render_view_host->GetMainFrame(), |
| 120 GURL(kErrorPageUrl), | 120 GURL(kErrorPageUrl), |
| 121 ui::PAGE_TRANSITION_LINK); | 121 ui::PAGE_TRANSITION_LINK); |
| 122 } | 122 } |
| 123 | 123 |
| 124 // Simulates an abort while requesting |url|. | 124 // Simulates an abort while requesting |url|. |
| 125 void SimulateAbort(const GURL& url, | 125 void SimulateAbort(const GURL& url, |
| 126 content::RenderViewHost* render_view_host, | 126 content::RenderViewHost* render_view_host, |
| 127 NavigationType navigation_type) { | 127 NavigationType navigation_type) { |
| 128 EXPECT_CALL(mock_reloader(), OnLoadStart(url.SchemeIsSecure())).Times(1); | 128 EXPECT_CALL(mock_reloader(), OnLoadStart(url.SchemeUsesTLS())).Times(1); |
| 129 tab_helper().DidStartProvisionalLoadForFrame( | 129 tab_helper().DidStartProvisionalLoadForFrame( |
| 130 render_view_host->GetMainFrame(), url, false, false); | 130 render_view_host->GetMainFrame(), url, false, false); |
| 131 | 131 |
| 132 EXPECT_CALL(mock_reloader(), OnAbort()).Times(1); | 132 EXPECT_CALL(mock_reloader(), OnAbort()).Times(1); |
| 133 if (navigation_type == kSameProcess) { | 133 if (navigation_type == kSameProcess) { |
| 134 tab_helper().DidFailProvisionalLoad(render_view_host->GetMainFrame(), | 134 tab_helper().DidFailProvisionalLoad(render_view_host->GetMainFrame(), |
| 135 url, | 135 url, |
| 136 net::ERR_ABORTED, | 136 net::ERR_ABORTED, |
| 137 base::string16()); | 137 base::string16()); |
| 138 } else { | 138 } else { |
| 139 // For interrupted provisional cross-process navigations, the | 139 // For interrupted provisional cross-process navigations, the |
| 140 // RenderViewHost is destroyed without sending a DidFailProvisionalLoad | 140 // RenderViewHost is destroyed without sending a DidFailProvisionalLoad |
| 141 // notification. | 141 // notification. |
| 142 tab_helper().RenderViewDeleted(render_view_host); | 142 tab_helper().RenderViewDeleted(render_view_host); |
| 143 } | 143 } |
| 144 | 144 |
| 145 // Make sure that above call resulted in abort, for tests that continue | 145 // Make sure that above call resulted in abort, for tests that continue |
| 146 // after the abort. | 146 // after the abort. |
| 147 EXPECT_CALL(mock_reloader(), OnAbort()).Times(0); | 147 EXPECT_CALL(mock_reloader(), OnAbort()).Times(0); |
| 148 } | 148 } |
| 149 | 149 |
| 150 // Simulates an abort while loading an error page. | 150 // Simulates an abort while loading an error page. |
| 151 void SimulateAbortTimeout(const GURL& url, | 151 void SimulateAbortTimeout(const GURL& url, |
| 152 content::RenderViewHost* render_view_host, | 152 content::RenderViewHost* render_view_host, |
| 153 NavigationType navigation_type) { | 153 NavigationType navigation_type) { |
| 154 EXPECT_CALL(mock_reloader(), OnLoadStart(url.SchemeIsSecure())).Times(1); | 154 EXPECT_CALL(mock_reloader(), OnLoadStart(url.SchemeUsesTLS())).Times(1); |
| 155 tab_helper().DidStartProvisionalLoadForFrame( | 155 tab_helper().DidStartProvisionalLoadForFrame( |
| 156 render_view_host->GetMainFrame(), url, false, false); | 156 render_view_host->GetMainFrame(), url, false, false); |
| 157 | 157 |
| 158 tab_helper().DidFailProvisionalLoad(render_view_host->GetMainFrame(), | 158 tab_helper().DidFailProvisionalLoad(render_view_host->GetMainFrame(), |
| 159 url, | 159 url, |
| 160 net::ERR_TIMED_OUT, | 160 net::ERR_TIMED_OUT, |
| 161 base::string16()); | 161 base::string16()); |
| 162 | 162 |
| 163 // Start event for the error page. | 163 // Start event for the error page. |
| 164 tab_helper().DidStartProvisionalLoadForFrame( | 164 tab_helper().DidStartProvisionalLoadForFrame( |
| (...skipping 162 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 327 } | 327 } |
| 328 | 328 |
| 329 // A provisional same-site navigation is interrupted by a cross-process | 329 // A provisional same-site navigation is interrupted by a cross-process |
| 330 // navigation without sending an abort first. | 330 // navigation without sending an abort first. |
| 331 TEST_F(CaptivePortalTabHelperTest, UnexpectedProvisionalLoad) { | 331 TEST_F(CaptivePortalTabHelperTest, UnexpectedProvisionalLoad) { |
| 332 GURL same_site_url = GURL(kHttpUrl); | 332 GURL same_site_url = GURL(kHttpUrl); |
| 333 GURL cross_process_url = GURL(kHttpsUrl2); | 333 GURL cross_process_url = GURL(kHttpsUrl2); |
| 334 | 334 |
| 335 // A same-site load for the original RenderViewHost starts. | 335 // A same-site load for the original RenderViewHost starts. |
| 336 EXPECT_CALL(mock_reloader(), | 336 EXPECT_CALL(mock_reloader(), |
| 337 OnLoadStart(same_site_url.SchemeIsSecure())).Times(1); | 337 OnLoadStart(same_site_url.SchemeUsesTLS())).Times(1); |
| 338 tab_helper().DidStartProvisionalLoadForFrame( | 338 tab_helper().DidStartProvisionalLoadForFrame( |
| 339 main_render_frame1(), same_site_url, false, false); | 339 main_render_frame1(), same_site_url, false, false); |
| 340 | 340 |
| 341 // It's unexpectedly interrupted by a cross-process navigation, which starts | 341 // It's unexpectedly interrupted by a cross-process navigation, which starts |
| 342 // navigating before the old navigation cancels. We generate an abort message | 342 // navigating before the old navigation cancels. We generate an abort message |
| 343 // for the old navigation. | 343 // for the old navigation. |
| 344 EXPECT_CALL(mock_reloader(), OnAbort()).Times(1); | 344 EXPECT_CALL(mock_reloader(), OnAbort()).Times(1); |
| 345 EXPECT_CALL(mock_reloader(), | 345 EXPECT_CALL(mock_reloader(), |
| 346 OnLoadStart(cross_process_url.SchemeIsSecure())).Times(1); | 346 OnLoadStart(cross_process_url.SchemeUsesTLS())).Times(1); |
| 347 tab_helper().DidStartProvisionalLoadForFrame( | 347 tab_helper().DidStartProvisionalLoadForFrame( |
| 348 main_render_frame2(), cross_process_url, false, false); | 348 main_render_frame2(), cross_process_url, false, false); |
| 349 | 349 |
| 350 // The cross-process navigation fails. | 350 // The cross-process navigation fails. |
| 351 tab_helper().DidFailProvisionalLoad(main_render_frame2(), | 351 tab_helper().DidFailProvisionalLoad(main_render_frame2(), |
| 352 cross_process_url, | 352 cross_process_url, |
| 353 net::ERR_FAILED, | 353 net::ERR_FAILED, |
| 354 base::string16()); | 354 base::string16()); |
| 355 | 355 |
| 356 // The same-site navigation finally is aborted. | 356 // The same-site navigation finally is aborted. |
| (...skipping 14 matching lines...) Expand all Loading... |
| 371 } | 371 } |
| 372 | 372 |
| 373 // Similar to the above test, except the original RenderViewHost manages to | 373 // Similar to the above test, except the original RenderViewHost manages to |
| 374 // commit before its navigation is aborted. | 374 // commit before its navigation is aborted. |
| 375 TEST_F(CaptivePortalTabHelperTest, UnexpectedCommit) { | 375 TEST_F(CaptivePortalTabHelperTest, UnexpectedCommit) { |
| 376 GURL same_site_url = GURL(kHttpUrl); | 376 GURL same_site_url = GURL(kHttpUrl); |
| 377 GURL cross_process_url = GURL(kHttpsUrl2); | 377 GURL cross_process_url = GURL(kHttpsUrl2); |
| 378 | 378 |
| 379 // A same-site load for the original RenderViewHost starts. | 379 // A same-site load for the original RenderViewHost starts. |
| 380 EXPECT_CALL(mock_reloader(), | 380 EXPECT_CALL(mock_reloader(), |
| 381 OnLoadStart(same_site_url.SchemeIsSecure())).Times(1); | 381 OnLoadStart(same_site_url.SchemeUsesTLS())).Times(1); |
| 382 tab_helper().DidStartProvisionalLoadForFrame( | 382 tab_helper().DidStartProvisionalLoadForFrame( |
| 383 main_render_frame1(), same_site_url, false, false); | 383 main_render_frame1(), same_site_url, false, false); |
| 384 | 384 |
| 385 // It's unexpectedly interrupted by a cross-process navigation, which starts | 385 // It's unexpectedly interrupted by a cross-process navigation, which starts |
| 386 // navigating before the old navigation cancels. We generate an abort message | 386 // navigating before the old navigation cancels. We generate an abort message |
| 387 // for the old navigation. | 387 // for the old navigation. |
| 388 EXPECT_CALL(mock_reloader(), OnAbort()).Times(1); | 388 EXPECT_CALL(mock_reloader(), OnAbort()).Times(1); |
| 389 EXPECT_CALL(mock_reloader(), | 389 EXPECT_CALL(mock_reloader(), |
| 390 OnLoadStart(cross_process_url.SchemeIsSecure())).Times(1); | 390 OnLoadStart(cross_process_url.SchemeUsesTLS())).Times(1); |
| 391 tab_helper().DidStartProvisionalLoadForFrame( | 391 tab_helper().DidStartProvisionalLoadForFrame( |
| 392 main_render_frame2(), cross_process_url, false, false); | 392 main_render_frame2(), cross_process_url, false, false); |
| 393 | 393 |
| 394 // The cross-process navigation fails. | 394 // The cross-process navigation fails. |
| 395 tab_helper().DidFailProvisionalLoad(main_render_frame2(), | 395 tab_helper().DidFailProvisionalLoad(main_render_frame2(), |
| 396 cross_process_url, | 396 cross_process_url, |
| 397 net::ERR_FAILED, | 397 net::ERR_FAILED, |
| 398 base::string16()); | 398 base::string16()); |
| 399 | 399 |
| 400 // The same-site navigation succeeds. | 400 // The same-site navigation succeeds. |
| 401 EXPECT_CALL(mock_reloader(), OnAbort()).Times(1); | 401 EXPECT_CALL(mock_reloader(), OnAbort()).Times(1); |
| 402 EXPECT_CALL(mock_reloader(), | 402 EXPECT_CALL(mock_reloader(), |
| 403 OnLoadStart(same_site_url.SchemeIsSecure())).Times(1); | 403 OnLoadStart(same_site_url.SchemeUsesTLS())).Times(1); |
| 404 EXPECT_CALL(mock_reloader(), OnLoadCommitted(net::OK)).Times(1); | 404 EXPECT_CALL(mock_reloader(), OnLoadCommitted(net::OK)).Times(1); |
| 405 tab_helper().DidCommitProvisionalLoadForFrame( | 405 tab_helper().DidCommitProvisionalLoadForFrame( |
| 406 main_render_frame1(), same_site_url, ui::PAGE_TRANSITION_LINK); | 406 main_render_frame1(), same_site_url, ui::PAGE_TRANSITION_LINK); |
| 407 } | 407 } |
| 408 | 408 |
| 409 // Simulates navigations for a number of subframes, and makes sure no | 409 // Simulates navigations for a number of subframes, and makes sure no |
| 410 // CaptivePortalTabHelper function is called. | 410 // CaptivePortalTabHelper function is called. |
| 411 TEST_F(CaptivePortalTabHelperTest, HttpsSubframe) { | 411 TEST_F(CaptivePortalTabHelperTest, HttpsSubframe) { |
| 412 GURL url = GURL(kHttpsUrl); | 412 GURL url = GURL(kHttpsUrl); |
| 413 | 413 |
| (...skipping 29 matching lines...) Expand all Loading... |
| 443 // but with a different error code. Make sure the TabHelper sees the correct | 443 // but with a different error code. Make sure the TabHelper sees the correct |
| 444 // error. | 444 // error. |
| 445 TEST_F(CaptivePortalTabHelperTest, HttpsSubframeParallelError) { | 445 TEST_F(CaptivePortalTabHelperTest, HttpsSubframeParallelError) { |
| 446 // URL used by both frames. | 446 // URL used by both frames. |
| 447 GURL url = GURL(kHttpsUrl); | 447 GURL url = GURL(kHttpsUrl); |
| 448 content::RenderFrameHost* subframe = | 448 content::RenderFrameHost* subframe = |
| 449 content::RenderFrameHostTester::For(main_render_frame1()) | 449 content::RenderFrameHostTester::For(main_render_frame1()) |
| 450 ->AppendChild("subframe"); | 450 ->AppendChild("subframe"); |
| 451 | 451 |
| 452 // Loads start. | 452 // Loads start. |
| 453 EXPECT_CALL(mock_reloader(), OnLoadStart(url.SchemeIsSecure())).Times(1); | 453 EXPECT_CALL(mock_reloader(), OnLoadStart(url.SchemeUsesTLS())).Times(1); |
| 454 tab_helper().DidStartProvisionalLoadForFrame( | 454 tab_helper().DidStartProvisionalLoadForFrame( |
| 455 main_render_frame1(), url, false, false); | 455 main_render_frame1(), url, false, false); |
| 456 tab_helper().DidStartProvisionalLoadForFrame(subframe, url, false, false); | 456 tab_helper().DidStartProvisionalLoadForFrame(subframe, url, false, false); |
| 457 | 457 |
| 458 // Loads return errors. | 458 // Loads return errors. |
| 459 tab_helper().DidFailProvisionalLoad( | 459 tab_helper().DidFailProvisionalLoad( |
| 460 main_render_frame1(), url, net::ERR_UNEXPECTED, base::string16()); | 460 main_render_frame1(), url, net::ERR_UNEXPECTED, base::string16()); |
| 461 tab_helper().DidFailProvisionalLoad( | 461 tab_helper().DidFailProvisionalLoad( |
| 462 subframe, url, net::ERR_TIMED_OUT, base::string16()); | 462 subframe, url, net::ERR_TIMED_OUT, base::string16()); |
| 463 | 463 |
| (...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 499 EXPECT_CALL(mock_reloader(), OnLoadCommitted(net::ERR_TIMED_OUT)).Times(1); | 499 EXPECT_CALL(mock_reloader(), OnLoadCommitted(net::ERR_TIMED_OUT)).Times(1); |
| 500 tab_helper().DidCommitProvisionalLoadForFrame(main_render_frame1(), | 500 tab_helper().DidCommitProvisionalLoadForFrame(main_render_frame1(), |
| 501 GURL(kErrorPageUrl), | 501 GURL(kErrorPageUrl), |
| 502 ui::PAGE_TRANSITION_LINK); | 502 ui::PAGE_TRANSITION_LINK); |
| 503 } | 503 } |
| 504 | 504 |
| 505 // Simulates an HTTPS to HTTP redirect. | 505 // Simulates an HTTPS to HTTP redirect. |
| 506 TEST_F(CaptivePortalTabHelperTest, HttpsToHttpRedirect) { | 506 TEST_F(CaptivePortalTabHelperTest, HttpsToHttpRedirect) { |
| 507 GURL https_url(kHttpsUrl); | 507 GURL https_url(kHttpsUrl); |
| 508 EXPECT_CALL(mock_reloader(), | 508 EXPECT_CALL(mock_reloader(), |
| 509 OnLoadStart(https_url.SchemeIsSecure())).Times(1); | 509 OnLoadStart(https_url.SchemeUsesTLS())).Times(1); |
| 510 tab_helper().DidStartProvisionalLoadForFrame( | 510 tab_helper().DidStartProvisionalLoadForFrame( |
| 511 main_render_frame1(), https_url, false, false); | 511 main_render_frame1(), https_url, false, false); |
| 512 | 512 |
| 513 GURL http_url(kHttpUrl); | 513 GURL http_url(kHttpUrl); |
| 514 EXPECT_CALL(mock_reloader(), OnRedirect(http_url.SchemeIsSecure())).Times(1); | 514 EXPECT_CALL(mock_reloader(), OnRedirect(http_url.SchemeUsesTLS())).Times(1); |
| 515 OnRedirect(content::RESOURCE_TYPE_MAIN_FRAME, http_url, | 515 OnRedirect(content::RESOURCE_TYPE_MAIN_FRAME, http_url, |
| 516 render_view_host1()->GetProcess()->GetID()); | 516 render_view_host1()->GetProcess()->GetID()); |
| 517 | 517 |
| 518 EXPECT_CALL(mock_reloader(), OnLoadCommitted(net::OK)).Times(1); | 518 EXPECT_CALL(mock_reloader(), OnLoadCommitted(net::OK)).Times(1); |
| 519 tab_helper().DidCommitProvisionalLoadForFrame( | 519 tab_helper().DidCommitProvisionalLoadForFrame( |
| 520 main_render_frame1(), http_url, ui::PAGE_TRANSITION_LINK); | 520 main_render_frame1(), http_url, ui::PAGE_TRANSITION_LINK); |
| 521 } | 521 } |
| 522 | 522 |
| 523 // Simulates an HTTPS to HTTPS redirect. | 523 // Simulates an HTTPS to HTTPS redirect. |
| 524 TEST_F(CaptivePortalTabHelperTest, HttpToHttpRedirect) { | 524 TEST_F(CaptivePortalTabHelperTest, HttpToHttpRedirect) { |
| 525 GURL http_url(kHttpUrl); | 525 GURL http_url(kHttpUrl); |
| 526 EXPECT_CALL(mock_reloader(), | 526 EXPECT_CALL(mock_reloader(), |
| 527 OnLoadStart(http_url.SchemeIsSecure())).Times(1); | 527 OnLoadStart(http_url.SchemeUsesTLS())).Times(1); |
| 528 tab_helper().DidStartProvisionalLoadForFrame( | 528 tab_helper().DidStartProvisionalLoadForFrame( |
| 529 main_render_frame1(), http_url, false, false); | 529 main_render_frame1(), http_url, false, false); |
| 530 | 530 |
| 531 EXPECT_CALL(mock_reloader(), OnRedirect(http_url.SchemeIsSecure())).Times(1); | 531 EXPECT_CALL(mock_reloader(), OnRedirect(http_url.SchemeUsesTLS())).Times(1); |
| 532 OnRedirect(content::RESOURCE_TYPE_MAIN_FRAME, http_url, | 532 OnRedirect(content::RESOURCE_TYPE_MAIN_FRAME, http_url, |
| 533 render_view_host1()->GetProcess()->GetID()); | 533 render_view_host1()->GetProcess()->GetID()); |
| 534 | 534 |
| 535 EXPECT_CALL(mock_reloader(), OnLoadCommitted(net::OK)).Times(1); | 535 EXPECT_CALL(mock_reloader(), OnLoadCommitted(net::OK)).Times(1); |
| 536 tab_helper().DidCommitProvisionalLoadForFrame( | 536 tab_helper().DidCommitProvisionalLoadForFrame( |
| 537 main_render_frame1(), http_url, ui::PAGE_TRANSITION_LINK); | 537 main_render_frame1(), http_url, ui::PAGE_TRANSITION_LINK); |
| 538 } | 538 } |
| 539 | 539 |
| 540 // Tests that a subframe redirect doesn't reset the timer to kick off a captive | 540 // Tests that a subframe redirect doesn't reset the timer to kick off a captive |
| 541 // portal probe for the main frame if the main frame request is taking too long. | 541 // portal probe for the main frame if the main frame request is taking too long. |
| (...skipping 90 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 632 EXPECT_FALSE(tab_helper().IsLoginTab()); | 632 EXPECT_FALSE(tab_helper().IsLoginTab()); |
| 633 | 633 |
| 634 ObservePortalResult(captive_portal::RESULT_BEHIND_CAPTIVE_PORTAL, | 634 ObservePortalResult(captive_portal::RESULT_BEHIND_CAPTIVE_PORTAL, |
| 635 captive_portal::RESULT_NO_RESPONSE); | 635 captive_portal::RESULT_NO_RESPONSE); |
| 636 EXPECT_FALSE(tab_helper().IsLoginTab()); | 636 EXPECT_FALSE(tab_helper().IsLoginTab()); |
| 637 | 637 |
| 638 ObservePortalResult(captive_portal::RESULT_NO_RESPONSE, | 638 ObservePortalResult(captive_portal::RESULT_NO_RESPONSE, |
| 639 captive_portal::RESULT_INTERNET_CONNECTED); | 639 captive_portal::RESULT_INTERNET_CONNECTED); |
| 640 EXPECT_FALSE(tab_helper().IsLoginTab()); | 640 EXPECT_FALSE(tab_helper().IsLoginTab()); |
| 641 } | 641 } |
| OLD | NEW |