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: content/renderer/render_view_browsertest.cc

Issue 63253002: Rename WebKit namespace to blink (part 3) (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 7 years, 1 month 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 | Annotate | Revision Log
« no previous file with comments | « content/renderer/render_thread_impl.cc ('k') | content/renderer/render_view_impl.h » ('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 6
7 #include "base/memory/shared_memory.h" 7 #include "base/memory/shared_memory.h"
8 #include "base/strings/string_util.h" 8 #include "base/strings/string_util.h"
9 #include "base/strings/utf_string_conversions.h" 9 #include "base/strings/utf_string_conversions.h"
10 #include "base/win/windows_version.h" 10 #include "base/win/windows_version.h"
(...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after
50 #include "ui/events/event.h" 50 #include "ui/events/event.h"
51 #endif 51 #endif
52 52
53 #if defined(USE_AURA) && defined(USE_X11) 53 #if defined(USE_AURA) && defined(USE_X11)
54 #include <X11/Xlib.h> 54 #include <X11/Xlib.h>
55 #include "ui/events/event_constants.h" 55 #include "ui/events/event_constants.h"
56 #include "ui/events/keycodes/keyboard_code_conversion.h" 56 #include "ui/events/keycodes/keyboard_code_conversion.h"
57 #include "ui/events/x/events_x_utils.h" 57 #include "ui/events/x/events_x_utils.h"
58 #endif 58 #endif
59 59
60 using WebKit::WebFrame; 60 using blink::WebFrame;
61 using WebKit::WebInputEvent; 61 using blink::WebInputEvent;
62 using WebKit::WebMouseEvent; 62 using blink::WebMouseEvent;
63 using WebKit::WebRuntimeFeatures; 63 using blink::WebRuntimeFeatures;
64 using WebKit::WebString; 64 using blink::WebString;
65 using WebKit::WebTextDirection; 65 using blink::WebTextDirection;
66 using WebKit::WebURLError; 66 using blink::WebURLError;
67 67
68 namespace content { 68 namespace content {
69 69
70 namespace { 70 namespace {
71 71
72 #if defined(USE_AURA) && defined(USE_X11) 72 #if defined(USE_AURA) && defined(USE_X11)
73 // Converts MockKeyboard::Modifiers to ui::EventFlags. 73 // Converts MockKeyboard::Modifiers to ui::EventFlags.
74 int ConvertMockKeyboardModifier(MockKeyboard::Modifiers modifiers) { 74 int ConvertMockKeyboardModifier(MockKeyboard::Modifiers modifiers) {
75 static struct ModifierMap { 75 static struct ModifierMap {
76 MockKeyboard::Modifiers src; 76 MockKeyboard::Modifiers src;
(...skipping 163 matching lines...) Expand 10 before | Expand all | Expand 10 after
240 guint32 unicode_key = 0; 240 guint32 unicode_key = 0;
241 for (size_t i = 0; i < events.size(); ++i) { 241 for (size_t i = 0; i < events.size(); ++i) {
242 // Only send the up/down events for key press itself (skip the up/down 242 // Only send the up/down events for key press itself (skip the up/down
243 // events for the modifier keys). 243 // events for the modifier keys).
244 if ((i + 1) == (events.size() / 2) || i == (events.size() / 2)) { 244 if ((i + 1) == (events.size() / 2) || i == (events.size() / 2)) {
245 unicode_key = gdk_keyval_to_unicode(events[i]->key.keyval); 245 unicode_key = gdk_keyval_to_unicode(events[i]->key.keyval);
246 NativeWebKeyboardEvent webkit_event(events[i]); 246 NativeWebKeyboardEvent webkit_event(events[i]);
247 SendNativeKeyEvent(webkit_event); 247 SendNativeKeyEvent(webkit_event);
248 248
249 // Need to add a char event after the key down. 249 // Need to add a char event after the key down.
250 if (webkit_event.type == WebKit::WebInputEvent::RawKeyDown) { 250 if (webkit_event.type == blink::WebInputEvent::RawKeyDown) {
251 NativeWebKeyboardEvent char_event = webkit_event; 251 NativeWebKeyboardEvent char_event = webkit_event;
252 char_event.type = WebKit::WebInputEvent::Char; 252 char_event.type = blink::WebInputEvent::Char;
253 char_event.skip_in_browser = true; 253 char_event.skip_in_browser = true;
254 SendNativeKeyEvent(char_event); 254 SendNativeKeyEvent(char_event);
255 } 255 }
256 } 256 }
257 gdk_event_free(events[i]); 257 gdk_event_free(events[i]);
258 } 258 }
259 259
260 output->assign(1, static_cast<char16>(unicode_key)); 260 output->assign(1, static_cast<char16>(unicode_key));
261 return 1; 261 return 1;
262 #else 262 #else
(...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after
315 render_thread_->sink().GetUniqueMessageMatching( 315 render_thread_->sink().GetUniqueMessageMatching(
316 ViewHostMsg_FrameNavigate::ID); 316 ViewHostMsg_FrameNavigate::ID);
317 EXPECT_TRUE(frame_navigate_msg); 317 EXPECT_TRUE(frame_navigate_msg);
318 318
319 ViewHostMsg_FrameNavigate::Param host_nav_params; 319 ViewHostMsg_FrameNavigate::Param host_nav_params;
320 ViewHostMsg_FrameNavigate::Read(frame_navigate_msg, &host_nav_params); 320 ViewHostMsg_FrameNavigate::Read(frame_navigate_msg, &host_nav_params);
321 EXPECT_TRUE(host_nav_params.a.is_post); 321 EXPECT_TRUE(host_nav_params.a.is_post);
322 322
323 // Check post data sent to browser matches 323 // Check post data sent to browser matches
324 EXPECT_TRUE(host_nav_params.a.page_state.IsValid()); 324 EXPECT_TRUE(host_nav_params.a.page_state.IsValid());
325 const WebKit::WebHistoryItem item = PageStateToHistoryItem( 325 const blink::WebHistoryItem item = PageStateToHistoryItem(
326 host_nav_params.a.page_state); 326 host_nav_params.a.page_state);
327 WebKit::WebHTTPBody body = item.httpBody(); 327 blink::WebHTTPBody body = item.httpBody();
328 WebKit::WebHTTPBody::Element element; 328 blink::WebHTTPBody::Element element;
329 bool successful = body.elementAt(0, element); 329 bool successful = body.elementAt(0, element);
330 EXPECT_TRUE(successful); 330 EXPECT_TRUE(successful);
331 EXPECT_EQ(WebKit::WebHTTPBody::Element::TypeData, element.type); 331 EXPECT_EQ(blink::WebHTTPBody::Element::TypeData, element.type);
332 EXPECT_EQ(length, element.data.size()); 332 EXPECT_EQ(length, element.data.size());
333 EXPECT_EQ(0, memcmp(raw_data, element.data.data(), length)); 333 EXPECT_EQ(0, memcmp(raw_data, element.data.data(), length));
334 } 334 }
335 335
336 TEST_F(RenderViewImplTest, DecideNavigationPolicy) { 336 TEST_F(RenderViewImplTest, DecideNavigationPolicy) {
337 WebUITestWebUIControllerFactory factory; 337 WebUITestWebUIControllerFactory factory;
338 WebUIControllerFactory::RegisterFactory(&factory); 338 WebUIControllerFactory::RegisterFactory(&factory);
339 339
340 DocumentState state; 340 DocumentState state;
341 state.set_navigation_state(NavigationState::CreateContentInitiated()); 341 state.set_navigation_state(NavigationState::CreateContentInitiated());
342 342
343 // Navigations to normal HTTP URLs can be handled locally. 343 // Navigations to normal HTTP URLs can be handled locally.
344 WebKit::WebURLRequest request(GURL("http://foo.com")); 344 blink::WebURLRequest request(GURL("http://foo.com"));
345 WebKit::WebNavigationPolicy policy = view()->decidePolicyForNavigation( 345 blink::WebNavigationPolicy policy = view()->decidePolicyForNavigation(
346 GetMainFrame(), 346 GetMainFrame(),
347 &state, 347 &state,
348 request, 348 request,
349 WebKit::WebNavigationTypeLinkClicked, 349 blink::WebNavigationTypeLinkClicked,
350 WebKit::WebNavigationPolicyCurrentTab, 350 blink::WebNavigationPolicyCurrentTab,
351 false); 351 false);
352 EXPECT_EQ(WebKit::WebNavigationPolicyCurrentTab, policy); 352 EXPECT_EQ(blink::WebNavigationPolicyCurrentTab, policy);
353 353
354 // Verify that form posts to WebUI URLs will be sent to the browser process. 354 // Verify that form posts to WebUI URLs will be sent to the browser process.
355 WebKit::WebURLRequest form_request(GURL("chrome://foo")); 355 blink::WebURLRequest form_request(GURL("chrome://foo"));
356 form_request.setHTTPMethod("POST"); 356 form_request.setHTTPMethod("POST");
357 policy = view()->decidePolicyForNavigation( 357 policy = view()->decidePolicyForNavigation(
358 GetMainFrame(), 358 GetMainFrame(),
359 &state, 359 &state,
360 form_request, 360 form_request,
361 WebKit::WebNavigationTypeFormSubmitted, 361 blink::WebNavigationTypeFormSubmitted,
362 WebKit::WebNavigationPolicyCurrentTab, 362 blink::WebNavigationPolicyCurrentTab,
363 false); 363 false);
364 EXPECT_EQ(WebKit::WebNavigationPolicyIgnore, policy); 364 EXPECT_EQ(blink::WebNavigationPolicyIgnore, policy);
365 365
366 // Verify that popup links to WebUI URLs also are sent to browser. 366 // Verify that popup links to WebUI URLs also are sent to browser.
367 WebKit::WebURLRequest popup_request(GURL("chrome://foo")); 367 blink::WebURLRequest popup_request(GURL("chrome://foo"));
368 policy = view()->decidePolicyForNavigation( 368 policy = view()->decidePolicyForNavigation(
369 GetMainFrame(), 369 GetMainFrame(),
370 &state, 370 &state,
371 popup_request, 371 popup_request,
372 WebKit::WebNavigationTypeLinkClicked, 372 blink::WebNavigationTypeLinkClicked,
373 WebKit::WebNavigationPolicyNewForegroundTab, 373 blink::WebNavigationPolicyNewForegroundTab,
374 false); 374 false);
375 EXPECT_EQ(WebKit::WebNavigationPolicyIgnore, policy); 375 EXPECT_EQ(blink::WebNavigationPolicyIgnore, policy);
376 } 376 }
377 377
378 TEST_F(RenderViewImplTest, DecideNavigationPolicyForWebUI) { 378 TEST_F(RenderViewImplTest, DecideNavigationPolicyForWebUI) {
379 // Enable bindings to simulate a WebUI view. 379 // Enable bindings to simulate a WebUI view.
380 view()->OnAllowBindings(BINDINGS_POLICY_WEB_UI); 380 view()->OnAllowBindings(BINDINGS_POLICY_WEB_UI);
381 381
382 DocumentState state; 382 DocumentState state;
383 state.set_navigation_state(NavigationState::CreateContentInitiated()); 383 state.set_navigation_state(NavigationState::CreateContentInitiated());
384 384
385 // Navigations to normal HTTP URLs will be sent to browser process. 385 // Navigations to normal HTTP URLs will be sent to browser process.
386 WebKit::WebURLRequest request(GURL("http://foo.com")); 386 blink::WebURLRequest request(GURL("http://foo.com"));
387 WebKit::WebNavigationPolicy policy = view()->decidePolicyForNavigation( 387 blink::WebNavigationPolicy policy = view()->decidePolicyForNavigation(
388 GetMainFrame(), 388 GetMainFrame(),
389 &state, 389 &state,
390 request, 390 request,
391 WebKit::WebNavigationTypeLinkClicked, 391 blink::WebNavigationTypeLinkClicked,
392 WebKit::WebNavigationPolicyCurrentTab, 392 blink::WebNavigationPolicyCurrentTab,
393 false); 393 false);
394 EXPECT_EQ(WebKit::WebNavigationPolicyIgnore, policy); 394 EXPECT_EQ(blink::WebNavigationPolicyIgnore, policy);
395 395
396 // Navigations to WebUI URLs will also be sent to browser process. 396 // Navigations to WebUI URLs will also be sent to browser process.
397 WebKit::WebURLRequest webui_request(GURL("chrome://foo")); 397 blink::WebURLRequest webui_request(GURL("chrome://foo"));
398 policy = view()->decidePolicyForNavigation( 398 policy = view()->decidePolicyForNavigation(
399 GetMainFrame(), 399 GetMainFrame(),
400 &state, 400 &state,
401 webui_request, 401 webui_request,
402 WebKit::WebNavigationTypeLinkClicked, 402 blink::WebNavigationTypeLinkClicked,
403 WebKit::WebNavigationPolicyCurrentTab, 403 blink::WebNavigationPolicyCurrentTab,
404 false); 404 false);
405 EXPECT_EQ(WebKit::WebNavigationPolicyIgnore, policy); 405 EXPECT_EQ(blink::WebNavigationPolicyIgnore, policy);
406 406
407 // Verify that form posts to data URLs will be sent to the browser process. 407 // Verify that form posts to data URLs will be sent to the browser process.
408 WebKit::WebURLRequest data_request(GURL("data:text/html,foo")); 408 blink::WebURLRequest data_request(GURL("data:text/html,foo"));
409 data_request.setHTTPMethod("POST"); 409 data_request.setHTTPMethod("POST");
410 policy = view()->decidePolicyForNavigation( 410 policy = view()->decidePolicyForNavigation(
411 GetMainFrame(), 411 GetMainFrame(),
412 &state, 412 &state,
413 data_request, 413 data_request,
414 WebKit::WebNavigationTypeFormSubmitted, 414 blink::WebNavigationTypeFormSubmitted,
415 WebKit::WebNavigationPolicyCurrentTab, 415 blink::WebNavigationPolicyCurrentTab,
416 false); 416 false);
417 EXPECT_EQ(WebKit::WebNavigationPolicyIgnore, policy); 417 EXPECT_EQ(blink::WebNavigationPolicyIgnore, policy);
418 418
419 // Verify that a popup that creates a view first and then navigates to a 419 // Verify that a popup that creates a view first and then navigates to a
420 // normal HTTP URL will be sent to the browser process, even though the 420 // normal HTTP URL will be sent to the browser process, even though the
421 // new view does not have any enabled_bindings_. 421 // new view does not have any enabled_bindings_.
422 WebKit::WebURLRequest popup_request(GURL("http://foo.com")); 422 blink::WebURLRequest popup_request(GURL("http://foo.com"));
423 WebKit::WebView* new_web_view = view()->createView( 423 blink::WebView* new_web_view = view()->createView(
424 GetMainFrame(), popup_request, WebKit::WebWindowFeatures(), "foo", 424 GetMainFrame(), popup_request, blink::WebWindowFeatures(), "foo",
425 WebKit::WebNavigationPolicyNewForegroundTab); 425 blink::WebNavigationPolicyNewForegroundTab);
426 RenderViewImpl* new_view = RenderViewImpl::FromWebView(new_web_view); 426 RenderViewImpl* new_view = RenderViewImpl::FromWebView(new_web_view);
427 policy = new_view->decidePolicyForNavigation( 427 policy = new_view->decidePolicyForNavigation(
428 new_web_view->mainFrame(), 428 new_web_view->mainFrame(),
429 &state, 429 &state,
430 popup_request, 430 popup_request,
431 WebKit::WebNavigationTypeLinkClicked, 431 blink::WebNavigationTypeLinkClicked,
432 WebKit::WebNavigationPolicyNewForegroundTab, 432 blink::WebNavigationPolicyNewForegroundTab,
433 false); 433 false);
434 EXPECT_EQ(WebKit::WebNavigationPolicyIgnore, policy); 434 EXPECT_EQ(blink::WebNavigationPolicyIgnore, policy);
435 435
436 // Clean up after the new view so we don't leak it. 436 // Clean up after the new view so we don't leak it.
437 new_view->Close(); 437 new_view->Close();
438 new_view->Release(); 438 new_view->Release();
439 } 439 }
440 440
441 // Ensure the RenderViewImpl sends an ACK to a SwapOut request, even if it is 441 // Ensure the RenderViewImpl sends an ACK to a SwapOut request, even if it is
442 // already swapped out. http://crbug.com/93427. 442 // already swapped out. http://crbug.com/93427.
443 TEST_F(RenderViewImplTest, SendSwapOutACK) { 443 TEST_F(RenderViewImplTest, SendSwapOutACK) {
444 LoadHTML("<div>Page A</div>"); 444 LoadHTML("<div>Page A</div>");
(...skipping 555 matching lines...) Expand 10 before | Expand all | Expand 10 after
1000 break; 1000 break;
1001 1001
1002 case IME_SETFOCUS: 1002 case IME_SETFOCUS:
1003 // Update the window focus. 1003 // Update the window focus.
1004 view()->OnSetFocus(ime_message->enable); 1004 view()->OnSetFocus(ime_message->enable);
1005 break; 1005 break;
1006 1006
1007 case IME_SETCOMPOSITION: 1007 case IME_SETCOMPOSITION:
1008 view()->OnImeSetComposition( 1008 view()->OnImeSetComposition(
1009 WideToUTF16Hack(ime_message->ime_string), 1009 WideToUTF16Hack(ime_message->ime_string),
1010 std::vector<WebKit::WebCompositionUnderline>(), 1010 std::vector<blink::WebCompositionUnderline>(),
1011 ime_message->selection_start, 1011 ime_message->selection_start,
1012 ime_message->selection_end); 1012 ime_message->selection_end);
1013 break; 1013 break;
1014 1014
1015 case IME_CONFIRMCOMPOSITION: 1015 case IME_CONFIRMCOMPOSITION:
1016 view()->OnImeConfirmComposition( 1016 view()->OnImeConfirmComposition(
1017 WideToUTF16Hack(ime_message->ime_string), 1017 WideToUTF16Hack(ime_message->ime_string),
1018 gfx::Range::InvalidRange(), 1018 gfx::Range::InvalidRange(),
1019 false); 1019 false);
1020 break; 1020 break;
1021 1021
1022 case IME_CANCELCOMPOSITION: 1022 case IME_CANCELCOMPOSITION:
1023 view()->OnImeSetComposition( 1023 view()->OnImeSetComposition(
1024 string16(), 1024 string16(),
1025 std::vector<WebKit::WebCompositionUnderline>(), 1025 std::vector<blink::WebCompositionUnderline>(),
1026 0, 0); 1026 0, 0);
1027 break; 1027 break;
1028 } 1028 }
1029 1029
1030 // Update the status of our IME back-end. 1030 // Update the status of our IME back-end.
1031 // TODO(hbono): we should verify messages to be sent from the back-end. 1031 // TODO(hbono): we should verify messages to be sent from the back-end.
1032 view()->UpdateTextInputType(); 1032 view()->UpdateTextInputType();
1033 ProcessPendingMessages(); 1033 ProcessPendingMessages();
1034 render_thread_->sink().ClearMessages(); 1034 render_thread_->sink().ClearMessages();
1035 1035
(...skipping 23 matching lines...) Expand all
1059 "<textarea id=\"test\"></textarea>" 1059 "<textarea id=\"test\"></textarea>"
1060 "<div id=\"result\" contenteditable=\"true\"></div>" 1060 "<div id=\"result\" contenteditable=\"true\"></div>"
1061 "</body>" 1061 "</body>"
1062 "</html>"); 1062 "</html>");
1063 render_thread_->sink().ClearMessages(); 1063 render_thread_->sink().ClearMessages();
1064 1064
1065 static const struct { 1065 static const struct {
1066 WebTextDirection direction; 1066 WebTextDirection direction;
1067 const wchar_t* expected_result; 1067 const wchar_t* expected_result;
1068 } kTextDirection[] = { 1068 } kTextDirection[] = {
1069 { WebKit::WebTextDirectionRightToLeft, L"\x000A" L"rtl,rtl" }, 1069 { blink::WebTextDirectionRightToLeft, L"\x000A" L"rtl,rtl" },
1070 { WebKit::WebTextDirectionLeftToRight, L"\x000A" L"ltr,ltr" }, 1070 { blink::WebTextDirectionLeftToRight, L"\x000A" L"ltr,ltr" },
1071 }; 1071 };
1072 for (size_t i = 0; i < ARRAYSIZE_UNSAFE(kTextDirection); ++i) { 1072 for (size_t i = 0; i < ARRAYSIZE_UNSAFE(kTextDirection); ++i) {
1073 // Set the text direction of the <textarea> element. 1073 // Set the text direction of the <textarea> element.
1074 ExecuteJavaScript("document.getElementById('test').focus();"); 1074 ExecuteJavaScript("document.getElementById('test').focus();");
1075 view()->OnSetTextDirection(kTextDirection[i].direction); 1075 view()->OnSetTextDirection(kTextDirection[i].direction);
1076 1076
1077 // Write the values of its DOM 'dir' attribute and its CSS 'direction' 1077 // Write the values of its DOM 'dir' attribute and its CSS 'direction'
1078 // property to the <div> element. 1078 // property to the <div> element.
1079 ExecuteJavaScript("var result = document.getElementById('result');" 1079 ExecuteJavaScript("var result = document.getElementById('result');"
1080 "var node = document.getElementById('test');" 1080 "var node = document.getElementById('test');"
(...skipping 435 matching lines...) Expand 10 before | Expand all | Expand 10 after
1516 1516
1517 // A cancellation occurred. 1517 // A cancellation occurred.
1518 view()->didFailProvisionalLoad(web_frame, error); 1518 view()->didFailProvisionalLoad(web_frame, error);
1519 // Frame should stay in view-source mode. 1519 // Frame should stay in view-source mode.
1520 EXPECT_TRUE(web_frame->isViewSourceModeEnabled()); 1520 EXPECT_TRUE(web_frame->isViewSourceModeEnabled());
1521 } 1521 }
1522 1522
1523 // Regression test for http://crbug.com/41562 1523 // Regression test for http://crbug.com/41562
1524 TEST_F(RenderViewImplTest, UpdateTargetURLWithInvalidURL) { 1524 TEST_F(RenderViewImplTest, UpdateTargetURLWithInvalidURL) {
1525 const GURL invalid_gurl("http://"); 1525 const GURL invalid_gurl("http://");
1526 view()->setMouseOverURL(WebKit::WebURL(invalid_gurl)); 1526 view()->setMouseOverURL(blink::WebURL(invalid_gurl));
1527 EXPECT_EQ(invalid_gurl, view()->target_url_); 1527 EXPECT_EQ(invalid_gurl, view()->target_url_);
1528 } 1528 }
1529 1529
1530 TEST_F(RenderViewImplTest, SetHistoryLengthAndPrune) { 1530 TEST_F(RenderViewImplTest, SetHistoryLengthAndPrune) {
1531 int expected_page_id = -1; 1531 int expected_page_id = -1;
1532 1532
1533 // No history to merge and no committed pages. 1533 // No history to merge and no committed pages.
1534 view()->OnSetHistoryLengthAndPrune(0, -1); 1534 view()->OnSetHistoryLengthAndPrune(0, -1);
1535 EXPECT_EQ(0, view()->history_list_length_); 1535 EXPECT_EQ(0, view()->history_list_length_);
1536 EXPECT_EQ(-1, view()->history_list_offset_); 1536 EXPECT_EQ(-1, view()->history_list_offset_);
(...skipping 168 matching lines...) Expand 10 before | Expand all | Expand 10 after
1705 // Now simulate the corresponding up event which should display the menu 1705 // Now simulate the corresponding up event which should display the menu
1706 mouse_event.type = WebInputEvent::MouseUp; 1706 mouse_event.type = WebInputEvent::MouseUp;
1707 SendWebMouseEvent(mouse_event); 1707 SendWebMouseEvent(mouse_event);
1708 1708
1709 EXPECT_TRUE(render_thread_->sink().GetUniqueMessageMatching( 1709 EXPECT_TRUE(render_thread_->sink().GetUniqueMessageMatching(
1710 ViewHostMsg_ContextMenu::ID)); 1710 ViewHostMsg_ContextMenu::ID));
1711 } 1711 }
1712 1712
1713 TEST_F(RenderViewImplTest, TestBackForward) { 1713 TEST_F(RenderViewImplTest, TestBackForward) {
1714 LoadHTML("<div id=pagename>Page A</div>"); 1714 LoadHTML("<div id=pagename>Page A</div>");
1715 WebKit::WebHistoryItem page_a_item = GetMainFrame()->currentHistoryItem(); 1715 blink::WebHistoryItem page_a_item = GetMainFrame()->currentHistoryItem();
1716 int was_page_a = -1; 1716 int was_page_a = -1;
1717 string16 check_page_a = 1717 string16 check_page_a =
1718 ASCIIToUTF16( 1718 ASCIIToUTF16(
1719 "Number(document.getElementById('pagename').innerHTML == 'Page A')"); 1719 "Number(document.getElementById('pagename').innerHTML == 'Page A')");
1720 EXPECT_TRUE(ExecuteJavaScriptAndReturnIntValue(check_page_a, &was_page_a)); 1720 EXPECT_TRUE(ExecuteJavaScriptAndReturnIntValue(check_page_a, &was_page_a));
1721 EXPECT_EQ(1, was_page_a); 1721 EXPECT_EQ(1, was_page_a);
1722 1722
1723 LoadHTML("<div id=pagename>Page B</div>"); 1723 LoadHTML("<div id=pagename>Page B</div>");
1724 int was_page_b = -1; 1724 int was_page_b = -1;
1725 string16 check_page_b = 1725 string16 check_page_b =
1726 ASCIIToUTF16( 1726 ASCIIToUTF16(
1727 "Number(document.getElementById('pagename').innerHTML == 'Page B')"); 1727 "Number(document.getElementById('pagename').innerHTML == 'Page B')");
1728 EXPECT_TRUE(ExecuteJavaScriptAndReturnIntValue(check_page_b, &was_page_b)); 1728 EXPECT_TRUE(ExecuteJavaScriptAndReturnIntValue(check_page_b, &was_page_b));
1729 EXPECT_EQ(1, was_page_b); 1729 EXPECT_EQ(1, was_page_b);
1730 1730
1731 LoadHTML("<div id=pagename>Page C</div>"); 1731 LoadHTML("<div id=pagename>Page C</div>");
1732 int was_page_c = -1; 1732 int was_page_c = -1;
1733 string16 check_page_c = 1733 string16 check_page_c =
1734 ASCIIToUTF16( 1734 ASCIIToUTF16(
1735 "Number(document.getElementById('pagename').innerHTML == 'Page C')"); 1735 "Number(document.getElementById('pagename').innerHTML == 'Page C')");
1736 EXPECT_TRUE(ExecuteJavaScriptAndReturnIntValue(check_page_c, &was_page_c)); 1736 EXPECT_TRUE(ExecuteJavaScriptAndReturnIntValue(check_page_c, &was_page_c));
1737 EXPECT_EQ(1, was_page_b); 1737 EXPECT_EQ(1, was_page_b);
1738 1738
1739 WebKit::WebHistoryItem forward_item = GetMainFrame()->currentHistoryItem(); 1739 blink::WebHistoryItem forward_item = GetMainFrame()->currentHistoryItem();
1740 GoBack(GetMainFrame()->previousHistoryItem()); 1740 GoBack(GetMainFrame()->previousHistoryItem());
1741 EXPECT_TRUE(ExecuteJavaScriptAndReturnIntValue(check_page_b, &was_page_b)); 1741 EXPECT_TRUE(ExecuteJavaScriptAndReturnIntValue(check_page_b, &was_page_b));
1742 EXPECT_EQ(1, was_page_b); 1742 EXPECT_EQ(1, was_page_b);
1743 1743
1744 GoForward(forward_item); 1744 GoForward(forward_item);
1745 EXPECT_TRUE(ExecuteJavaScriptAndReturnIntValue(check_page_c, &was_page_c)); 1745 EXPECT_TRUE(ExecuteJavaScriptAndReturnIntValue(check_page_c, &was_page_c));
1746 EXPECT_EQ(1, was_page_c); 1746 EXPECT_EQ(1, was_page_c);
1747 1747
1748 GoBack(GetMainFrame()->previousHistoryItem()); 1748 GoBack(GetMainFrame()->previousHistoryItem());
1749 EXPECT_TRUE(ExecuteJavaScriptAndReturnIntValue(check_page_b, &was_page_b)); 1749 EXPECT_TRUE(ExecuteJavaScriptAndReturnIntValue(check_page_b, &was_page_b));
(...skipping 15 matching lines...) Expand all
1765 #if defined(OS_WIN) 1765 #if defined(OS_WIN)
1766 // http://crbug.com/304193 1766 // http://crbug.com/304193
1767 if (base::win::GetVersion() < base::win::VERSION_VISTA) 1767 if (base::win::GetVersion() < base::win::VERSION_VISTA)
1768 return; 1768 return;
1769 #endif 1769 #endif
1770 1770
1771 LoadHTML("<textarea id=\"test\"></textarea>"); 1771 LoadHTML("<textarea id=\"test\"></textarea>");
1772 ExecuteJavaScript("document.getElementById('test').focus();"); 1772 ExecuteJavaScript("document.getElementById('test').focus();");
1773 1773
1774 const string16 empty_string = UTF8ToUTF16(""); 1774 const string16 empty_string = UTF8ToUTF16("");
1775 const std::vector<WebKit::WebCompositionUnderline> empty_underline; 1775 const std::vector<blink::WebCompositionUnderline> empty_underline;
1776 std::vector<gfx::Rect> bounds; 1776 std::vector<gfx::Rect> bounds;
1777 view()->OnSetFocus(true); 1777 view()->OnSetFocus(true);
1778 view()->OnSetInputMethodActive(true); 1778 view()->OnSetInputMethodActive(true);
1779 1779
1780 // ASCII composition 1780 // ASCII composition
1781 const string16 ascii_composition = UTF8ToUTF16("aiueo"); 1781 const string16 ascii_composition = UTF8ToUTF16("aiueo");
1782 view()->OnImeSetComposition(ascii_composition, empty_underline, 0, 0); 1782 view()->OnImeSetComposition(ascii_composition, empty_underline, 0, 0);
1783 view()->GetCompositionCharacterBounds(&bounds); 1783 view()->GetCompositionCharacterBounds(&bounds);
1784 ASSERT_EQ(ascii_composition.size(), bounds.size()); 1784 ASSERT_EQ(ascii_composition.size(), bounds.size());
1785 for (size_t i = 0; i < bounds.size(); ++i) 1785 for (size_t i = 0; i < bounds.size(); ++i)
(...skipping 81 matching lines...) Expand 10 before | Expand all | Expand 10 after
1867 // Load an HTML page consisting of an input field. 1867 // Load an HTML page consisting of an input field.
1868 LoadHTML("<html>" 1868 LoadHTML("<html>"
1869 "<head>" 1869 "<head>"
1870 "</head>" 1870 "</head>"
1871 "<body>" 1871 "<body>"
1872 "<input id=\"test1\" value=\"some test text hello\"></input>" 1872 "<input id=\"test1\" value=\"some test text hello\"></input>"
1873 "</body>" 1873 "</body>"
1874 "</html>"); 1874 "</html>");
1875 ExecuteJavaScript("document.getElementById('test1').focus();"); 1875 ExecuteJavaScript("document.getElementById('test1').focus();");
1876 view()->OnSetEditableSelectionOffsets(4, 8); 1876 view()->OnSetEditableSelectionOffsets(4, 8);
1877 const std::vector<WebKit::WebCompositionUnderline> empty_underline; 1877 const std::vector<blink::WebCompositionUnderline> empty_underline;
1878 view()->OnSetCompositionFromExistingText(7, 10, empty_underline); 1878 view()->OnSetCompositionFromExistingText(7, 10, empty_underline);
1879 WebKit::WebTextInputInfo info = view()->webview()->textInputInfo(); 1879 blink::WebTextInputInfo info = view()->webview()->textInputInfo();
1880 EXPECT_EQ(4, info.selectionStart); 1880 EXPECT_EQ(4, info.selectionStart);
1881 EXPECT_EQ(8, info.selectionEnd); 1881 EXPECT_EQ(8, info.selectionEnd);
1882 EXPECT_EQ(7, info.compositionStart); 1882 EXPECT_EQ(7, info.compositionStart);
1883 EXPECT_EQ(10, info.compositionEnd); 1883 EXPECT_EQ(10, info.compositionEnd);
1884 view()->OnUnselect(); 1884 view()->OnUnselect();
1885 info = view()->webview()->textInputInfo(); 1885 info = view()->webview()->textInputInfo();
1886 EXPECT_EQ(0, info.selectionStart); 1886 EXPECT_EQ(0, info.selectionStart);
1887 EXPECT_EQ(0, info.selectionEnd); 1887 EXPECT_EQ(0, info.selectionEnd);
1888 } 1888 }
1889 1889
1890 1890
1891 TEST_F(RenderViewImplTest, OnExtendSelectionAndDelete) { 1891 TEST_F(RenderViewImplTest, OnExtendSelectionAndDelete) {
1892 // Load an HTML page consisting of an input field. 1892 // Load an HTML page consisting of an input field.
1893 LoadHTML("<html>" 1893 LoadHTML("<html>"
1894 "<head>" 1894 "<head>"
1895 "</head>" 1895 "</head>"
1896 "<body>" 1896 "<body>"
1897 "<input id=\"test1\" value=\"abcdefghijklmnopqrstuvwxyz\"></input>" 1897 "<input id=\"test1\" value=\"abcdefghijklmnopqrstuvwxyz\"></input>"
1898 "</body>" 1898 "</body>"
1899 "</html>"); 1899 "</html>");
1900 ExecuteJavaScript("document.getElementById('test1').focus();"); 1900 ExecuteJavaScript("document.getElementById('test1').focus();");
1901 view()->OnSetEditableSelectionOffsets(10, 10); 1901 view()->OnSetEditableSelectionOffsets(10, 10);
1902 view()->OnExtendSelectionAndDelete(3, 4); 1902 view()->OnExtendSelectionAndDelete(3, 4);
1903 WebKit::WebTextInputInfo info = view()->webview()->textInputInfo(); 1903 blink::WebTextInputInfo info = view()->webview()->textInputInfo();
1904 EXPECT_EQ("abcdefgopqrstuvwxyz", info.value); 1904 EXPECT_EQ("abcdefgopqrstuvwxyz", info.value);
1905 EXPECT_EQ(7, info.selectionStart); 1905 EXPECT_EQ(7, info.selectionStart);
1906 EXPECT_EQ(7, info.selectionEnd); 1906 EXPECT_EQ(7, info.selectionEnd);
1907 view()->OnSetEditableSelectionOffsets(4, 8); 1907 view()->OnSetEditableSelectionOffsets(4, 8);
1908 view()->OnExtendSelectionAndDelete(2, 5); 1908 view()->OnExtendSelectionAndDelete(2, 5);
1909 info = view()->webview()->textInputInfo(); 1909 info = view()->webview()->textInputInfo();
1910 EXPECT_EQ("abuvwxyz", info.value); 1910 EXPECT_EQ("abuvwxyz", info.value);
1911 EXPECT_EQ(2, info.selectionStart); 1911 EXPECT_EQ(2, info.selectionStart);
1912 EXPECT_EQ(2, info.selectionEnd); 1912 EXPECT_EQ(2, info.selectionEnd);
1913 } 1913 }
(...skipping 30 matching lines...) Expand all
1944 EXPECT_TRUE(view()->main_render_frame_.get()); 1944 EXPECT_TRUE(view()->main_render_frame_.get());
1945 } 1945 }
1946 1946
1947 TEST_F(RenderViewImplTest, GetSSLStatusOfFrame) { 1947 TEST_F(RenderViewImplTest, GetSSLStatusOfFrame) {
1948 LoadHTML("<!DOCTYPE html><html><body></body></html>"); 1948 LoadHTML("<!DOCTYPE html><html><body></body></html>");
1949 1949
1950 WebFrame* frame = GetMainFrame(); 1950 WebFrame* frame = GetMainFrame();
1951 SSLStatus ssl_status = view()->GetSSLStatusOfFrame(frame); 1951 SSLStatus ssl_status = view()->GetSSLStatusOfFrame(frame);
1952 EXPECT_FALSE(net::IsCertStatusError(ssl_status.cert_status)); 1952 EXPECT_FALSE(net::IsCertStatusError(ssl_status.cert_status));
1953 1953
1954 const_cast<WebKit::WebURLResponse&>(frame->dataSource()->response()). 1954 const_cast<blink::WebURLResponse&>(frame->dataSource()->response()).
1955 setSecurityInfo( 1955 setSecurityInfo(
1956 SerializeSecurityInfo(0, net::CERT_STATUS_ALL_ERRORS, 0, 0)); 1956 SerializeSecurityInfo(0, net::CERT_STATUS_ALL_ERRORS, 0, 0));
1957 ssl_status = view()->GetSSLStatusOfFrame(frame); 1957 ssl_status = view()->GetSSLStatusOfFrame(frame);
1958 EXPECT_TRUE(net::IsCertStatusError(ssl_status.cert_status)); 1958 EXPECT_TRUE(net::IsCertStatusError(ssl_status.cert_status));
1959 } 1959 }
1960 1960
1961 class SuppressErrorPageTest : public RenderViewTest { 1961 class SuppressErrorPageTest : public RenderViewTest {
1962 public: 1962 public:
1963 virtual void SetUp() OVERRIDE { 1963 virtual void SetUp() OVERRIDE {
1964 SetRendererClientForTesting(&client_); 1964 SetRendererClientForTesting(&client_);
1965 RenderViewTest::SetUp(); 1965 RenderViewTest::SetUp();
1966 } 1966 }
1967 1967
1968 RenderViewImpl* view() { 1968 RenderViewImpl* view() {
1969 return static_cast<RenderViewImpl*>(view_); 1969 return static_cast<RenderViewImpl*>(view_);
1970 } 1970 }
1971 1971
1972 private: 1972 private:
1973 class TestContentRendererClient : public ContentRendererClient { 1973 class TestContentRendererClient : public ContentRendererClient {
1974 public: 1974 public:
1975 virtual bool ShouldSuppressErrorPage(const GURL& url) OVERRIDE { 1975 virtual bool ShouldSuppressErrorPage(const GURL& url) OVERRIDE {
1976 return url == GURL("http://example.com/suppress"); 1976 return url == GURL("http://example.com/suppress");
1977 } 1977 }
1978 1978
1979 virtual void GetNavigationErrorStrings( 1979 virtual void GetNavigationErrorStrings(
1980 WebKit::WebFrame* frame, 1980 blink::WebFrame* frame,
1981 const WebKit::WebURLRequest& failed_request, 1981 const blink::WebURLRequest& failed_request,
1982 const WebKit::WebURLError& error, 1982 const blink::WebURLError& error,
1983 const std::string& accept_languages, 1983 const std::string& accept_languages,
1984 std::string* error_html, 1984 std::string* error_html,
1985 string16* error_description) OVERRIDE { 1985 string16* error_description) OVERRIDE {
1986 if (error_html) 1986 if (error_html)
1987 *error_html = "A suffusion of yellow."; 1987 *error_html = "A suffusion of yellow.";
1988 } 1988 }
1989 }; 1989 };
1990 1990
1991 TestContentRendererClient client_; 1991 TestContentRendererClient client_;
1992 }; 1992 };
(...skipping 50 matching lines...) Expand 10 before | Expand all | Expand 10 after
2043 2043
2044 // An error occurred. 2044 // An error occurred.
2045 view()->didFailProvisionalLoad(web_frame, error); 2045 view()->didFailProvisionalLoad(web_frame, error);
2046 ProcessPendingMessages(); 2046 ProcessPendingMessages();
2047 const int kMaxOutputCharacters = 22; 2047 const int kMaxOutputCharacters = 22;
2048 EXPECT_EQ("A suffusion of yellow.", 2048 EXPECT_EQ("A suffusion of yellow.",
2049 UTF16ToASCII(web_frame->contentAsText(kMaxOutputCharacters))); 2049 UTF16ToASCII(web_frame->contentAsText(kMaxOutputCharacters)));
2050 } 2050 }
2051 2051
2052 } // namespace content 2052 } // namespace content
OLDNEW
« no previous file with comments | « content/renderer/render_thread_impl.cc ('k') | content/renderer/render_view_impl.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698