| Index: chrome/test/functional/gtalk/jsutils.js
|
| ===================================================================
|
| --- chrome/test/functional/gtalk/jsutils.js (revision 261231)
|
| +++ chrome/test/functional/gtalk/jsutils.js (working copy)
|
| @@ -1,109 +0,0 @@
|
| -// Copyright (c) 2012 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.
|
| -
|
| -/**
|
| - * @fileoverview JS utilities automatically injected by GTalk PyAuto tests.
|
| - */
|
| -
|
| -/**
|
| - * Key codes to use with KeyboardEvent.
|
| - */
|
| -$KEYS = {
|
| - ENTER: 13,
|
| - ESC: 27
|
| -};
|
| -
|
| -/**
|
| - * The first Chrome extension view with a URL containing the query.
|
| - */
|
| -$VIEW = function(query) {
|
| - var views = chrome.extension.getViews();
|
| - for (var i = 0; i < views.length; i++) {
|
| - var url = views[i].location.href;
|
| - if (url && url.indexOf(query) >= 0) {
|
| - return views[i];
|
| - }
|
| - }
|
| - return null;
|
| -};
|
| -
|
| -/**
|
| - * The body element of the given window.
|
| - */
|
| -$BODY = function(opt_window) {
|
| - return (opt_window || window).document.body;
|
| -};
|
| -
|
| -/**
|
| - * Find the ancestor of the given element with a particular tag name.
|
| - */
|
| -$FindByTagName = function(element, tag, index) {
|
| - var tagElements = element.getElementsByTagName(tag);
|
| - if (index < tagElements.length) {
|
| - return tagElements[index];
|
| - }
|
| - return null;
|
| -};
|
| -
|
| -/**
|
| - * Find the first ancestor of the given element containing the given text.
|
| - */
|
| -$FindByText = function(baseElement, text) {
|
| - var allElements = baseElement.getElementsByTagName('*');
|
| - for (var i = 0; i < allElements.length; i++) {
|
| - var element = allElements[i];
|
| - if (element.innerText && element.innerText.indexOf(text) >= 0) {
|
| - var child = $FindByText(element, text);
|
| - return child != null ? child : element;
|
| - }
|
| - }
|
| - return null;
|
| -};
|
| -
|
| -/**
|
| - * Simulate a click on a given element.
|
| - */
|
| -$Click = function(element) {
|
| - var mouseEvent = element.ownerDocument.createEvent('MouseEvent');
|
| - mouseEvent.initMouseEvent('click', true, true, window,
|
| - 1, 0, 0, 0, 0, false, false, false, false, 0, null);
|
| - element.dispatchEvent(mouseEvent);
|
| - return true;
|
| -};
|
| -
|
| -/**
|
| - * Simulate typing text on a given element.
|
| - */
|
| -$Type = function(element, text) {
|
| - var keyEvent = element.ownerDocument.createEvent('TextEvent');
|
| - keyEvent.initTextEvent('textInput', true, true, window, text);
|
| - element.dispatchEvent(keyEvent);
|
| - return true;
|
| -};
|
| -
|
| -/**
|
| - * Simulate pressing a certain key on a given element.
|
| - */
|
| -$Press = function(baseElement, keycode, opt_ctrlKey, opt_shiftKey,
|
| - opt_altKey, opt_metaKey) {
|
| - var sendKeyEvent = function(element, eventType) {
|
| - // Unfortuantely, using the typical KeyboardEvent and initKeyboardEvent
|
| - // fails in Chrome due to a webkit bug:
|
| - // https://bugs.webkit.org/show_bug.cgi?id=16735
|
| - // We employ a workaround of synthesizing a raw 'Event' suggested here:
|
| - // http://code.google.com/p/selenium/issues/detail?id=567
|
| - var keyEvent = element.ownerDocument.createEvent('Events');
|
| - keyEvent.ctrlKey = Boolean(opt_ctrlKey);
|
| - keyEvent.shiftKey = Boolean(opt_shiftKey);
|
| - keyEvent.altKey = Boolean(opt_altKey);
|
| - keyEvent.metaKey = Boolean(opt_metaKey);
|
| - keyEvent.initEvent(eventType, true, true);
|
| - keyEvent.keyCode = keycode;
|
| - element.dispatchEvent(keyEvent);
|
| - }
|
| - sendKeyEvent(baseElement, 'keydown');
|
| - sendKeyEvent(baseElement, 'keypress');
|
| - sendKeyEvent(baseElement, 'keyup');
|
| - return true;
|
| -};
|
|
|