Changeset 139231 in webkit


Ignore:
Timestamp:
Jan 9, 2013 1:07:15 PM (11 years ago)
Author:
commit-queue@webkit.org
Message:

[chromium] move dumpcreateview methods to testrunner library
https://bugs.webkit.org/show_bug.cgi?id=106434

Patch by Dan Carney <dcarney@google.com> on 2013-01-09
Reviewed by Adam Barth.

  • DumpRenderTree/chromium/DRTTestRunner.cpp:

(DRTTestRunner::DRTTestRunner):
(DRTTestRunner::reset):

  • DumpRenderTree/chromium/DRTTestRunner.h:

(DRTTestRunner):

  • DumpRenderTree/chromium/TestRunner/public/WebTestRunner.h:

(WebTestRunner::WebTestRunner::shouldDumpCreateView):

  • DumpRenderTree/chromium/TestRunner/src/TestRunner.cpp:

(WebTestRunner::TestRunner::TestRunner):
(WebTestRunner::TestRunner::reset):
(WebTestRunner::TestRunner::shouldDumpCreateView):
(WebTestRunner):
(WebTestRunner::TestRunner::dumpCreateView):

  • DumpRenderTree/chromium/TestRunner/src/TestRunner.h:

(TestRunner):

Location:
trunk/Tools
Files:
9 edited

Legend:

Unmodified
Added
Removed
  • trunk/Tools/ChangeLog

    r139224 r139231  
     12013-01-09  Dan Carney  <dcarney@google.com>
     2
     3        [chromium] move dumpcreateview methods to testrunner library
     4        https://bugs.webkit.org/show_bug.cgi?id=106434
     5
     6        Reviewed by Adam Barth.
     7
     8        * DumpRenderTree/chromium/DRTTestRunner.cpp:
     9        (DRTTestRunner::DRTTestRunner):
     10        (DRTTestRunner::reset):
     11        * DumpRenderTree/chromium/DRTTestRunner.h:
     12        (DRTTestRunner):
     13        * DumpRenderTree/chromium/TestRunner/public/WebTestRunner.h:
     14        (WebTestRunner::WebTestRunner::shouldDumpCreateView):
     15        * DumpRenderTree/chromium/TestRunner/src/TestRunner.cpp:
     16        (WebTestRunner::TestRunner::TestRunner):
     17        (WebTestRunner::TestRunner::reset):
     18        (WebTestRunner::TestRunner::shouldDumpCreateView):
     19        (WebTestRunner):
     20        (WebTestRunner::TestRunner::dumpCreateView):
     21        * DumpRenderTree/chromium/TestRunner/src/TestRunner.h:
     22        (TestRunner):
     23
    1242013-01-09  Csaba Osztrogonác  <ossy@webkit.org>
    225
  • trunk/Tools/DumpRenderTree/chromium/DRTTestRunner.cpp

    r139090 r139231  
    126126    bindMethod("dumpStatusCallbacks", &DRTTestRunner::dumpWindowStatusChanges);
    127127    bindMethod("dumpPermissionClientCallbacks", &DRTTestRunner::dumpPermissionClientCallbacks);
    128     bindMethod("dumpCreateView", &DRTTestRunner::dumpCreateView);
    129128    bindMethod("enableAutoResizeMode", &DRTTestRunner::enableAutoResizeMode);
    130129    bindMethod("evaluateInWebInspector", &DRTTestRunner::evaluateInWebInspector);
     
    146145    bindMethod("setAllowRunningOfInsecureContent", &DRTTestRunner::setAllowRunningOfInsecureContent);
    147146    bindMethod("setAlwaysAcceptCookies", &DRTTestRunner::setAlwaysAcceptCookies);
    148     bindMethod("setCanOpenWindows", &DRTTestRunner::setCanOpenWindows);
    149147    bindMethod("setCloseRemainingWindowsWhenComplete", &DRTTestRunner::setCloseRemainingWindowsWhenComplete);
    150148    bindMethod("setCustomPolicyDelegate", &DRTTestRunner::setCustomPolicyDelegate);
     
    281279{
    282280    m_dumpPermissionClientCallbacks = true;
    283     result->setNull();
    284 }
    285 
    286 void DRTTestRunner::dumpCreateView(const CppArgumentList&, CppVariant* result)
    287 {
    288     m_dumpCreateView = true;
    289281    result->setNull();
    290282}
     
    474466    if (m_shell)
    475467        m_shell->webViewHost()->setDeviceScaleFactor(1);
    476     m_dumpCreateView = false;
    477468    m_dumpProgressFinishedCallback = false;
    478469    m_dumpResourceLoadCallbacks = false;
     
    484475    m_dumpPermissionClientCallbacks = false;
    485476    m_waitUntilDone = false;
    486     m_canOpenWindows = false;
    487477    m_testRepaint = false;
    488478    m_sweepHorizontally = false;
     
    525515    m_shell->testFinished();
    526516    m_waitUntilDone = false;
    527 }
    528 
    529 void DRTTestRunner::setCanOpenWindows(const CppArgumentList&, CppVariant* result)
    530 {
    531     m_canOpenWindows = true;
    532     result->setNull();
    533517}
    534518
  • trunk/Tools/DumpRenderTree/chromium/DRTTestRunner.h

    r139090 r139231  
    105105    void dumpWindowStatusChanges(const CppArgumentList&, CppVariant*);
    106106
    107     // This function sets a flag that tells the test_shell to dump all calls to
    108     // WebViewClient::createView().
    109     // It takes no arguments, and ignores any that may be present.
    110     void dumpCreateView(const CppArgumentList&, CppVariant*);
    111 
    112107    // Functions for dealing with windows. By default we block all new windows.
    113108    void windowCount(const CppArgumentList&, CppVariant*);
    114     void setCanOpenWindows(const CppArgumentList&, CppVariant*);
    115109    void setCloseRemainingWindowsWhenComplete(const CppArgumentList&, CppVariant*);
    116110
     
    259253    bool shouldDumpBackForwardList() { return m_dumpBackForwardList; }
    260254    bool shouldDumpPermissionClientCallbacks() { return m_dumpPermissionClientCallbacks; }
    261     bool shouldDumpCreateView() { return m_dumpCreateView; }
    262     bool canOpenWindows() { return m_canOpenWindows; }
    263255    bool deferMainResourceDataLoad() { return m_deferMainResourceDataLoad; }
    264256    void setShowDebugLayerTree(bool value) { m_showDebugLayerTree = value; }
     
    381373    bool m_dumpPermissionClientCallbacks;
    382374
    383     // If true, output a descriptive line each time WebViewClient::createView
    384     // is invoked.
    385     bool m_dumpCreateView;
    386 
    387     // If true, new windows can be opened via javascript or by plugins. By
    388     // default, set to false and can be toggled to true using
    389     // setCanOpenWindows().
    390     bool m_canOpenWindows;
    391 
    392375    // When reset is called, go through and close all but the main test shell
    393376    // window. By default, set to true but toggled to false using
  • trunk/Tools/DumpRenderTree/chromium/TestRunner/public/WebTestProxy.h

    r139090 r139231  
    5353class WebString;
    5454class WebURL;
     55class WebURLRequest;
     56class WebView;
    5557struct WebPoint;
    5658struct WebSize;
    5759struct WebURLError;
     60struct WebWindowFeatures;
    5861}
    5962
     
    98101    void registerIntentService(WebKit::WebFrame*, const WebKit::WebIntentServiceInfo&);
    99102    void dispatchIntent(WebKit::WebFrame* source, const WebKit::WebIntentRequest&);
     103    WebKit::WebView* createView(WebKit::WebFrame* creator, const WebKit::WebURLRequest&, const WebKit::WebWindowFeatures&, const WebKit::WebString& frameName, WebKit::WebNavigationPolicy);
    100104    void willPerformClientRedirect(WebKit::WebFrame*, const WebKit::WebURL& from, const WebKit::WebURL& to, double interval, double fire_time);
    101105    void didCancelClientRedirect(WebKit::WebFrame*);
     
    244248        Base::dispatchIntent(source, request);
    245249    }
     250    virtual WebKit::WebView* createView(WebKit::WebFrame* creator, const WebKit::WebURLRequest& request, const WebKit::WebWindowFeatures& features, const WebKit::WebString& frameName, WebKit::WebNavigationPolicy policy)
     251    {
     252        WebTestProxyBase::createView(creator, request, features, frameName, policy);
     253        return Base::createView(creator, request, features, frameName, policy);
     254    }
    246255
    247256    // WebFrameClient implementation.
  • trunk/Tools/DumpRenderTree/chromium/TestRunner/public/WebTestRunner.h

    r139090 r139231  
    5757    virtual bool stopProvisionalFrameLoads() const { return false; }
    5858    virtual bool shouldDumpTitleChanges() const { return false; }
     59    virtual bool shouldDumpCreateView() const { return false; }
     60    virtual bool canOpenWindows() const { return false; }
    5961};
    6062
  • trunk/Tools/DumpRenderTree/chromium/TestRunner/src/TestRunner.cpp

    r139090 r139231  
    143143    bindMethod("setStopProvisionalFrameLoads", &TestRunner::setStopProvisionalFrameLoads);
    144144    bindMethod("dumpTitleChanges", &TestRunner::dumpTitleChanges);
     145    bindMethod("dumpCreateView", &TestRunner::dumpCreateView);
     146    bindMethod("setCanOpenWindows", &TestRunner::setCanOpenWindows);
    145147
    146148    // The following methods interact with the WebTestProxy.
     
    217219    m_stopProvisionalFrameLoads = false;
    218220    m_dumpTitleChanges = false;
     221    m_dumpCreateView = false;
     222    m_canOpenWindows = false;
    219223
    220224    m_globalFlag.set(false);
     
    297301{
    298302    return m_dumpTitleChanges;
     303}
     304
     305bool TestRunner::shouldDumpCreateView() const
     306{
     307    return m_dumpCreateView;
     308}
     309
     310bool TestRunner::canOpenWindows() const
     311{
     312    return m_canOpenWindows;
    299313}
    300314
     
    10641078}
    10651079
     1080void TestRunner::dumpCreateView(const CppArgumentList&, CppVariant* result)
     1081{
     1082    m_dumpCreateView = true;
     1083    result->setNull();
     1084}
     1085
     1086void TestRunner::setCanOpenWindows(const CppArgumentList&, CppVariant* result)
     1087{
     1088    m_canOpenWindows = true;
     1089    result->setNull();
     1090}
     1091
    10661092void TestRunner::workerThreadCount(CppVariant* result)
    10671093{
  • trunk/Tools/DumpRenderTree/chromium/TestRunner/src/TestRunner.h

    r139090 r139231  
    7575    virtual bool stopProvisionalFrameLoads() const OVERRIDE;
    7676    virtual bool shouldDumpTitleChanges() const OVERRIDE;
     77    virtual bool shouldDumpCreateView() const OVERRIDE;
     78    virtual bool canOpenWindows() const OVERRIDE;
    7779
    7880protected:
     
    233235    void dumpTitleChanges(const CppArgumentList&, CppVariant*);
    234236
     237    // This function sets a flag that tells the test_shell to dump all calls to
     238    // WebViewClient::createView().
     239    // It takes no arguments, and ignores any that may be present.
     240    void dumpCreateView(const CppArgumentList&, CppVariant*);
     241
     242    void setCanOpenWindows(const CppArgumentList&, CppVariant*);
     243
    235244    ///////////////////////////////////////////////////////////////////////////
    236245    // Methods interacting with the WebTestProxy
     
    314323    bool m_dumpTitleChanges;
    315324
     325    // If true, output a descriptive line each time WebViewClient::createView
     326    // is invoked.
     327    bool m_dumpCreateView;
     328
     329    // If true, new windows can be opened via javascript or by plugins. By
     330    // default, set to false and can be toggled to true using
     331    // setCanOpenWindows().
     332    bool m_canOpenWindows;
     333
    316334    // WAV audio data is stored here.
    317335    WebKit::WebArrayBufferView m_audioData;
  • trunk/Tools/DumpRenderTree/chromium/TestRunner/src/WebTestProxy.cpp

    r139090 r139231  
    4848#include "WebView.h"
    4949#include "platform/WebCString.h"
     50#include "platform/WebURLRequest.h"
    5051#include <wtf/StringExtras.h>
    5152
     
    141142}
    142143
     144string URLDescription(const GURL& url)
     145{
     146    if (url.SchemeIs("file"))
     147        return url.ExtractFileName();
     148    return url.possibly_invalid_spec();
     149}
     150
    143151}
    144152
     
    453461}
    454462
     463WebView* WebTestProxyBase::createView(WebFrame*, const WebURLRequest& request, const WebWindowFeatures&, const WebString&, WebNavigationPolicy)
     464{
     465    if (!m_testInterfaces->testRunner() || !m_testInterfaces->testRunner()->canOpenWindows())
     466        return 0;
     467    if (m_testInterfaces->testRunner()->shouldDumpCreateView())
     468        m_delegate->printMessage(string("createView(") + URLDescription(request.url()) + ")\n");
     469    return 0;
     470}
     471
    455472void WebTestProxyBase::willPerformClientRedirect(WebFrame* frame, const WebURL&, const WebURL& to, double, double)
    456473{
  • trunk/Tools/DumpRenderTree/chromium/WebViewHost.cpp

    r139090 r139231  
    204204// WebViewClient -------------------------------------------------------------
    205205
    206 WebView* WebViewHost::createView(WebFrame* creator, const WebURLRequest& request, const WebWindowFeatures&, const WebString&, WebNavigationPolicy)
     206WebView* WebViewHost::createView(WebFrame* creator, const WebURLRequest&, const WebWindowFeatures&, const WebString&, WebNavigationPolicy)
    207207{
    208208    if (!testRunner()->canOpenWindows())
    209209        return 0;
    210     if (testRunner()->shouldDumpCreateView())
    211         fprintf(stdout, "createView(%s)\n", URLDescription(request.url()).c_str());
    212210    creator->consumeUserGesture();
    213211    return m_shell->createNewWindow(WebURL())->webView();
Note: See TracChangeset for help on using the changeset viewer.