Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(156)

Side by Side Diff: chrome/browser/ssl/ssl_browser_tests.cc

Issue 2348203003: Fix navigations after HTML5 history push losing their SSL status. (Closed)
Patch Set: Created 4 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « no previous file | content/browser/frame_host/navigation_controller_impl.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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 <utility> 5 #include <utility>
6 6
7 #include "base/base_switches.h" 7 #include "base/base_switches.h"
8 #include "base/bind.h" 8 #include "base/bind.h"
9 #include "base/bind_helpers.h" 9 #include "base/bind_helpers.h"
10 #include "base/callback.h" 10 #include "base/callback.h"
(...skipping 3207 matching lines...) Expand 10 before | Expand all | Expand 10 after
3218 IN_PROC_BROWSER_TEST_F(SSLUITest, InPageNavigationAfterLoadSSLState) { 3218 IN_PROC_BROWSER_TEST_F(SSLUITest, InPageNavigationAfterLoadSSLState) {
3219 ASSERT_TRUE(https_server_.Start()); 3219 ASSERT_TRUE(https_server_.Start());
3220 3220
3221 ui_test_utils::NavigateToURL(browser(), 3221 ui_test_utils::NavigateToURL(browser(),
3222 https_server_.GetURL("/ssl/google.html")); 3222 https_server_.GetURL("/ssl/google.html"));
3223 WebContents* tab = browser()->tab_strip_model()->GetActiveWebContents(); 3223 WebContents* tab = browser()->tab_strip_model()->GetActiveWebContents();
3224 ASSERT_TRUE(content::ExecuteScript(tab, "location.hash = Math.random()")); 3224 ASSERT_TRUE(content::ExecuteScript(tab, "location.hash = Math.random()"));
3225 CheckAuthenticatedState(tab, AuthState::NONE); 3225 CheckAuthenticatedState(tab, AuthState::NONE);
3226 } 3226 }
3227 3227
3228 // Checks that navigations after pushState maintain the SSL status.
3229 IN_PROC_BROWSER_TEST_F(SSLUITest, PushStateSSLState) {
3230 ASSERT_TRUE(https_server_.Start());
3231
3232 ui_test_utils::NavigateToURL(browser(),
3233 https_server_.GetURL("/ssl/google.html"));
3234 content::WebContents* tab =
3235 browser()->tab_strip_model()->GetActiveWebContents();
3236 CheckAuthenticatedState(tab, AuthState::NONE);
3237
3238 content::TestNavigationObserver observer(tab);
3239 EXPECT_TRUE(ExecuteScript(tab, "history.pushState({}, '', '');"));
3240 observer.Wait();
3241 CheckAuthenticatedState(tab, AuthState::NONE);
3242
3243 chrome::GoBack(browser(), WindowOpenDisposition::CURRENT_TAB);
3244 content::WaitForLoadStop(tab);
3245 CheckAuthenticatedState(tab, AuthState::NONE);
3246 }
3247
3228 // TODO(jcampan): more tests to do below. 3248 // TODO(jcampan): more tests to do below.
3229 3249
3230 // Visit a page over https that contains a frame with a redirect. 3250 // Visit a page over https that contains a frame with a redirect.
3231 3251
3232 // XMLHttpRequest insecure content in synchronous mode. 3252 // XMLHttpRequest insecure content in synchronous mode.
3233 3253
3234 // XMLHttpRequest insecure content in asynchronous mode. 3254 // XMLHttpRequest insecure content in asynchronous mode.
3235 3255
3236 // XMLHttpRequest over bad ssl in synchronous mode. 3256 // XMLHttpRequest over bad ssl in synchronous mode.
3237 3257
3238 // XMLHttpRequest over OK ssl in synchronous mode. 3258 // XMLHttpRequest over OK ssl in synchronous mode.
OLDNEW
« no previous file with comments | « no previous file | content/browser/frame_host/navigation_controller_impl.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698