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

Side by Side Diff: content/renderer/render_view_browsertest.cc

Issue 1001043002: Refactor NavigationState to use NavigationParams (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Addressed comments Created 5 years, 9 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 | « content/renderer/render_frame_impl.cc ('k') | content/renderer/render_view_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 "base/basictypes.h" 5 #include "base/basictypes.h"
6 #include "base/bind.h" 6 #include "base/bind.h"
7 #include "base/callback.h" 7 #include "base/callback.h"
8 #include "base/memory/shared_memory.h" 8 #include "base/memory/shared_memory.h"
9 #include "base/strings/string_util.h" 9 #include "base/strings/string_util.h"
10 #include "base/strings/utf_string_conversions.h" 10 #include "base/strings/utf_string_conversions.h"
(...skipping 15 matching lines...) Expand all
26 #include "content/public/renderer/content_renderer_client.h" 26 #include "content/public/renderer/content_renderer_client.h"
27 #include "content/public/renderer/document_state.h" 27 #include "content/public/renderer/document_state.h"
28 #include "content/public/renderer/navigation_state.h" 28 #include "content/public/renderer/navigation_state.h"
29 #include "content/public/test/browser_test_utils.h" 29 #include "content/public/test/browser_test_utils.h"
30 #include "content/public/test/frame_load_waiter.h" 30 #include "content/public/test/frame_load_waiter.h"
31 #include "content/public/test/render_view_test.h" 31 #include "content/public/test/render_view_test.h"
32 #include "content/public/test/test_utils.h" 32 #include "content/public/test/test_utils.h"
33 #include "content/renderer/accessibility/renderer_accessibility.h" 33 #include "content/renderer/accessibility/renderer_accessibility.h"
34 #include "content/renderer/history_controller.h" 34 #include "content/renderer/history_controller.h"
35 #include "content/renderer/history_serialization.h" 35 #include "content/renderer/history_serialization.h"
36 #include "content/renderer/navigation_state_impl.h"
36 #include "content/renderer/render_process.h" 37 #include "content/renderer/render_process.h"
37 #include "content/renderer/render_view_impl.h" 38 #include "content/renderer/render_view_impl.h"
38 #include "content/shell/browser/shell.h" 39 #include "content/shell/browser/shell.h"
39 #include "content/shell/browser/shell_browser_context.h" 40 #include "content/shell/browser/shell_browser_context.h"
40 #include "content/test/mock_keyboard.h" 41 #include "content/test/mock_keyboard.h"
41 #include "net/base/net_errors.h" 42 #include "net/base/net_errors.h"
42 #include "net/cert/cert_status_flags.h" 43 #include "net/cert/cert_status_flags.h"
43 #include "testing/gtest/include/gtest/gtest.h" 44 #include "testing/gtest/include/gtest/gtest.h"
44 #include "third_party/WebKit/public/platform/WebData.h" 45 #include "third_party/WebKit/public/platform/WebData.h"
45 #include "third_party/WebKit/public/platform/WebHTTPBody.h" 46 #include "third_party/WebKit/public/platform/WebHTTPBody.h"
(...skipping 378 matching lines...) Expand 10 before | Expand all | Expand 10 after
424 EXPECT_EQ(blink::WebHTTPBody::Element::TypeData, element.type); 425 EXPECT_EQ(blink::WebHTTPBody::Element::TypeData, element.type);
425 EXPECT_EQ(length, element.data.size()); 426 EXPECT_EQ(length, element.data.size());
426 EXPECT_EQ(0, memcmp(raw_data, element.data.data(), length)); 427 EXPECT_EQ(0, memcmp(raw_data, element.data.data(), length));
427 } 428 }
428 429
429 TEST_F(RenderViewImplTest, DecideNavigationPolicy) { 430 TEST_F(RenderViewImplTest, DecideNavigationPolicy) {
430 WebUITestWebUIControllerFactory factory; 431 WebUITestWebUIControllerFactory factory;
431 WebUIControllerFactory::RegisterFactory(&factory); 432 WebUIControllerFactory::RegisterFactory(&factory);
432 433
433 DocumentState state; 434 DocumentState state;
434 state.set_navigation_state(NavigationState::CreateContentInitiated()); 435 state.set_navigation_state(NavigationStateImpl::CreateContentInitiated());
435 436
436 // Navigations to normal HTTP URLs can be handled locally. 437 // Navigations to normal HTTP URLs can be handled locally.
437 blink::WebURLRequest request(GURL("http://foo.com")); 438 blink::WebURLRequest request(GURL("http://foo.com"));
438 blink::WebFrameClient::NavigationPolicyInfo policy_info(request); 439 blink::WebFrameClient::NavigationPolicyInfo policy_info(request);
439 policy_info.frame = GetMainFrame(); 440 policy_info.frame = GetMainFrame();
440 policy_info.extraData = &state; 441 policy_info.extraData = &state;
441 policy_info.navigationType = blink::WebNavigationTypeLinkClicked; 442 policy_info.navigationType = blink::WebNavigationTypeLinkClicked;
442 policy_info.defaultPolicy = blink::WebNavigationPolicyCurrentTab; 443 policy_info.defaultPolicy = blink::WebNavigationPolicyCurrentTab;
443 blink::WebNavigationPolicy policy = frame()->decidePolicyForNavigation( 444 blink::WebNavigationPolicy policy = frame()->decidePolicyForNavigation(
444 policy_info); 445 policy_info);
(...skipping 16 matching lines...) Expand all
461 popup_policy_info.frame = GetMainFrame(); 462 popup_policy_info.frame = GetMainFrame();
462 popup_policy_info.extraData = &state; 463 popup_policy_info.extraData = &state;
463 popup_policy_info.navigationType = blink::WebNavigationTypeLinkClicked; 464 popup_policy_info.navigationType = blink::WebNavigationTypeLinkClicked;
464 popup_policy_info.defaultPolicy = blink::WebNavigationPolicyNewForegroundTab; 465 popup_policy_info.defaultPolicy = blink::WebNavigationPolicyNewForegroundTab;
465 policy = frame()->decidePolicyForNavigation(popup_policy_info); 466 policy = frame()->decidePolicyForNavigation(popup_policy_info);
466 EXPECT_EQ(blink::WebNavigationPolicyIgnore, policy); 467 EXPECT_EQ(blink::WebNavigationPolicyIgnore, policy);
467 } 468 }
468 469
469 TEST_F(RenderViewImplTest, DecideNavigationPolicyHandlesAllTopLevel) { 470 TEST_F(RenderViewImplTest, DecideNavigationPolicyHandlesAllTopLevel) {
470 DocumentState state; 471 DocumentState state;
471 state.set_navigation_state(NavigationState::CreateContentInitiated()); 472 state.set_navigation_state(NavigationStateImpl::CreateContentInitiated());
472 473
473 RendererPreferences prefs = view()->renderer_preferences(); 474 RendererPreferences prefs = view()->renderer_preferences();
474 prefs.browser_handles_all_top_level_requests = true; 475 prefs.browser_handles_all_top_level_requests = true;
475 view()->OnSetRendererPrefs(prefs); 476 view()->OnSetRendererPrefs(prefs);
476 477
477 const blink::WebNavigationType kNavTypes[] = { 478 const blink::WebNavigationType kNavTypes[] = {
478 blink::WebNavigationTypeLinkClicked, 479 blink::WebNavigationTypeLinkClicked,
479 blink::WebNavigationTypeFormSubmitted, 480 blink::WebNavigationTypeFormSubmitted,
480 blink::WebNavigationTypeBackForward, 481 blink::WebNavigationTypeBackForward,
481 blink::WebNavigationTypeReload, 482 blink::WebNavigationTypeReload,
(...skipping 14 matching lines...) Expand all
496 policy_info); 497 policy_info);
497 EXPECT_EQ(blink::WebNavigationPolicyIgnore, policy); 498 EXPECT_EQ(blink::WebNavigationPolicyIgnore, policy);
498 } 499 }
499 } 500 }
500 501
501 TEST_F(RenderViewImplTest, DecideNavigationPolicyForWebUI) { 502 TEST_F(RenderViewImplTest, DecideNavigationPolicyForWebUI) {
502 // Enable bindings to simulate a WebUI view. 503 // Enable bindings to simulate a WebUI view.
503 view()->OnAllowBindings(BINDINGS_POLICY_WEB_UI); 504 view()->OnAllowBindings(BINDINGS_POLICY_WEB_UI);
504 505
505 DocumentState state; 506 DocumentState state;
506 state.set_navigation_state(NavigationState::CreateContentInitiated()); 507 state.set_navigation_state(NavigationStateImpl::CreateContentInitiated());
507 508
508 // Navigations to normal HTTP URLs will be sent to browser process. 509 // Navigations to normal HTTP URLs will be sent to browser process.
509 blink::WebURLRequest request(GURL("http://foo.com")); 510 blink::WebURLRequest request(GURL("http://foo.com"));
510 blink::WebFrameClient::NavigationPolicyInfo policy_info(request); 511 blink::WebFrameClient::NavigationPolicyInfo policy_info(request);
511 policy_info.frame = GetMainFrame(); 512 policy_info.frame = GetMainFrame();
512 policy_info.extraData = &state; 513 policy_info.extraData = &state;
513 policy_info.navigationType = blink::WebNavigationTypeLinkClicked; 514 policy_info.navigationType = blink::WebNavigationTypeLinkClicked;
514 policy_info.defaultPolicy = blink::WebNavigationPolicyCurrentTab; 515 policy_info.defaultPolicy = blink::WebNavigationPolicyCurrentTab;
515 516
516 blink::WebNavigationPolicy policy = frame()->decidePolicyForNavigation( 517 blink::WebNavigationPolicy policy = frame()->decidePolicyForNavigation(
(...skipping 1817 matching lines...) Expand 10 before | Expand all | Expand 10 after
2334 frame()->OnNavigate(CommonNavigationParams(), StartNavigationParams(), 2335 frame()->OnNavigate(CommonNavigationParams(), StartNavigationParams(),
2335 CommitNavigationParams(), history_params); 2336 CommitNavigationParams(), history_params);
2336 2337
2337 // The history list in RenderView should have been updated. 2338 // The history list in RenderView should have been updated.
2338 EXPECT_EQ(1, view()->historyBackListCount()); 2339 EXPECT_EQ(1, view()->historyBackListCount());
2339 EXPECT_EQ(2, view()->historyBackListCount() + 2340 EXPECT_EQ(2, view()->historyBackListCount() +
2340 view()->historyForwardListCount() + 1); 2341 view()->historyForwardListCount() + 1);
2341 } 2342 }
2342 2343
2343 } // namespace content 2344 } // namespace content
OLDNEW
« no previous file with comments | « content/renderer/render_frame_impl.cc ('k') | content/renderer/render_view_impl.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698