Changeset 141596 in webkit
- Timestamp:
- Feb 1, 2013 8:02:07 AM (11 years ago)
- Location:
- trunk/Tools
- Files:
-
- 1 added
- 1 deleted
- 18 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Tools/ChangeLog
r141590 r141596 1 2013-02-01 Jochen Eisinger <jochen@chromium.org> 2 3 [chromium] move ownership of TestRunner object to TestInterfaces 4 https://bugs.webkit.org/show_bug.cgi?id=108464 5 6 Reviewed by Adam Barth. 7 8 Before, TestShell owned the class. This also removes the last include 9 from DumpRenderTree to TestRunner/src. 10 11 This also deletes TestDelegate and uses WebTestDelegate everywhere 12 instead. 13 14 * DumpRenderTree/DumpRenderTree.gypi: 15 * DumpRenderTree/chromium/TestRunner/public/WebTestInterfaces.h: 16 (WebTestInterfaces): 17 * DumpRenderTree/chromium/TestRunner/public/WebTestRunner.h: 18 (WebKit): 19 (WebTestRunner): 20 * DumpRenderTree/chromium/TestRunner/src/AccessibilityControllerChromium.cpp: 21 * DumpRenderTree/chromium/TestRunner/src/AccessibilityControllerChromium.h: 22 (WebTestRunner): 23 (WebTestRunner::AccessibilityController::setDelegate): 24 (AccessibilityController): 25 * DumpRenderTree/chromium/TestRunner/src/EventSender.cpp: 26 (WebTestRunner): 27 (WebTestRunner::makeMenuItemStringsFor): 28 * DumpRenderTree/chromium/TestRunner/src/EventSender.h: 29 (WebTestRunner): 30 (WebTestRunner::EventSender::setDelegate): 31 (EventSender): 32 * DumpRenderTree/chromium/TestRunner/src/GamepadController.cpp: 33 (WebTestRunner::GamepadController::setDelegate): 34 * DumpRenderTree/chromium/TestRunner/src/GamepadController.h: 35 (WebTestRunner): 36 (GamepadController): 37 * DumpRenderTree/chromium/TestRunner/src/TestDelegate.h: Removed. 38 * DumpRenderTree/chromium/TestRunner/src/TestInterfaces.cpp: 39 (WebTestRunner::TestInterfaces::TestInterfaces): 40 (WebTestRunner::TestInterfaces::~TestInterfaces): 41 (WebTestRunner::TestInterfaces::setWebView): 42 (WebTestRunner::TestInterfaces::setDelegate): 43 (WebTestRunner::TestInterfaces::bindTo): 44 (WebTestRunner::TestInterfaces::resetAll): 45 (WebTestRunner): 46 (WebTestRunner::TestInterfaces::setTestIsRunning): 47 (WebTestRunner::TestInterfaces::testRunner): 48 * DumpRenderTree/chromium/TestRunner/src/TestInterfaces.h: 49 (WebTestRunner): 50 (TestInterfaces): 51 * DumpRenderTree/chromium/TestRunner/src/TestRunner.cpp: 52 (WebTestRunner::TestRunner::TestRunner): 53 (WebTestRunner::TestRunner::reset): 54 * DumpRenderTree/chromium/TestRunner/src/TestRunner.h: 55 (WebKit): 56 (TestRunner): 57 * DumpRenderTree/chromium/TestRunner/src/WebTestInterfaces.cpp: 58 (WebTestRunner::WebTestInterfaces::Internal::testRunner): 59 (WebTestInterfaces::Internal): 60 (WebTestRunner::WebTestInterfaces::Internal::Internal): 61 (WebTestRunner::WebTestInterfaces::Internal::setDelegate): 62 (WebTestRunner::WebTestInterfaces::Internal::setTestIsRunning): 63 * DumpRenderTree/chromium/TestRunner/src/WebTestRunner.cpp: Added. 64 (WebTestRunner): 65 (WebTestRunner::WebTestRunner::WebTestRunner): 66 (WebTestRunner::WebTestRunner::shouldDumpEditingCallbacks): 67 (WebTestRunner::WebTestRunner::shouldDumpAsText): 68 (WebTestRunner::WebTestRunner::setShouldDumpAsText): 69 (WebTestRunner::WebTestRunner::shouldGeneratePixelResults): 70 (WebTestRunner::WebTestRunner::setShouldGeneratePixelResults): 71 (WebTestRunner::WebTestRunner::shouldDumpChildFrameScrollPositions): 72 (WebTestRunner::WebTestRunner::shouldDumpChildFramesAsText): 73 (WebTestRunner::WebTestRunner::shouldDumpAsAudio): 74 (WebTestRunner::WebTestRunner::audioData): 75 (WebTestRunner::WebTestRunner::shouldDumpFrameLoadCallbacks): 76 (WebTestRunner::WebTestRunner::setShouldDumpFrameLoadCallbacks): 77 (WebTestRunner::WebTestRunner::shouldDumpUserGestureInFrameLoadCallbacks): 78 (WebTestRunner::WebTestRunner::stopProvisionalFrameLoads): 79 (WebTestRunner::WebTestRunner::shouldDumpTitleChanges): 80 (WebTestRunner::WebTestRunner::shouldDumpCreateView): 81 (WebTestRunner::WebTestRunner::canOpenWindows): 82 (WebTestRunner::WebTestRunner::shouldDumpResourceLoadCallbacks): 83 (WebTestRunner::WebTestRunner::shouldDumpResourceRequestCallbacks): 84 (WebTestRunner::WebTestRunner::shouldDumpResourceResponseMIMETypes): 85 (WebTestRunner::WebTestRunner::webPermissions): 86 (WebTestRunner::WebTestRunner::shouldDumpStatusCallbacks): 87 (WebTestRunner::WebTestRunner::shouldDumpProgressFinishedCallback): 88 (WebTestRunner::WebTestRunner::shouldDumpBackForwardList): 89 (WebTestRunner::WebTestRunner::deferMainResourceDataLoad): 90 (WebTestRunner::WebTestRunner::shouldDumpSelectionRect): 91 (WebTestRunner::WebTestRunner::testRepaint): 92 (WebTestRunner::WebTestRunner::sweepHorizontally): 93 (WebTestRunner::WebTestRunner::isPrinting): 94 (WebTestRunner::WebTestRunner::shouldStayOnPageAfterHandlingBeforeUnload): 95 (WebTestRunner::WebTestRunner::setTitleTextDirection): 96 (WebTestRunner::WebTestRunner::httpHeadersToClear): 97 (WebTestRunner::WebTestRunner::shouldBlockRedirects): 98 (WebTestRunner::WebTestRunner::willSendRequestShouldReturnNull): 99 (WebTestRunner::WebTestRunner::setTopLoadingFrame): 100 (WebTestRunner::WebTestRunner::topLoadingFrame): 101 (WebTestRunner::WebTestRunner::policyDelegateDone): 102 (WebTestRunner::WebTestRunner::policyDelegateEnabled): 103 (WebTestRunner::WebTestRunner::policyDelegateIsPermissive): 104 (WebTestRunner::WebTestRunner::policyDelegateShouldNotifyDone): 105 (WebTestRunner::WebTestRunner::shouldInterceptPostMessage): 106 (WebTestRunner::WebTestRunner::isSmartInsertDeleteEnabled): 107 (WebTestRunner::WebTestRunner::isSelectTrailingWhitespaceEnabled): 108 * DumpRenderTree/chromium/TestShell.cpp: 109 (TestShell::initialize): 110 (TestShell::createMainWindow): 111 (TestShell::~TestShell): 112 (TestShell::runFileTest): 113 (TestShell::resetTestController): 114 (TestShell::dump): 115 (TestShell::bindJSObjectsToWindow): 116 * DumpRenderTree/chromium/TestShell.h: 117 (TestShell::testRunner): 118 (TestShell): 119 1 120 2013-02-01 Alan Cutter <alancutter@chromium.org> 2 121 -
trunk/Tools/DumpRenderTree/DumpRenderTree.gypi
r141082 r141596 97 97 'chromium/TestRunner/src/WebTestPlugin.cpp', 98 98 'chromium/TestRunner/src/WebTestProxy.cpp', 99 'chromium/TestRunner/src/WebTestRunner.cpp', 99 100 ], 100 101 'test_plugin_files': [ -
trunk/Tools/DumpRenderTree/chromium/TestRunner/public/WebTestInterfaces.h
r139090 r141596 59 59 WebEventSender* eventSender(); 60 60 WebTestRunner* testRunner(); 61 // FIXME: Remove this once TestRunner is complete.62 void setTestRunner(WebTestRunner*);63 61 64 62 private: -
trunk/Tools/DumpRenderTree/chromium/TestRunner/public/WebTestRunner.h
r141298 r141596 39 39 class WebArrayBufferView; 40 40 class WebPermissionClient; 41 class WebFrame; 41 42 } 42 43 43 44 namespace WebTestRunner { 44 45 45 // FIXME: Once the TestRunner class is complete, this class should take a 46 // TestRunner* as ctor argument, and not have default implementations. 46 class TestRunner; 47 47 48 class WebTestRunner { 48 49 public: 49 virtual void setTestIsRunning(bool) { } 50 virtual bool shouldDumpEditingCallbacks() const { return false; } 51 virtual bool shouldDumpAsText() const { return false; } 52 virtual void setShouldDumpAsText(bool) { } 53 virtual bool shouldGeneratePixelResults() const { return false; } 54 virtual void setShouldGeneratePixelResults(bool) { } 55 virtual bool shouldDumpChildFrameScrollPositions() const { return false; } 56 virtual bool shouldDumpChildFramesAsText() const { return false; } 57 virtual bool shouldDumpAsAudio() const { return false; } 58 virtual const WebKit::WebArrayBufferView* audioData() const { return 0; } 59 virtual bool shouldDumpFrameLoadCallbacks() const { return false; } 60 virtual void setShouldDumpFrameLoadCallbacks(bool) { } 61 virtual bool shouldDumpUserGestureInFrameLoadCallbacks() const { return false; } 62 virtual bool stopProvisionalFrameLoads() const { return false; } 63 virtual bool shouldDumpTitleChanges() const { return false; } 64 virtual bool shouldDumpCreateView() const { return false; } 65 virtual bool canOpenWindows() const { return false; } 66 virtual bool shouldDumpResourceLoadCallbacks() const { return false; } 67 virtual bool shouldDumpResourceRequestCallbacks() const { return false; } 68 virtual bool shouldDumpResourceResponseMIMETypes() const { return false; } 69 virtual WebKit::WebPermissionClient* webPermissions() const { return 0; } 70 virtual bool shouldDumpStatusCallbacks() const { return false; } 71 virtual bool shouldDumpProgressFinishedCallback() const { return false; } 72 virtual bool shouldDumpBackForwardList() const { return false; } 73 virtual bool deferMainResourceDataLoad() const { return false; } 74 virtual bool shouldDumpSelectionRect() const { return false; } 75 virtual bool testRepaint() const { return false; } 76 virtual bool sweepHorizontally() const { return false; } 77 virtual bool isPrinting() const { return false; } 78 virtual bool shouldStayOnPageAfterHandlingBeforeUnload() const { return false; } 79 virtual void setTitleTextDirection(WebKit::WebTextDirection) { } 80 virtual const std::set<std::string>* httpHeadersToClear() const { return 0; } 81 virtual bool shouldBlockRedirects() const { return false; } 82 virtual bool willSendRequestShouldReturnNull() const { return false; } 83 virtual void setTopLoadingFrame(WebKit::WebFrame*, bool) { } 84 virtual WebKit::WebFrame* topLoadingFrame() const { return 0; } 85 virtual void policyDelegateDone() { } 86 virtual bool policyDelegateEnabled() const { return false; } 87 virtual bool policyDelegateIsPermissive() const { return false; } 88 virtual bool policyDelegateShouldNotifyDone() const { return false; } 89 virtual bool shouldInterceptPostMessage() const { return false; } 90 virtual bool isSmartInsertDeleteEnabled() const { return true; } 91 virtual bool isSelectTrailingWhitespaceEnabled() const { return false; } 50 #if WEBTESTRUNNER_IMPLEMENTATION 51 explicit WebTestRunner(TestRunner*); 52 #endif 53 54 virtual bool shouldDumpEditingCallbacks() const; 55 virtual bool shouldDumpAsText() const; 56 virtual void setShouldDumpAsText(bool); 57 virtual bool shouldGeneratePixelResults() const; 58 virtual void setShouldGeneratePixelResults(bool); 59 virtual bool shouldDumpChildFrameScrollPositions() const; 60 virtual bool shouldDumpChildFramesAsText() const; 61 virtual bool shouldDumpAsAudio() const; 62 virtual const WebKit::WebArrayBufferView* audioData() const; 63 virtual bool shouldDumpFrameLoadCallbacks() const; 64 virtual void setShouldDumpFrameLoadCallbacks(bool); 65 virtual bool shouldDumpUserGestureInFrameLoadCallbacks() const; 66 virtual bool stopProvisionalFrameLoads() const; 67 virtual bool shouldDumpTitleChanges() const; 68 virtual bool shouldDumpCreateView() const; 69 virtual bool canOpenWindows() const; 70 virtual bool shouldDumpResourceLoadCallbacks() const; 71 virtual bool shouldDumpResourceRequestCallbacks() const; 72 virtual bool shouldDumpResourceResponseMIMETypes() const; 73 virtual WebKit::WebPermissionClient* webPermissions() const; 74 virtual bool shouldDumpStatusCallbacks() const; 75 virtual bool shouldDumpProgressFinishedCallback() const; 76 virtual bool shouldDumpBackForwardList() const; 77 virtual bool deferMainResourceDataLoad() const; 78 virtual bool shouldDumpSelectionRect() const; 79 virtual bool testRepaint() const; 80 virtual bool sweepHorizontally() const; 81 virtual bool isPrinting() const; 82 virtual bool shouldStayOnPageAfterHandlingBeforeUnload() const; 83 virtual void setTitleTextDirection(WebKit::WebTextDirection); 84 virtual const std::set<std::string>* httpHeadersToClear() const; 85 virtual bool shouldBlockRedirects() const; 86 virtual bool willSendRequestShouldReturnNull() const; 87 virtual void setTopLoadingFrame(WebKit::WebFrame*, bool); 88 virtual WebKit::WebFrame* topLoadingFrame() const; 89 virtual void policyDelegateDone(); 90 virtual bool policyDelegateEnabled() const; 91 virtual bool policyDelegateIsPermissive() const; 92 virtual bool policyDelegateShouldNotifyDone() const; 93 virtual bool shouldInterceptPostMessage() const; 94 virtual bool isSmartInsertDeleteEnabled() const; 95 virtual bool isSelectTrailingWhitespaceEnabled() const; 96 97 private: 98 TestRunner* m_private; 92 99 }; 93 100 -
trunk/Tools/DumpRenderTree/chromium/TestRunner/src/AccessibilityControllerChromium.cpp
r140565 r141596 32 32 #include "AccessibilityControllerChromium.h" 33 33 34 #include "TestDelegate.h"35 34 #include "WebAccessibilityObject.h" 36 35 #include "WebElement.h" 37 36 #include "WebFrame.h" 38 37 #include "WebNode.h" 38 #include "WebTestDelegate.h" 39 39 #include "WebView.h" 40 40 #include <public/WebCString.h> -
trunk/Tools/DumpRenderTree/chromium/TestRunner/src/AccessibilityControllerChromium.h
r134203 r141596 43 43 namespace WebTestRunner { 44 44 45 class TestDelegate;45 class WebTestDelegate; 46 46 47 47 class AccessibilityController : public CppBoundClass { … … 62 62 void notificationReceived(const WebKit::WebAccessibilityObject& target, const char* notificationName); 63 63 64 void setDelegate( TestDelegate* delegate) { m_delegate = delegate; }64 void setDelegate(WebTestDelegate* delegate) { m_delegate = delegate; } 65 65 void setWebView(WebKit::WebView* webView) { m_webView = webView; } 66 66 … … 88 88 std::vector<CppVariant> m_notificationCallbacks; 89 89 90 TestDelegate* m_delegate;90 WebTestDelegate* m_delegate; 91 91 WebKit::WebView* m_webView; 92 92 }; -
trunk/Tools/DumpRenderTree/chromium/TestRunner/src/EventSender.cpp
r141514 r141596 46 46 #include "KeyCodeMapping.h" 47 47 #include "MockSpellCheck.h" 48 #include "TestDelegate.h"49 48 #include "WebContextMenuData.h" 50 49 #include "WebDragOperation.h" 51 50 #include "WebEventSender.h" 51 #include "WebTestDelegate.h" 52 52 #include "WebTouchPoint.h" 53 53 #include "WebView.h" … … 128 128 uint32 timeOffsetMs = 0; 129 129 130 double getCurrentEventTimeSec( TestDelegate* delegate)130 double getCurrentEventTimeSec(WebTestDelegate* delegate) 131 131 { 132 132 return (delegate->getCurrentTimeInMillisecond() + timeOffsetMs) / 1000.0; … … 814 814 // - Some test even checks actual string content. So providing it would be also helpful. 815 815 // 816 static Vector<WebString> makeMenuItemStringsFor(WebContextMenuData* contextMenu, TestDelegate* delegate)816 static Vector<WebString> makeMenuItemStringsFor(WebContextMenuData* contextMenu, WebTestDelegate* delegate) 817 817 { 818 818 // These constants are based on Safari's context menu because tests are made for it. -
trunk/Tools/DumpRenderTree/chromium/TestRunner/src/EventSender.h
r141514 r141596 51 51 namespace WebTestRunner { 52 52 53 class TestDelegate;53 class WebTestDelegate; 54 54 55 55 class EventSender : public CppBoundClass { … … 57 57 EventSender(); 58 58 59 void setDelegate( TestDelegate* delegate) { m_delegate = delegate; }59 void setDelegate(WebTestDelegate* delegate) { m_delegate = delegate; } 60 60 void setWebView(WebKit::WebView* webView) { m_webView = webView; } 61 61 … … 171 171 WebTaskList m_taskList; 172 172 173 TestDelegate* m_delegate;173 WebTestDelegate* m_delegate; 174 174 WebKit::WebView* m_webView; 175 175 -
trunk/Tools/DumpRenderTree/chromium/TestRunner/src/GamepadController.cpp
r134203 r141596 31 31 #include "config.h" 32 32 #include "GamepadController.h" 33 #include " TestDelegate.h"33 #include "WebTestDelegate.h" 34 34 35 35 using namespace WebKit; … … 57 57 } 58 58 59 void GamepadController::setDelegate( TestDelegate* delegate)59 void GamepadController::setDelegate(WebTestDelegate* delegate) 60 60 { 61 61 m_delegate = delegate; -
trunk/Tools/DumpRenderTree/chromium/TestRunner/src/GamepadController.h
r140565 r141596 42 42 namespace WebTestRunner { 43 43 44 class TestDelegate;44 class WebTestDelegate; 45 45 46 46 class GamepadController : public CppBoundClass { … … 49 49 50 50 void bindToJavascript(WebKit::WebFrame*, const WebKit::WebString& classname); 51 void setDelegate( TestDelegate*);51 void setDelegate(WebTestDelegate*); 52 52 void reset(); 53 53 … … 65 65 WebKit::WebGamepads m_gamepads; 66 66 67 TestDelegate* m_delegate;67 WebTestDelegate* m_delegate; 68 68 }; 69 69 -
trunk/Tools/DumpRenderTree/chromium/TestRunner/src/TestInterfaces.cpp
r140565 r141596 35 35 #include "EventSender.h" 36 36 #include "GamepadController.h" 37 #include "TestRunner.h" 37 38 #include "TextInputController.h" 38 39 #include <public/WebString.h> … … 50 51 m_gamepadController = adoptPtr(new GamepadController()); 51 52 m_textInputController = adoptPtr(new TextInputController()); 53 m_testRunner = adoptPtr(new TestRunner()); 52 54 } 53 55 … … 58 60 // m_gamepadController doesn't depend on WebView. 59 61 m_textInputController->setWebView(0); 62 m_testRunner->setWebView(0); 60 63 61 64 m_accessibilityController->setDelegate(0); 62 65 m_eventSender->setDelegate(0); 63 66 m_gamepadController->setDelegate(0); 64 // m_textInputController doesn't depend on TestDelegate. 67 // m_textInputController doesn't depend on WebTestDelegate. 68 m_testRunner->setDelegate(0); 65 69 } 66 70 … … 71 75 // m_gamepadController doesn't depend on WebView. 72 76 m_textInputController->setWebView(webView); 77 m_testRunner->setWebView(webView); 73 78 } 74 79 75 void TestInterfaces::setDelegate( TestDelegate* delegate)80 void TestInterfaces::setDelegate(WebTestDelegate* delegate) 76 81 { 77 82 m_accessibilityController->setDelegate(delegate); 78 83 m_eventSender->setDelegate(delegate); 79 84 m_gamepadController->setDelegate(delegate); 80 // m_textInputController doesn't depend on TestDelegate. 85 // m_textInputController doesn't depend on WebTestDelegate. 86 m_testRunner->setDelegate(delegate); 81 87 } 82 88 … … 87 93 m_gamepadController->bindToJavascript(frame, WebString::fromUTF8("gamepadController")); 88 94 m_textInputController->bindToJavascript(frame, WebString::fromUTF8("textInputController")); 95 m_testRunner->bindToJavascript(frame, WebString::fromUTF8("testRunner")); 96 m_testRunner->bindToJavascript(frame, WebString::fromUTF8("layoutTestController")); 89 97 } 90 98 … … 95 103 m_gamepadController->reset(); 96 104 // m_textInputController doesn't have any state to reset. 105 m_testRunner->reset(); 106 } 107 108 void TestInterfaces::setTestIsRunning(bool running) 109 { 110 m_testRunner->setTestIsRunning(running); 97 111 } 98 112 … … 107 121 } 108 122 123 TestRunner* TestInterfaces::testRunner() 124 { 125 return m_testRunner.get(); 109 126 } 127 128 } -
trunk/Tools/DumpRenderTree/chromium/TestRunner/src/TestInterfaces.h
r134203 r141596 44 44 class EventSender; 45 45 class GamepadController; 46 class Test Delegate;46 class TestRunner; 47 47 class TextInputController; 48 class WebTestDelegate; 48 49 49 50 class TestInterfaces { … … 53 54 54 55 void setWebView(WebKit::WebView*); 55 void setDelegate( TestDelegate*);56 void setDelegate(WebTestDelegate*); 56 57 void bindTo(WebKit::WebFrame*); 57 58 void resetAll(); 59 void setTestIsRunning(bool); 58 60 59 61 AccessibilityController* accessibilityController(); 60 62 EventSender* eventSender(); 63 TestRunner* testRunner(); 61 64 62 65 private: … … 65 68 OwnPtr<GamepadController> m_gamepadController; 66 69 OwnPtr<TextInputController> m_textInputController; 70 OwnPtr<TestRunner> m_testRunner; 67 71 }; 68 72 -
trunk/Tools/DumpRenderTree/chromium/TestRunner/src/TestRunner.cpp
r141298 r141596 154 154 TestRunner::TestRunner() 155 155 : m_testIsRunning(false) 156 , m_closeRemainingWindows(true)157 156 , m_workQueue(this) 158 157 , m_delegate(0) 159 158 , m_webView(0) 160 , m_topLoadingFrame(0)161 159 , m_intentClient(adoptPtr(new EmptyWebDeliveredIntentClient)) 162 160 , m_webPermissions(adoptPtr(new WebPermissions)) … … 387 385 #endif 388 386 389 // Reset the default quota for each origin to 5MB 390 m_delegate->setDatabaseQuota(5 * 1024 * 1024); 391 m_delegate->setDeviceScaleFactor(1); 392 m_delegate->setAcceptAllCookies(false); 393 m_delegate->setLocale(""); 387 if (m_delegate) { 388 // Reset the default quota for each origin to 5MB 389 m_delegate->setDatabaseQuota(5 * 1024 * 1024); 390 m_delegate->setDeviceScaleFactor(1); 391 m_delegate->setAcceptAllCookies(false); 392 m_delegate->setLocale(""); 393 } 394 394 395 395 m_dumpEditingCallbacks = false; … … 441 441 m_workQueue.reset(); 442 442 443 if (m_closeRemainingWindows )443 if (m_closeRemainingWindows && m_delegate) 444 444 m_delegate->closeRemainingWindows(); 445 445 else -
trunk/Tools/DumpRenderTree/chromium/TestRunner/src/TestRunner.h
r141298 r141596 38 38 #include "WebDeliveredIntentClient.h" 39 39 #include "WebTask.h" 40 #include "WebTe stRunner.h"40 #include "WebTextDirection.h" 41 41 #include <public/WebURL.h> 42 #include <set> 43 #include <string> 42 44 #include <wtf/Deque.h> 43 45 44 46 namespace WebKit { 47 class WebArrayBufferView; 48 class WebPermissionClient; 45 49 class WebView; 46 50 } … … 51 55 class WebTestDelegate; 52 56 53 class TestRunner : public CppBoundClass , public WebTestRunner{57 class TestRunner : public CppBoundClass { 54 58 public: 55 59 TestRunner(); 56 60 virtual ~TestRunner(); 57 61 58 // FIXME: change this method to take a TestDelegate* instead.59 62 void setDelegate(WebTestDelegate*); 60 63 void setWebView(WebKit::WebView* webView) { m_webView = webView; } … … 64 67 WebTaskList* taskList() { return &m_taskList; } 65 68 66 // WebTestRunner implementation. 67 virtual void setTestIsRunning(bool) OVERRIDE; 68 virtual bool shouldDumpEditingCallbacks() const OVERRIDE; 69 virtual bool shouldDumpAsText() const OVERRIDE; 70 virtual void setShouldDumpAsText(bool) OVERRIDE; 71 virtual bool shouldGeneratePixelResults() const OVERRIDE; 72 virtual void setShouldGeneratePixelResults(bool) OVERRIDE; 73 virtual bool shouldDumpChildFrameScrollPositions() const OVERRIDE; 74 virtual bool shouldDumpChildFramesAsText() const OVERRIDE; 75 virtual bool shouldDumpAsAudio() const OVERRIDE; 76 virtual const WebKit::WebArrayBufferView* audioData() const OVERRIDE; 77 virtual bool shouldDumpFrameLoadCallbacks() const OVERRIDE; 78 virtual void setShouldDumpFrameLoadCallbacks(bool) OVERRIDE; 79 virtual bool shouldDumpUserGestureInFrameLoadCallbacks() const OVERRIDE; 80 virtual bool stopProvisionalFrameLoads() const OVERRIDE; 81 virtual bool shouldDumpTitleChanges() const OVERRIDE; 82 virtual bool shouldDumpCreateView() const OVERRIDE; 83 virtual bool canOpenWindows() const OVERRIDE; 84 virtual bool shouldDumpResourceLoadCallbacks() const OVERRIDE; 85 virtual bool shouldDumpResourceRequestCallbacks() const OVERRIDE; 86 virtual bool shouldDumpResourceResponseMIMETypes() const OVERRIDE; 87 virtual WebKit::WebPermissionClient* webPermissions() const OVERRIDE; 88 virtual bool shouldDumpStatusCallbacks() const OVERRIDE; 89 virtual bool shouldDumpProgressFinishedCallback() const OVERRIDE; 90 virtual bool shouldDumpBackForwardList() const OVERRIDE; 91 virtual bool deferMainResourceDataLoad() const OVERRIDE; 92 virtual bool shouldDumpSelectionRect() const OVERRIDE; 93 virtual bool testRepaint() const OVERRIDE; 94 virtual bool sweepHorizontally() const OVERRIDE; 95 virtual bool isPrinting() const OVERRIDE; 96 virtual bool shouldStayOnPageAfterHandlingBeforeUnload() const OVERRIDE; 97 virtual void setTitleTextDirection(WebKit::WebTextDirection) OVERRIDE; 98 virtual const std::set<std::string>* httpHeadersToClear() const OVERRIDE; 99 virtual bool shouldBlockRedirects() const OVERRIDE; 100 virtual bool willSendRequestShouldReturnNull() const OVERRIDE; 101 virtual void setTopLoadingFrame(WebKit::WebFrame*, bool) OVERRIDE; 102 virtual WebKit::WebFrame* topLoadingFrame() const OVERRIDE; 103 virtual void policyDelegateDone() OVERRIDE; 104 virtual bool policyDelegateEnabled() const OVERRIDE; 105 virtual bool policyDelegateIsPermissive() const OVERRIDE; 106 virtual bool policyDelegateShouldNotifyDone() const OVERRIDE; 107 virtual bool shouldInterceptPostMessage() const OVERRIDE; 108 virtual bool isSmartInsertDeleteEnabled() const OVERRIDE; 109 virtual bool isSelectTrailingWhitespaceEnabled() const OVERRIDE; 69 void setTestIsRunning(bool); 70 bool shouldDumpEditingCallbacks() const; 71 bool shouldDumpAsText() const; 72 void setShouldDumpAsText(bool); 73 bool shouldGeneratePixelResults() const; 74 void setShouldGeneratePixelResults(bool); 75 bool shouldDumpChildFrameScrollPositions() const; 76 bool shouldDumpChildFramesAsText() const; 77 bool shouldDumpAsAudio() const; 78 const WebKit::WebArrayBufferView* audioData() const; 79 bool shouldDumpFrameLoadCallbacks() const; 80 void setShouldDumpFrameLoadCallbacks(bool); 81 bool shouldDumpUserGestureInFrameLoadCallbacks() const; 82 bool stopProvisionalFrameLoads() const; 83 bool shouldDumpTitleChanges() const; 84 bool shouldDumpCreateView() const; 85 bool canOpenWindows() const; 86 bool shouldDumpResourceLoadCallbacks() const; 87 bool shouldDumpResourceRequestCallbacks() const; 88 bool shouldDumpResourceResponseMIMETypes() const; 89 WebKit::WebPermissionClient* webPermissions() const; 90 bool shouldDumpStatusCallbacks() const; 91 bool shouldDumpProgressFinishedCallback() const; 92 bool shouldDumpBackForwardList() const; 93 bool deferMainResourceDataLoad() const; 94 bool shouldDumpSelectionRect() const; 95 bool testRepaint() const; 96 bool sweepHorizontally() const; 97 bool isPrinting() const; 98 bool shouldStayOnPageAfterHandlingBeforeUnload() const; 99 void setTitleTextDirection(WebKit::WebTextDirection); 100 const std::set<std::string>* httpHeadersToClear() const; 101 bool shouldBlockRedirects() const; 102 bool willSendRequestShouldReturnNull() const; 103 void setTopLoadingFrame(WebKit::WebFrame*, bool); 104 WebKit::WebFrame* topLoadingFrame() const; 105 void policyDelegateDone(); 106 bool policyDelegateEnabled() const; 107 bool policyDelegateIsPermissive() const; 108 bool policyDelegateShouldNotifyDone() const; 109 bool shouldInterceptPostMessage() const; 110 bool isSmartInsertDeleteEnabled() const; 111 bool isSelectTrailingWhitespaceEnabled() const; 110 112 111 113 // A single item in the work queue. -
trunk/Tools/DumpRenderTree/chromium/TestRunner/src/WebTestInterfaces.cpp
r140396 r141596 32 32 #include "WebTestInterfaces.h" 33 33 34 #include "TestDelegate.h"35 34 #include "TestInterfaces.h" 36 35 #include "WebAccessibilityController.h" … … 48 47 namespace WebTestRunner { 49 48 50 class WebTestInterfaces::Internal : public TestDelegate{49 class WebTestInterfaces::Internal { 51 50 public: 52 51 Internal(); … … 60 59 WebAccessibilityController* accessibilityController() { return &m_accessibilityController; } 61 60 WebEventSender* eventSender() { return &m_eventSender; } 62 WebTestRunner* testRunner() { return m_testRunner; } 63 void setTestRunner(WebTestRunner* testRunner) { m_testRunner = testRunner; } 64 65 // TestDelegate implementation. 66 virtual void clearContextMenuData(); 67 virtual void clearEditCommand(); 68 virtual void setEditCommand(const std::string& name, const std::string& value); 69 virtual WebContextMenuData* lastContextMenuData() const; 70 virtual void setGamepadData(const WebGamepads&); 71 virtual void printMessage(const std::string& message); 72 virtual void postTask(WebTask*); 73 virtual void postDelayedTask(WebTask*, long long ms); 74 virtual WebString registerIsolatedFileSystem(const WebVector<WebString>& absoluteFilenames); 75 virtual long long getCurrentTimeInMillisecond(); 76 virtual WebKit::WebString getAbsoluteWebStringFromUTF8Path(const std::string& path); 61 WebTestRunner* testRunner() { return &m_testRunner; } 77 62 78 63 private: … … 82 67 WebAccessibilityController m_accessibilityController; 83 68 WebEventSender m_eventSender; 84 WebTestRunner* m_testRunner; 85 WebTestDelegate* m_delegate; 69 WebTestRunner m_testRunner; 86 70 }; 87 71 … … 91 75 , m_accessibilityController(m_interfaces.accessibilityController()) 92 76 , m_eventSender(m_interfaces.eventSender()) 93 , m_testRunner(0) 94 , m_delegate(0) 77 , m_testRunner(m_interfaces.testRunner()) 95 78 { 96 79 } … … 102 85 void WebTestInterfaces::Internal::setDelegate(WebTestDelegate* delegate) 103 86 { 104 if (delegate) { 105 m_delegate = delegate; 106 m_interfaces.setDelegate(this); 107 } else { 108 m_delegate = 0; 109 m_interfaces.setDelegate(0); 110 } 87 m_interfaces.setDelegate(delegate); 111 88 } 112 89 … … 119 96 void WebTestInterfaces::Internal::setTestIsRunning(bool running) 120 97 { 121 if (m_testRunner) 122 m_testRunner->setTestIsRunning(running); 123 } 124 125 void WebTestInterfaces::Internal::clearContextMenuData() 126 { 127 m_delegate->clearContextMenuData(); 128 } 129 130 void WebTestInterfaces::Internal::clearEditCommand() 131 { 132 m_delegate->clearEditCommand(); 133 } 134 135 void WebTestInterfaces::Internal::setEditCommand(const std::string& name, const std::string& value) 136 { 137 m_delegate->setEditCommand(name, value); 138 } 139 140 WebContextMenuData* WebTestInterfaces::Internal::lastContextMenuData() const 141 { 142 return m_delegate->lastContextMenuData(); 143 } 144 145 void WebTestInterfaces::Internal::setGamepadData(const WebGamepads& pads) 146 { 147 m_delegate->setGamepadData(pads); 148 } 149 150 void WebTestInterfaces::Internal::printMessage(const std::string& message) 151 { 152 m_delegate->printMessage(message); 153 } 154 155 void WebTestInterfaces::Internal::postTask(WebTask* task) 156 { 157 m_delegate->postTask(task); 158 } 159 160 void WebTestInterfaces::Internal::postDelayedTask(WebTask* task, long long ms) 161 { 162 m_delegate->postDelayedTask(task, ms); 163 } 164 165 WebString WebTestInterfaces::Internal::registerIsolatedFileSystem(const WebVector<WebString>& absoluteFilenames) 166 { 167 return m_delegate->registerIsolatedFileSystem(absoluteFilenames); 168 } 169 170 long long WebTestInterfaces::Internal::getCurrentTimeInMillisecond() 171 { 172 return m_delegate->getCurrentTimeInMillisecond(); 173 } 174 175 WebKit::WebString WebTestInterfaces::Internal::getAbsoluteWebStringFromUTF8Path(const std::string& path) 176 { 177 return m_delegate->getAbsoluteWebStringFromUTF8Path(path); 98 m_interfaces.setTestIsRunning(running); 178 99 } 179 100 … … 233 154 } 234 155 235 void WebTestInterfaces::setTestRunner(WebTestRunner* testRunner)236 {237 m_internal->setTestRunner(testRunner);238 156 } 239 240 } -
trunk/Tools/DumpRenderTree/chromium/TestShell.cpp
r141082 r141596 48 48 #include "WebSettings.h" 49 49 #include "WebTestProxy.h" 50 #include "WebTestRunner.h" 50 51 #include "WebView.h" 51 52 #include "WebViewHost.h" … … 162 163 m_testInterfaces = adoptPtr(new WebTestInterfaces()); 163 164 m_devToolsTestInterfaces = adoptPtr(new WebTestInterfaces()); 164 m_testRunner = adoptPtr(new TestRunner());165 m_testInterfaces->setTestRunner(m_testRunner.get());166 m_devToolsTestInterfaces->setTestRunner(m_testRunner.get());167 165 #if ENABLE(NOTIFICATIONS) || ENABLE(LEGACY_NOTIFICATIONS) 168 166 m_notificationPresenter = adoptPtr(new NotificationPresenter(this)); … … 188 186 m_testInterfaces->setDelegate(m_webViewHost.get()); 189 187 m_testInterfaces->setWebView(m_webView); 190 m_testRunner->setDelegate(m_webViewHost.get());191 m_testRunner->setWebView(m_webView);192 188 m_drtDevToolsAgent->setWebView(m_webView); 193 189 } … … 199 195 m_devToolsTestInterfaces->setDelegate(0); 200 196 m_devToolsTestInterfaces->setWebView(0); 201 m_testRunner->setDelegate(0);202 m_testRunner->setWebView(0);203 197 m_drtDevToolsAgent->setWebView(0); 204 198 if (m_webViewHost) … … 236 230 m_drtDevToolsAgent->reset(); 237 231 m_drtDevToolsClient.clear(); 232 m_devToolsTestInterfaces->setDelegate(0); 233 m_devToolsTestInterfaces->setWebView(0); 238 234 closeWindow(m_devTools); 239 235 m_devTools = 0; … … 267 263 string testUrl = m_params.testUrl.spec(); 268 264 269 m_test Runner->setShouldGeneratePixelResults(shouldDumpPixels);265 m_testInterfaces->testRunner()->setShouldGeneratePixelResults(shouldDumpPixels); 270 266 271 267 if (testUrl.find("loading/") != string::npos 272 268 || testUrl.find("loading\\") != string::npos) 273 m_test Runner->setShouldDumpFrameLoadCallbacks(true);269 m_testInterfaces->testRunner()->setShouldDumpFrameLoadCallbacks(true); 274 270 275 271 if (testUrl.find("compositing/") != string::npos || testUrl.find("compositing\\") != string::npos) { … … 284 280 if (testUrl.find("/dumpAsText/") != string::npos 285 281 || testUrl.find("\\dumpAsText\\") != string::npos) { 286 m_test Runner->setShouldDumpAsText(true);287 m_test Runner->setShouldGeneratePixelResults(false);282 m_testInterfaces->testRunner()->setShouldDumpAsText(true); 283 m_testInterfaces->testRunner()->setShouldGeneratePixelResults(false); 288 284 } 289 285 … … 326 322 m_testInterfaces->resetAll(); 327 323 m_devToolsTestInterfaces->resetAll(); 328 m_testRunner->reset();329 324 m_webViewHost->reset(); 330 325 #if ENABLE(NOTIFICATIONS) || ENABLE(LEGACY_NOTIFICATIONS) … … 391 386 } 392 387 393 void TestShell::testFinished() 394 { 388 void TestShell::testFinished(WebViewHost* host) 389 { 390 if (host == m_devTools) 391 return; 392 395 393 if (!m_testIsPending) 396 394 return; … … 405 403 { 406 404 m_printer.handleTimedOut(); 407 testFinished( );405 testFinished(webViewHost()); 408 406 } 409 407 … … 580 578 if (!frame) 581 579 return; 582 bool shouldDumpAsText = m_test Runner->shouldDumpAsText();583 bool shouldDumpAsAudio = m_test Runner->shouldDumpAsAudio();584 bool shouldGeneratePixelResults = m_test Runner->shouldGeneratePixelResults();585 bool shouldDumpAsPrinted = m_test Runner->isPrinting();580 bool shouldDumpAsText = m_testInterfaces->testRunner()->shouldDumpAsText(); 581 bool shouldDumpAsAudio = m_testInterfaces->testRunner()->shouldDumpAsAudio(); 582 bool shouldGeneratePixelResults = m_testInterfaces->testRunner()->shouldGeneratePixelResults(); 583 bool shouldDumpAsPrinted = m_testInterfaces->testRunner()->isPrinting(); 586 584 bool dumpedAnything = false; 587 585 588 586 if (shouldDumpAsAudio) { 589 const WebKit::WebArrayBufferView* webArrayBufferView = m_test Runner->audioData();587 const WebKit::WebArrayBufferView* webArrayBufferView = m_testInterfaces->testRunner()->audioData(); 590 588 m_printer.handleAudio(webArrayBufferView->baseAddress(), webArrayBufferView->byteLength()); 591 589 m_printer.handleAudioFooter(); … … 611 609 } 612 610 if (shouldDumpAsText) { 613 bool recursive = m_test Runner->shouldDumpChildFramesAsText();611 bool recursive = m_testInterfaces->testRunner()->shouldDumpChildFramesAsText(); 614 612 string dataUtf8 = shouldDumpAsPrinted ? dumpFramesAsPrintedText(frame, recursive) : dumpFramesAsText(frame, recursive); 615 613 if (fwrite(dataUtf8.c_str(), 1, dataUtf8.size(), stdout) != dataUtf8.size()) … … 622 620 renderTextBehavior |= WebFrame::RenderAsTextDebug; 623 621 printf("%s", frame->renderTreeAsText(renderTextBehavior).utf8().data()); 624 bool recursive = m_test Runner->shouldDumpChildFrameScrollPositions();622 bool recursive = m_testInterfaces->testRunner()->shouldDumpChildFrameScrollPositions(); 625 623 dumpFrameScrollPosition(frame, recursive); 626 624 } 627 if (m_test Runner->shouldDumpBackForwardList())625 if (m_testInterfaces->testRunner()->shouldDumpBackForwardList()) 628 626 printf("%s", dumpAllBackForwardLists().c_str()); 629 627 } … … 637 635 dumpedAnything = true; 638 636 m_webView->layout(); 639 if (m_test Runner->testRepaint()) {637 if (m_testInterfaces->testRunner()->testRepaint()) { 640 638 WebSize viewSize = m_webView->size(); 641 639 int width = viewSize.width; 642 640 int height = viewSize.height; 643 if (m_test Runner->sweepHorizontally()) {641 if (m_testInterfaces->testRunner()->sweepHorizontally()) { 644 642 for (WebRect column(0, 0, 1, height); column.x < width; column.x++) 645 643 m_webViewHost->paintRect(column); … … 648 646 m_webViewHost->paintRect(line); 649 647 } 650 } else if (m_test Runner->isPrinting())648 } else if (m_testInterfaces->testRunner()->isPrinting()) 651 649 m_webViewHost->paintPagesWithBoundaries(); 652 650 else … … 656 654 // rect is the rect enclosing the (possibly transformed) selection. 657 655 // The rect should be drawn after everything is laid out and painted. 658 if (m_test Runner->shouldDumpSelectionRect()) {656 if (m_testInterfaces->testRunner()->shouldDumpSelectionRect()) { 659 657 // If there is a selection rect - draw a red 1px border enclosing rect 660 658 WebRect wr = frame->selectionBoundsRect(); … … 753 751 else 754 752 m_testInterfaces->bindTo(frame); 755 m_testRunner->bindToJavascript(frame, WebString::fromUTF8("testRunner"));756 m_testRunner->bindToJavascript(frame, WebString::fromUTF8("layoutTestController"));757 753 } 758 754 -
trunk/Tools/DumpRenderTree/chromium/TestShell.h
r141237 r141596 34 34 #include "NotificationPresenter.h" 35 35 #include "TestEventPrinter.h" 36 #include "TestRunner/src/TestRunner.h"37 36 #include "WebPreferences.h" 38 37 #include "WebTestInterfaces.h" … … 85 84 // Returns the host for the main WebView. 86 85 WebViewHost* webViewHost() const { return m_webViewHost.get(); } 87 WebTestRunner::WebTestRunner* testRunner() const { return m_test Runner.get(); }86 WebTestRunner::WebTestRunner* testRunner() const { return m_testInterfaces->testRunner(); } 88 87 WebTestRunner::WebEventSender* eventSender() const { return m_testInterfaces->eventSender(); } 89 88 WebTestRunner::WebAccessibilityController* accessibilityController() const { return m_testInterfaces->accessibilityController(); } … … 109 108 110 109 void setFocus(WebKit::WebWidget*, bool enable); 111 bool shouldDumpResourceRequestCallbacks() const { return (m_testIsPreparing || m_testIsPending) && testRunner()->shouldDumpResourceRequestCallbacks(); }112 bool shouldDumpResourceLoadCallbacks() const { return (m_testIsPreparing || m_testIsPending) && testRunner()->shouldDumpResourceLoadCallbacks(); }113 bool shouldDumpResourceResponseMIMETypes() const { return (m_testIsPreparing || m_testIsPending) && testRunner()->shouldDumpResourceResponseMIMETypes(); }114 110 115 111 // Called by the DRTTestRunner to signal test completion. 116 void testFinished( );112 void testFinished(WebViewHost*); 117 113 // Called by DRTTestRunner when a test hits the timeout, but does not 118 114 // cause a hang. We can avoid killing TestShell in this case and still dump … … 210 206 OwnPtr<WebTestRunner::WebTestInterfaces> m_testInterfaces; 211 207 OwnPtr<WebTestRunner::WebTestInterfaces> m_devToolsTestInterfaces; 212 OwnPtr<WebTestRunner::TestRunner> m_testRunner;213 208 #if ENABLE(NOTIFICATIONS) || ENABLE(LEGACY_NOTIFICATIONS) 214 209 OwnPtr<NotificationPresenter> m_notificationPresenter; -
trunk/Tools/DumpRenderTree/chromium/WebViewHost.cpp
r141512 r141596 914 914 void WebViewHost::testFinished() 915 915 { 916 m_shell->testFinished( );916 m_shell->testFinished(this); 917 917 } 918 918
Note: See TracChangeset
for help on using the changeset viewer.