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

Unified Diff: chrome/renderer/render_view_unittest_mac.mm

Issue 3150034: GTTF: move tests that use WebKit from unit_tests to browser_tests... (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: '' Created 10 years, 4 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « chrome/renderer/render_view_unittest.cc ('k') | chrome/renderer/translate_helper_browsertest.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/renderer/render_view_unittest_mac.mm
===================================================================
--- chrome/renderer/render_view_unittest_mac.mm (revision 57231)
+++ chrome/renderer/render_view_unittest_mac.mm (working copy)
@@ -1,135 +0,0 @@
-// Copyright (c) 2009 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-#include "base/string16.h"
-#include "chrome/common/native_web_keyboard_event.h"
-#include "chrome/common/render_messages.h"
-#include "chrome/test/render_view_test.h"
-#include "testing/gtest/include/gtest/gtest.h"
-
-#include <Cocoa/Cocoa.h>
-#include <Carbon/Carbon.h> // for the kVK_* constants.
-
-NSEvent* CmdDeadKeyEvent(NSEventType type, unsigned short code) {
- UniChar uniChar = 0;
- switch(code) {
- case kVK_UpArrow:
- uniChar = NSUpArrowFunctionKey;
- break;
- case kVK_DownArrow:
- uniChar = NSDownArrowFunctionKey;
- break;
- default:
- CHECK(false);
- }
- NSString* s = [NSString stringWithFormat:@"%C", uniChar];
-
- return [NSEvent keyEventWithType:type
- location:NSMakePoint(0, 0)
- modifierFlags:NSCommandKeyMask
- timestamp:0.0
- windowNumber:0
- context:nil
- characters:s
- charactersIgnoringModifiers:s
- isARepeat:NO
- keyCode:code];
-}
-
-// Test that cmd-up/down scrolls the page exactly if it is not intercepted by
-// javascript.
-TEST_F(RenderViewTest, MacTestCmdUp) {
- // Some preprocessor trickery so that we can have literal html in our source,
- // makes it easier to copy html to and from an html file for testing (the
- // preprocessor will remove the newlines at the line ends, turning this into
- // a single long line).
- #define HTML(s) #s
- const char* kRawHtml = HTML(
- <html>
- <head><title></title>
- <script type='text/javascript' language='javascript'>
- function OnKeyEvent(ev) {
- var result = document.getElementById(ev.type);
- result.innerText = (ev.which || ev.keyCode) + ',' +
- ev.shiftKey + ',' +
- ev.ctrlKey + ',' +
- ev.metaKey + ',' +
- ev.altKey;
- return %s; /* Replace with "return true;" when testing in an html file. */
- }
- function OnScroll(ev) {
- var result = document.getElementById("scroll");
- result.innerText = window.pageYOffset;
- return true;
- }
- </script>
- <style type="text/css">
- p { border-bottom:5000px solid black; } /* enforce vertical scroll bar */
- </style>
- </head>
- <body
- onscroll='return OnScroll(event);'
- onkeydown='return OnKeyEvent(event);'>
- <div id='keydown' contenteditable='true'> </div>
- <div id='scroll' contenteditable='true'> </div>
- <p>p1
- <p>p2
- </body>
- </html>
- );
- #undef HTML
-
- const int kMaxOutputCharacters = 1024;
- string16 output;
- char htmlBuffer[2048];
-
- NSEvent* arrowDownKeyDown = CmdDeadKeyEvent(NSKeyDown, kVK_DownArrow);
- NSEvent* arrowUpKeyDown = CmdDeadKeyEvent(NSKeyDown, kVK_UpArrow);
-
- // First test when javascript does not eat keypresses -- should scroll.
- sprintf(htmlBuffer, kRawHtml, "true");
- view_->set_send_content_state_immediately(true);
- LoadHTML(htmlBuffer);
- render_thread_.sink().ClearMessages();
-
- const char* kArrowDownScrollDown =
- "40,false,false,true,false\n1936\np1\n\np2";
- view_->OnSetEditCommandsForNextKeyEvent(
- EditCommands(1, EditCommand("moveToEndOfDocument", "")));
- SendNativeKeyEvent(NativeWebKeyboardEvent(arrowDownKeyDown));
- output = GetMainFrame()->contentAsText(kMaxOutputCharacters);
- EXPECT_EQ(kArrowDownScrollDown, UTF16ToASCII(output));
-
- const char* kArrowUpScrollUp =
- "38,false,false,true,false\n0\np1\n\np2";
- view_->OnSetEditCommandsForNextKeyEvent(
- EditCommands(1, EditCommand("moveToBeginningOfDocument", "")));
- SendNativeKeyEvent(NativeWebKeyboardEvent(arrowUpKeyDown));
- output = GetMainFrame()->contentAsText(kMaxOutputCharacters);
- EXPECT_EQ(kArrowUpScrollUp, UTF16ToASCII(output));
-
-
- // Now let javascript eat the key events -- no scrolling should happen
- sprintf(htmlBuffer, kRawHtml, "false");
- view_->set_send_content_state_immediately(true);
- LoadHTML(htmlBuffer);
- render_thread_.sink().ClearMessages();
-
- const char* kArrowDownNoScroll =
- "40,false,false,true,false\np1\n\np2";
- view_->OnSetEditCommandsForNextKeyEvent(
- EditCommands(1, EditCommand("moveToEndOfDocument", "")));
- SendNativeKeyEvent(NativeWebKeyboardEvent(arrowDownKeyDown));
- output = GetMainFrame()->contentAsText(kMaxOutputCharacters);
- EXPECT_EQ(kArrowDownNoScroll, UTF16ToASCII(output));
-
- const char* kArrowUpNoScroll =
- "38,false,false,true,false\np1\n\np2";
- view_->OnSetEditCommandsForNextKeyEvent(
- EditCommands(1, EditCommand("moveToBeginningOfDocument", "")));
- SendNativeKeyEvent(NativeWebKeyboardEvent(arrowUpKeyDown));
- output = GetMainFrame()->contentAsText(kMaxOutputCharacters);
- EXPECT_EQ(kArrowUpNoScroll, UTF16ToASCII(output));
-}
-
« no previous file with comments | « chrome/renderer/render_view_unittest.cc ('k') | chrome/renderer/translate_helper_browsertest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698