Changeset 109041 in webkit


Ignore:
Timestamp:
Feb 27, 2012 4:48:53 PM (12 years ago)
Author:
commit-queue@webkit.org
Message:

Add more tests for web intents
https://bugs.webkit.org/show_bug.cgi?id=79527

Patch by Greg Billock <gbillock@google.com> on 2012-02-27
Reviewed by Adam Barth.

Tools:

  • DumpRenderTree/chromium/LayoutTestController.cpp:

(LayoutTestController::LayoutTestController):
(LayoutTestController::sendWebIntentResponse):

  • DumpRenderTree/chromium/LayoutTestController.h:

(LayoutTestController):

  • DumpRenderTree/chromium/WebViewHost.h:

(WebViewHost):
(WebViewHost::currentIntentRequest):

LayoutTests:

  • webintents/resources/web-intents-testing.js: Added.
  • webintents/web-intents-failure-expected.txt: Added.
  • webintents/web-intents-failure.html: Added.
  • webintents/web-intents-invoke-expected.txt: Added.
  • webintents/web-intents-invoke.html: Added.
  • webintents/web-intents-reply-expected.txt: Added.
  • webintents/web-intents-reply.html: Added.
Location:
trunk
Files:
7 added
6 edited

Legend:

Unmodified
Added
Removed
  • trunk/LayoutTests/ChangeLog

    r109039 r109041  
     12012-02-27  Greg Billock  <gbillock@google.com>
     2
     3        Add more tests for web intents
     4        https://bugs.webkit.org/show_bug.cgi?id=79527
     5
     6        Reviewed by Adam Barth.
     7
     8        * webintents/resources/web-intents-testing.js: Added.
     9        * webintents/web-intents-failure-expected.txt: Added.
     10        * webintents/web-intents-failure.html: Added.
     11        * webintents/web-intents-invoke-expected.txt: Added.
     12        * webintents/web-intents-invoke.html: Added.
     13        * webintents/web-intents-reply-expected.txt: Added.
     14        * webintents/web-intents-reply.html: Added.
     15
    1162012-02-27  ChangSeok Oh  <shivamidow@gmail.com>
    217
  • trunk/LayoutTests/webintents/web-intents-reload.html

    r108724 r109041  
    22  <head>
    33    <script src="../fast/js/resources/js-test-pre.js"></script>
     4    <script src="resources/web-intents-testing.js"></script>
    45    <script>
    56      var latch = true;
     
    2728          window.layoutTestController.waitUntilDone();
    2829          window.layoutTestController.dumpChildFramesAsText();
     30        } else {
     31          alert('This test needs to run in DRT');
    2932        }
    3033
    3134        debug("* loaded");
    3235
    33         // We must simulate a button press with eventSender because intents
    34         // require a user gesture.
    35         var button = document.getElementById("button");
    36         if (eventSender) {
    37           eventSender.mouseMoveTo(button.getBoundingClientRect().left + 2, button.getBoundingClientRect().top + 12);
    38           eventSender.mouseDown();
    39           eventSender.mouseUp();
    40           debug("* sent mouseup");
    41         }
     36        simulateButtonPress();
     37        debug("* sent mouseup");
    4238      }
    4339    </script>
  • trunk/Tools/ChangeLog

    r109017 r109041  
     12012-02-27  Greg Billock  <gbillock@google.com>
     2
     3        Add more tests for web intents
     4        https://bugs.webkit.org/show_bug.cgi?id=79527
     5
     6        Reviewed by Adam Barth.
     7
     8        * DumpRenderTree/chromium/LayoutTestController.cpp:
     9        (LayoutTestController::LayoutTestController):
     10        (LayoutTestController::sendWebIntentResponse):
     11        * DumpRenderTree/chromium/LayoutTestController.h:
     12        (LayoutTestController):
     13        * DumpRenderTree/chromium/WebViewHost.h:
     14        (WebViewHost):
     15        (WebViewHost::currentIntentRequest):
     16
    1172012-02-27  Xianzhu Wang  <wangxianzhu@chromium.org>
    218
  • trunk/Tools/DumpRenderTree/chromium/LayoutTestController.cpp

    r108821 r109041  
    5050#include "WebIDBFactory.h"
    5151#include "WebInputElement.h"
     52#include "WebIntentRequest.h"
    5253#include "WebKit.h"
    5354#include "WebNotificationPresenter.h"
     
    5556#include "WebScriptSource.h"
    5657#include "WebSecurityPolicy.h"
     58#include "platform/WebSerializedScriptValue.h"
    5759#include "WebSettings.h"
    5860#include "platform/WebSize.h"
     
    6062#include "WebView.h"
    6163#include "WebViewHost.h"
     64#include "v8/include/v8.h"
    6265#include "webkit/support/webkit_support.h"
    6366#include <algorithm>
     
    263266    bindProperty("interceptPostMessage", &m_interceptPostMessage);
    264267    bindProperty("workerThreadCount", &LayoutTestController::workerThreadCount);
     268    bindMethod("sendWebIntentResponse", &LayoutTestController::sendWebIntentResponse);
    265269}
    266270
     
    21272131}
    21282132
     2133void LayoutTestController::sendWebIntentResponse(const CppArgumentList& arguments, CppVariant* result)
     2134{
     2135    v8::HandleScope scope;
     2136    v8::Local<v8::Context> ctx = m_shell->webView()->mainFrame()->mainWorldScriptContext();
     2137    result->set(m_shell->webView()->mainFrame()->selectionAsMarkup().utf8());
     2138    v8::Context::Scope cscope(ctx);
     2139
     2140    WebKit::WebIntentRequest* request = m_shell->webViewHost()->currentIntentRequest();
     2141    if (request->isNull())
     2142        return;
     2143
     2144    if (arguments.size() == 1) {
     2145        WebKit::WebString reply = cppVariantToWebString(arguments[0]);
     2146        v8::Handle<v8::Value> v8value = v8::String::New(reply.data(), reply.length());
     2147        request->postResult(WebKit::WebSerializedScriptValue::serialize(v8value));
     2148    } else {
     2149        v8::Handle<v8::Value> v8value = v8::String::New("ERROR");
     2150        request->postFailure(WebKit::WebSerializedScriptValue::serialize(v8value));
     2151    }
     2152    result->setNull();
     2153}
     2154
    21292155void LayoutTestController::setPluginsEnabled(const CppArgumentList& arguments, CppVariant* result)
    21302156{
  • trunk/Tools/DumpRenderTree/chromium/LayoutTestController.h

    r108821 r109041  
    437437
    438438    void workerThreadCount(CppVariant*);
     439
     440    // Expects one string argument for sending successful result, zero
     441    // for sending a failure result.
     442    void sendWebIntentResponse(const CppArgumentList&, CppVariant*);
    439443
    440444public:
  • trunk/Tools/DumpRenderTree/chromium/WebViewHost.h

    r108724 r109041  
    253253    TaskList* taskList() { return &m_taskList; }
    254254
     255    // The current web intents request.
     256    WebKit::WebIntentRequest* currentIntentRequest() { return &m_currentRequest; }
     257
    255258private:
    256259
Note: See TracChangeset for help on using the changeset viewer.