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 <list> | 5 #include <list> |
6 #include <set> | 6 #include <set> |
7 | 7 |
8 #include "base/files/scoped_temp_dir.h" | 8 #include "base/files/scoped_temp_dir.h" |
9 #include "base/memory/ref_counted.h" | 9 #include "base/memory/ref_counted.h" |
10 #include "base/memory/weak_ptr.h" | 10 #include "base/memory/weak_ptr.h" |
(...skipping 195 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
206 const GURL& validated_url, | 206 const GURL& validated_url, |
207 bool is_error_page, | 207 bool is_error_page, |
208 bool is_iframe_srcdoc) override { | 208 bool is_iframe_srcdoc) override { |
209 if (validated_url != delay_url_ || !rvh_) | 209 if (validated_url != delay_url_ || !rvh_) |
210 return; | 210 return; |
211 | 211 |
212 if (has_user_gesture_) { | 212 if (has_user_gesture_) { |
213 rvh_->GetMainFrame()->ExecuteJavaScriptWithUserGestureForTests( | 213 rvh_->GetMainFrame()->ExecuteJavaScriptWithUserGestureForTests( |
214 base::UTF8ToUTF16(script_)); | 214 base::UTF8ToUTF16(script_)); |
215 } else { | 215 } else { |
216 rvh_->GetMainFrame()->ExecuteJavaScriptForTests( | 216 rvh_->GetMainFrame()->ExecuteJavaScript(base::UTF8ToUTF16(script_)); |
217 base::UTF8ToUTF16(script_)); | |
218 } | 217 } |
219 script_was_executed_ = true; | 218 script_was_executed_ = true; |
220 } | 219 } |
221 | 220 |
222 void DidCommitProvisionalLoadForFrame( | 221 void DidCommitProvisionalLoadForFrame( |
223 content::RenderFrameHost* render_frame_host, | 222 content::RenderFrameHost* render_frame_host, |
224 const GURL& url, | 223 const GURL& url, |
225 ui::PageTransition transition_type) override { | 224 ui::PageTransition transition_type) override { |
226 if (script_was_executed_ && | 225 if (script_was_executed_ && |
227 base::EndsWith(url.spec(), until_url_suffix_, | 226 base::EndsWith(url.spec(), until_url_suffix_, |
(...skipping 440 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
668 StartProvisionalLoadObserver cross_site_load(tab, cross_site_url); | 667 StartProvisionalLoadObserver cross_site_load(tab, cross_site_url); |
669 | 668 |
670 GURL same_site_url = | 669 GURL same_site_url = |
671 extension->GetResourceURL(extension->url(), "empty.html"); | 670 extension->GetResourceURL(extension->url(), "empty.html"); |
672 test_navigation_listener()->DelayRequestsForURL(same_site_url); | 671 test_navigation_listener()->DelayRequestsForURL(same_site_url); |
673 StartProvisionalLoadObserver same_site_load(tab, same_site_url); | 672 StartProvisionalLoadObserver same_site_load(tab, same_site_url); |
674 | 673 |
675 // Ensure the cross-site navigation has started, then execute JavaScript | 674 // Ensure the cross-site navigation has started, then execute JavaScript |
676 // to cause the renderer-initiated, non-user navigation. | 675 // to cause the renderer-initiated, non-user navigation. |
677 cross_site_load.Wait(); | 676 cross_site_load.Wait(); |
678 tab->GetMainFrame()->ExecuteJavaScriptForTests( | 677 tab->GetMainFrame()->ExecuteJavaScript(base::UTF8ToUTF16("navigate2()")); |
679 base::UTF8ToUTF16("navigate2()")); | |
680 | 678 |
681 // Wait for the same-site navigation to start and resume the cross-site | 679 // Wait for the same-site navigation to start and resume the cross-site |
682 // one, allowing it to commit. | 680 // one, allowing it to commit. |
683 same_site_load.Wait(); | 681 same_site_load.Wait(); |
684 test_navigation_listener()->Resume(cross_site_url); | 682 test_navigation_listener()->Resume(cross_site_url); |
685 | 683 |
686 ASSERT_TRUE(catcher.GetNextResult()) << catcher.message(); | 684 ASSERT_TRUE(catcher.GetNextResult()) << catcher.message(); |
687 } | 685 } |
688 | 686 |
689 IN_PROC_BROWSER_TEST_F(WebNavigationApiTest, CrossProcessFragment) { | 687 IN_PROC_BROWSER_TEST_F(WebNavigationApiTest, CrossProcessFragment) { |
(...skipping 71 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
761 "extensions/api_test/webnavigation/crash/b.html", | 759 "extensions/api_test/webnavigation/crash/b.html", |
762 embedded_test_server()->port())); | 760 embedded_test_server()->port())); |
763 ui_test_utils::NavigateToURL(browser(), url); | 761 ui_test_utils::NavigateToURL(browser(), url); |
764 | 762 |
765 ASSERT_TRUE(catcher.GetNextResult()) << catcher.message(); | 763 ASSERT_TRUE(catcher.GetNextResult()) << catcher.message(); |
766 } | 764 } |
767 | 765 |
768 #endif | 766 #endif |
769 | 767 |
770 } // namespace extensions | 768 } // namespace extensions |
OLD | NEW |