blob: c6744bfaf4604c0c19e71dec1d44c331c9cc5481 [file] [log] [blame]
2017-06-28 Keith Miller <keith_miller@apple.com>
VMTraps has some races
https://bugs.webkit.org/show_bug.cgi?id=173941
Reviewed by Michael Saboff.
Add new testing mode for testing the Watchdog with our stress
tests.
* Scripts/run-jsc-stress-tests:
2017-06-29 Carlos Garcia Campos <cgarcia@igalia.com>
[GTK][WPE] Implement API::IconLoadingClient and rework WebKitFaviconDatabase to use IconDatabase directly
https://bugs.webkit.org/show_bug.cgi?id=173877
Reviewed by Brady Eidson.
Update favicons unit test to ensure we wait until the database is updated in testGetFavicon() before starting
the next tests.
* TestWebKitAPI/Tests/WebKitGLib/TestWebKitFaviconDatabase.cpp:
(testGetFavicon):
2017-06-28 Tim Horton <timothy_horton@apple.com>
MobileSafari was constantly using 10-15% CPU viewing a PDF
https://bugs.webkit.org/show_bug.cgi?id=173944
<rdar://problem/33039910>
Reviewed by Simon Fraser.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKit2Cocoa/WKPDFViewStablePresentationUpdateCallback.mm:
Add a test that we ever call the stable presentation update callback
when we have a WKPDFView up, instead of infinitely looping.
2017-06-28 Alex Christensen <achristensen@webkit.org>
Prevent displaying URLs with small capital letters
https://bugs.webkit.org/show_bug.cgi?id=173949
<rdar://problem/32952058>
Reviewed by Brent Fulgham.
* TestWebKitAPI/Tests/WebCore/cocoa/URLExtras.mm:
(TestWebKitAPI::TEST):
2017-06-28 Brent Fulgham <bfulgham@apple.com>
Unreviewed test fix.
Disable the file monitor tests on iOS because the 'system' API is unavailable on that platform.
* TestWebKitAPI/Tests/WebCore/FileMonitor.cpp:
2017-06-28 Brent Fulgham <bfulgham@apple.com>
Teach ResourceLoadStatistics to recognize changes in the file system
https://bugs.webkit.org/show_bug.cgi?id=173800
<rdar://problem/32937842>
Reviewed by Chris Dumez.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebCore/FileMonitor.cpp: Added.
(TestWebKitAPI::FileMonitorTest::tempFilePath):
(TestWebKitAPI::handleFileModification):
(TestWebKitAPI::handleFileDeletion):
(TestWebKitAPI::resetTestState):
(TestWebKitAPI::TEST_F):
2017-06-28 Brady Eidson <beidson@apple.com>
DocumentLoader should always notify the client if there are pending icon loads when the load is stopped.
https://bugs.webkit.org/show_bug.cgi?id=173874
Reviewed by Alex Christensen.
* TestWebKitAPI/Tests/WebKit2Cocoa/IconLoadingDelegate.mm:
2017-06-28 Don Olmstead <don.olmstead@sony.com>
Unreviewed, adding Don Olmstead to contributors.json
* Scripts/webkitpy/common/config/contributors.json:
2017-06-28 Alex Christensen <achristensen@webkit.org>
WebsitePolicies given with navigation policy for redirects should apply to the provisional document
https://bugs.webkit.org/show_bug.cgi?id=173886
<rdar://problem/32543191>
Reviewed by Andy Estes.
* TestWebKitAPI/Tests/WebKit2Cocoa/WebsitePolicies.mm:
(ParsedRange::ParsedRange):
(-[TestSchemeHandler initWithVideoData:]):
(-[TestSchemeHandler webView:startURLSchemeTask:]):
(-[TestSchemeHandler webView:stopURLSchemeTask:]):
(TEST):
2017-06-27 JF Bastien <jfbastien@apple.com>
WebAssembly: running out of executable memory should throw OoM
https://bugs.webkit.org/show_bug.cgi?id=171537
<rdar://problem/32963338>
Reviewed by Saam Barati.
* Scripts/run-jsc-stress-tests: add a configuration which runs the
tests under limited executable memory and avoids non-WebAssembly
code generation so that we more reliably run out of executable
memory in WebAssembly.
2017-06-27 Wenson Hsieh <wenson_hsieh@apple.com>
[iOS DnD] Support dragging out of contenteditable areas without a prior selection
https://bugs.webkit.org/show_bug.cgi?id=173854
<rdar://problem/32236827>
Reviewed by Ryosuke Niwa and Tim Horton.
Adds a new test to check that an image can be dragged out of a contenteditable and dropped.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKit2Cocoa/contenteditable-and-target.html: Added.
* TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
(TestWebKitAPI::TEST):
2017-06-27 Don Olmstead <don.olmstead@sony.com>
[PAL] Add symbol export macros for PAL
https://bugs.webkit.org/show_bug.cgi?id=171519
Reviewed by Konstantin Tokarev.
* DumpRenderTree/config.h:
* TestWebKitAPI/CMakeLists.txt:
* TestWebKitAPI/config.h:
* WebKitTestRunner/config.h:
2017-06-27 John Wilander <wilander@apple.com>
Resource Load Statistics: Add telemetry
https://bugs.webkit.org/show_bug.cgi?id=173499
<rdar://problem/32826094>
Reviewed by Brent Fulgham.
Adds three new testRunner functions:
- installStatisticsDidRunTelemetryCallback()
- statisticsFireTelemetryHandler()
- setStatisticsNotifyPagesWhenTelemetryWasCaptured()
* WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
* WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
(WTR::InjectedBundle::didReceiveMessageToPage):
* WebKitTestRunner/InjectedBundle/TestRunner.cpp:
(WTR::TestRunner::installStatisticsDidRunTelemetryCallback):
(WTR::TestRunner::statisticsDidRunTelemetryCallback):
(WTR::TestRunner::statisticsFireTelemetryHandler):
(WTR::TestRunner::setStatisticsNotifyPagesWhenTelemetryWasCaptured):
* WebKitTestRunner/InjectedBundle/TestRunner.h:
* WebKitTestRunner/TestController.cpp:
(WTR::TestController::resetStateToConsistentValues):
(WTR::TestController::statisticsFireTelemetryHandler):
(WTR::TestController::setStatisticsNotifyPagesWhenTelemetryWasCaptured):
* WebKitTestRunner/TestController.h:
* WebKitTestRunner/TestInvocation.cpp:
(WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
2017-06-27 Ting-Wei Lan <lantw44@gmail.com>
Add missing includes to fix compilation error on FreeBSD
https://bugs.webkit.org/show_bug.cgi?id=172919
Reviewed by Mark Lam.
* ImageDiff/cairo/PlatformImageCairo.cpp:
2017-06-26 Jonathan Bedard <jbedard@apple.com>
Unreviewed, rolling out r218783.
Causing accessibility/mac/setting-attributes-is-
asynchronous.html to crash consistently on mac-wk2 Debug
Reverted changeset:
"AX: Cannot call setValue() on contenteditable or ARIA text
controls"
https://bugs.webkit.org/show_bug.cgi?id=173520
http://trac.webkit.org/changeset/218783
2017-06-26 Yusuke Suzuki <utatane.tea@gmail.com>
[WTF] Drop Thread::create(obsolete things) API since we can use lambda
https://bugs.webkit.org/show_bug.cgi?id=173825
Reviewed by Saam Barati.
* DumpRenderTree/JavaScriptThreading.cpp:
(runJavaScriptThread):
(startJavaScriptThreads):
* DumpRenderTree/mac/DumpRenderTree.mm:
(runThread):
(runPthread):
(testThreadIdentifierMap):
2017-06-26 David Kilzer <ddkilzer@apple.com>
[TestWebKitAPI] Fix false-positive bad release warnings found by clang static analyzer
<https://webkit.org/b/173837>
Reviewed by Geoffrey Garen.
The clang static analyzer can't reason about objects that are
assigned to a delegate as +1 retained, and then released
later in a different method when the delegate is cleared.
Instead, use a common idiom where the object setting the
delegate retains it as an instance variable on initialization.
Then the same object clears the delegate and releases its
instance variable during teardown.
Also add EXPECT_TRUE() tests to make sure the delegate objects
match before teardown.
* TestWebKitAPI/Tests/mac/FullscreenZoomInitialFrame.mm:
(TestWebKitAPI::FullscreenZoomInitialFrame::initializeView):
(TestWebKitAPI::FullscreenZoomInitialFrame::teardownView):
* TestWebKitAPI/Tests/mac/PageVisibilityStateWithWindowChanges.mm:
(TestWebKitAPI::PageVisibilityStateWithWindowChanges::initializeView):
(TestWebKitAPI::PageVisibilityStateWithWindowChanges::teardownView):
2017-06-26 David Kilzer <ddkilzer@apple.com>
[TestWebKitAPI] REGRESSION (r218750): Fix leak of NSURLResponse in WKURLSchemeHandler-1.mm
<https://webkit.org/b/173836>
Reviewed by Brady Eidson.
* TestWebKitAPI/Tests/WebKit2Cocoa/WKURLSchemeHandler-1.mm:
(-[RedirectSchemeHandler webView:startURLSchemeTask:]): Use
adoptNS() to fix the leak. Also use auto/adoptNS() for other
objects in this test.
2017-06-26 Joanmarie Diggs <jdiggs@igalia.com>
[ATK] Add support for aria-details and aria-errormessage
https://bugs.webkit.org/show_bug.cgi?id=172588
Reviewed by Chris Fleizach.
Add additional methods to test ARIA properties which are exposed via
AtkRelation. Also bump minimum versions of at-spi2-core and at-spi2-atk
to versions which support the details and error-message relation types.
* WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h:
(WTR::AccessibilityUIElement::ariaDetailsElementAtIndex):
(WTR::AccessibilityUIElement::ariaDetailsReferencingElementAtIndex):
(WTR::AccessibilityUIElement::ariaErrorMessageElementAtIndex):
(WTR::AccessibilityUIElement::ariaErrorMessageReferencingElementAtIndex):
* WebKitTestRunner/InjectedBundle/Bindings/AccessibilityUIElement.idl:
* WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
(WTR::AccessibilityUIElement::ariaDetailsElementAtIndex):
(WTR::AccessibilityUIElement::ariaDetailsReferencingElementAtIndex):
(WTR::AccessibilityUIElement::ariaErrorMessageElementAtIndex):
(WTR::AccessibilityUIElement::ariaErrorMessageReferencingElementAtIndex):
* gtk/jhbuild.modules:
2017-06-26 Carlos Garcia Campos <cgarcia@igalia.com>
Unreviewed. Add libfii to GTK+ install dependencies script.
* gtk/install-dependencies:
2017-06-25 Michael Catanzaro <mcatanzaro@igalia.com>
Unreviewed, rolling out r215190.
Broke product select element on GNOME Bugzilla
Reverted changeset:
"[GTK] Misplaced right click menu on web page due to
deprecated gtk_menu_popup()"
https://bugs.webkit.org/show_bug.cgi?id=170553
http://trac.webkit.org/changeset/215190
2017-06-24 Joseph Pecoraro <pecoraro@apple.com>
Remove Reflect.enumerate
https://bugs.webkit.org/show_bug.cgi?id=173806
Reviewed by Yusuke Suzuki.
* Scripts/run-jsc-stress-tests:
2017-06-24 Chris Fleizach <cfleizach@apple.com>
AX: Cannot call setValue() on contenteditable or ARIA text controls
https://bugs.webkit.org/show_bug.cgi?id=173520
Reviewed by Ryosuke Niwa.
Add setValue() method to WKTR (already existed in DRT).
* WebKitTestRunner/InjectedBundle/AccessibilityUIElement.cpp:
(WTR::AccessibilityUIElement::setValue):
* WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h:
* WebKitTestRunner/InjectedBundle/Bindings/AccessibilityUIElement.idl:
* WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:
(WTR::AccessibilityUIElement::setValue):
2017-06-23 Keith Miller <keith_miller@apple.com>
Switch VMTraps to use halt instructions rather than breakpoint instructions
https://bugs.webkit.org/show_bug.cgi?id=173677
Reviewed by JF Bastien.
* TestWebKitAPI/Tests/WTF/ThreadMessages.cpp:
(TEST):
2017-06-23 Youenn Fablet <youenn@apple.com>
Set getUserMedia permission to true by default on WTR
https://bugs.webkit.org/show_bug.cgi?id=173610
Reviewed by Alex Christensen.
Adding a way to reset the getUserMedia permission to pending.
* WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
* WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
(WTR::InjectedBundle::setUserMediaPermissionAsUnset):
* WebKitTestRunner/InjectedBundle/InjectedBundle.h:
* WebKitTestRunner/InjectedBundle/TestRunner.cpp:
(WTR::TestRunner::setUserMediaPermissionAsUnset):
* WebKitTestRunner/InjectedBundle/TestRunner.h:
* WebKitTestRunner/TestController.cpp:
(WTR::TestController::resetStateToConsistentValues):
(WTR::TestController::setUserMediaPermissionAsUnset):
* WebKitTestRunner/TestController.h:
* WebKitTestRunner/TestInvocation.cpp:
(WTR::TestInvocation::didReceiveMessageFromInjectedBundle):
2017-06-23 Alex Christensen <achristensen@webkit.org>
Add SPI to WKURLSchemeTask for redirection
https://bugs.webkit.org/show_bug.cgi?id=173730
Reviewed by Brady Eidson.
* TestWebKitAPI/Tests/WebKit2Cocoa/WKURLSchemeHandler-1.mm:
(-[SchemeHandler webView:startURLSchemeTask:]):
(-[SchemeHandler webView:stopURLSchemeTask:]):
(TEST):
(-[RedirectSchemeHandler webView:startURLSchemeTask:]):
(-[RedirectSchemeHandler webView:stopURLSchemeTask:]):
(-[RedirectSchemeHandler webView:didReceiveServerRedirectForProvisionalNavigation:]):
(-[RedirectSchemeHandler webView:decidePolicyForNavigationResponse:decisionHandler:]):
(-[RedirectSchemeHandler userContentController:didReceiveScriptMessage:]):
2017-06-23 Carlos Garcia Campos <cgarcia@igalia.com>
[WPE] Use JSC API to send script messages from web extension in tests
https://bugs.webkit.org/show_bug.cgi?id=173757
Reviewed by Žan Doberšek.
The GTK+ uses DOM bindings to send the messages. We can just build the message string and use JSEvaluateScript
to run postMessage().
Fixes: /wpe/WebKitSecurityManager/file-xhr
/wpe/WebKitConsoleMessage/console-api
/wpe/WebKitConsoleMessage/js-exception
/wpe/WebKitConsoleMessage/network-error
/wpe/WebKitConsoleMessage/security-error
* TestWebKitAPI/Tests/WebKitGLib/TestConsoleMessage.cpp:
(testWebKitConsoleMessageSecurityError): Remove ifdefs.
(beforeAll): Ditto.
* TestWebKitAPI/Tests/WebKitGLib/TestWebKitWebContext.cpp:
(testWebContextSecurityFileXHR): Ditto.
(beforeAll): Ditto.
* TestWebKitAPI/Tests/WebKitGLib/WebExtensionTest.cpp:
(consoleMessageSentCallback): Use JSEvaluateScript in WPE. We need to escape the '"' in the message string.
(pageCreatedCallback): Remove ifdefs.
2017-06-23 Carlos Garcia Campos <cgarcia@igalia.com>
Unreviewed. Fix WPE /wpe/WebKitWebView/javascript-dialogs and /wpe/WebKitWebView/window-properties
Skip onbeforeunload dialog tests for now in WPE since we don't have a implemention for
simulateUserInteraction(). And do not expect changes in "geometry" property of WebKitWindowProperties that
doesn't exist yet in WPE.
* TestWebKitAPI/Tests/WebKitGLib/TestUIClient.cpp:
(testWebViewJavaScriptDialogs):
(testWebViewWindowProperties):
2017-06-22 Carlos Garcia Campos <cgarcia@igalia.com>
[GTK] Upgrade pixman and cairo in jhbuild
https://bugs.webkit.org/show_bug.cgi?id=173710
Reviewed by Carlos Alberto Lopez Perez.
* gtk/jhbuild.modules:
2017-06-22 Carlos Garcia Campos <cgarcia@igalia.com>
REGRESSION(r218686): [GTK] Several unit tests are failing after r218686 in the bots
https://bugs.webkit.org/show_bug.cgi?id=173711
Reviewed by Carlos Alberto Lopez Perez.
I can't reproduce it locally, but it's complaining about a g_setenv() and I only added one in r218686 to recover
the XDG_RUNTIME_DIR, because it's required by Wayland to work. So, I guess that env var is not set in the bots.
* TestWebKitAPI/glib/WebKitGLib/WebKitTestBus.cpp:
(WebKitTestBus::run): Ensure value is not nullptr before calling g_setenv().
2017-06-22 David Kilzer <ddkilzer@apple.com>
REGRESSION (r218419): 7 leaks in PluginLoadClientPolicies.mm
<https://webkit.org/b/173721>
Reviewed by Joseph Pecoraro.
Use RetainPtr<> to create NSMutableDictionary and NSNumber
objects to fix leaks and to avoid the autoreleasepool.
* TestWebKitAPI/Tests/WebKit2Cocoa/PluginLoadClientPolicies.mm:
(TEST):
2017-06-22 Matt Lewis <jlewis3@apple.com>
Unreviewed, rolling out r218633.
The test is failing frequently on Sierra Debug and Windows
Reverted changeset:
"AX: Cannot call setValue() on contenteditable or ARIA text
controls"
https://bugs.webkit.org/show_bug.cgi?id=173520
http://trac.webkit.org/changeset/218633
2017-06-22 David Kilzer <ddkilzer@apple.com>
[TestWebKitAPI] Fix misuse of -[NSData dataWithBytesNoCopy:length:] with global variables
<https://webkit.org/b/173690>
Reviewed by Chris Dumez.
Per documentation, -[NSData dataWithBytesNoCopy:length:] takes
ownership of malloc()-ed memory, then frees it when it's
released. These tests were passing global variables into the
method, which is not malloc()-ed memory, which violates the API
contract.
The fix is to switch to use
-[NSData dataWithBytesNoCopy:length:freeWhenDone:] and to pass
NO for the last argument.
Caught by the clang static analyzer.
* TestWebKitAPI/Tests/WebKit2Cocoa/IconLoadingDelegate.mm:
(TEST):
* TestWebKitAPI/Tests/WebKit2Cocoa/WKURLSchemeHandler-1.mm:
(TEST):
2017-06-22 Carlos Garcia Campos <cgarcia@igalia.com>
[GTK] Upgrade Harfbuzz to version 1.4.2
https://bugs.webkit.org/show_bug.cgi?id=173592
Reviewed by Carlos Alberto Lopez Perez.
* gtk/jhbuild.modules:
2017-06-22 Carlos Garcia Campos <cgarcia@igalia.com>
[WPE] Update WPEBackend-mesa
https://bugs.webkit.org/show_bug.cgi?id=173705
Reviewed by Carlos Alberto Lopez Perez.
A crash has been fixed, needed for unit tests to work.
* wpe/jhbuild.modules:
2017-06-22 Carlos Garcia Campos <cgarcia@igalia.com>
Remove unused coordinated graphics C API
https://bugs.webkit.org/show_bug.cgi?id=173706
Reviewed by Žan Doberšek.
* TestWebKitAPI/Tests/WebKit2/CoordinatedGraphics/WKViewIsActiveSetIsActive.cpp: Removed.
* TestWebKitAPI/Tests/WebKit2/CoordinatedGraphics/WKViewIsActiveSetIsActive_Bundle.cpp: Removed.
* TestWebKitAPI/Tests/WebKit2/CoordinatedGraphics/WKViewRestoreZoomAndScrollBackForward.cpp: Removed.
* TestWebKitAPI/Tests/WebKit2/CoordinatedGraphics/WKViewUserViewportToContents.cpp: Removed.
* TestWebKitAPI/Tests/WebKit2/CoordinatedGraphics/backforward1.html: Removed.
* TestWebKitAPI/Tests/WebKit2/CoordinatedGraphics/backforward2.html: Removed.
2017-06-22 Carlos Garcia Campos <cgarcia@igalia.com>
[WPE] Build glib API tests
https://bugs.webkit.org/show_bug.cgi?id=173702
Reviewed by Žan Doberšek.
Many of the tests pass without problems, others need to be investigated, and some others are known issues. The
main difference between the GTK+ and WPE WebKitWebView is that in GTK+ it's a GtkWidget, so initially
unowned. The tests assume that webkit_web_view_new methods return a floating reference. This patch adds
Test::adoptView() method that returns a GRefPtr<WebKitWebView> with a different implementation in GTK+ and
WPE. In the case of GTK+, it sinks the floating reference, while in WPE it simply adopts the reference. Another
difference is that in GTK+ the web view is initially hidden and needs to be added to a window to make it
visible. Also, some tests need the web view to be realized to work, and others need that the view is added to a
toplevel window, instead of a popup window. All those things are not needed at all in WPE. I've added several
#ifdefs with FIXME comments for the things that we know don't work in WPE yet, for example, because we haven't
implemented the methods to send events to the web view. Those will be removed eventually when we fix the issues
and implement the missing features.
* CMakeLists.txt:
* TestWebKitAPI/Tests/WebKit2Gtk/EditorTest.cpp:
* TestWebKitAPI/Tests/WebKitGLib/FrameTest.cpp:
* TestWebKitAPI/Tests/WebKitGLib/TestAutomationSession.cpp:
(testAutomationSessionRequestSession):
* TestWebKitAPI/Tests/WebKitGLib/TestBackForwardList.cpp:
(testWebKitWebViewSessionState):
(testWebKitWebViewSessionStateWithFormData):
(testWebKitWebViewNavigationAfterSessionRestore):
* TestWebKitAPI/Tests/WebKitGLib/TestConsoleMessage.cpp:
(beforeAll):
* TestWebKitAPI/Tests/WebKitGLib/TestCookieManager.cpp:
(testCookieManagerEphemeral):
* TestWebKitAPI/Tests/WebKitGLib/TestDownloads.cpp:
(testBlobDownload):
(beforeAll):
* TestWebKitAPI/Tests/WebKitGLib/TestFrame.cpp:
* TestWebKitAPI/Tests/WebKitGLib/TestLoaderClient.cpp:
* TestWebKitAPI/Tests/WebKitGLib/TestMultiprocess.cpp:
(testProcessPerWebView):
* TestWebKitAPI/Tests/WebKitGLib/TestSSL.cpp:
* TestWebKitAPI/Tests/WebKitGLib/TestUIClient.cpp:
(testWebViewCreateNavigationData):
(testWebViewJavaScriptDialogs):
(testWebViewWindowProperties):
(testWebViewMouseTarget):
(testWebViewGeolocationPermissionRequests):
(testWebViewUserMediaPermissionRequests):
(testWebViewAudioOnlyUserMediaPermissionRequests):
(testWebViewFileChooserRequest):
(beforeAll):
* TestWebKitAPI/Tests/WebKitGLib/TestWebExtensions.cpp:
(beforeAll):
* TestWebKitAPI/Tests/WebKitGLib/TestWebKitFaviconDatabase.cpp:
(testPrivateBrowsing):
* TestWebKitAPI/Tests/WebKitGLib/TestWebKitFindController.cpp:
(testFindControllerHide):
* TestWebKitAPI/Tests/WebKitGLib/TestWebKitSecurityOrigin.cpp:
* TestWebKitAPI/Tests/WebKitGLib/TestWebKitSettings.cpp:
(testWebKitSettings):
(beforeAll):
* TestWebKitAPI/Tests/WebKitGLib/TestWebKitUserContentManager.cpp:
(testWebViewNewWithUserContentManager):
(beforeAll):
* TestWebKitAPI/Tests/WebKitGLib/TestWebKitWebContext.cpp:
(testWebContextEphemeral):
(testWebContextProxySettings):
(beforeAll):
* TestWebKitAPI/Tests/WebKitGLib/TestWebKitWebView.cpp:
(testWebViewWebContext):
(testWebViewWebContextLifetime):
(testWebViewEphemeral):
(testWebViewSettings):
(testWebViewCanShowMIMEType):
(testWebViewPageVisibility):
(testWebViewIsPlayingAudio):
(beforeAll):
* TestWebKitAPI/Tests/WebKitGLib/TestWebsiteData.cpp:
(testWebsiteDataEphemeral):
* TestWebKitAPI/Tests/WebKitGLib/WebExtensionTest.cpp:
(documentLoadedCallback):
(pageCreatedCallback):
(methodCallCallback):
* TestWebKitAPI/Tests/WebKitGLib/WebProcessTest.h:
* TestWebKitAPI/glib/CMakeLists.txt:
* TestWebKitAPI/glib/PlatformGTK.cmake:
* TestWebKitAPI/glib/WebKitGLib/LoadTrackingTest.cpp:
* TestWebKitAPI/glib/WebKitGLib/TestMain.cpp:
(main):
* TestWebKitAPI/glib/WebKitGLib/TestMain.h:
(Test::adoptView):
* TestWebKitAPI/glib/WebKitGLib/WebKitTestBus.cpp:
(WebKitTestBus::run):
* TestWebKitAPI/glib/WebKitGLib/WebViewTest.cpp:
(WebViewTest::~WebViewTest):
(WebViewTest::initializeWebView):
* TestWebKitAPI/glib/WebKitGLib/WebViewTest.h:
* TestWebKitAPI/glib/WebKitGLib/gtk/WebViewTestGtk.cpp: Added.
(WebViewTest::platformDestroy):
(WebViewTest::platformInitializeWebView):
(WebViewTest::quitMainLoopAfterProcessingPendingEvents):
(WebViewTest::resizeView):
(WebViewTest::hideView):
(parentWindowMapped):
(WebViewTest::showInWindow):
(WebViewTest::showInWindowAndWaitUntilMapped):
(WebViewTest::mouseMoveTo):
(WebViewTest::clickMouseButton):
(WebViewTest::emitPopupMenuSignal):
(WebViewTest::keyStroke):
(WebViewTest::doMouseButtonEvent):
* TestWebKitAPI/glib/WebKitGLib/wpe/WebViewTestWPE.cpp: Copied from Tools/TestWebKitAPI/Tests/WebKitGLib/WebProcessTest.h.
(WebViewTest::platformDestroy):
(WebViewTest::platformInitializeWebView):
(WebViewTest::quitMainLoopAfterProcessingPendingEvents):
(WebViewTest::resizeView):
(WebViewTest::hideView):
(WebViewTest::mouseMoveTo):
(WebViewTest::clickMouseButton):
(WebViewTest::keyStroke):
2017-06-22 Carlos Garcia Campos <cgarcia@igalia.com>
[GTK] Move WebKit2 GLib API tests to glib directories
https://bugs.webkit.org/show_bug.cgi?id=173642
Reviewed by Žan Doberšek.
* CMakeLists.txt:
* TestWebKitAPI/Tests/WebKit2Gtk/CMakeLists.txt: Removed.
* TestWebKitAPI/Tests/WebKit2Gtk/resources/webkit2gtk-tests.gresource.xml: Removed.
* TestWebKitAPI/Tests/WebKitGLib/FrameTest.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/FrameTest.cpp.
* TestWebKitAPI/Tests/WebKitGLib/TestAuthentication.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestAuthentication.cpp.
* TestWebKitAPI/Tests/WebKitGLib/TestAutomationSession.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestAutomationSession.cpp.
* TestWebKitAPI/Tests/WebKitGLib/TestBackForwardList.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestBackForwardList.cpp.
* TestWebKitAPI/Tests/WebKitGLib/TestConsoleMessage.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestConsoleMessage.cpp.
(testWebKitConsoleMessageNetworkError):
* TestWebKitAPI/Tests/WebKitGLib/TestCookieManager.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestCookieManager.cpp.
* TestWebKitAPI/Tests/WebKitGLib/TestDownloads.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestDownloads.cpp.
* TestWebKitAPI/Tests/WebKitGLib/TestFrame.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestFrame.cpp.
* TestWebKitAPI/Tests/WebKitGLib/TestLoaderClient.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestLoaderClient.cpp.
(testLoadFromGResource):
* TestWebKitAPI/Tests/WebKitGLib/TestMultiprocess.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestMultiprocess.cpp.
* TestWebKitAPI/Tests/WebKitGLib/TestResources.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestResources.cpp.
* TestWebKitAPI/Tests/WebKitGLib/TestSSL.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestSSL.cpp.
* TestWebKitAPI/Tests/WebKitGLib/TestUIClient.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestUIClient.cpp.
* TestWebKitAPI/Tests/WebKitGLib/TestWebExtensions.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestWebExtensions.cpp.
* TestWebKitAPI/Tests/WebKitGLib/TestWebKitFaviconDatabase.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitFaviconDatabase.cpp.
* TestWebKitAPI/Tests/WebKitGLib/TestWebKitFindController.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitFindController.cpp.
* TestWebKitAPI/Tests/WebKitGLib/TestWebKitPolicyClient.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitPolicyClient.cpp.
* TestWebKitAPI/Tests/WebKitGLib/TestWebKitSecurityOrigin.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitSecurityOrigin.cpp.
* TestWebKitAPI/Tests/WebKitGLib/TestWebKitSettings.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitSettings.cpp.
* TestWebKitAPI/Tests/WebKitGLib/TestWebKitUserContentManager.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitUserContentManager.cpp.
* TestWebKitAPI/Tests/WebKitGLib/TestWebKitWebContext.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitWebContext.cpp.
* TestWebKitAPI/Tests/WebKitGLib/TestWebKitWebView.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitWebView.cpp.
(testWebViewRunJavaScript):
* TestWebKitAPI/Tests/WebKitGLib/TestWebsiteData.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestWebsiteData.cpp.
* TestWebKitAPI/Tests/WebKitGLib/WebExtensionTest.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/WebExtensionTest.cpp.
(registerGResource):
* TestWebKitAPI/Tests/WebKitGLib/WebProcessTest.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/WebProcessTest.cpp.
* TestWebKitAPI/Tests/WebKitGLib/WebProcessTest.h: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/WebProcessTest.h.
* TestWebKitAPI/Tests/WebKitGLib/resources/blank.ico: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/resources/blank.ico.
* TestWebKitAPI/Tests/WebKitGLib/resources/boring.html: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/resources/boring.html.
* TestWebKitAPI/Tests/WebKitGLib/resources/link-title.js: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/resources/link-title.js.
* TestWebKitAPI/Tests/WebKitGLib/resources/silence.mpg: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/resources/silence.mpg.
* TestWebKitAPI/Tests/WebKitGLib/resources/simple.json: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/resources/simple.json.
* TestWebKitAPI/Tests/WebKitGLib/resources/test-cert.pem: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/resources/test-cert.pem.
* TestWebKitAPI/Tests/WebKitGLib/resources/test-key.pem: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/resources/test-key.pem.
* TestWebKitAPI/Tests/WebKitGLib/resources/test.pdf: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/resources/test.pdf.
* TestWebKitAPI/Tests/WebKitGLib/resources/track.ogg: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/resources/track.ogg.
* TestWebKitAPI/Tests/WebKitGLib/resources/webkitglib-tests.gresource.xml: Added.
* TestWebKitAPI/glib/CMakeLists.txt: Added.
* TestWebKitAPI/glib/PlatformGTK.cmake: Added.
* TestWebKitAPI/glib/WebKitGLib/LoadTrackingTest.cpp: Renamed from Tools/TestWebKitAPI/gtk/WebKit2Gtk/LoadTrackingTest.cpp.
* TestWebKitAPI/glib/WebKitGLib/LoadTrackingTest.h: Renamed from Tools/TestWebKitAPI/gtk/WebKit2Gtk/LoadTrackingTest.h.
* TestWebKitAPI/glib/WebKitGLib/TestMain.cpp: Renamed from Tools/TestWebKitAPI/gtk/WebKit2Gtk/TestMain.cpp.
(registerGResource):
* TestWebKitAPI/glib/WebKitGLib/TestMain.h: Renamed from Tools/TestWebKitAPI/gtk/WebKit2Gtk/TestMain.h.
(Test::getResourcesDir):
* TestWebKitAPI/glib/WebKitGLib/WebKitTestBus.cpp: Renamed from Tools/TestWebKitAPI/gtk/WebKit2Gtk/WebKitTestBus.cpp.
* TestWebKitAPI/glib/WebKitGLib/WebKitTestBus.h: Renamed from Tools/TestWebKitAPI/gtk/WebKit2Gtk/WebKitTestBus.h.
* TestWebKitAPI/glib/WebKitGLib/WebKitTestServer.cpp: Renamed from Tools/TestWebKitAPI/gtk/WebKit2Gtk/WebKitTestServer.cpp.
* TestWebKitAPI/glib/WebKitGLib/WebKitTestServer.h: Renamed from Tools/TestWebKitAPI/gtk/WebKit2Gtk/WebKitTestServer.h.
* TestWebKitAPI/glib/WebKitGLib/WebViewTest.cpp: Renamed from Tools/TestWebKitAPI/gtk/WebKit2Gtk/WebViewTest.cpp.
* TestWebKitAPI/glib/WebKitGLib/WebViewTest.h: Renamed from Tools/TestWebKitAPI/gtk/WebKit2Gtk/WebViewTest.h.
2017-06-22 Carlos Garcia Campos <cgarcia@igalia.com>
[WPE] Add initial web extensions API
https://bugs.webkit.org/show_bug.cgi?id=173640
Reviewed by Žan Doberšek.
Add style checker exceptions for WPE web extensions API files.
* Scripts/webkitpy/style/checker.py:
2017-06-21 Wenson Hsieh <wenson_hsieh@apple.com>
[iOS DnD] [WK2] Cancelling a drag interaction using the ObjC SPI causes subsequent dragging to fail
https://bugs.webkit.org/show_bug.cgi?id=173659
<rdar://problem/32879788>
Reviewed by Tim Horton.
Adds a new test to verify that a lift cancelled within the UI process does not cause subsequent dragging to fail.
* TestWebKitAPI/Tests/WebKit2Cocoa/link-and-target-div.html:
Augment this test page to log dragend and dragstart events on the drag source as well.
* TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
(checkStringArraysAreEqual):
(TestWebKitAPI::TEST):
2017-06-21 Antoine Quint <graouts@apple.com>
Ensure DRT always logs rAF suspension debugging code
https://bugs.webkit.org/show_bug.cgi?id=173681
Reviewed by Tim "Mr. T" Horton.
* DumpRenderTree/mac/DumpRenderTree.mm:
(resetWebPreferencesToConsistentValues):
2017-06-21 Chris Dumez <cdumez@apple.com>
Allow constructing a WTF:Function from a function pointer
https://bugs.webkit.org/show_bug.cgi?id=173660
Reviewed by Alex Christensen.
Add API test coverage.
* TestWebKitAPI/Tests/WTF/Function.cpp:
(TestWebKitAPI::returnThree):
(TestWebKitAPI::returnFour):
(TestWebKitAPI::returnPassedValue):
(TestWebKitAPI::TEST):
2017-06-21 Antoine Quint <graouts@apple.com>
Add logging to identify when the Page suspends scripted animations
https://bugs.webkit.org/show_bug.cgi?id=173626
Reviewed by Tim Horton.
Turn the new logging on for WK1/DRT since the issue we're trying to pinpoint only occurs on WK1 bots.
* DumpRenderTree/mac/DumpRenderTree.mm:
(resetWebPreferencesToConsistentValues):
2017-06-21 Chris Fleizach <cfleizach@apple.com>
AX: Cannot call setValue() on contenteditable or ARIA text controls
https://bugs.webkit.org/show_bug.cgi?id=173520
Reviewed by Ryosuke Niwa.
Add setValue() method to WKTR (already existed in DRT).
* WebKitTestRunner/InjectedBundle/AccessibilityUIElement.cpp:
(WTR::AccessibilityUIElement::setValue):
* WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h:
* WebKitTestRunner/InjectedBundle/Bindings/AccessibilityUIElement.idl:
* WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:
(WTR::AccessibilityUIElement::setValue):
2017-06-21 Zan Dobersek <zdobersek@igalia.com>
List libtasn1 packages in GTK+ and WPE install-dependencies scripts
as one of the dependencies required to build the product.
Rubber-stamped by Carlos Garcia Campos.
* gtk/install-dependencies:
* wpe/install-dependencies:
2017-06-20 Myles C. Maxfield <mmaxfield@apple.com>
Disable font variations on macOS Sierra and iOS 10
https://bugs.webkit.org/show_bug.cgi?id=173618
<rdar://problem/32879164>
Reviewed by Jon Lee.
* TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
2017-06-20 Wenson Hsieh <wenson_hsieh@apple.com>
[iOS DnD] [WK2] Remove custom logic for disambiguating long press action sheet gestures and drag lift
https://bugs.webkit.org/show_bug.cgi?id=173578
<rdar://problem/32825028>
Reviewed by Tim Horton.
Slight tweak to ensure that DataInteractionTests.CustomActionSheetPopover still passes and verifies that showing
a custom popover does not cause dragging to fail when the popover is presented.
* TestWebKitAPI/ios/DataInteractionSimulator.mm:
(-[DataInteractionSimulator _advanceProgress]):
2017-06-20 Carlos Garcia Campos <cgarcia@igalia.com>
[WPE] Add initial implementation of glib API
https://bugs.webkit.org/show_bug.cgi?id=173546
Reviewed by Žan Doberšek.
Disable geolocation because WPE doesn't implement any provider and update the style checker exceptions to
include WPE glib API files.
* Scripts/webkitperl/FeatureList.pm:
* Scripts/webkitpy/style/checker.py:
* Scripts/webkitpy/style/checkers/cpp.py:
(check_identifier_name_in_declaration):
2017-06-20 Carlos Garcia Campos <cgarcia@igalia.com>
[GTK] Upgrade to ICU to version 57.1
https://bugs.webkit.org/show_bug.cgi?id=173538
Reviewed by Žan Doberšek.
* gtk/jhbuild.modules:
2017-06-20 Carlos Garcia Campos <cgarcia@igalia.com>
[GTK] Remove unneeded modules from the jhbuild
https://bugs.webkit.org/show_bug.cgi?id=170540
Reviewed by Michael Catanzaro.
We are building libxslt and libffi that we don't really need to build from sources.
* gtk/jhbuild.modules:
2017-06-19 Frederic Wang <fwang@igalia.com>
[Mac] Add an experimental feature setting for async frame scrolling
https://bugs.webkit.org/show_bug.cgi?id=173359
Reviewed by Simon Fraser.
* DumpRenderTree/mac/DumpRenderTree.mm:
(enableExperimentalFeatures): Do not enable async frame scrolling for now.
(resetWebPreferencesToConsistentValues): Disable async frame scrolling by default.
* WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
(WTR::InjectedBundle::beginTesting): Initalize to async frame scrolling to false.
2017-06-19 Guillaume Emont <guijemont@igalia.com>
Unreviewed, adding myself to contributors.json
* Scripts/webkitpy/common/config/contributors.json:
2017-06-19 Joseph Pecoraro <pecoraro@apple.com>
test262: Completion values for control flow do not match the spec
https://bugs.webkit.org/show_bug.cgi?id=171265
Reviewed by Saam Barati.
* Scripts/run-jsc-stress-tests:
Include a :failDueToOutdatedOrBadTest to mark failures with justification.
2017-06-19 Zalan Bujtas <zalan@apple.com>
Opening certain mails brings up a mail that grows indefinitely.
https://bugs.webkit.org/show_bug.cgi?id=173562
<rdar://problem/32766579>
Reviewed by Tim Horton.
* TestWebKitAPI/Tests/WebKit2Cocoa/AutoLayoutIntegration.mm:
(TEST):
2017-06-19 Wenson Hsieh <wenson_hsieh@apple.com>
[iOS DnD] Support .zip archives for file uploads via drag and drop
https://bugs.webkit.org/show_bug.cgi?id=173511
<rdar://problem/32521025>
Reviewed by Tim Horton.
Adds tests for dropping .zip archives into a JavaScript-based file upload area, as well as into a file input.
Also verifies that URLs are not handled as file drops. See WebCore ChangeLog for more details.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKit2Cocoa/compressed-files.zip: Added.
* TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
(testZIPArchive):
(TestWebKitAPI::TEST):
2017-06-18 Darin Adler <darin@apple.com>
Fix Ref to deref before assignment, add tests for this to RefPtr, Ref, Function
https://bugs.webkit.org/show_bug.cgi?id=173526
Reviewed by Sam Weinig.
* TestWebKitAPI/CMakeLists.txt: Added Function.cpp.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj: Ditto.
* TestWebKitAPI/Tests/WTF/Function.cpp: Added. Contains basic tests and some
tests for assignment before destruction ones.
* TestWebKitAPI/Tests/WTF/MoveOnly.h: Added a () operator so this can be used
as a function, so it can be used in WTF::Function tests.
* TestWebKitAPI/Tests/WTF/Ref.cpp: Use EXPECT macros insead of ASSERT.
Added tests for swap and for assignment before deref.
* TestWebKitAPI/Tests/WTF/RefLogger.cpp: Stopped using inlining; no good reason
to inline everything. Also removed the unnecessary clearing of the log every time
the DerivedRefLogger constructor is called.
* TestWebKitAPI/Tests/WTF/RefLogger.h: Ditto.
* TestWebKitAPI/Tests/WTF/RefPtr.cpp: Use EXPECT macros instead of ASSERT.
Added tests for assignment before deref and similar for releaseNonNull.
2017-06-19 Sam Weinig <sam@webkit.org>
[WebIDL] Properly model buffer source / typed arrays as their own IDL types
https://bugs.webkit.org/show_bug.cgi?id=173513
Reviewed by Alex Christensen.
* DumpRenderTree/Bindings/CodeGeneratorDumpRenderTree.pm:
* WebKitTestRunner/InjectedBundle/Bindings/CodeGeneratorTestRunner.pm:
Replace IsNonPointerType subroutine with IsPrimitiveType so we can remove IsNonPointerType.
2017-06-19 Per Arne Vollan <pvollan@apple.com>
[Win] fast/dom/assign-to-window-status.html is flaky.
https://bugs.webkit.org/show_bug.cgi?id=173512
Reviewed by Alex Christensen.
We should not dump status callbacks when test is done.
* DumpRenderTree/win/UIDelegate.cpp:
(UIDelegate::setStatusText):
2017-06-19 Carlos Alberto Lopez Perez <clopez@igalia.com>
[WPE][JHBuild] Update WPEBackend-mesa
https://bugs.webkit.org/show_bug.cgi?id=173433
Unreviewed.
Update WPEBackend-mesa back (like it was done originally in r218344)
after fixing the issue with the DISPLAY environment variables that
caused the crashes.
* wpe/jhbuild.modules:
2017-06-19 Carlos Alberto Lopez Perez <clopez@igalia.com>
Rename unit test file after r218482
https://bugs.webkit.org/show_bug.cgi?id=173483
Unreviewed.
* Scripts/webkitpy/port/waylanddriver_unittest.py: Renamed from Tools/Scripts/webkitpy/port/wayland_unittest.py.
2017-06-19 Carlos Garcia Campos <cgarcia@igalia.com>
Unreviewed. Fix wrong style checker condition added in r218487.
* Scripts/webkitpy/style/checkers/cpp.py:
(check_identifier_name_in_declaration):
2017-06-19 Adrian Perez de Castro <aperez@igalia.com>
Missing <functional> includes make builds fail with GCC 7.x
https://bugs.webkit.org/show_bug.cgi?id=173544
Unreviewed gardening.
Fix compilation with GCC 7.
* TestWebKitAPI/Tests/WTF/HashSet.cpp:
* TestWebKitAPI/Tests/WebKit2Gtk/WebProcessTest.h:
2017-06-19 Carlos Garcia Campos <cgarcia@igalia.com>
[GTK] Move GTK+ API files that could be shared to glib dirs
https://bugs.webkit.org/show_bug.cgi?id=173545
Reviewed by Žan Doberšek.
Update paths of GTK+ API in watchlist and style checker.
* Scripts/webkitpy/common/config/watchlist:
* Scripts/webkitpy/style/checker.py:
* Scripts/webkitpy/style/checkers/cpp.py:
(check_identifier_name_in_declaration):
2017-06-19 Carlos Alberto Lopez Perez <clopez@igalia.com>
Port setup_environ_for_server should not set environment variables related with the driver.
https://bugs.webkit.org/show_bug.cgi?id=173483
Reviewed by Carlos Garcia Campos.
The port setup_environ_for_server() should not set environment variables
that depend on the type of driver (like DISPLAY or GDK_BACKEND).
This varibles should be only set on the driver setup_environ_for_test().
This causes that (for example) the variable DISPLAY or XAUTHORITY leaks
into the test environment even when running the tests with a driver
that is not the Xorg or Xvfb one.
* Scripts/webkitpy/port/base.py: Stop setting XAUTHORITY and DISPLAY here.
(Port.to.setup_environ_for_server):
* Scripts/webkitpy/port/driver.py: Remove unneded WEBKIT_OUTPUTDIR that is already set on base.py
(Driver._setup_environ_for_driver):
* Scripts/webkitpy/port/driver_unittest.py:
(DriverTest.test_setup_environ_for_test):
(DriverTest):
(DriverTest.test_setup_environ_base_vars):
* Scripts/webkitpy/port/gtk.py: Stop setting GDK_BACKEND here and do that on the driver (Xvfb).
(GtkPort.setup_environ_for_server):
* Scripts/webkitpy/port/wayland_unittest.py: Added.
(WaylandDriverTest):
(WaylandDriverTest.make_driver):
(WaylandDriverTest.make_environment):
(WaylandDriverTest.test_checkdriver):
(WaylandDriverTest.test_environment_needed_variables):
(WaylandDriverTest.test_environment_forbidden_variables):
(WaylandDriverTest.test_environment_optional_variables):
* Scripts/webkitpy/port/waylanddriver.py: Allow the driver to run also with WAYLAND_SOCKET.
(WaylandDriver.check_driver):
(WaylandDriver._setup_environ_for_test):
* Scripts/webkitpy/port/xorgdriver.py:
(XorgDriver.check_driver):
(XorgDriver._setup_environ_for_test):
* Scripts/webkitpy/port/xorgdriver_unittest.py: Added.
(XorgDriverTest):
(XorgDriverTest.make_driver):
(XorgDriverTest.make_environment):
(XorgDriverTest.test_checkdriver):
(XorgDriverTest.test_environment_needed_variables):
(XorgDriverTest.test_environment_forbidden_variables):
(XorgDriverTest.test_environment_optional_variables):
* Scripts/webkitpy/port/xvfbdriver.py:
(XvfbDriver._setup_environ_for_test):
* Scripts/webkitpy/port/xvfbdriver_unittest.py:
(XvfbDriverTest.assertDriverStartSuccessful):
2017-05-14 Frederic Wang <fwang@igalia.com>
Add heuristic to avoid flattening "fullscreen" iframes
https://bugs.webkit.org/show_bug.cgi?id=171914
Reviewed by Simon Fraser.
* DumpRenderTree/mac/DumpRenderTree.mm:
(resetWebPreferencesToConsistentValues): Use WebKitFrameFlatteningDisabled.
2017-06-18 Chris Dumez <cdumez@apple.com>
Crash when re-entering MediaDevicesEnumerationRequest::cancel()
https://bugs.webkit.org/show_bug.cgi?id=173522
<rdar://problem/31185739>
Reviewed by Darin Adler.
Add API test for re-entering Function's assignment operators.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WTF/Function.cpp: Added.
(TestWebKitAPI::TestObject::TestObject):
(TestWebKitAPI::TestObject::~TestObject):
(TestWebKitAPI::TestObject::operator()):
(TestWebKitAPI::TEST):
2017-06-16 Dan Bernstein <mitz@apple.com>
[Cocoa] Some declarations have missing or incorrect availability attributes
https://bugs.webkit.org/show_bug.cgi?id=173508
Reviewed by Tim Horton.
* TestWebKitAPI/Tests/ios/PositionInformationTests.mm:
(TestWebKitAPI::TEST): Updated for renames.
2017-06-16 Wenson Hsieh <wenson_hsieh@apple.com>
[iOS DnD] Upstream iOS drag and drop implementation into OpenSource WebKit
https://bugs.webkit.org/show_bug.cgi?id=173366
<rdar://problem/32767014>
Reviewed by Tim Horton.
Move test pages and pieces of DataInteractionSimulator hidden behind WebKitAdditions into TestWebKitAPI. No
change in behavior.
* TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKit2Cocoa/autofocus-contenteditable.html: Added.
* TestWebKitAPI/Tests/WebKit2Cocoa/background-image-link-and-input.html: Added.
* TestWebKitAPI/Tests/WebKit2Cocoa/contenteditable-and-textarea.html: Added.
* TestWebKitAPI/Tests/WebKit2Cocoa/div-and-large-image.html: Added.
* TestWebKitAPI/Tests/WebKit2Cocoa/file-uploading.html: Added.
* TestWebKitAPI/Tests/WebKit2Cocoa/image-and-contenteditable.html: Added.
* TestWebKitAPI/Tests/WebKit2Cocoa/image-and-textarea.html: Added.
* TestWebKitAPI/Tests/WebKit2Cocoa/link-and-input.html: Added.
* TestWebKitAPI/Tests/WebKit2Cocoa/link-and-target-div.html: Added.
* TestWebKitAPI/Tests/WebKit2Cocoa/prevent-operation.html: Added.
* TestWebKitAPI/Tests/WebKit2Cocoa/prevent-start.html: Added.
* TestWebKitAPI/Tests/WebKit2Cocoa/textarea-to-input.html: Added.
* TestWebKitAPI/ios/DataInteractionSimulator.mm:
(-[MockDragDropSession initWithItems:location:window:]):
(-[MockDragDropSession allowsMoveOperation]):
(-[MockDragDropSession isRestrictedToDraggingApplication]):
(-[MockDragDropSession hasItemsConformingToTypeIdentifiers:]):
(-[MockDragDropSession canLoadObjectsOfClass:]):
(-[MockDragDropSession canLoadObjectsOfClasses:]):
(-[MockDragDropSession items]):
(-[MockDragDropSession setItems:]):
(-[MockDragDropSession locationInView:]):
(-[MockDataOperationSession initWithProviders:location:window:]):
(-[MockDataOperationSession session]):
(-[MockDataOperationSession isLocal]):
(-[MockDataOperationSession progress]):
(-[MockDataOperationSession setProgressIndicatorStyle:]):
(-[MockDataOperationSession progressIndicatorStyle]):
(-[MockDataOperationSession operationMask]):
(-[MockDataOperationSession localDragSession]):
(-[MockDataOperationSession hasItemsConformingToTypeIdentifier:]):
(-[MockDataOperationSession canCreateItemsOfClass:]):
(-[MockDataOperationSession loadObjectsOfClass:completion:]):
(-[MockDataInteractionSession initWithWindow:]):
(-[MockDataInteractionSession localOperationMask]):
(-[MockDataInteractionSession externalOperationMask]):
(-[MockDataInteractionSession session]):
(-[DataInteractionSimulator _advanceProgress]):
2017-06-16 Alex Christensen <achristensen@webkit.org>
Show punycode to user if a URL has dotless i or j followed by diacritic dot
https://bugs.webkit.org/show_bug.cgi?id=173431
Reviewed by Darin Adler.
* TestWebKitAPI/Tests/WebCore/cocoa/URLExtras.mm:
(TestWebKitAPI::TEST):
2017-06-16 Chris Dumez <cdumez@apple.com>
[WK2] Add WKProcessPool SPI to efficiently reset all plugin load client policies
https://bugs.webkit.org/show_bug.cgi?id=173472
<rdar://problem/28858817>
Reviewed by Brady Eidson.
Add API test coverage.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKit2Cocoa/PluginLoadClientPolicies.mm: Added.
(TEST):
2017-06-16 Brady Eidson <beidson@apple.com>
REGRESSION (r218015) IconLoaders for already-cached resources expect to be asynchronous, no longer are.
<rdar://problem/32817519> and https://bugs.webkit.org/show_bug.cgi?id=173478
Reviewed by Daniel Bates.
* TestWebKitAPI/Tests/WebKit2Cocoa/IconLoadingDelegate.mm:
2017-06-16 Chris Dumez <cdumez@apple.com>
DRT fails to reset page visibility between tests
https://bugs.webkit.org/show_bug.cgi?id=173485
Reviewed by Alexey Proskuryakov.
DRT fails to reset page visibility between tests and relies on tests calling testRunner.resetPageVisibility().
Fix this to address flakiness.
I confirmed this by commenting out the call to testRunner.resetPageVisibility() in
fast/events/page-visibility-onvisibilitychange.html and running the test in a loop.
The test became flaky without the DRT change and was no longer flaky with the DRT
change.
WebKitTestRunner already does this.
* DumpRenderTree/mac/DumpRenderTree.mm:
(resetWebViewToConsistentStateBeforeTesting):
2017-06-16 Alex Christensen <achristensen@webkit.org>
Implement basic authentication in MiniBrowser
https://bugs.webkit.org/show_bug.cgi?id=173443
Reviewed by Tim Horton.
* MiniBrowser/mac/WK2BrowserWindowController.m:
(-[WK2BrowserWindowController webView:didReceiveAuthenticationChallenge:completionHandler:]):
2017-06-16 Jer Noble <jer.noble@apple.com>
[WebRTC] Removing a MediaStreamTrack from a MediaStream reports no recording to WebKit clients
https://bugs.webkit.org/show_bug.cgi?id=173398
<rdar://problem/32592961>
Reviewed by Eric Carlson.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKit2/MediaStreamTrackDetached.mm: Added.
(-[MediaStreamTrackDetachedUIDelegate _webView:requestUserMediaAuthorizationForDevices:url:mainFrameURL:decisionHandler:]):
(-[MediaStreamTrackDetachedUIDelegate _webView:checkUserMediaPermissionForURL:mainFrameURL:frameIdentifier:decisionHandler:]):
(-[MediaStreamTrackDetachedUIDelegate _webView:mediaCaptureStateDidChange:]):
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit2/mediastreamtrack-detached.html: Added.
2017-06-16 Matt Lewis <jlewis3@apple.com>
Unreviewed, rolling out r218375.
The API test MediaStreamTrackDetached is still timing out
after the patch
Reverted changeset:
"[WebRTC] Removing a MediaStreamTrack from a MediaStream
reports no recording to WebKit clients"
https://bugs.webkit.org/show_bug.cgi?id=173398
http://trac.webkit.org/changeset/218375
2017-06-15 Jer Noble <jer.noble@apple.com>
[WebRTC] Removing a MediaStreamTrack from a MediaStream reports no recording to WebKit clients
https://bugs.webkit.org/show_bug.cgi?id=173398
<rdar://problem/32592961>
Reviewed by Eric Carlson.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKit2/MediaStreamTrackDetached.mm: Added.
(-[MediaStreamTrackDetachedUIDelegate _webView:requestUserMediaAuthorizationForDevices:url:mainFrameURL:decisionHandler:]):
(-[MediaStreamTrackDetachedUIDelegate _webView:checkUserMediaPermissionForURL:mainFrameURL:frameIdentifier:decisionHandler:]):
(-[MediaStreamTrackDetachedUIDelegate _webView:mediaCaptureStateDidChange:]):
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit2/mediastreamtrack-detached.html: Added.
2017-06-15 Matt Lewis <jlewis3@apple.com>
Unreviewed, rolling out r218365.
The revision caused API timeouts on all builds.
Reverted changeset:
"[WebRTC] Removing a MediaStreamTrack from a MediaStream
reports no recording to WebKit clients"
https://bugs.webkit.org/show_bug.cgi?id=173398
http://trac.webkit.org/changeset/218365
2017-06-15 Jer Noble <jer.noble@apple.com>
[WebRTC] Removing a MediaStreamTrack from a MediaStream reports no recording to WebKit clients
https://bugs.webkit.org/show_bug.cgi?id=173398
<rdar://problem/32592961>
Reviewed by Eric Carlson.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKit2/MediaStreamTrackDetached.mm: Added.
(-[MediaStreamTrackDetachedUIDelegate _webView:requestUserMediaAuthorizationForDevices:url:mainFrameURL:decisionHandler:]):
(-[MediaStreamTrackDetachedUIDelegate _webView:checkUserMediaPermissionForURL:mainFrameURL:frameIdentifier:decisionHandler:]):
(-[MediaStreamTrackDetachedUIDelegate _webView:mediaCaptureStateDidChange:]):
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit2/mediastreamtrack-detached.html: Added.
2017-06-15 Carlos Alberto Lopez Perez <clopez@igalia.com>
REGRESSION(r218344): [WPE] Thousands of layout test crashes
https://bugs.webkit.org/show_bug.cgi?id=173433
Unreviewed.
* wpe/jhbuild.modules: Revert the update of WPEBackend-mesa.
2017-06-15 Carlos Alberto Lopez Perez <clopez@igalia.com>
[WPE] The run-minibrowser script should allow to execute also a WPE launcher
https://bugs.webkit.org/show_bug.cgi?id=173061
Reviewed by Žan Doberšek.
Launch dyz <https://github.com/Igalia/dyz> with the script
run-minibrowser for the wpe port. It is now built as part of the
WPE dependencies with JHBuild.
* Scripts/run-minibrowser:
* Scripts/webkitdirs.pm:
(launcherPath):
(launcherName):
* wpe/install-dependencies: Luajit is needed for building dyz.
* wpe/jhbuild.modules: Add dyz and update the revision for WPEBackend-mesa.
2017-06-15 Wenson Hsieh <wenson_hsieh@apple.com>
Using -[WebItemProviderPasteboard setItemProviders:] to swap out item providers before a drop breaks item provider loading
https://bugs.webkit.org/show_bug.cgi?id=173338
<rdar://problem/32777720>
Reviewed by Tim Horton.
Adds new unit tests to ensure that -_webView:willPerformDropWithSession: can be used to filter out drag items
used by WebKit when handling a drop. These tests ensure that WebItemProviderPasteboard is still able to handle
these remaining items on drop.
* TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
(TestWebKitAPI::TEST):
* TestWebKitAPI/ios/DataInteractionSimulator.h:
* TestWebKitAPI/ios/DataInteractionSimulator.mm:
Add -overridePerformDropBlock, which can be set to provide custom handling of dropped items.
(-[DataInteractionSimulator _webView:willPerformDropWithSession:]):
2017-06-15 Per Arne Vollan <pvollan@apple.com>
[Win] Crash in accessibility layout test.
https://bugs.webkit.org/show_bug.cgi?id=173401
Reviewed by Brent Fulgham.
We should not manually release the punkVal IUnknown member in a _variant_t object, since the punkVal
member will be automatically released when the _variant_t object goes out of scope if the vt member
does not equal VT_UNKNOWN | VT_BYREF.
See https://msdn.microsoft.com/en-us/library/windows/desktop/ms221165(v=vs.85).aspx.
* DumpRenderTree/win/AccessibilityUIElementWin.cpp:
(AccessibilityUIElement::titleUIElement):
2017-06-15 Carlos Garcia Campos <cgarcia@igalia.com>
[GTK] Add API to allow overriding popup menus
https://bugs.webkit.org/show_bug.cgi?id=172905
Reviewed by Michael Catanzaro.
Add a unit test to check the new API.
* TestWebKitAPI/Tests/WebKit2Gtk/CMakeLists.txt:
* TestWebKitAPI/Tests/WebKit2Gtk/TestOptionMenu.cpp: Added.
(OptionMenuTest::OptionMenuTest):
(OptionMenuTest::~OptionMenuTest):
(OptionMenuTest::destroyMenu):
(OptionMenuTest::showOptionMenuCallback):
(OptionMenuTest::menuCloseCallback):
(OptionMenuTest::showOptionMenu):
(OptionMenuTest::clickAtPositionAndWaitUntilOptionMenuShown):
(OptionMenuTest::close):
(OptionMenuTest::activateItem):
(OptionMenuTest::selectItem):
(testOptionMenuSimple):
(testOptionMenuGroups):
(testOptionMenuActivate):
(testOptionMenuSelect):
(beforeAll):
(afterAll):
2017-06-15 Fujii Hironori <Hironori.Fujii@sony.com>
[WinCairo] DumpRenderTree.cpp: error C3861: 'CFURLCacheCreate': identifier not found
https://bugs.webkit.org/show_bug.cgi?id=173399
Reviewed by Per Arne Vollan.
OpenCFLite doesn't have CFURLCacheCreate and CFURLCacheSetSharedURLCache.
Curl port needs to do nothing because libcurl doesn't have disk cache.
* DumpRenderTree/win/DumpRenderTree.cpp:
(prepareConsistentTestingEnvironment): Call CFURLCacheCreate() and
CFURLCacheSetSharedURLCache() only if USE(CFURLCONNECTION).
2017-06-14 Tomas Popela <tpopela@redhat.com>
[GTK] integer expression expected if running Tools/gtk/install-dependencies
https://bugs.webkit.org/show_bug.cgi?id=173356
Reviewed by Michael Catanzaro.
Use the correct operator to compare the strings.
* gtk/install-dependencies:
2017-06-14 Commit Queue <commit-queue@webkit.org>
Unreviewed, rolling out r218285.
https://bugs.webkit.org/show_bug.cgi?id=173391
API test fails on iOS (Requested by alexchristensen on
#webkit).
Reverted changeset:
"Add SPI for immediate injection of user scripts"
https://bugs.webkit.org/show_bug.cgi?id=173342
http://trac.webkit.org/changeset/218285
2017-06-14 Chris Dumez <cdumez@apple.com>
WebKit falsely reports that a web process is unresponsive if you close a page shortly after stopping a load
https://bugs.webkit.org/show_bug.cgi?id=173384
<rdar://problem/32723779>
Reviewed by Dan Bernstein.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKit2/ResponsivenessTimer.cpp: Added.
Add API test coverage.
* TestWebKitAPI/cocoa/UtilitiesCocoa.mm:
(TestWebKitAPI::Util::sleep):
Update implementation of Util::sleep() so that we actually run the run loop.
Otherwise, we don't process events while sleeping.
2017-06-14 Alex Christensen <achristensen@webkit.org>
Add SPI for immediate injection of user scripts
https://bugs.webkit.org/show_bug.cgi?id=173342
<rdar://problem/29202285>
Reviewed by Brady Eidson.
* TestWebKitAPI/Tests/WebKit2Cocoa/UserContentController.mm:
(waitForMessage):
(TEST):
2017-06-14 Claudio Saavedra <csaavedra@igalia.com>
Add WPE to the flakiness dashboard
https://bugs.webkit.org/show_bug.cgi?id=173365
Reviewed by Carlos Alberto Lopez Perez.
* TestResultServer/static-dashboards/builders.jsonp:
* TestResultServer/static-dashboards/flakiness_dashboard.js:
* TestResultServer/static-dashboards/flakiness_dashboard_unittests.js:
(resetGlobals):
* TestResultServer/static-dashboards/loader_unittests.js:
2017-06-14 Brady Eidson <beidson@apple.com>
WKIconLoadingDelegate never gets asked about the default favicon if touch/touch-precomposed icons are in the <head>
<rdar://problem/32614328> and https://bugs.webkit.org/show_bug.cgi?id=173376
Reviewed by Alex Christensen.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKit2Cocoa/IconLoadingDelegate.mm: Added.
(-[IconLoadingDelegate webView:shouldLoadIconWithParameters:completionHandler:]):
(-[IconLoadingSchemeHandler initWithData:mimeType:]):
(-[IconLoadingSchemeHandler webView:startURLSchemeTask:]):
(-[IconLoadingSchemeHandler webView:stopURLSchemeTask:]):
(TEST):
2017-06-14 Tim Horton <timothy_horton@apple.com>
WKContentViewEditingActions API test always fails
https://bugs.webkit.org/show_bug.cgi?id=173374
Reviewed by Wenson Hsieh.
* TestWebKitAPI/Tests/WebKit2Cocoa/WKContentViewEditingActions.mm:
(TEST):
selectAll isn't working, because canPerformAction for selectAll returns NO
if selectionIsNone (which is true in the non-contenteditable case).
Instead, make use of r218180's test page, which knows how to select itself.
Also, reset the pasteboard at the beginning of the test to reduce confusion
(I landed the test broken because my simulator had the correct text
stuck in its pasteboard).
2017-06-14 Jonathan Bedard <jbedard@apple.com>
Configure screen scale for running layout tests on plus devices
https://bugs.webkit.org/show_bug.cgi?id=173319
Reviewed by Tim Horton.
* DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj: Include UIKitTestSPI.h in project.
* DumpRenderTree/mac/DumpRenderTree.mm:
(dumpRenderTree): Set screen scale to 2.0.
* TestRunnerShared/spi/UIKitTestSPI.h: Copied from Tools/WebKitTestRunner/ios/UIKitSPI.h,
add _setScale for UIScreen.
* WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj: Include UIKitTestSPI.h in project.
* WebKitTestRunner/cocoa/TestRunnerWKWebView.mm: Import UIKitTestSPI.h instead of UIKitSPI.h.
* WebKitTestRunner/ios/HIDEventGenerator.h: Ditto.
* WebKitTestRunner/ios/HIDEventGenerator.mm: Ditto.
* WebKitTestRunner/ios/PlatformWebViewIOS.mm: Ditto.
* WebKitTestRunner/ios/TestControllerIOS.mm: Ditto.
(WTR::TestController::platformInitialize): Set screen scale to 2.0.
* WebKitTestRunner/ios/UIKitSPI.h: Moved to TestRunnerShared/spi/UIKitTestSPI.h.
* WebKitTestRunner/ios/UIScriptControllerIOS.mm: Import UIKitTestSPI.h instead of UIKitSPI.h.
* WebKitTestRunner/ios/mainIOS.mm: Ditto.
2017-06-14 Alexey Proskuryakov <ap@apple.com>
Add iOS 11 support to the bot watcher's dashboard
https://bugs.webkit.org/show_bug.cgi?id=173369
Reviewed by Lucas Forschler.
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/IOS11.png: Added.
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/IOS11@2x.png: Added.
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/IOS11Simulator.png: Added.
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/IOS11Simulator@2x.png: Added.
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Dashboard.js:
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/Main.css:
2017-06-14 Carlos Alberto Lopez Perez <clopez@igalia.com>
[GTK][WPE] Raise the timeout values for layout tests
https://bugs.webkit.org/show_bug.cgi?id=173368
Reviewed by Carlos Garcia Campos.
Raise the values to 15 seconds in Release builds and 30 seconds (2x) in Debug builds.
When running under valgrind a 10x multiplier is applied.
* Scripts/webkitpy/port/gtk.py:
(GtkPort.default_timeout_ms):
* Scripts/webkitpy/port/gtk_unittest.py:
(GtkPortTest.test_default_timeout_ms):
* Scripts/webkitpy/port/wpe.py:
(WPEPort.default_timeout_ms):
* Scripts/webkitpy/port/wpe_unittest.py: Copied from Tools/Scripts/webkitpy/port/gtk_unittest.py.
(WPEPortTest):
(WPEPortTest.make_port):
(WPEPortTest.test_default_timeout_ms):
(WPEPortTest.test_get_crash_log):
2017-06-14 Alex Christensen <achristensen@webkit.org>
Test persistent WKHTTPCookieStorages on iOS.
https://bugs.webkit.org/show_bug.cgi?id=173284
* TestWebKitAPI/Tests/WebKit2Cocoa/WKHTTPCookieStore.mm:
(TEST):
Make the bots green again for now. There's still a problem, and I'll investigate and fix.
2017-06-14 Per Arne Vollan <pvollan@apple.com>
[Win] DRT should not use disk cache.
https://bugs.webkit.org/show_bug.cgi?id=173361
Reviewed by Darin Adler.
Like on macOS/iOS, DRT on Windows should only use memory cache.
* DumpRenderTree/win/DumpRenderTree.cpp:
(setDefaultsToConsistentValuesForTesting):
(prepareConsistentTestingEnvironment):
2017-06-14 Nael Ouedraogo <nael.ouedraogo@crf.canon.fr>
MediaSource duration attribute should not be equal to Infinity when set to a value greater than 2^64
https://bugs.webkit.org/show_bug.cgi?id=171668
Reviewed by Jer Noble.
MediaSource duration attribute is a double represented in MediaSource by a MediaTime instance created with
MediaTime::CreateWithDouble(). This method implements an overflow control mechanism which sets MediaTime to
Infinity when the double value passed as argument is greater than 2^64.
This patch removes the overflow control mechanism when time value is represented as a double. This patch also
modifies the behavior of mathematical operations between a double MediaTime and rational MediaTime: the rational
MediaTime is converted to a double before applying the operation. Double MediaTime precision is the same as for
double. Overflow mechanisms still apply to the conversion of a double MediaTime to rational with setTimescale()
method. No behavior change for rational MediaTime.
* TestWebKitAPI/Tests/WTF/MediaTime.cpp: Add tests to check operation results between double and rational MediaTime.
(TestWebKitAPI::TEST):
2017-06-13 Alex Christensen <achristensen@webkit.org>
Test persistent WKHTTPCookieStorages on iOS
https://bugs.webkit.org/show_bug.cgi?id=173284
<rdar://problem/32260156>
* TestWebKitAPI/Tests/WebKit2Cocoa/WKHTTPCookieStore.mm:
(TEST):
2017-06-13 Matt Rajca <mrajca@apple.com>
WebsitePolicies: let clients select specific autoplay quirks
https://bugs.webkit.org/show_bug.cgi?id=173343
Reviewed by Alex Christensen.
* TestWebKitAPI/Tests/WebKit2Cocoa/WebsitePolicies.mm:
(-[AutoplayPoliciesDelegate _webView:decidePolicyForNavigationAction:decisionHandler:]):
(TEST): Updated tests.
2017-06-13 Daniel Bates <dabates@apple.com>
Implement W3C Secure Contexts Draft Specification
https://bugs.webkit.org/show_bug.cgi?id=158121
<rdar://problem/26012994>
Reviewed by Brent Fulgham.
Part 4
Expose the isSecureContext attribute by default in DumpRenderTree and WebKitTestRunner.
Teach DumpRenderTree for Mac and WebKitTestRunner to parse the test option enableIsSecureContextAttribute
to toggle the runtime enabled feature flag isSecureContextAttributeEnabled.
* DumpRenderTree/TestOptions.h:
* DumpRenderTree/TestOptions.mm:
(TestOptions::TestOptions):
* DumpRenderTree/mac/DumpRenderTree.mm:
(setWebPreferencesForTestOptions):
* DumpRenderTree/win/DumpRenderTree.cpp:
(enableExperimentalFeatures):
* WebKitTestRunner/TestController.cpp:
(WTR::TestController::resetPreferencesToConsistentValues):
(WTR::updateTestOptionsFromTestHeader):
* WebKitTestRunner/TestOptions.h:
(WTR::TestOptions::hasSameInitializationOptions):
2017-06-13 Alex Christensen <achristensen@webkit.org>
Test persistent WKHTTPCookieStorages on iOS
https://bugs.webkit.org/show_bug.cgi?id=173284
<rdar://problem/32260156>
Reviewed by Alexey Proskuryakov.
* TestWebKitAPI/Tests/WebKit2Cocoa/WKHTTPCookieStore.mm:
(TEST):
2017-06-13 Carlos Garcia Campos <cgarcia@igalia.com>
[GTK] Blob download doesn't work
https://bugs.webkit.org/show_bug.cgi?id=172442
Reviewed by Carlos Alberto Lopez Perez.
Add a unit test to check blob downloads.
* TestWebKitAPI/Tests/WebKit2Gtk/TestDownloads.cpp:
(testBlobDownload):
(beforeAll):
2017-06-13 Carlos Garcia Campos <cgarcia@igalia.com>
[GTK] Do not include WTR, DumpRendererTree and ImageDiff in tarballs
https://bugs.webkit.org/show_bug.cgi?id=173316
Reviewed by Alex Christensen.
It's not really possible to run layout tests from the tarball, so it's better not to include those files.
* gtk/manifest.txt.in:
2017-06-13 Carlos Garcia Campos <cgarcia@igalia.com>
[WTR] Crash in WebGeolocationManagerProxy::~WebGeolocationManagerProxy() when running several tests
https://bugs.webkit.org/show_bug.cgi?id=173315
Reviewed by Darin Adler.
This has started to happen after r218165, but I don't think it's a regression, but that r218165 revealed the bug
somehow in WTR. The problem is that GeolocationProviderMock keeps a pointer to the WKGeolocationManagerRef
returned by WKContextGetGeolocationManager. But in TestController::generatePageConfiguration() the context is
freed before the GeolocationProviderMock. When the GeolocationProviderMock is then destroyed, it calls
WKGeolocationManagerSetProvider(m_geolocationManager, 0); but the WKGeolocationManagerRef has already been
destroyed. GeolocationProviderMock should keep a reference to the WKContext to ensure the
WKGeolocationManagerRef is not destroyed.
* WebKitTestRunner/GeolocationProviderMock.cpp:
(WTR::GeolocationProviderMock::GeolocationProviderMock):
* WebKitTestRunner/GeolocationProviderMock.h:
2017-06-13 Wenson Hsieh <wenson_hsieh@apple.com>
Unable to paste text that was copied from a page into the universal search field
https://bugs.webkit.org/show_bug.cgi?id=173293
<rdar://problem/32440918>
Reviewed by Ryosuke Niwa.
Adds 2 new unit tests for copying plain and rich selected web content.
See WebCore and WebKit ChangeLogs for more detail.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKit2Cocoa/rich-and-plain-text.html: Added.
* TestWebKitAPI/Tests/ios/UIPasteboardTests.mm: Added.
(TestWebKitAPI::dataForPasteboardType):
(TestWebKitAPI::setUpWebViewForPasteboardTests):
(TestWebKitAPI::TEST):
2017-06-13 Joanmarie Diggs <jdiggs@igalia.com>
AX: [ATK] Implement missing AtkRelation types
https://bugs.webkit.org/show_bug.cgi?id=155494
Reviewed by Darin Adler.
Add additional methods to test ARIA properties which are exposed via
AtkRelation. Implement ATK support for ariaOwnsElementAtIndex().
* WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h:
(WTR::AccessibilityUIElement::ariaLabelledByElementAtIndex):
(WTR::AccessibilityUIElement::ariaDescribedByElementAtIndex):
(WTR::AccessibilityUIElement::ariaOwnsReferencingElementAtIndex):
(WTR::AccessibilityUIElement::ariaFlowToReferencingElementAtIndex):
(WTR::AccessibilityUIElement::ariaControlsReferencingElementAtIndex):
(WTR::AccessibilityUIElement::ariaLabelledByReferencingElementAtIndex):
(WTR::AccessibilityUIElement::ariaDescribedByReferencingElementAtIndex):
* WebKitTestRunner/InjectedBundle/Bindings/AccessibilityUIElement.idl:
* WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
(WTR::AccessibilityUIElement::ariaOwnsElementAtIndex):
(WTR::AccessibilityUIElement::ariaOwnsReferencingElementAtIndex):
(WTR::AccessibilityUIElement::ariaFlowToReferencingElementAtIndex):
(WTR::AccessibilityUIElement::ariaControlsReferencingElementAtIndex):
(WTR::AccessibilityUIElement::ariaLabelledByElementAtIndex):
(WTR::AccessibilityUIElement::ariaLabelledByReferencingElementAtIndex):
(WTR::AccessibilityUIElement::ariaDescribedByElementAtIndex):
(WTR::AccessibilityUIElement::ariaDescribedByReferencingElementAtIndex):
2017-06-12 Daniel Bates <dabates@apple.com>
Add unit tests for SecurityOrigin::IsPotentiallyTrustworthy()
https://bugs.webkit.org/show_bug.cgi?id=173286
<rdar://problem/32726102>
Reviewed by Brent Fulgham.
* TestWebKitAPI/Tests/WebCore/SecurityOrigin.cpp:
(TestWebKitAPI::TEST_F):
2017-06-12 Lucas Forschler <lforschler@apple.com>
<rdar://problem/32683422>
Teach copy-webkitlibraries-to-product-directory script about updated libraries.
Reviewed by Conrad Schultz.
* Scripts/copy-webkitlibraries-to-product-directory:
2017-06-12 Tim Horton <timothy_horton@apple.com>
[iOS] Cmd-C doesn't copy text from WKWebView
https://bugs.webkit.org/show_bug.cgi?id=173277
<rdar://problem/32396742>
Reviewed by Dan Bernstein.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* Tests/WebKit2Cocoa/WKContentViewEditingActions.mm:
Add a test ensuring that -copy on WKContentView will cause text to be copied.
2017-06-12 Jiewen Tan <jiewen_tan@apple.com>
[WebCrypto] Remove experimental feature flag of SubtleCrypto
https://bugs.webkit.org/show_bug.cgi?id=173197
<rdar://problem/32688148>
Reviewed by Brent Fulgham.
* DumpRenderTree/mac/DumpRenderTree.mm:
(enableExperimentalFeatures):
* WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
(WTR::InjectedBundle::beginTesting):
* WebKitTestRunner/InjectedBundle/TestRunner.cpp:
(WTR::TestRunner::setSubtleCryptoEnabled): Deleted.
* WebKitTestRunner/InjectedBundle/TestRunner.h:
2017-06-12 Wenson Hsieh <wenson_hsieh@apple.com>
[iOS DnD] Allow the injected bundle to add client data when writing an image to the pasteboard
https://bugs.webkit.org/show_bug.cgi?id=173238
<rdar://problem/31943370>
Reviewed by Ryosuke Niwa and Tim Horton.
Add a new unit test to verify that data inserted by the injected bundle when beginning a drag on an image
element is plumbed across to the UI delegate. Also refactors injected bundle unit tests to use the new version
of adjustedDataInteractionItemProvidersForItemProvider: that takes representing objects and additional data.
* TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
(TestWebKitAPI::TEST):
* TestWebKitAPI/ios/DataInteractionSimulator.h:
* TestWebKitAPI/ios/DataInteractionSimulator.mm:
(-[DataInteractionSimulator _webView:adjustedDataInteractionItemProvidersForItemProvider:representingObjects:additionalData:]):
(-[DataInteractionSimulator _webView:adjustedDataInteractionItemProviders:]): Deleted.
2017-06-12 Wenson Hsieh <wenson_hsieh@apple.com>
WebItemProviderPasteboard should call its completion block immediately after a synchronous load
https://bugs.webkit.org/show_bug.cgi?id=173225
<rdar://problem/32713144>
Reviewed by Tim Horton.
Adds a new unit test to verify whether the completion block is called synchronously or asynchronously, in both
cases where the synchronous timeout is very large, and the synchronous timeout is not used (0).
* TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
(TestWebKitAPI::TEST):
2017-06-12 Jonathan Bedard <jbedard@apple.com>
Return correct process names for iOS on-device testing
https://bugs.webkit.org/show_bug.cgi?id=173263
Reviewed by Alex Christensen.
When running tests on iOS devices, process names do not end with '.Development'
as they do on Mac and iOS simulator.
* WebKitTestRunner/TestController.cpp:
(WTR::TestController::webProcessName): Return correct process name without '.Development'
for iOS on-device testing.
(WTR::TestController::networkProcessName): Ditto.
(WTR::TestController::databaseProcessName): Ditto.
2017-06-12 Chris Dumez <cdumez@apple.com>
Regression(r217867): Legacy SessionHistoryEntryData format should not change
https://bugs.webkit.org/show_bug.cgi?id=173267
<rdar://problem/32701257>
Reviewed by Simon Fraser.
Restrict test to stop covering saving / restore of scrollRestoration via the legacy
SessionHistoryEntryData. Maintain coverage for the default value of scrollRestoration
though as this covers the crash that r217867 was fixing.
* TestWebKitAPI/Tests/WebKit2/RestoreSessionState.cpp:
(TestWebKitAPI::createSessionStateData):
(TestWebKitAPI::TEST):
(TestWebKitAPI::createSessionStateDataContainingScrollRestoration): Deleted.
2017-06-12 Carlos Garcia Campos <cgarcia@igalia.com>
[GTK] Stop dismissing menus attached to the web view for every injected event
https://bugs.webkit.org/show_bug.cgi?id=172708
Reviewed by Alex Christensen.
It's a workaround we added in r184015 that has worked so far for the context menu, but doesn't really work now
that we also attach popup menus to the web view. We really need to be able to show a popup menu, and then send
events while the menu is open.
* WebKitTestRunner/InjectedBundle/EventSendingController.cpp:
(WTR::EventSendingController::contextClick): Use WKBundlePageCopyContextMenuAtPointInWindow() also in GTK+ port.
* WebKitTestRunner/gtk/EventSenderProxyGtk.cpp:
(WTR::EventSenderProxy::dispatchEvent): Stop calling PlatformWebView::dismissAllPopupMenus().
2017-06-12 Miguel Gomez <magomez@igalia.com>
[GTK][WPE] Enable GStreamer GL on development builds
https://bugs.webkit.org/show_bug.cgi?id=173248
Enable GStreamer GL for GTK and WPE.
Reviewed by Carlos Garcia Campos.
* Scripts/webkitperl/FeatureList.pm:
2017-06-12 Carlos Garcia Campos <cgarcia@igalia.com>
Unreviewed. Fix GTK+ test /webkit2/WebKitWebView/notification after r216641.
Notifications are no longer cleared on page navigation.
* TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitWebView.cpp:
(testWebViewNotification):
2017-06-11 Carlos Garcia Campos <cgarcia@igalia.com>
Unreviewed. Fix GTK+ test /webkit2/WebKitAutomationSession/request-session after r217831.
DBus interface and object path names were updated in r217831.
* TestWebKitAPI/Tests/WebKit2Gtk/TestAutomationSession.cpp:
2017-06-10 Dan Bernstein <mitz@apple.com>
Reverted r218056 because it made the IDE reindex constantly.
* ContentExtensionTester/Configurations/DebugRelease.xcconfig:
* DumpRenderTree/mac/Configurations/DebugRelease.xcconfig:
* ImageDiff/cg/Configurations/DebugRelease.xcconfig:
* MiniBrowser/Configurations/DebugRelease.xcconfig:
* MobileMiniBrowser/Configurations/DebugRelease.xcconfig:
* TestWebKitAPI/Configurations/DebugRelease.xcconfig:
* WebEditingTester/Configurations/DebugRelease.xcconfig:
* WebKitTestRunner/Configurations/DebugRelease.xcconfig:
2017-06-10 Dan Bernstein <mitz@apple.com>
[Xcode] With Xcode 9 developer beta, everything rebuilds when switching between command-line and IDE
https://bugs.webkit.org/show_bug.cgi?id=173223
Reviewed by Sam Weinig.
The rebuilds were happening due to a difference in the compiler options that the IDE and
xcodebuild were specifying. Only the IDE was passing the -index-store-path option. To make
xcodebuild pass that option, too, set CLANG_INDEX_STORE_ENABLE to YES if it is unset, and
specify an appropriate path in CLANG_INDEX_STORE_PATH.
* ContentExtensionTester/Configurations/DebugRelease.xcconfig:
* DumpRenderTree/mac/Configurations/DebugRelease.xcconfig:
* ImageDiff/cg/Configurations/DebugRelease.xcconfig:
* MiniBrowser/Configurations/DebugRelease.xcconfig:
* MobileMiniBrowser/Configurations/DebugRelease.xcconfig:
* TestWebKitAPI/Configurations/DebugRelease.xcconfig:
* WebEditingTester/Configurations/DebugRelease.xcconfig:
* WebKitTestRunner/Configurations/DebugRelease.xcconfig:
2017-06-10 Jonathan Bedard <jbedard@apple.com>
webkitpy: Reduce polling in ServerProcess
https://bugs.webkit.org/show_bug.cgi?id=173116
Reviewed by Ryosuke Niwa.
We should be smarter about polling. We do not need to poll every time a line is read from
stdout and stderr since lines are usually read from cached data. We should only poll
when extracting that cached data from stdout and stderr.
* Scripts/webkitpy/port/driver.py:
(Driver._read_block): Rely on output of the ServerProcess to detect a crash or a timeout
and on ServerProcess to poll the process if not data is available in stdout and stderr.
* Scripts/webkitpy/port/driver_unittest.py:
(DriverTest.test_read_block_crashed_process): Test that the Driver will handle a crashing
ServerProcess.
* Scripts/webkitpy/port/server_process.py:
(ServerProcess._read): Allow for data to be read from _output even if the process has
crashed. Only poll the process if data needs to be extracted from stdout or stderr.
* Scripts/webkitpy/port/server_process_mock.py:
(MockServerProcess): Add number_of_times_polled.
(MockServerProcess.poll): Increment number_of_times_polled.
(MockServerProcess.has_crashed): Poll before returning crash state.
(MockServerProcess.read_stdout_line): MockServerProcess should return None if it has crashed,
just like a ServerProcess would.
(MockServerProcess.read_stdout): Ditto.
* Scripts/webkitpy/port/server_process_unittest.py:
(TestServerProcess.test_basic): Use stdin.readline() instead of time.sleep() to prevent the
process from ending before stdout and stderr are read. This is the reason this test was flakey.
(TestServerProcess):
(TestServerProcess.test_process_crashing): Test that when a process crashes, data can be read until
the processes is polled.
(TestServerProcess.test_process_crashing_no_data): Test that when a process which has not output any
data to stdout and stderr crashes, ServerProcess._read(...) polls the process to detect the crash.
2017-06-10 Andy Estes <aestes@apple.com>
[QuickLook] PreviewLoader needs to check if its ResourceLoader has reached the terminal state before calling didReceiveResponse() and friends
https://bugs.webkit.org/show_bug.cgi?id=173190
<rdar://problem/31360659>
Reviewed by Brady Eidson.
Added a release assert that tries to create a proper test failure if the web process crashes.
* TestWebKitAPI/Tests/WebKit2Cocoa/QuickLook.mm:
(-[QuickLookDecidePolicyDelegate _webViewWebProcessDidCrash:]):
2017-06-09 Wenson Hsieh <wenson_hsieh@apple.com>
[iOS DnD] Add a hook to perform two-step drops in editable content
https://bugs.webkit.org/show_bug.cgi?id=172992
<rdar://problem/32590174>
Reviewed by Tim Horton.
Adds 2 new API tests to cover using the injected editing bundle to override performTwoStepDrop.
Tests: DataInteractionTests.InjectedBundleOverridePerformTwoStepDrop
DataInteractionTests.InjectedBundleAllowPerformTwoStepDrop
* TestWebKitAPI/Tests/WebKit2Cocoa/BundleEditingDelegatePlugIn.mm:
(-[BundleEditingDelegatePlugIn webProcessPlugIn:didCreateBrowserContextController:]):
(-[BundleEditingDelegatePlugIn _webProcessPlugInBrowserContextController:performTwoStepDrop:atDestination:isMove:]):
Allow the BundleOverridePerformTwoStepDrop bundle parameter to determine whether or not two-step drops should
be overridden. Currently, this is overridden to just return true.
* TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
(TestWebKitAPI::TEST):
* WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
(WTR::InjectedBundlePage::InjectedBundlePage):
2017-06-09 Zan Dobersek <zdobersek@igalia.com>
[WPE] Enable ENCRYPTED_MEDIA for build-webkit builds
https://bugs.webkit.org/show_bug.cgi?id=173103
Reviewed by Xabier Rodriguez-Calvar.
* Scripts/webkitperl/FeatureList.pm: Enable ENCRYPTED_MEDIA flag
when building the WPE port through build-webkit.
2017-06-09 Zan Dobersek <zdobersek@igalia.com>
[WPE] Enable MEDIA_SOURCE for build-webkit builds
https://bugs.webkit.org/show_bug.cgi?id=173136
Reviewed by Xabier Rodriguez-Calvar.
* Scripts/webkitperl/FeatureList.pm: Enable the MEDIA_SOURCE feature for WPE.
2017-06-08 Carlos Garcia Campos <cgarcia@igalia.com>
[GTK] Use API::FormClient instead of the C API in WebKitFormClient
https://bugs.webkit.org/show_bug.cgi?id=173098
Reviewed by Žan Doberšek.
Fix memory leak and runtime warning when running /webkit2/WebKitWebView/submit-form. The web extension is
assuming that all tests containing forms define ids for the form elements like
/webkit2/WebKitWebExtension/form-controls-associated-signal does.
* TestWebKitAPI/Tests/WebKit2Gtk/WebExtensionTest.cpp:
(formControlsAssociatedCallback):
2017-06-08 Jonathan Bedard <jbedard@apple.com>
webkitpy: Run sample/spindump on iOS devices
https://bugs.webkit.org/show_bug.cgi?id=171881
<rdar://problem/32084602>
Reviewed by Daniel Bates.
* Scripts/webkitpy/port/darwin.py:
(DarwinPort.sample_process): Only add sudo prefix if the platform is Mac, which
requires sudo to run spindump.
* Scripts/webkitpy/port/ios_device.py:
(IOSDevicePort.look_for_new_samples): Deleted.
(IOSDevicePort.sample_process): Deleted.
* Scripts/webkitpy/port/ios_device_unittest.py:
(IOSDeviceTest): iOS devices use 'ios' and their os_name.
(IOSDeviceTest.test_spindump):
(IOSDeviceTest.test_sample_process):
(IOSDeviceTest.test_sample_process_exception):
* Scripts/webkitpy/port/ios_simulator_unittest.py:
(IOSSimulatorTest): iOS Simulators run on Mac and use 'mac' as their os_name.
2017-06-08 Keith Miller <keith_miller@apple.com>
WebAssembly: We should only create wrappers for functions that can be exported
https://bugs.webkit.org/show_bug.cgi?id=173088
Reviewed by Saam Barati.
Add quick mode for wasm tests.
* Scripts/run-jsc-stress-tests:
2017-06-08 Darin Adler <darin@apple.com>
WTF tests have incorrect RefLogger lifetimes making it impossible to test with Address Sanitizer
https://bugs.webkit.org/show_bug.cgi?id=173106
Reviewed by Sam Weinig.
* TestWebKitAPI/Tests/WTF/HashCountedSet.cpp: Define RefLogger objects first, so they are
destroyed last.
* TestWebKitAPI/Tests/WTF/HashMap.cpp: Ditto.
* TestWebKitAPI/Tests/WTF/HashSet.cpp: Ditto.
2017-06-07 Dan Bernstein <mitz@apple.com>
[Cocoa] additionalReadAccessAllowedURLs doesn’t preserve non-Latin1 paths
https://bugs.webkit.org/show_bug.cgi?id=173086
Reviewed by Andy Estes.
* TestWebKitAPI/Tests/WebKit2Cocoa/AdditionalReadAccessAllowedURLs.mm:
(TEST):
2017-06-07 Alexey Proskuryakov <ap@apple.com>
Add High Sierra support to WebKit tools
https://bugs.webkit.org/show_bug.cgi?id=173080
Rubber-stamped by Daniel Bates.
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/HighSierra.png: Added.
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/HighSierra@2x.png: Added.
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Dashboard.js:
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/Main.css:
Added dashboard support.
* BuildSlaveSupport/build.webkit.org-config/wkbuild.py:
* BuildSlaveSupport/build.webkit.org-config/wkbuild_unittest.py:
Trigger the right build queues on check-in.
* Scripts/webkitpy/common/system/platforminfo.py:
* Scripts/webkitpy/common/system/platforminfo_unittest.py:
* Scripts/webkitpy/layout_tests/models/test_expectations.py:
* Scripts/webkitpy/port/mac.py:
* Scripts/webkitpy/port/mac_unittest.py:
* TestResultServer/static-dashboards/flakiness_dashboard.js:
Added cases for Sierra, and updated tests for new baseline search paths.
2017-06-07 Ryan Haddad <ryanhaddad@apple.com>
Unreviewed, rolling out r217902.
This change appears to have caused imported/w3c/web-platform-
tests/fetch/api/cors tests to fail on El Capitan.
Reverted changeset:
"Teach run-webkit-tests how to run HTTPS Web Platform Tests"
https://bugs.webkit.org/show_bug.cgi?id=172930
http://trac.webkit.org/changeset/217902
2017-06-07 Daniel Bates <dabates@apple.com>
Teach run-webkit-tests how to run HTTPS Web Platform Tests
https://bugs.webkit.org/show_bug.cgi?id=172930
<rdar://problem/32570201>
Reviewed by Youenn Fablet.
Some web platform tests need to be run from an HTTPS server in order to exercise functionality
that is conditioned on the page being delivered over a secure protocol. One example of such
a test is LayoutTests/imported/w3c/web-platform-tests/WebCryptoAPI/secure_context/crypto-subtle-secure-context-available.https.sub.html.
Ideally we should look to use wptrunner to run Web Platform Tests. For now, modify run-webkit-tests
to access web platform tests from an HTTPS server when the filename of the test contains ".https.".
This makes run-webkit-test match the behavior of wptrunner: <https://github.com/w3c/web-platform-tests/blob/7ce469d1c46dd45aacfe1b408bf2ad36a630e089/tools/manifest/item.py#L42>.
* Scripts/webkitpy/layout_tests/servers/web_platform_test_server.py:
(https_base_url): Parses the Web Platform Tests JSON configuration and returns the base URL
to the Web Platform Tests HTTPS server.
* Scripts/webkitpy/port/base.py:
(Port.to.web_platform_test_server_https_base_url): Turns around and calls https_base_url().
* Scripts/webkitpy/port/driver.py:
(Driver.__init__): Caches the base URL to the Web Platform Tests HTTPS server. Also rename
instance variables web_platform_test_server_doc_root, web_platform_test_server_base_url to
_web_platform_test_server_doc_root and _web_platform_test_server_base_url, respectively to
indicate that they should be considered private instance variables.
(Driver.is_web_platform_test): Update code for renamed instance variables.
(Driver):
(Driver._web_platform_test_base_url_for_test): Returns the URL to access the specified test.
(Driver.test_to_uri): Modified to use Driver._web_platform_test_base_url_for_test() to
determine the base URL to use to access the test.
(Driver.uri_to_test): Added logic to compute the filesystem local test name from a Web
Platform Tests HTTPS URL. Also updated code for renamed instance variables.
2017-06-07 Per Arne Vollan <pvollan@apple.com>
Support removal of authentication data through the Website data store API.
https://bugs.webkit.org/show_bug.cgi?id=171217
Reviewed by Brady Eidson.
* WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
* WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
(WTR::InjectedBundle::didReceiveMessageToPage):
* WebKitTestRunner/InjectedBundle/TestRunner.cpp:
(WTR::TestRunner::removeAllSessionCredentials):
(WTR::TestRunner::callDidRemoveAllSessionCredentialsCallback):
* WebKitTestRunner/InjectedBundle/TestRunner.h:
* WebKitTestRunner/TestController.h:
* WebKitTestRunner/TestInvocation.cpp:
(WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
(WTR::TestInvocation::didRemoveAllSessionCredentials):
* WebKitTestRunner/TestInvocation.h:
* WebKitTestRunner/cocoa/TestControllerCocoa.mm:
(WTR::TestController::removeAllSessionCredentials):
2017-06-07 Charlie Turner <cturner@igalia.com>
Add Charlie Turner as contributor
https://bugs.webkit.org/show_bug.cgi?id=173055
Reviewed by Carlos Alberto Lopez Perez.
I also ran the Tools/Scripts/validate-committer-lists --canonicalize command at the suggestion
of webkit-patch upload, which reordered some fields and removed a newline.
* Scripts/webkitpy/common/config/contributors.json:
2017-06-06 Chris Dumez <cdumez@apple.com>
RELEASE_ASSERT(static_cast<size_t>(enumerationValue) < WTF_ARRAY_LENGTH(values)) hit in convertEnumerationToJS<WebCore::History::ScrollRestoration>()
https://bugs.webkit.org/show_bug.cgi?id=173033
<rdar://problem/32591099>
Reviewed by Simon Fraser.
Add API test coverage to make sure History's scrollRestoration is properly saved / restored via the
WKPageCopySessionState() / WKPageRestoreFromSessionState() C API.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKit2/RestoreSessionState.cpp: Added.
(TestWebKitAPI::didFinishLoadForFrame):
(TestWebKitAPI::setPageLoaderClient):
(TestWebKitAPI::createSessionStateDataContainingScrollRestoration):
(TestWebKitAPI::TEST):
2017-06-06 Andy Estes <aestes@apple.com>
REGRESSION (r199558): WKWebView upload file which name contains Chinese character results in garbled code
https://bugs.webkit.org/show_bug.cgi?id=172849
<rdar://problem/32567454>
Reviewed by Darin Adler.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKit2Cocoa/RunOpenPanel.mm: Added.
(-[RunOpenPanelUIDelegate webView:runOpenPanelWithParameters:initiatedByFrame:completionHandler:]):
(TestWebKitAPI::TEST):
2017-06-06 Yoav Weiss <yoav@yoav.ws>
[preload] Conditional support for media preloading and align media `as` values.
https://bugs.webkit.org/show_bug.cgi?id=172501
Reviewed by Dean Jackson.
Turn on media preloading preference for tests.
* DumpRenderTree/mac/DumpRenderTree.mm: Turn on media preloading preference.
* DumpRenderTree/win/DumpRenderTree.cpp: Turn on media preloading preference.
* WebKitTestRunner/TestController.cpp: Turn on media preloading preference.
2017-06-06 Jonathan Bedard <jbedard@apple.com>
webkitpy: Return correct process names from SimulatorProcess
https://bugs.webkit.org/show_bug.cgi?id=172940
Reviewed by Aakash Jain.
* Scripts/webkitpy/port/darwin.py:
(DarwinPort.plist_data_from_bundle): Share plist access code for accessing different plist entries.
(DarwinPort.app_identifier_from_bundle): Use plist_data_from_bundle.
(DarwinPort.app_executable_from_bundle): Access name of app executable from provided app bundle.
* Scripts/webkitpy/port/driver.py:
(Driver.has_crashed): Use _server_process.process_name() instead of _server_process.name() since
_server_process.name() will not return the correct process name for iOS.
(Driver._check_for_driver_crash_or_unresponsiveness): Ditto.
(Driver._read_block): Ditto.
* Scripts/webkitpy/port/driver_unittest.py:
(DriverTest.test_check_for_driver_crash.FakeServerProcess.process_name): Update since Driver uses
process_name() instead of name().
* Scripts/webkitpy/port/server_process.py:
(ServerProcess._start): Use process_name() instead of name().
(ServerProcess.stop): Ditto.
(ServerProcess.name): Deleted.
* Scripts/webkitpy/port/simulator_process.py:
(SimulatorProcess.process_name): Check the provided bundle for the process name.
2017-06-06 Dean Johnson <dean_johnson@apple.com>
test-webkitpy: stop forking unsafely from within a spawned process
https://bugs.webkit.org/show_bug.cgi?id=172774
Reviewed by Darin Adler.
* Scripts/webkitpy/common/net/buildbot/buildbot.py:
(Builder.__init__): We don't use mechanize.Browser() as part of testing, so only initialize it when
it's going to be used.
(Builder.force_build):
2017-06-06 Jonathan Bedard <jbedard@apple.com>
webkitpy: Process crash-logs for iOS devices
https://bugs.webkit.org/show_bug.cgi?id=171976
<rdar://problem/32134551>
Reviewed by David Kilzer.
When running layout tests on an iOS device, crash logs should be processed.
Implement crash log searching and parsing for iOS devices.
* Scripts/webkitpy/common/system/crashlogs.py:
(CrashLogs): Moved process regular expression for Darwin to class variable.
(CrashLogs.__init__): Accept optional list of crash logs to ignore.
(CrashLogs.find_newest_log): Add iOS as a potential platform.
(CrashLogs.find_all_logs): Ditto.
(CrashLogs._parse_darwin_crash_log): Share code for parsing of Darwin crash logs.
Do not assume that a Darwin crash log starts with the process.
(CrashLogs._find_newest_log_darwin): Remove .app in process name for iOS, use
shared code for parsing Darwin crash logs.
(CrashLogs._find_newest_log_darwin.is_crash_log): Skip crash logs passed into this
object so that crash logs already on the system before testing are not parsed.
(CrashLogs._find_newest_log_win.is_crash_log): Ditto.
(CrashLogs._find_all_logs_darwin.is_crash_log): Ditto.
(CrashLogs._find_all_logs_darwin): Use shared code for parsing Darwin crash logs.
* Scripts/webkitpy/common/system/crashlogs_unittest.py:
(make_mock_crash_report_darwin): Crash logs may not have their process on the first line.
* Scripts/webkitpy/common/system/systemhost.py:
(SystemHost.symbolicate_crash_log_if_needed): The symbolicated crash log for most
systems is just the crashlog, use this behavior by default.
* Scripts/webkitpy/common/system/systemhost_mock.py:
(MockSystemHost.symbolicate_crash_log_if_needed): The symbolicated crash log for most
systems is just the crashlog, use this behavior by default.
* Scripts/webkitpy/port/apple.py:
(ApplePort): Add a dictionary mapping hosts to a list of crash logs to be skipped.
(ApplePort.setup_test_run): Set the list of crash logs to be skipped to the crash logs on
the system before testing begins
* Scripts/webkitpy/port/base.py:
(Port._get_crash_log): Pass optional target host when getting crash logs.
* Scripts/webkitpy/port/darwin.py:
(DarwinPort._look_for_all_crash_logs_in_log_dir): Pass list of crash logs to be skipped to
CrashLogs object.
(DarwinPort._get_crash_log): Pass optional target host when getting crash logs, pass list of crash
logs to be skipped to CrashLogs object.
* Scripts/webkitpy/port/darwin_testcase.py:
(DarwinTest.test_get_crash_log): Removed unused local function.
(DarwinTest.test_get_crash_log.fake_time_cb): Deleted.
* Scripts/webkitpy/port/device.py:
(Device.symbolicate_crash_log_if_needed): If the platform device has a function with this
name, call it. Otherwise, assume the default behavior and read the file at the provided path.
* Scripts/webkitpy/port/driver.py:
(Driver._get_crash_log): Pass optional target host when getting crash logs.
* Scripts/webkitpy/port/gtk.py:
(GtkPort._get_crash_log): Pass optional target host when getting crash logs.
* Scripts/webkitpy/port/ios.py: Ditto.
(IOSPort.setup_test_run): Each device is treated as an independent host. Set the list of crash logs
to be skipped for each host.
* Scripts/webkitpy/port/ios_device.py:
(IOSDevicePort.path_to_crash_logs): Consult apple_additions for the path to crash logs.
(IOSDevicePort._look_for_all_crash_logs_in_log_dir): Search every connected device for
crash logs and pass list of crash logs to ignore to each instance of CrashLogs.
(IOSDevicePort._get_crash_log): Search the specified target host for a crash log if a target
host is specified. Else, search all connected devices for the specified crash-log.
(IOSDevicePort.look_for_new_crash_logs): Deleted.
* Scripts/webkitpy/port/ios_device_unittest.py:
(IOSDeviceTest.test_crashlog_path): Without apple_additions, an exception should be raised.
(IOSDeviceTest.test_get_crash_log): Ditto.
* Scripts/webkitpy/port/simulator_process.py:
(SimulatorProcess.process_name): Check the provided bundle for the process name.
* Scripts/webkitpy/port/win.py:
(WinPort._get_crash_log): Pass optional target host when getting crash logs, pass list of crash
logs to be skipped to CrashLogs object.
* Scripts/webkitpy/port/wpe.py:
(WPEPort._get_crash_log): Pass optional target host when getting crash logs.
2017-06-06 David Kilzer <ddkilzer@apple.com>
Move WTF_ATTRIBUTE_PRINTF() from implementation to declaration
<https://webkit.org/b/172804>
Reviewed by Darin Adler.
WTF_ATTRIBUTE_PRINTF() only works outside the current
compilation unit if it's on the declaration, not the
implementation, of a function or class method.
* DumpRenderTree/TestNetscapePlugIn/PluginObject.cpp:
* DumpRenderTree/TestNetscapePlugIn/PluginObject.h:
* DumpRenderTree/TestNetscapePlugIn/PluginTest.cpp:
* DumpRenderTree/TestNetscapePlugIn/PluginTest.h:
- Move WTF_ATTRIBUTE_PRINTF() macro to declaration.
* DumpRenderTree/TestNetscapePlugIn/main.cpp:
- Remove redundant CRASH() macro definition. Use the one from
<wtf/Assertions.h> instead.
2017-06-06 Joseph Pecoraro <pecoraro@apple.com>
Move Resource Timing / User Timing from experimental features into main preferences
https://bugs.webkit.org/show_bug.cgi?id=172950
Reviewed by Darin Adler.
* DumpRenderTree/mac/DumpRenderTree.mm:
(enableExperimentalFeatures):
(resetWebPreferencesToConsistentValues):
* DumpRenderTree/win/DumpRenderTree.cpp:
(enableExperimentalFeatures):
(resetWebPreferencesToConsistentValues):
* WebKitTestRunner/TestController.cpp:
(WTR::TestController::resetPreferencesToConsistentValues):
Move out no longer experimental features to the main list.
2017-06-06 Carlos Alberto Lopez Perez <clopez@igalia.com>
[WPE] Add an install-dependencies script
https://bugs.webkit.org/show_bug.cgi?id=172948
Reviewed by Žan Doberšek.
It is based on the gtk/install-dependencies script.
Includes support for Debian based distrubutions, Fedora and Arch.
It has been tested on a minimal Debian 9 chroot.
* wpe/install-dependencies: Added.
2017-06-05 Wenson Hsieh <wenson_hsieh@apple.com>
Refactor -[WebItemProviderPasteboard valuesForPasteboardType:inItemSet:] to check readable types
https://bugs.webkit.org/show_bug.cgi?id=172891
<rdar://problem/32204540>
Reviewed by Darin Adler.
Adds 2 new API tests to exercise data interaction of HTML data and an attributed string into a rich
contenteditable. See WebCore ChangeLog for more details.
* TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
(TestWebKitAPI::TEST):
2017-06-05 Daniel Bates <dabates@apple.com>
webkitpy: Abstract Executive class
https://bugs.webkit.org/show_bug.cgi?id=172928
<rdar://problem/32569531>
Reviewed by Ryosuke Niwa.
Adds an AbstractExecutive class and makes Executive extend AbstractExecutive.
This will make it straightforward to create additional derived classes that
adhere to the same interface, say for iOS on-device testing.
* Scripts/webkitpy/common/system/abstractexecutive.py: Added.
(AbstractExecutive):
(AbstractExecutive.run_and_throw_if_fail):
(AbstractExecutive.cpu_count):
(AbstractExecutive.interpreter_for_script):
(AbstractExecutive.shell_command_for_script):
(AbstractExecutive.kill_process):
(AbstractExecutive.check_running_pid):
(AbstractExecutive.running_pids):
(AbstractExecutive.wait_newest):
(AbstractExecutive.wait_limited):
(AbstractExecutive.interrupt):
(AbstractExecutive.default_error_handler):
(AbstractExecutive.ignore_error):
(AbstractExecutive._stringify_args):
(AbstractExecutive.command_for_printing):
(AbstractExecutive.run_command):
(AbstractExecutive.popen):
(AbstractExecutive.run_in_parallel):
* Scripts/webkitpy/common/system/executive.py:
(Executive):
(Executive.cpu_count):
(Executive.running_pids):
(Executive.kill_all):
(Executive._compute_stdin):
(Executive.interpreter_for_script): Deleted.
(Executive.shell_command_for_script): Deleted.
(Executive.wait_newest): Deleted.
(Executive.wait_limited): Deleted.
(Executive.default_error_handler): Deleted.
(Executive.ignore_error): Deleted.
(Executive.command_for_printing): Deleted.
2017-06-05 Jonathan Bedard <jbedard@apple.com>
webkitpy: Add iOS to platform
https://bugs.webkit.org/show_bug.cgi?id=172931
Reviewed by Daniel Bates.
* Scripts/webkitpy/common/system/platforminfo.py:
PlatformInfo.__init__): Use platform_module.release() as the os_version for iOS device.
(PlatformInfo.is_ios): Added.
(PlatformInfo._determine_os_name): A platform name of 'ios' means that the os name is 'ios'.
* Scripts/webkitpy/common/system/platforminfo_mock.py:
(MockPlatformInfo.is_ios): Added.
2017-06-05 Carlos Alberto Lopez Perez <clopez@igalia.com>
[WPE][JHBuild] Switch github repository from git:// to https://
https://bugs.webkit.org/show_bug.cgi?id=172921
Reviewed by Alex Christensen.
* wpe/jhbuild.modules:
2017-06-05 Tim Horton <timothy_horton@apple.com>
ASSERTION FAILED: m_currentScriptCallbackID in UIScriptContext::requestUIScriptCompletion(JSStringRef) running fast/events/ios/autocorrect-with-range-selection.html
https://bugs.webkit.org/show_bug.cgi?id=172887
<rdar://problem/32546061>
Reviewed by Sam Weinig.
* WebKitTestRunner/ios/UIScriptControllerIOS.mm:
(WTR::UIScriptController::applyAutocorrection):
applyAutocorrection can call its completion handler synchronously,
which makes UIScriptController unhappy (see bug 172884).
2017-06-03 Jonathan Bedard <jbedard@apple.com>
webkitpy: Add contextmanager to disable logging for a block
https://bugs.webkit.org/show_bug.cgi?id=172876
Reviewed by Daniel Bates.
Add a context manager which will use an OutputCapture object to capture logging
in a block and hold it in a variable.
* Scripts/webkitpy/common/system/outputcapture.py:
(OutputCaptureScope):
(OutputCaptureScope.__init__): Construct with OutputCapture object.
(OutputCaptureScope.__enter__): Begin capturing output.
(OutputCaptureScope.__exit__): Restore output and save captured output to a variable.
output and retain the resulting log.
* Scripts/webkitpy/common/system/outputcapture_unittest.py:
(OutputCaptureTest.test_output_capture_scope): Added.
2017-06-02 Zalan Bujtas <zalan@apple.com>
Cleanup FrameView::autoSizeIfEnabled.
https://bugs.webkit.org/show_bug.cgi?id=172889
<rdar://problem/32550783>
Reviewed by Tim Horton.
* TestWebKitAPI/Tests/WebKit2Cocoa/AutoLayoutIntegration.mm:
(-[AutoLayoutWKWebView load:withWidth:expectingContentSize:resettingWidth:]): progression.
(TEST):
2017-06-02 Chris Dumez <cdumez@apple.com>
ResourceLoadStatistics are not using unique paths during test runs
https://bugs.webkit.org/show_bug.cgi?id=172861
<rdar://problem/32442251>
Reviewed by Darin Adler.
Make sure WebKitTestRunner sets a temporary path for saving resource
load statistics.
* WebKitTestRunner/TestController.cpp:
(WTR::TestController::generateContextConfiguration):
2017-06-02 Brady Eidson <beidson@apple.com>
Prevent scheme handlers from handling all built-in URL schemes.
<rdar://problem/32404790> and https://bugs.webkit.org/show_bug.cgi?id=172869
Reviewed by Andy Estes.
* TestWebKitAPI/Tests/WebKit2Cocoa/WKURLSchemeHandler-1.mm:
2017-06-02 Stephan Szabo <stephan.szabo@am.sony.com>
[JSCOnly] Build static jsc.exe on Windows
https://bugs.webkit.org/show_bug.cgi?id=172833
Reviewed by Konstantin Tokarev.
* CMakeLists.txt:
* Scripts/build-jsc:
2017-06-02 Zalan Bujtas <zalan@apple.com>
Disable ViewportSizeForViewportUnits tests on iOS.
https://bugs.webkit.org/show_bug.cgi?id=172872
Reviewed by Tim Horton.
* TestWebKitAPI/Tests/WebKit2/ViewportSizeForViewportUnits.mm:
2017-06-02 Zalan Bujtas <zalan@apple.com>
Allow clients to override viewport size for CSS viewport units.
https://bugs.webkit.org/show_bug.cgi?id=172838
<rdar://problem/32523441>
Reviewed by Tim Horton.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKit2/ViewportSizeForViewportUnits.mm: Added.
(TEST):
2017-06-02 Simon Fraser <simon.fraser@apple.com>
Get <chrono> out of StdLibExtras.h
https://bugs.webkit.org/show_bug.cgi?id=172744
Reviewed by Zalan Bujtas.
* TestWebKitAPI/Tests/WTF/WorkQueue.cpp:
2017-06-02 Zan Dobersek <zdobersek@igalia.com>
[WPE] Enable SUBTLE_CRYPTO
https://bugs.webkit.org/show_bug.cgi?id=172756
Reviewed by Michael Catanzaro.
* Scripts/webkitperl/FeatureList.pm: Set ENABLE_SUBTLE_CRYPTO to 1 for WPE.
* wpe/jhbuild.modules: Add libgpg-error and libgcrypt dependencies.
* wpe/patches/libgcrypt-use-only-dev-urandom-for-testing.patch: Added. Prevents
exhausting entropy when running the crypto layout tests.
2017-06-01 Carlos Garcia Campos <cgarcia@igalia.com>
[GTK] Bump GTK+ and its dependencies in jhbuild
https://bugs.webkit.org/show_bug.cgi?id=171918
Reviewed by Carlos Alberto Lopez Perez.
* WebKitTestRunner/InjectedBundle/gtk/ActivateFontsGtk.cpp:
(WTR::initializeGtkSettings):
* gtk/jhbuild.modules:
* gtk/patches/gtk+-configure-fix-detecting-CUPS-2.x.patch: Removed.
* gtk/patches/librsvg-2.36.1-bump-up-config.guess-to-support-aarch64.patch: Removed.
2017-06-01 Carlos Garcia Campos <cgarcia@igalia.com>
[GTK] Bump wayland and weston in jhbuild
https://bugs.webkit.org/show_bug.cgi?id=171921
Reviewed by Carlos Alberto Lopez Perez.
* gtk/jhbuild.modules:
* gtk/patches/weston-libweston-include-weston-egl-ext.h-in-drm-x11-and-wa.patch: Added.
2017-06-01 Andy Estes <aestes@apple.com>
REGRESSION (r217626): ENABLE_APPLE_PAY_SESSION_V3 was disabled by mistake
https://bugs.webkit.org/show_bug.cgi?id=172828
Reviewed by Beth Dakin.
* TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
2017-06-01 Jonathan Bedard <jbedard@apple.com>
webkitpy: Remove unneeded simulator teardown
https://bugs.webkit.org/show_bug.cgi?id=171891
Reviewed by Aakash Jain.
* Scripts/webkitpy/port/ios_simulator.py:
(IOSSimulatorPort.clean_up_test_run): Remove FIFO deletion since TCP is used
for communication between Python and WebKitTestRunner/DumpRenderTree.
2017-06-01 Keith Miller <keith_miller@apple.com>
Undo rollout in r217638 with bug fix
https://bugs.webkit.org/show_bug.cgi?id=172824
Unreviewed, reland patch with unused set_state code removed.
* TestWebKitAPI/Tests/WTF/ThreadMessages.cpp:
(runThreadMessageTest):
(TEST):
2017-06-01 Jonathan Bedard <jbedard@apple.com>
webkitpy: Do not send 0 or -1 as a pid to kill_process
https://bugs.webkit.org/show_bug.cgi?id=172818
Reviewed by Darin Adler.
Sending a signal to process 0 will result in all processes in the group receiving
the signal. Sending a signal to process -1 will result in all non-system processes
receiving the signal. Both Executive.kill_process and Executive.check_running_pid
should consider these cases
* Scripts/webkitpy/common/system/executive.py:
(Executive.kill_process): Throw exception if pid is undefined, 0 or negative.
(Executive.check_running_pid): An undefined pid, pid 0 or a negative pid will
never be running, although os.kill may succeed.
* Scripts/webkitpy/port/simulator_process.py:
(SimulatorProcess.stop): Do not kill process if it is undefined.
2017-05-31 Alexey Proskuryakov <ap@apple.com>
JSC EWS bot does not run on WTF only patches
https://bugs.webkit.org/show_bug.cgi?id=172777
rdar://problem/32495975
Reviewed by Aakash Jain.
* Scripts/webkitpy/tool/steps/checkpatchrelevance.py:
(CheckPatchRelevance): Add a missing comma.
2017-05-31 Commit Queue <commit-queue@webkit.org>
Unreviewed, rolling out r217611 and r217631.
https://bugs.webkit.org/show_bug.cgi?id=172785
"caused wasm-hashset-many.html to become flaky." (Requested by
keith_miller on #webkit).
Reverted changesets:
"Reland r216808, underlying lldb bug has been fixed."
https://bugs.webkit.org/show_bug.cgi?id=172759
http://trac.webkit.org/changeset/217611
"Use dispatch queues for mach exceptions"
https://bugs.webkit.org/show_bug.cgi?id=172775
http://trac.webkit.org/changeset/217631
2017-05-31 Ryan Haddad <ryanhaddad@apple.com>
EWS bots should reboot themselves more frequently
https://bugs.webkit.org/show_bug.cgi?id=172402
Reviewed by Alexey Proskuryakov.
Instead of rebooting once a day, EWS bots will reboot after running 10 iterations.
* EWSTools/start-queue-mac.sh: Remove the restriction placed on the time that the bot will perform a reboot.
2017-05-31 Ryan Haddad <ryanhaddad@apple.com>
Reallocate hardware for iOS bots.
https://bugs.webkit.org/show_bug.cgi?id=172657
Reviewed by Alexey Proskuryakov.
* BuildSlaveSupport/build.webkit.org-config/config.json:
2017-05-31 Andy Estes <aestes@apple.com>
Rename ENABLE_APPLE_PAY_DELEGATE to ENABLE_APPLE_PAY_SESSION_V3 and bump the supported version number
https://bugs.webkit.org/show_bug.cgi?id=172366
Reviewed by Daniel Bates.
* TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
2017-05-31 Jiewen Tan <jiewen_tan@apple.com>
Unreviewed, add Jiewen Tan as a reviewer
* Scripts/webkitpy/common/config/contributors.json:
2017-05-31 Adrian Perez de Castro <aperez@igalia.com>
[GTK] MiniBrowser's browser_window_get_or_create_web_view_for_automation never creates new windows
https://bugs.webkit.org/show_bug.cgi?id=172770
Reviewed by Michael Catanzaro.
* MiniBrowser/gtk/BrowserWindow.c:
(browser_window_get_or_create_web_view_for_automation): Removed stray semicolon
which caused the body of the if-clause to be accidentally empty.
2017-05-31 Keith Miller <keith_miller@apple.com>
Reland r216808, underlying lldb bug has been fixed.
https://bugs.webkit.org/show_bug.cgi?id=172759
Unreviewed, relanding old patch. See: rdar://problem/31183352
* TestWebKitAPI/Tests/WTF/ThreadMessages.cpp:
(runThreadMessageTest):
(TEST):
2017-05-31 Matt Lewis <jlewis3@apple.com>
Unreviewed, rolling out r217603.
This patch broke the internal builds.
Reverted changeset:
"Get <chrono> out of StdLibExtras.h"
https://bugs.webkit.org/show_bug.cgi?id=172744
http://trac.webkit.org/changeset/217603
2017-05-31 Brent Fulgham <bfulgham@apple.com>
Make ResourceLoadStatistics testing more reliable
https://bugs.webkit.org/show_bug.cgi?id=172730
<rdar://problem/32028373>
Reviewed by Andy Estes.
When we tell the UIProcess (WebKitTestRunner) to notify the system about statistics update notifications,
we also need to tell the WebProcess to do so, too, or else the test system doesn't get messages.
* WebKitTestRunner/InjectedBundle/TestRunner.cpp:
(WTR::TestRunner::setStatisticsNotifyPagesWhenDataRecordsWereScanned):
2017-05-31 Carlos Alberto Lopez Perez <clopez@igalia.com>
[GTK][WPE] run-javascriptcore-tests should use the jhbuild
https://bugs.webkit.org/show_bug.cgi?id=172757
Reviewed by Xabier Rodriguez-Calvar.
When needed, add the jhbuild wrapper at the beginning of the array
that will be invoked to execute the run-jsc-stress-test or testapi
commands.
* Scripts/run-javascriptcore-tests:
(runJSCStressTests):
* Scripts/webkitdirs.pm:
(shouldUseJhbuild):
2017-05-31 Simon Fraser <simon.fraser@apple.com>
Get <chrono> out of StdLibExtras.h
https://bugs.webkit.org/show_bug.cgi?id=172744
Reviewed by Saam Barati.
* TestWebKitAPI/Tests/WTF/WorkQueue.cpp:
2017-05-30 Tim Horton <timothy_horton@apple.com>
Keyboard autocorrections do not apply with an active selection (but keyboard acts like they did)
https://bugs.webkit.org/show_bug.cgi?id=172735
<rdar://problem/32015977>
Reviewed by Enrica Casucci.
* DumpRenderTree/ios/UIScriptControllerIOS.mm:
(WTR::UIScriptController::applyAutocorrection):
* TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
* TestRunnerShared/UIScriptContext/UIScriptController.cpp:
(WTR::UIScriptController::applyAutocorrection):
* TestRunnerShared/UIScriptContext/UIScriptController.h:
* WebKitTestRunner/ios/UIScriptControllerIOS.mm:
(WTR::UIScriptController::applyAutocorrection):
Expose applyAutocorrection to UIScriptController. Use a WKTesting method
because I don't know how to tap the button in the autocorrection bar from a test.
2017-05-30 Daniel Bates <dabates@apple.com>
Add unit test for WebKit2 C SPI runBeforeUnloadConfirmPanel()
https://bugs.webkit.org/show_bug.cgi?id=172671
Reviewed by Alex Christensen.
We should add a unit test to ensure we do not regress the WKPageUIClient runBeforeUnloadConfirmPanel() callback.
For completeness, the callback runBeforeUnloadConfirmPanel() existed since inception of WKPageUIClient (WKPageUIClientV0).
* TestWebKitAPI/Tests/WebKit2/ModalAlertsSPI.cpp:
(TestWebKitAPI::analyzeDialogArguments): Test the runBeforeUnloadConfirmPanel() callback last as we need
to trigger a navigation to test it.
(TestWebKitAPI::runBeforeUnloadConfirmPanel): Added.
(TestWebKitAPI::createNewPage): Wire up the runBeforeUnloadConfirmPanel callback.
2017-05-30 Jonathan Bedard <jbedard@apple.com>
webkitpy: Start servers before setting-up for testing
https://bugs.webkit.org/show_bug.cgi?id=172176
<rdar://problem/32225538>
Reviewed by Alexey Proskuryakov.
On-device testing requires that servers are started before ports set-up their
test environments.
* Scripts/webkitpy/layout_tests/controllers/layout_test_runner.py:
(LayoutTestRunner.__init__): Start servers when initializing LayoutTestRunner.
Servers are unconditionally stopped on exit.
(LayoutTestRunner.run_tests): Move the starting of servers to the initializer. The
Manager now stops servers.
(LayoutTestRunner.start_servers): Set flag to indicate servers are running.
(LayoutTestRunner.stop_servers): Check flag, only shutdown servers if they are shutdown.
* Scripts/webkitpy/layout_tests/controllers/manager.py:
(Manager.__init__): Delay construction of the test runner until we can determine
if servers need to be started.
(Manager.run): Determine if servers need to be started and construct the test runner.
Shut servers down when the test run is finished.
(Manager._run_tests): Move the determination of servers to run into Manager.run.
* Scripts/webkitpy/layout_tests/servers/web_platform_test_server.py:
(is_wpt_server_running): Server is not running if no config is found.
* Scripts/webkitpy/layout_tests/servers/websocket_server.py:
(PyWebSocket.is_running): Check if this WebSocket server is running.
* Scripts/webkitpy/port/base.py:
(Port.__init__): Define secure WebSocket server.
(Port.to.is_websocket_server_running): Check if WebSocket servers are defined.
2017-05-30 Daniel Bates <dabates@apple.com>
[WK2] Add runBeforeUnloadConfirmPanel WKUIDelegate SPI; support onbeforeunload confirm panel in MiniBrowser
https://bugs.webkit.org/show_bug.cgi?id=172603
<rdar://problem/32471306>
Reviewed by Brady Eidson.
Implement the -_webView:runBeforeUnloadConfirmPanelWithMessage:initiatedByFrame:completionHandler: delegate
method in MiniBrowser to show a confirm panel as to whether to allow the unloading of the page when
unloading is initiated for a page that registered a onbeforeunload handler.
Modify TestWebKitAPI/Tests/WebKit2Cocoa/ModalAlerts.mm to test that the -_webView:runBeforeUnloadConfirmPanelWithMessage:initiatedByFrame:completionHandler:
is called. Also fix style nit; pass YES instead of true to avoid implicit conversion from bool to BOOL
when invoking the completion handler in -_webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:.
Until we fix <https://bugs.webkit.org/show_bug.cgi?id=172614> the unit test in TestWebKitAPI/Tests/WebKit2Cocoa/ModalAlerts.mm
for -_webView:runBeforeUnloadConfirmPanelWithMessage:initiatedByFrame:completionHandler: is only run on Mac
as we do not have the infrastructure to simulate a click/tap on iOS and a click/tap on the page that
registered an onbeforeunload handler is required to show a confirm panel when the page will be unloaded.
* MiniBrowser/mac/WK2BrowserWindowController.m:
(-[WK2BrowserWindowController _webView:runBeforeUnloadConfirmPanelWithMessage:initiatedByFrame:completionHandler:]):
* TestWebKitAPI/Tests/WebKit2/modal-alerts-in-new-about-blank-window.html:
* TestWebKitAPI/Tests/WebKit2Cocoa/ModalAlerts.mm:
(sawDialog):
(-[ModalAlertsUIDelegate webView:createWebViewWithConfiguration:forNavigationAction:windowFeatures:]):
(-[ModalAlertsUIDelegate webView:runJavaScriptConfirmPanelWithMessage:initiatedByFrame:completionHandler:]):
(-[ModalAlertsUIDelegate _webView:runBeforeUnloadConfirmPanelWithMessage:initiatedByFrame:completionHandler:]):
2017-05-30 Alex Christensen <achristensen@webkit.org>
Update libwebrtc configuration
https://bugs.webkit.org/show_bug.cgi?id=172727
Reviewed by Geoffrey Garen.
* TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
2017-05-30 Fujii Hironori <Hironori.Fujii@sony.com>
[WinCairo] TestWebKitAPI: ASSERTION FAILED: m_eglDisplay == EGL_NO_DISPLAY
https://bugs.webkit.org/show_bug.cgi?id=172702
Reviewed by Alex Christensen.
EGL PlatformDisplay needs to be shut down before existing a
program on Windows.
* TestWebKitAPI/Tests/WebKit/win/ScaleWebView.cpp:
(TestWebKitAPI::ScaleWebView::TearDown): Call shutDownWebKit().
* TestWebKitAPI/Tests/WebKit/win/WebViewDestruction.cpp:
(TestWebKitAPI::WebViewDestruction::TearDown): Ditto.
2017-05-30 Per Arne Vollan <pvollan@apple.com>
[Win] fast/shadow-dom/fullscreen-in-slot-fullscreenElement.html is flaky.
https://bugs.webkit.org/show_bug.cgi?id=172709
Reviewed by Brent Fulgham.
Exit fullscreen mode after a fullscreen test.
* DumpRenderTree/win/DumpRenderTree.cpp:
(resetWebViewToConsistentStateBeforeTesting):
2017-05-30 Antti Koivisto <antti@apple.com>
ASSERTION FAILED: !needsLayout() in com.apple.WebCore: WebCore::FrameView::paintContents in fast/events/tabindex-focus-blur-all.html on WK1
https://bugs.webkit.org/show_bug.cgi?id=172713
Reviewed by Zalan Bujtas.
* DumpRenderTree/mac/ResourceLoadDelegate.mm:
(-[ResourceLoadDelegate webView:plugInFailedWithError:dataSource:]):
Remove forced display from plugin resource load delegate. It is testing some long-obsolete
Safari WK1 behavior. Forcing display from this resource load delegate will hit the assertion
because on Mac WK1 it may get invoked from middle of a layout.
Painting code skips out after the assert so it doesn't indicate unsafe access of any sort.
2017-05-30 Carlos Alberto Lopez Perez <clopez@igalia.com>
Add a WPE EWS queue
https://bugs.webkit.org/show_bug.cgi?id=172693
Reviewed by Carlos Garcia Campos.
* QueueStatusServer/config/queues.py:
* QueueStatusServer/model/queues.py: Capitalize the name of the
port on the tooltip of the bubbles. Do the same for the GTK port.
(Queue.display_name):
* Scripts/webkitpy/common/config/ews.json: Update the watcher mail
for the GTK+ EWS also. Set for both ports as watcher the alias
bugs-noreply@webkitgtk.org that maintainers of both ports follow.
* Scripts/webkitpy/common/config/ports.py:
(DeprecatedPort.port):
(WpePort):
(WpePort.build_webkit_command):
(WpePort.run_webkit_tests_command):
* Scripts/webkitpy/common/config/ports_unittest.py:
(DeprecatedPortTest):
(DeprecatedPortTest.test_wpe_port):
* Scripts/webkitpy/tool/commands/earlywarningsystem_unittest.py:
(test_ews_name):
2017-05-29 Zan Dobersek <zdobersek@igalia.com>
Unreviewed. Bumping the WPEBackend-mesa dependency version.
* wpe/jhbuild.modules: Use the latest version that uses proper GLib
priorities for IPC communication.
2017-05-27 Yusuke Suzuki <utatane.tea@gmail.com>
[JSC] Map and Set constructors should have fast path for cloning
https://bugs.webkit.org/show_bug.cgi?id=172413
Reviewed by Saam Barati.
* TestWebKitAPI/Tests/WTF/MathExtras.cpp:
(TestWebKitAPI::TEST):
2017-05-27 Zalan Bujtas <zalan@apple.com>
enclosingIntRect returns a rect with -1 width/height when the input FloatRect overflows integer.
https://bugs.webkit.org/show_bug.cgi?id=172676
Reviewed by Simon Fraser.
* TestWebKitAPI/Tests/WebCore/FloatRect.cpp:
(TestWebKitAPI::TEST):
2017-05-26 Zalan Bujtas <zalan@apple.com>
TestWebKitAPI: EnclosingIntRect and RoundedIntRect should use EXPECT_EQ.
https://bugs.webkit.org/show_bug.cgi?id=172674
Reviewed by Simon Fraser.
* TestWebKitAPI/Tests/WebCore/FloatRect.cpp:
(TestWebKitAPI::TEST):
2017-05-26 Wenson Hsieh <wenson_hsieh@apple.com>
Add test resources back into TestWebKitAPI Copy Resources phase
Rubber-stamped by Beth Dakin.
Add two files back into the Copy Resources phase after they were unintentionally
removed in r217447 and r217496.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2017-05-26 Beth Dakin <bdakin@apple.com>
Media documents inside iframes should not get controls in the TouchBar unless the
video is playing
https://bugs.webkit.org/show_bug.cgi?id=172620
-and corresponding-
rdar://problem/32165477
Reviewed by Jon Lee.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKit2Cocoa/VideoControlsManager.mm:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit2Cocoa/offscreen-iframe-of-media-document.html: Added.
2017-05-25 Joseph Pecoraro <pecoraro@apple.com>
_WKUserStyleSheet and WKUserScript leak string data
https://bugs.webkit.org/show_bug.cgi?id=172583
<rdar://problem/32395209>
Reviewed by Sam Weinig.
* TestWebKitAPI/Tests/WebKit2Cocoa/UserContentController.mm:
We should not have been adopting an autoreleased object.
2017-05-25 Myles C. Maxfield <mmaxfield@apple.com>
[WK1] iframes in layer-backed NSViews are not cleared between successive draws
https://bugs.webkit.org/show_bug.cgi?id=172554
<rdar://problem/31247133>
Reviewed by Simon Fraser.
Previously, there was no way to make DumpRenderTree's views layer-backed. Unfortunately,
simply setting [WebView setWantsLayer:] is insufficient; turning it on and then off again
leaves some state around inside the NSWindow which isn't easily cleaned up. Instead,
we should just tear down and rebuild the window whenever we need a layer-backed WebView.
We can also use the "webkit-test-runner" header comment to trigger this new layer-backed
codepath.
* DumpRenderTree/TestOptions.h:
* DumpRenderTree/TestOptions.mm:
(TestOptions::TestOptions):
(TestOptions::webViewIsCompatibleWithOptions):
* DumpRenderTree/mac/DumpRenderTree.mm:
(shouldIgnoreWebCoreNodeLeaks):
(allowedFontFamilySet):
(-[DRTMockScroller rectForPart:]):
(-[DRTMockScroller drawKnob]):
(-[DRTMockScroller drawRect:]):
(createWebViewAndOffscreenWindow):
(initializeGlobalsFromCommandLineOptions):
(prepareConsistentTestingEnvironment):
(dumpRenderTree):
(dumpAudio):
(dumpHistoryItem):
(dumpBackForwardListForWebView):
(resetWebViewToConsistentStateBeforeTesting):
(WebThreadLockAfterDelegateCallbacksHaveCompleted):
(runTest):
2017-05-25 Sam Weinig <sam@webkit.org>
[WebIDL] Use the term 'operation' more consistently
https://bugs.webkit.org/show_bug.cgi?id=172601
Reviewed by Chris Dumez.
We were using the term 'operation', a WebIDL term for function-like
constructs, inconsistently in the code generator. Now, when we use
'operation' when referring to the IDL concept (usually the object the
parser produces) and 'function' when referring to code being generated.
* DumpRenderTree/Bindings/CodeGeneratorDumpRenderTree.pm:
* WebKitTestRunner/InjectedBundle/Bindings/CodeGeneratorTestRunner.pm:
2017-05-25 Jer Noble <jer.noble@apple.com>
Unreviewed build fix after r217447; only run test where JSC's ObjC API is available.
* TestWebKitAPI/Tests/mac/MediaPlaybackSleepAssertion.mm:
2017-05-25 Jer Noble <jer.noble@apple.com>
System sleeps while playing to wireless target, ending stream.
https://bugs.webkit.org/show_bug.cgi?id=172541
Reviewed by Eric Carlson.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/mac/MediaPlaybackSleepAssertion.html: Added.
* TestWebKitAPI/Tests/mac/MediaPlaybackSleepAssertion.mm: Added.
(-[MediaPlaybackSleepAssertionLoadDelegate webView:didCreateJavaScriptContext:forFrame:]):
(-[MediaPlaybackSleepAssertionPolicyDelegate webView:decidePolicyForNavigationAction:request:frame:decisionListener:]):
(TestWebKitAPI::simulateKeyDown):
(TestWebKitAPI::hasAssertionType):
(TestWebKitAPI::TEST):
2017-05-25 Commit Queue <commit-queue@webkit.org>
Unreviewed, rolling out r217423 and r217424.
https://bugs.webkit.org/show_bug.cgi?id=172607
These caused an api failure on all testers. (Requested by
mlewis13 on #webkit).
Reverted changesets:
"REGRESSION (r216977): 4 leaks introduced in new
WebKit2_WKHTTPCookieStoreWithoutProcessPool_Test"
https://bugs.webkit.org/show_bug.cgi?id=172558
http://trac.webkit.org/changeset/217423
"REGRESSION (r217423): Fix last-second typo in 'auto'"
http://trac.webkit.org/changeset/217424
2017-05-25 Joanmarie Diggs <jdiggs@igalia.com>
[ATK] Expose doc-footnote ARIA role with ATK_ROLE_FOOTNOTE
https://bugs.webkit.org/show_bug.cgi?id=172355
Reviewed by Chris Fleizach.
Add map ATK_ROLE_FOOTNOTE to "AXFootnote" and bump jhbuild minimum
versions of atk, at-spi2-core, and at-spi2-atk to 2.25.2 (the earliest
releases which support the new platform footnote accessibility role.
* WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
* gtk/jhbuild.modules:
2017-05-25 David Kilzer <ddkilzer@apple.com>
REGRESSION (r217423): Fix last-second typo in 'auto'
* TestWebKitAPI/Tests/WebKit2Cocoa/WKHTTPCookieStore.mm:
(WebKit2_WKHTTPCookieStoreWithoutProcessPool_Test): Fix typo.
2017-05-24 David Kilzer <ddkilzer@apple.com>
REGRESSION (r216977): 4 leaks introduced in new WebKit2_WKHTTPCookieStoreWithoutProcessPool_Test
<https://webkit.org/b/172558>
Reviewed by Sam Weinig.
* TestWebKitAPI/Tests/WebKit2Cocoa/WKHTTPCookieStore.mm:
(WebKit2_WKHTTPCookieStoreWithoutProcessPool_Test): Fix the leaks.
2017-05-24 Don Olmstead <don.olmstead@am.sony.com>
[CMake] Consolidate CMake code related to Cairo
https://bugs.webkit.org/show_bug.cgi?id=172568
Reviewed by Alex Christensen.
* DumpRenderTree/config.h:
* TestWebKitAPI/config.h:
2017-05-24 Wenson Hsieh <wenson_hsieh@apple.com>
Plumb additional image metadata to item providers when beginning data interaction on an image
https://bugs.webkit.org/show_bug.cgi?id=172536
<rdar://problem/32371300>
Reviewed by Beth Dakin.
Tweak existing image data interaction tests to check for suggested name and estimated size on the generated
source item providers.
* TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
(checkSuggestedNameAndEstimatedSize):
(TestWebKitAPI::TEST):
2017-05-24 Per Arne Vollan <pvollan@apple.com>
[Win] Create unique network storage session for each DRT.
https://bugs.webkit.org/show_bug.cgi?id=172540
Reviewed by Brent Fulgham.
During layout testing, each DRT instance should have its own network storage session.
* DumpRenderTree/win/DumpRenderTree.cpp:
(prepareConsistentTestingEnvironment):
2017-05-24 Wenson Hsieh <wenson_hsieh@apple.com>
Respect image UTIs when writing to item providers when beginning data interaction on an image
https://bugs.webkit.org/show_bug.cgi?id=172436
<rdar://problem/31786569>
Reviewed by Beth Dakin.
Tweaks existing unit tests and adds a new test for image data interaction. See WebCore ChangeLog for more
details.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKit2Cocoa/apple.gif: Added.
* TestWebKitAPI/Tests/WebKit2Cocoa/gif-and-file-input.html: Added.
Create a new test page containing a GIF and a file input.
* TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
(checkTypeIdentifierIsRegisteredAtIndex):
(TestWebKitAPI::TEST):
2017-05-23 Per Arne Vollan <pvollan@apple.com>
[Win] Increase test timeout for slow tests.
https://bugs.webkit.org/show_bug.cgi?id=172449
Reviewed by Alexey Proskuryakov.
Instead of using a fixed timeout of 30 seconds for all tests, we should use the
timeout member in the TestRunner class.
* DumpRenderTree/win/TestRunnerWin.cpp:
(TestRunner::setWaitToDump):
2017-05-15 Matt Rajca <mrajca@apple.com>
Replace autoplay events that fire at navigation with a DidAutoplayMediaPastThreshold event.
https://bugs.webkit.org/show_bug.cgi?id=172138
Reviewed by Alex Christensen.
Added API tests.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKit2/js-autoplay-audio.html: Added.
* TestWebKitAPI/Tests/WebKit2Cocoa/WebsitePolicies.mm:
(TEST):
* TestWebKitAPI/Tests/WebKit2Cocoa/silence-long.m4a: Added.
2017-05-23 Simon Fraser <simon.fraser@apple.com>
Stop consulting -viewsNeedDisplay when doing layer flushing in WebKit1
https://bugs.webkit.org/show_bug.cgi?id=172522
rdar://problem/31071812
Reviewed by Sam Weinig.
Remove NSWindowStyleMaskFullSizeContentView which is no longer referenced in code.
We set this in the .xib file now.
* MiniBrowser/mac/MiniBrowser_Prefix.pch:
2017-05-22 Simon Fraser <simon.fraser@apple.com>
Snapshotting via -renderInContext: should do synchronous image decodes
https://bugs.webkit.org/show_bug.cgi?id=172485
rdar://problem/32276146
Reviewed by Tim Horton.
New API test.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKit/ios/SnapshotViaRenderInContext.mm: Added.
(-[RenderInContextWebViewDelegate webViewDidFinishLoad:]):
(-[RenderInContextWebViewDelegate webView:didFailLoadWithError:]):
(TestWebKitAPI::getPixelIndex):
(TestWebKitAPI::TEST):
2017-05-23 Myles C. Maxfield <mmaxfield@apple.com>
Remove dead ENABLE(FONT_LOAD_EVENTS) code
https://bugs.webkit.org/show_bug.cgi?id=172517
Rubber-stamped by Simon Fraser.
* TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
2017-05-23 Wenson Hsieh <wenson_hsieh@apple.com>
Multiple links should be inserted separately when performing data interaction
https://bugs.webkit.org/show_bug.cgi?id=172489
<rdar://problem/31510832>
Reviewed by Dan Bernstein.
Adds a new test that performs data interaction in a contenteditable with multiple items containing URLs.
* TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
(TestWebKitAPI::TEST):
2017-05-23 Tim Horton <timothy_horton@apple.com>
REGRESSION: API test WebKit2.WKObject is failing
https://bugs.webkit.org/show_bug.cgi?id=172497
<rdar://problem/31694641>
Reviewed by Geoff Garen.
* TestWebKitAPI/Tests/WebKit2Cocoa/WKObject.mm:
(TestWebKitAPI::TEST):
Add a test that ensures that we pretend to at least be *some* kind of
NSString, which my first fix would not have passed.
2017-05-23 youenn fablet <youenn@apple.com>
There should be an easy way to run HTTP/WPT served tests on a browser
https://bugs.webkit.org/show_bug.cgi?id=172068
Reviewed by Sam Weinig.
Adding a new script open-layout-test to open a layout-test in a
browser and making sure it is served as done through run-webkit-tests.
In case tests should be run using a server, detecting whether the
server are running. If not, calling run-webkit-httpd to run the
servers and open the URL in a browser.
Otherwise, open directly the URL.
Adding an option in run-webkit-httpd to open an URL after having
started the servers.
Adding the --no-http-servers option in run-webkit-tests to not start any HTTP server.
This allows running run-webkit-httpd once and not having to restart
servers everytime a test should be served.
Moving most of run-webkit-httpd logic in its own python file to reuse
it in open-layout-test script.
Adding routines to check whether HTTP and WPT servers are running.
* Scripts/open-layout-test: Added.
(parse_args):
(main):
* Scripts/run-webkit-httpd:
(main):
* Scripts/webkitpy/layout_tests/controllers/layout_test_finder.py:
(LayoutTestFinder.find_tests):
* Scripts/webkitpy/layout_tests/controllers/layout_test_runner.py:
(LayoutTestRunner.run_tests):
* Scripts/webkitpy/layout_tests/run_webkit_tests.py:
(parse_args):
* Scripts/webkitpy/layout_tests/servers/http_server_base.py:
(HttpServerBase._is_server_running_on_all_ports):
(HttpServerBase):
(HttpServerBase._is_running_on_port):
(HttpServerBase._check_that_all_ports_are_available):
(is_http_server_running):
* Scripts/webkitpy/layout_tests/servers/run_webkit_httpd.py: Copied from Tools/Scripts/run-webkit-httpd.
(parse_args):
(main):
(run_server):
* Scripts/webkitpy/layout_tests/servers/web_platform_test_server.py:
(is_wpt_server_running):
* Scripts/webkitpy/port/base.py:
(Port.to.is_http_server_running):
(Port.to):
(Port.to.is_wpt_server_running):
(Port.to.start_web_platform_test_server):
* Scripts/webkitpy/port/driver.py:
(DriverProxy.is_web_platform_test):
(DriverProxy):
(DriverProxy.is_webkit_specific_web_platform_test):
2017-05-23 Emilio Cobos Álvarez <ecobos@igalia.com>
Add a RuntimeEnabledFeature for display: contents, defaulted to false.
https://bugs.webkit.org/show_bug.cgi?id=171984
Reviewed by Antti Koivisto.
* DumpRenderTree/mac/DumpRenderTree.mm:
(enableExperimentalFeatures):
* WebKitTestRunner/TestController.cpp:
(WTR::TestController::resetPreferencesToConsistentValues):
2017-05-20 Alex Christensen <achristensen@webkit.org>
REGRESSION(r215686): O(n^2) algorithm in CachedRawResource::addDataBuffer
https://bugs.webkit.org/show_bug.cgi?id=172406
<rdar://32109532>
Reviewed by Brady Eidson.
* TestWebKitAPI/Tests/WebCore/SharedBuffer.cpp:
(TestWebKitAPI::checkBuffer):
(TestWebKitAPI::TEST_F):
2017-05-22 Jason Marcell <jmarcell@apple.com>
Do not enter Subversion-specific logic when parsing Git-based Trac data.
https://bugs.webkit.org/show_bug.cgi?id=172433
<rdar://problem/32234188>
Reviewed by Alexey Proskuryakov.
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Trac.js:
(Trac.prototype._convertCommitInfoElementToObject):
2017-05-22 Tim Horton <timothy_horton@apple.com>
ExplicitSnapshotsChangeUponNavigation API test often fails
https://bugs.webkit.org/show_bug.cgi?id=172475
<rdar://problem/31688322>
Reviewed by Simon Fraser.
* TestWebKitAPI/cocoa/TestWKWebView.mm:
(-[TestWKWebView _setUpTestWindow:]):
Make TestWKWebView's window layer-backed. This is now the default,
and it's also easy to accidentally write a test that depends on it
(for example, ExplicitSnapshotsChangeUponNavigation adds an NSBox,
which becomes layer backed, just like the WKWebView, but with no
common layer-backed ancestor).
2017-05-22 youenn fablet <youenn@apple.com>
Resync web-platform-tests up to 8df7c9c215678328212f232ce0b5270c505a8563
https://bugs.webkit.org/show_bug.cgi?id=172426
Reviewed by Chris Dumez.
* Scripts/webkitpy/w3c/test_importer.py:
(TestImporter.remove_deleted_files): Outputting warning when trying to delete a file that no longer exists.
2017-05-22 Konstantin Tokarev <annulen@yandex.ru>
Unreviewed, change my status to reviewer and fill "expertise" field
* Scripts/webkitpy/common/config/contributors.json:
2017-05-22 Tomas Popela <tpopela@redhat.com>
Remove some of the EFL port leftovers
https://bugs.webkit.org/show_bug.cgi?id=172440
Reviewed by Carlos Garcia Campos.
* BuildSlaveSupport/built-product-archive:
(archiveBuiltProduct):
(extractBuiltProduct):
* BuildSlaveSupport/test-result-archive:
(archiveTestResults):
* ImageDiff/PlatformEfl.cmake: Removed.
* Scripts/run-efl-tests: Removed.
* Scripts/webkit-build-directory:
* Scripts/webkitpy/common/config/contributionareas.py:
* Scripts/webkitpy/common/config/watchlist:
* Scripts/webkitpy/layout_tests/run_webkit_tests.py:
(parse_args):
(_set_up_derived_options):
* Scripts/webkitpy/performance_tests/perftestsrunner.py:
(PerfTestsRunner.__init__):
* Scripts/webkitpy/style/checker.py:
* Scripts/webkitpy/style/checker_unittest.py:
(GlobalVariablesTest.test_path_rules_specifier):
* gtk/manifest.txt.in:
* jhbuild/jhbuild-wrapper:
2017-05-22 Carlos Garcia Campos <cgarcia@igalia.com>
Unreviewed. Do not include WPE files in GTK+ tarballs.
* gtk/manifest.txt.in:
2017-05-22 Carlos Garcia Campos <cgarcia@igalia.com>
[GTK] Add webkit_context_menu_item_new_from_gaction
https://bugs.webkit.org/show_bug.cgi?id=159631
Reviewed by Michael Catanzaro.
Update context menu tests to check the new GAction API.
* TestWebKitAPI/Tests/WebKit2Gtk/TestContextMenu.cpp:
(testContextMenuPopulateMenu):
2017-05-21 Michael Catanzaro <mcatanzaro@igalia.com>
[GTK] Remove Firefox user agent quirk for Google domains
https://bugs.webkit.org/show_bug.cgi?id=171941
Reviewed by Carlos Garcia Campos.
* TestWebKitAPI/Tests/WebCore/UserAgentQuirks.cpp:
(TestWebKitAPI::TEST):
(TestWebKitAPI::assertUserAgentForURLHasFirefoxBrowserQuirk): Deleted.
2017-05-20 Ting-Wei Lan <lantw44@gmail.com>
[GTK] gtkdoc-fixxref needs --module argument to work
https://bugs.webkit.org/show_bug.cgi?id=172415
Reviewed by Michael Catanzaro.
* gtk/gtkdoc.py:
(GTKDoc._run_gtkdoc_fixxref):
2017-05-20 Alexey Proskuryakov <ap@apple.com>
make-new-script-test should create tests that use js-test.js, not js-test-pre.js
https://bugs.webkit.org/show_bug.cgi?id=172416
Reviewed by Daniel Bates.
* Scripts/make-new-script-test:
2017-05-19 Fujii Hironori <Hironori.Fujii@sony.com>
[Win] error LNK2005: WebCore::JSNode::checkSubClassPatchpoint() already defined in WebKit.lib
https://bugs.webkit.org/show_bug.cgi?id=172267
Reviewed by Per Arne Vollan.
TestWebCoreLib and TestWebKitLib have linked both WebCore and WebKit.
TestWebCoreLib should link only with WebCore. And, TestWebKitLib
should link only with WebKit.
Unfortunately, there is a layer violation at the moment.
WebCore::Image::loadPlatformResource needs loadResourceIntoBuffer
in WebKit. This change contains a stub of loadResourceIntoBuffer
in TestWebCoreLib for the workaround.
* TestWebKitAPI/PlatformWin.cmake: Do not link WebKit to
TestWebCoreLib. Do not link WebCore to TestWebKitLib.
* TestWebKitAPI/win/TestWebCoreStubs.cpp: Added.
(loadResourceIntoBuffer): Added a stub.
2017-05-19 Simon Fraser <simon.fraser@apple.com>
Fix dump-class-layout to handle different file architectures
https://bugs.webkit.org/show_bug.cgi?id=172392
Reviewed by Zalan Bujtas.
Instead of using lldb.LLDB_ARCH_DEFAULT by default, run 'file' on the binary
and use the first architecture reported. Also add a "--architecture" argument
to allow the user to specify an architecture.
* Scripts/dump-class-layout:
(import_lldb):
(verify_type_recursive):
(get_first_file_architecture):
(dump_class):
(main):
(find_build_directory): Deleted.
2017-05-19 Jonathan Bedard <jbedard@apple.com>
Unreviewed infrastructure fix.
* Scripts/webkitpy/port/ios_simulator.py:
(IOSSimulatorPort._create_devices): Ignore failure to open Simulator.app.
2017-05-19 Jonathan Bedard <jbedard@apple.com>
webkitpy: Use simctl boot to run multiple simulators at once
https://bugs.webkit.org/show_bug.cgi?id=172374
Reviewed by Alexey Proskuryakov.
* Scripts/webkitpy/common/system/platforminfo.py:
(PlatformInfo.xcode_version): Return the current version of Xcode.
* Scripts/webkitpy/common/system/platforminfo_mock.py:
(MockPlatformInfo.xcode_version): Return version 8.0 for testing.
* Scripts/webkitpy/port/ios_simulator.py:
(IOSSimulatorPort.use_multiple_simulator_apps): Return true if we need to
run multiple Simulator.app instances.
(IOSSimulatorPort._create_simulators): Only copy the simulator app for older
versions of Xcode.
(IOSSimulatorPort._create_devices): Use 'simctl boot' directly unless using
an older version of Xcode.
2017-05-19 Wenson Hsieh <wenson_hsieh@apple.com>
Unreviewed, fix the build on the latest internal SDK.
* TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
(TestWebKitAPI::TEST):
2017-05-19 Filip Pizlo <fpizlo@apple.com>
arrayProtoPrivateFuncConcatMemcpy needs to be down with firstArray being undecided
https://bugs.webkit.org/show_bug.cgi?id=172369
Reviewed by Mark Lam.
Because I wrote a test that relies on the NoCJIT config scribbling free cells, I thought it
would be a good idea to write this down.
* Scripts/run-jsc-stress-tests:
2017-05-19 Jonathan Bedard <jbedard@apple.com>
webkitpy: Layout tests which have no output will succeed
https://bugs.webkit.org/show_bug.cgi?id=172322
<rdar://problem/32258350>
Reviewed by David Kilzer.
* Scripts/webkitpy/layout_tests/controllers/single_test_runner.py:
(SingleTestRunner._compare_text): Add FailreNotTested to failures if test has no output.
* Scripts/webkitpy/layout_tests/models/test_failures.py:
(determine_result_type): FailureNotTested means that the test could not be loaded. This
is classified as a MISSING failure.
(FailureNotTested): Added.
(FailureNotTested.message):
2017-05-19 Yusuke Suzuki <utatane.tea@gmail.com>
Add SixSpeed benchmark to PerformanceTests
https://bugs.webkit.org/show_bug.cgi?id=172326
Reviewed by Sam Weinig.
* Scripts/run-jsc-benchmarks:
2017-05-19 Wenson Hsieh <wenson_hsieh@apple.com>
[WK1] MiniBrowser should navigate when handling a dropped URL
https://bugs.webkit.org/show_bug.cgi?id=172350
Reviewed by Tim Horton.
Allow all drop actions, including URL navigation, for WebKit1 MiniBrowser.
* MiniBrowser/mac/WK1BrowserWindowController.m:
(-[WK1BrowserWindowController webView:dragDestinationActionMaskForDraggingInfo:]):
2017-05-18 Ryosuke Niwa <rniwa@webkit.org>
REGRESSION (r216694 - 216712): Performance test Speedometer/Full.html is failing
https://bugs.webkit.org/show_bug.cgi?id=172077
Reviewed by Chris Dumez.
Fixed perftest.py by updating the lines to ignore in Speedometer.
Also start report the results as "Speedometer" instead of "DoYouEvenBench/Full.html" to perf.webkit.org.
* Scripts/webkitpy/performance_tests/perftest.py:
(PerfTest._lines_to_ignore_in_parser_result): Updated for Speedometer 2.0.
* Scripts/webkitpy/performance_tests/perftestsrunner.py:
(PerfTestsRunner._collect_tests): Use "Speedometer" instead of "Speedometer/index.html" as the test name.
(_generate_results_dict): Removed the workaround to keep reporting Speedometer as DoYouEvenBench.
* Scripts/webkitpy/performance_tests/perftestsrunner_unittest.py:
(MainTest.test_collect_tests_with_index_html_and_resources): Added.
2017-05-18 Andy Estes <aestes@apple.com>
ENABLE(APPLE_PAY_DELEGATE) should be NO on macOS Sierra and earlier
https://bugs.webkit.org/show_bug.cgi?id=172305
Reviewed by Anders Carlsson.
* TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
2017-05-18 Wenson Hsieh <wenson_hsieh@apple.com>
Selection around attachment elements should not persist when beginning a drag
https://bugs.webkit.org/show_bug.cgi?id=172319
<rdar://problem/32283008>
Reviewed by Tim Horton.
Tests that temporary selection around an attachment does not persist longer than it needs to.
* TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
(TestWebKitAPI::TEST):
2017-05-18 John Wilander <wilander@apple.com>
Resource Load Statistics: Grandfather domains for existing data records
https://bugs.webkit.org/show_bug.cgi?id=172155
<rdar://problem/24913532>
Reviewed by Alex Christensen.
Adds test infrastructure needed for the added functionality.
* WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
* WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
(WTR::InjectedBundle::didReceiveMessageToPage):
* WebKitTestRunner/InjectedBundle/TestRunner.cpp:
(WTR::TestRunner::setStatisticsGrandfathered):
(WTR::TestRunner::isStatisticsGrandfathered):
(WTR::TestRunner::installStatisticsDidScanDataRecordsCallback):
(WTR::TestRunner::statisticsDidScanDataRecordsCallback):
(WTR::TestRunner::setStatisticsGrandfatheringTime):
* WebKitTestRunner/InjectedBundle/TestRunner.h:
* WebKitTestRunner/TestController.cpp:
(WTR::TestController::setStatisticsGrandfathered):
(WTR::TestController::isStatisticsGrandfathered):
(WTR::TestController::setStatisticsGrandfatheringTime):
* WebKitTestRunner/TestController.h:
* WebKitTestRunner/TestInvocation.cpp:
(WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
2017-05-18 Saam Barati <sbarati@apple.com>
WebAssembly: perform stack checks
https://bugs.webkit.org/show_bug.cgi?id=165546
<rdar://problem/29760307>
Reviewed by Filip Pizlo.
Add some new testing modes for using and not using fast TLS wasm contexts.
* Scripts/run-jsc-stress-tests:
2017-05-18 Daniel Bates <dabates@apple.com>
REGRESSION (r209608): Cross-origin plugin document opened in child window blocked by parent
window CSP when object-src 'none' is set
https://bugs.webkit.org/show_bug.cgi?id=172038
<rdar://problem/32258262>
Reviewed by Andy Estes.
Teach the test Netscape plugin to look for a URL that contains plugin-document-alert-and-notify-done.pl.
When it sees this URL it will show a JavaScript alert and call testRunner.notifyDone().
* DumpRenderTree/TestNetscapePlugIn/main.cpp:
(NPP_New):
2017-05-18 Per Arne Vollan <pvollan@apple.com>
[Win] Many layout tests are failing.
https://bugs.webkit.org/show_bug.cgi?id=172286
Reviewed by Brent Fulgham.
Add a FIXME comment about unimplemented functions, instead of writing this to the test result file.
* DumpRenderTree/win/TestRunnerWin.cpp:
(TestRunner::grantWebNotificationPermission):
(TestRunner::denyWebNotificationPermission):
(TestRunner::removeAllWebNotificationPermissions):
(TestRunner::simulateWebNotificationClick):
2017-05-18 Don Olmstead <don.olmstead@am.sony.com>
[Win] Remove usage of _snprintf
https://bugs.webkit.org/show_bug.cgi?id=172251
Reviewed by Per Arne Vollan.
* DumpRenderTree/TestNetscapePlugIn/PluginTest.h:
* MiniBrowser/win/PageLoadTestClient.cpp:
(PageLoadTestClient::dumpRunStatistics):
2017-05-17 Ryan Haddad <ryanhaddad@apple.com>
Unreviewed, rolling out r217014.
This change caused mac-wk2 LayoutTests to exit early due to
crashes.
Reverted changeset:
"Resource Load Statistics: Grandfather domains for existing
data records"
https://bugs.webkit.org/show_bug.cgi?id=172155
http://trac.webkit.org/changeset/217014
2017-05-17 John Wilander <wilander@apple.com>
Resource Load Statistics: Grandfather domains for existing data records
https://bugs.webkit.org/show_bug.cgi?id=172155
<rdar://problem/24913532>
Reviewed by Alex Christensen.
Adds test infrastructure needed for the added functionality.
* WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
* WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
(WTR::InjectedBundle::didReceiveMessageToPage):
* WebKitTestRunner/InjectedBundle/TestRunner.cpp:
(WTR::TestRunner::setStatisticsGrandfathered):
(WTR::TestRunner::isStatisticsGrandfathered):
(WTR::TestRunner::installStatisticsDidScanDataRecordsCallback):
(WTR::TestRunner::statisticsDidScanDataRecordsCallback):
(WTR::TestRunner::setStatisticsGrandfatheringTime):
* WebKitTestRunner/InjectedBundle/TestRunner.h:
* WebKitTestRunner/TestController.cpp:
(WTR::TestController::setStatisticsGrandfathered):
(WTR::TestController::isStatisticsGrandfathered):
(WTR::TestController::setStatisticsGrandfatheringTime):
* WebKitTestRunner/TestController.h:
* WebKitTestRunner/TestInvocation.cpp:
(WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
2017-05-17 Alex Christensen <achristensen@webkit.org>
Fix ios-simulator API test after r216977
https://bugs.webkit.org/show_bug.cgi?id=171987
* TestWebKitAPI/Tests/WebKit2Cocoa/WKHTTPCookieStore.mm:
(TEST):
<rdar://problem/32260156> covers the investigation of this, but fixing it is
not as urgent as having the rest of this working. Notably the ephemeral part of the
test works, so something is just wrong with the persistent part.
2017-05-17 Ryan Haddad <ryanhaddad@apple.com>
Unreviewed, rolling out r216955.
This change caused strange behavior with web-platform-tests
locally and on EWS.
Reverted changeset:
"webkitpy: Start servers before setting-up for testing"
https://bugs.webkit.org/show_bug.cgi?id=172176
http://trac.webkit.org/changeset/216955
2017-05-17 Wenson Hsieh <wenson_hsieh@apple.com>
A URL type is vended for a non-URL plain text string when starting data interaction
https://bugs.webkit.org/show_bug.cgi?id=172228
<rdar://problem/32166729>
Reviewed by Andy Estes.
Adds two new data interaction tests, SinglePlainTextWordTypeIdentifiers and SinglePlainTextURLTypeIdentifiers,
to verify that a URL UTI is not vended when beginning a data interaction on a single word, but that a URL is
still vended when beginning data interaction on something that resembles a link.
* TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
2017-05-17 David Kilzer <ddkilzer@apple.com>
BlobDataFileReference::generateReplacementFile() should use mkstemp()
<https://webkit.org/b/172192>
Reviewed by Brent Fulgham.
* Scripts/webkitpy/style/checkers/cpp.py:
(check_language): Add check for mktemp.
(CppChecker): Add 'security/temp_file' category.
* Scripts/webkitpy/style/checkers/cpp_unittest.py:
(CppStyleTest.test_insecure_temp_file): Add test.
2017-05-17 Devin Rousso <drousso@apple.com>
Unreviewed, change my email.
* Scripts/webkitpy/common/config/contributors.json:
2017-05-17 Matt Lewis <jlewis3@apple.com>
Unreviewed, rolling out r216974.
Revision caused consistent timeouts on all platforms.
Reverted changeset:
"Add a RuntimeEnabledFeature for display: contents, defaulted
to false."
https://bugs.webkit.org/show_bug.cgi?id=171984
http://trac.webkit.org/changeset/216974
2017-05-17 Alex Christensen <achristensen@webkit.org>
Interacting with WKHTTPCookieStores before creating WKWebViews and WKProcessPools should affect cookies used
https://bugs.webkit.org/show_bug.cgi?id=171987
Reviewed by Brady Eidson.
* TestWebKitAPI/Tests/WebKit2Cocoa/WKHTTPCookieStore.mm:
(-[CookieUIDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
(TEST):
2017-05-17 Emilio Cobos Álvarez <ecobos@igalia.com>
Add a RuntimeEnabledFeature for display: contents, defaulted to false.
https://bugs.webkit.org/show_bug.cgi?id=171984
Reviewed by Antti Koivisto.
* DumpRenderTree/mac/DumpRenderTree.mm:
(enableExperimentalFeatures):
* WebKitTestRunner/TestController.cpp:
(WTR::TestController::resetPreferencesToConsistentValues):
2017-05-16 Timothy Horton <timothy_horton@apple.com>
Fix the build
* TestWebKitAPI/Tests/mac/PageVisibilityStateWithWindowChanges.mm:
(TestWebKitAPI::PageVisibilityStateWithWindowChanges::runTest):
2017-05-16 Tim Horton <timothy_horton@apple.com>
PageVisibilityStateWithWindowChanges tests sometimes time out
https://bugs.webkit.org/show_bug.cgi?id=172202
<rdar://problem/29653266>
Reviewed by Dean Jackson.
* TestWebKitAPI/Tests/mac/PageVisibilityStateWithWindowChanges.mm:
(TestWebKitAPI::PageVisibilityStateWithWindowChanges::runTest):
Make sure the window is miniaturizable, otherwise, in some cases, miniaturize: will not work.
2017-05-16 Jonathan Bedard <jbedard@apple.com>
webkitpy: Start servers before setting-up for testing
https://bugs.webkit.org/show_bug.cgi?id=172176
<rdar://problem/32225538>
Reviewed by Alexey Proskuryakov.
On-device testing requires that servers are started before ports set-up their
test environments.
* Scripts/webkitpy/layout_tests/controllers/layout_test_runner.py:
(LayoutTestRunner.__init__): Start servers when initializing LayoutTestRunner.
(LayoutTestRunner.run_tests): Move the starting of servers to the initializer.
* Scripts/webkitpy/layout_tests/controllers/manager.py:
(Manager.__init__): Delay construction of the test runner until we can determine
if servers need to be started.
(Manager.run): Determine if servers need to be started and construct the test runner.
(Manager._run_tests): Move the determination of servers to run into Manager.run.
2017-05-16 Adrian Perez de Castro <aperez@igalia.com>
Unreviewed, adding myself to contributors.json
* Scripts/webkitpy/common/config/contributors.json:
2017-05-16 Claudio Saavedra <csaavedra@igalia.com>
[GTK] Tests that always pass when run alone, but fail in the bots
https://bugs.webkit.org/show_bug.cgi?id=168572
Reviewed by Michael Catanzaro.
PlatformWebView::viewSupportsOptions() is basically a comparison
that checks that the passed options are the ones supported by the
web view. There is no reason for them to be implemented for each
platform differently. In fact doing so causes issues each time a
new option is added, if the corresponding platform implementation
is not updated accordingly.
A consequence of not updating the viewSupportOptions()
implementations when new options are added is that tests that need
these options might fail if they are executed after a test that
didn't need the option, as the webview will be reused even if the
option is not supported. This cannot be spotted when running the
tests individually. See bug #165133 for other example of the same
problem.
Remove the platform implementations and make the comparison a
method of the TestOptions structure, so that the check is in one
place. For the time being, only include in the comparison the
options that were checked in the mac platform, which seem to be
the only ones relevant this far (unless newer ones have also been
forgotten).
* WebKitTestRunner/PlatformWebView.h:
(WTR::PlatformWebView::viewSupportsOptions): Use the method
defined below.
* WebKitTestRunner/TestOptions.h:
(WTR::TestOptions::hasSameInitializationOptions): Added.
* WebKitTestRunner/gtk/PlatformWebViewGtk.cpp:
(WTR::PlatformWebView::viewSupportsOptions): Deleted.
* WebKitTestRunner/ios/PlatformWebViewIOS.mm:
(WTR::PlatformWebView::viewSupportsOptions): Deleted.
* WebKitTestRunner/mac/PlatformWebViewMac.mm:
(WTR::PlatformWebView::viewSupportsOptions): Deleted.
* WebKitTestRunner/wpe/PlatformWebViewWPE.cpp:
(WTR::PlatformWebView::viewSupportsOptions): Deleted.
2017-05-15 Yusuke Suzuki <utatane.tea@gmail.com>
[JSC] Build testapi in non Apple ports
https://bugs.webkit.org/show_bug.cgi?id=172103
Reviewed by Filip Pizlo.
Now testapi is drived in JSCOnly, GTK and WPE ports too.
* Scripts/build-jsc:
* Scripts/run-javascriptcore-tests:
2017-05-15 Youenn Fablet <youenn@apple.com>
WPT test importer should not account for slow manual tests
https://bugs.webkit.org/show_bug.cgi?id=172127
Reviewed by Ryosuke Niwa.
Making sure manual tests are not triggering updating tests-options.json file.
* Scripts/webkitpy/w3c/test_importer.py:
(TestImporter.find_importable_tests):
(TestImporter._already_identified_as_resource_file):
(TestImporter.update_tests_options):
* Scripts/webkitpy/w3c/test_importer_unittest.py:
(test_manual_slow_test):
2017-05-15 Jonathan Bedard <jbedard@apple.com>
webkitpy: Some versions of simctl do not place parenthesis around runtime identifiers
https://bugs.webkit.org/show_bug.cgi?id=172142
Reviewed by Tim Horton.
* Scripts/webkitpy/xcode/simulator.py:
(Simulator._parse_runtimes): Newer versions of simctl output do not put parenthesis
around runtime identifiers.
* Scripts/webkitpy/xcode/simulator_unittest.py: Add tests for new simctl output.
2017-05-15 Ryosuke Niwa <rniwa@webkit.org>
Update ARES-6 plan file to use the latest version
https://bugs.webkit.org/show_bug.cgi?id=172139
Reviewed by Keith Miller.
Include r216538.
* Scripts/webkitpy/benchmark_runner/data/plans/ares6.plan:
2017-05-15 Jeremy Jones <jeremyj@apple.com>
Disable Picture In Picture API tests on unsupported platforms.
https://bugs.webkit.org/show_bug.cgi?id=172125
rdar://problem/32199477
Reviewed by Simon Fraser.
The callbacks and allowing picture-in-picture require new SPI.
* TestWebKitAPI/Tests/WebKit2Cocoa/PictureInPictureDelegate.mm:
2017-05-15 Brady Eidson <beidson@apple.com>
[ios-simulator] API test WKWebView.ClearAppCache is failing.
https://bugs.webkit.org/show_bug.cgi?id=172120
Unreviewed test gardening.
* TestWebKitAPI/Tests/WebKit2Cocoa/LocalStorageClear.mm:
(TEST): ios-sim needs explicit deleting of the app cache paths that I'd removed in 216805.
Restoring that code fixes this.
2017-05-15 Timothy Horton <timothy_horton@apple.com>
Null deref under WebContentReader::readURL when interacting with a file URL
https://bugs.webkit.org/show_bug.cgi?id=172045
<rdar://problem/25880647>
Reviewed by Wenson Hsieh.
* TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
(TestWebKitAPI::TEST):
The text of the file URL is pasted because a textual version of it gets
onto the pasteboard. However, this test would have crashed before. Also
tests that we don't make an <a>.
2017-05-14 Per Arne Vollan <pvollan@apple.com>
[Win] fast/cookies/local-file-can-set-cookies.html is flaky.
https://bugs.webkit.org/show_bug.cgi?id=172071
Reviewed by Alexey Proskuryakov.
* DumpRenderTree/win/DumpRenderTree.cpp:
(resetWebPreferencesToConsistentValues):
2017-05-14 Chris Dumez <cdumez@apple.com>
Drop PassRefPtr class from WTF
https://bugs.webkit.org/show_bug.cgi?id=172091
Reviewed by Alex Christensen.
Drop API test coverage.
* TestWebKitAPI/Tests/WTF/Ref.cpp:
(TestWebKitAPI::TEST):
(TestWebKitAPI::passWithPassRefPtr): Deleted.
2017-05-13 Eric Carlson <eric.carlson@apple.com>
[MediaStream] deviceId constraint doesn't work with getUserMedia
https://bugs.webkit.org/show_bug.cgi?id=171877
<rdar://problem/31899730>
Reviewed by Jer Noble.
The device ID hash salt is now required for getUserMedia to check deviceId constraint, so
implement the "checkUserMediaPermission" callback.
* TestWebKitAPI/Tests/WebKit2/UserMedia.cpp:
(TestWebKitAPI::decidePolicyForUserMediaPermissionRequestCallBack):
(TestWebKitAPI::checkUserMediaPermissionCallback):
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit2Cocoa/UserMediaDisabled.mm:
(-[UserMediaUIDelegate _webView:checkUserMediaPermissionForURL:mainFrameURL:frameIdentifier:decisionHandler:]):
2017-05-13 Chris Dumez <cdumez@apple.com>
Stop using RefPtr::release()
https://bugs.webkit.org/show_bug.cgi?id=172074
Reviewed by Geoffrey Garen.
* TestWebKitAPI/Tests/WTF/RefPtr.cpp:
(TestWebKitAPI::TEST):
2017-05-13 Commit Queue <commit-queue@webkit.org>
Unreviewed, rolling out r216808.
https://bugs.webkit.org/show_bug.cgi?id=172075
caused lldb to hang when debugging (Requested by smfr on
#webkit).
Reverted changeset:
"Use Mach exceptions instead of signals where possible"
https://bugs.webkit.org/show_bug.cgi?id=171865
http://trac.webkit.org/changeset/216808
2017-05-12 Alex Christensen <achristensen@webkit.org>
Rename WKContentExtension to WKContentRuleList
https://bugs.webkit.org/show_bug.cgi?id=172053
<rdar://problem/32141005>
Reviewed by Geoffrey Garen.
* TestWebKitAPI/Tests/WebKit2Cocoa/WKContentExtensionStore.mm:
(WKContentRuleListStoreTest::SetUp):
(TEST_F):
(-[ContentRuleListDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
(WKContentExtensionStoreTest::SetUp): Deleted.
(-[ContentExtensionDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]): Deleted.
2017-05-12 Keith Miller <keith_miller@apple.com>
Use Mach exceptions instead of signals where possible
https://bugs.webkit.org/show_bug.cgi?id=171865
Reviewed by Mark Lam.
* TestWebKitAPI/Tests/WTF/ThreadMessages.cpp:
(runThreadMessageTest):
(TEST):
2017-05-12 Jeremy Jones <jeremyj@apple.com>
Add objc version of WK2 UIPageClient setHasVideoInPictureInPicture and rename it to hasVideoInPictureInPictureDidChange.
https://bugs.webkit.org/show_bug.cgi?id=172048
rdar://problem/32163054
Reviewed by Simon Fraser.
Add a WKWebView test for hasVideoInPictureInPictureDidChange UIDelegate callback.
* TestWebKitAPI/Tests/WebKit2Cocoa/PictureInPictureDelegate.html:
* TestWebKitAPI/Tests/WebKit2Cocoa/PictureInPictureDelegate.mm:
(hasVideoInPictureInPictureDidChange):
(-[PictureInPictureUIDelegate _webView:hasVideoInPictureInPictureDidChange:]):
(-[PictureInPictureUIDelegate userContentController:didReceiveScriptMessage:]):
(TestWebKitAPI::TEST):
2017-05-12 Brady Eidson <beidson@apple.com>
REGRESSION (r216711): API test WKWebView.ClearAppCache is failing.
https://bugs.webkit.org/show_bug.cgi?id=172030
Unreviewed - Test gardening
Try to resolve this once and for all by using the WebsiteDataStore API to nuke everything
before the test starts.
* TestWebKitAPI/Tests/WebKit2Cocoa/LocalStorageClear.mm:
(defaultWebsiteCacheDirectory):
(defaultApplicationCacheDirectory):
(TEST):
(defaultWebsiteDataDirectory): Deleted.
2017-05-12 David Quesada <david_quesada@apple.com>
Add SPI for overriding WKWebView's clipping behavior for _visibleContentRect
https://bugs.webkit.org/show_bug.cgi?id=172000
rdar://problem/32144756
Reviewed by Simon Fraser.
Added API tests to verify that WKWebView provides the expected value for
_visibleContentRect in various configurations. (i.e. not inside a scrollview,
inside a scrollview but not clipped, clipped by an ancestor scrollview,
clipped by the webview's _enclosingViewForExposedRectComputation)
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKit2Cocoa/VisibleContentRect.mm: Added.
(-[TestWKWebViewWithEnclosingView _enclosingViewForExposedRectComputation]):
(TestWebKitAPI::TEST):
2017-05-12 Brady Eidson <beidson@apple.com>
REGRESSION (r216711): API test WKWebView.ClearAppCache is failing.
https://bugs.webkit.org/show_bug.cgi?id=172030
Unreviewed - Test gardening, in effect...
More exploration as to why this continues to fail on the bots.
This change should give us a smoking gun.
* TestWebKitAPI/Tests/WebKit2Cocoa/LocalStorageClear.mm:
(TEST):
2017-05-12 Hyungwook Lee <hyungwook.lee@navercorp.com>
[GTK] Fix compile warnings in PlatformImageCairo.cpp
https://bugs.webkit.org/show_bug.cgi?id=171850
Reviewed by Michael Catanzaro.
* ImageDiff/cairo/PlatformImageCairo.cpp:
(ImageDiff::PlatformImage::createFromStdin):
(ImageDiff::PlatformImage::writeAsPNGToStdout):
2017-05-12 Jeremy Jones <jeremyj@apple.com>
Add UIClient callback for when picture-in-picture is activated.
https://bugs.webkit.org/show_bug.cgi?id=172023
Reviewed by Simon Fraser.
Added a test for WKPageUIClientV10 setHasVideoInPictureInPicture.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKit2Cocoa/PictureInPictureDelegate.html: Added.
* TestWebKitAPI/Tests/WebKit2Cocoa/PictureInPictureDelegate.mm: Added.
(onLoadedCompletedCallback):
(waitUntilOnLoadIsCompleted):
(didFinishLoadForFrame):
(setHasVideoInPictureInPicture):
(TestWebKitAPI::TEST):
2017-05-12 Jonathan Bedard <jbedard@apple.com>
Unreviewed follow-up to r216776.
* Scripts/webkitpy/port/base.py:
(Port.path_to_crash_logs): Raise not implemented.
* Scripts/webkitpy/port/test.py:
(TestPort.path_to_crash_logs): Return results directory as the location of crash logs.
* Scripts/webkitpy/port/win.py:
(WinPort.path_to_crash_logs): Ditto.
2017-05-12 Alexey Proskuryakov <ap@apple.com>
Bot watcher's dashboard shows results links twice sometimes
https://bugs.webkit.org/show_bug.cgi?id=172043
Reviewed by Tim Horton.
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotTesterQueueView.js:
(BuildbotTesterQueueView.prototype._presentPopoverForGenericTestFailures):
2017-05-12 Brady Eidson <beidson@apple.com>
REGRESSION (r216711): API test WKWebView.ClearAppCache is failing.
https://bugs.webkit.org/show_bug.cgi?id=172030
Unreviewed - Test gardening, in effect...
This failure is only being seen by the bots.
I believe this test is utterly broken in the first place; when it checks the .wal file's
size that is not actually an indicator that the records were deleted.
But that isn't what's coming up as failure on the bots.
This patch is an attempt to:
1 - More forcefully clear the Website data directory of leftovers before the test starts.
2 - Give an earlier indication of the failure that the bots are seeing, to possibly reveal more.
* TestWebKitAPI/Tests/WebKit2Cocoa/LocalStorageClear.mm:
(defaultWebsiteDataDirectory):
(defaultApplicationCacheDirectory):
(TEST):
2017-05-12 Jonathan Bedard <jbedard@apple.com>
webkitpy: Pass directory with crash logs into CrashLogs
https://bugs.webkit.org/show_bug.cgi?id=172033
<rdar://problem/32157616>
Reviewed by Daniel Bates.
Refactor CrashLogs and the callers of CrashLogs so that the port object owns
the location of crash logs.
* Scripts/webkitpy/common/system/crashlogs.py:
(CrashLogs.__init__): Pass mandatory crash_log_directory when constructing.
(CrashLogs._find_newest_log_darwin): Use self._crash_log_directory instead of
generating one.
(CrashLogs._find_newest_log_win): Use self._crash_log_directory instead of
self._results_directory.
(CrashLogs._find_all_logs_darwin): Use self._crash_log_directory instead of
generating one.
(CrashLogs._log_directory_darwin): Moved to port.
* Scripts/webkitpy/common/system/crashlogs_unittest.py: Update tests since the path
to the crash log is no longer owned by CrashLogs.
* Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py: Use the general
directory for uploading crash logs. Note that crash logs are only supported on Mac
and Windows.
* Scripts/webkitpy/port/apple.py: Remove unneeded CrashLogs import.
* Scripts/webkitpy/port/base.py:
(Port.path_to_crash_logs): Unless ports declare otherwise, crash logs are assumed
to be in the results directory.
* Scripts/webkitpy/port/darwin.py:
(DarwinPort.path_to_crash_logs): Moved from CrashLogs._log_directory_darwin.
(DarwinPort._look_for_all_crash_logs_in_log_dir): Use port specific crash log path.
(DarwinPort._get_crash_log): Ditto.
* Scripts/webkitpy/port/darwin_testcase.py:
(DarwinTest.test_crashlog_path): Test that the Darwin ports are correctly calculating
the path to crash logs.
* Scripts/webkitpy/port/ios_device.py:
(IOSDevicePort.path_to_crash_logs): Currently, crash log retrieval is undefined for iOS.
* Scripts/webkitpy/port/ios_device_unittest.py:
(IOSDeviceTest.test_crashlog_path): Currently, crash log retrieval is undefined for iOS.
* Scripts/webkitpy/port/ios_simulator.py: Remove unneeded CrashLogs import.
* Scripts/webkitpy/port/mac.py: Ditto.
* Scripts/webkitpy/port/test.py:
(TestDriver.run_test): Use port specific crash log path when retrieving crash logs.
* Scripts/webkitpy/port/win.py:
(WinPort._get_crash_log): Ditto.
* Scripts/webkitpy/tool/commands/queries.py:
(execute): Construct a port object since this is the object which owns the path to crash logs.
2017-05-12 Carlos Garcia Campos <cgarcia@igalia.com>
Unreviewed. Fix GTK+ test /webkit2/WebKitWebView/create-navigation-data after r216615.
In r216615 the custom code for window.open() was removed. The generated code now correctly handles the optional
URL parameter using the default value "about:blank" when not provided.
* TestWebKitAPI/Tests/WebKit2Gtk/TestUIClient.cpp:
(testWebViewCreateNavigationData):
2017-05-11 Youenn Fablet <youenn@apple.com>
Allow WPT server to serve specific WebKit test
https://bugs.webkit.org/show_bug.cgi?id=171479
Reviewed by Ryosuke Niwa.
Adding a new mount point to WPT server.
It points to LayoutTests/http/wpt folder and is triggered on "/WebKit" urls.
Updating the webkitpy infrastructure to launch WPT server and do test url mapping for LayoutTests/wpt tests.
* Scripts/webkitpy/layout_tests/controllers/manager.py:
(Manager.__init__):
(Manager._is_http_test):
(Manager._needs_web_platform_test):
(Manager._run_tests):
(Manager._is_web_platform_test): Deleted.
* Scripts/webkitpy/layout_tests/servers/web_platform_test_launcher.py:
(build_routes):
(main):
* Scripts/webkitpy/port/driver.py:
(Driver):
(Driver.is_webkit_specific_web_platform_test):
(Driver.test_to_uri):
(Driver._command_from_driver_input):
2017-05-11 Brady Eidson <beidson@apple.com>
[WKWebsiteDataStore removeDataOfTypes:...] doesn't work for IndexedDB if the data store has a custom IDB path.
<rdar://problem/30612463> and https://bugs.webkit.org/show_bug.cgi?id=171994
Reviewed by Andy Estes.
Informal review by Maureen Daum.
* TestWebKitAPI/Tests/WebKit2Cocoa/WebsiteDataStoreCustomPaths.mm:
(TEST):
2017-05-11 Joseph Pecoraro <pecoraro@apple.com>
REGRESSION(r216217): lldb_webkit.py no longer prints out a WTFString, StringImpl needs to handle StringImplShape change
https://bugs.webkit.org/show_bug.cgi?id=171989
Reviewed by Brian Burg.
* lldb/lldb_webkit.py:
(WTFStringImplProvider.get_data8):
(WTFStringImplProvider.get_data16):
m_data8 and m_data16 are now part of the superclass StringImplShape
instead of directly in StringImpl. So first get the shape by getting
index 0, and the data properties are the same offset within that.
2017-05-11 Joseph Pecoraro <pecoraro@apple.com>
Remove Vibration API
https://bugs.webkit.org/show_bug.cgi?id=171766
Rubber-stamped by Alexey Proskuryakov.
* Scripts/webkitperl/FeatureList.pm:
2017-05-11 Carlos Alberto Lopez Perez <clopez@igalia.com>
Add WPE release bots
https://bugs.webkit.org/show_bug.cgi?id=171973
Reviewed by Žan Doberšek.
This adds a WPE Release Build bot (64-bit) and a WPE Release Test bot.
It also adds a new WPE buildbot category.
* BuildSlaveSupport/build.webkit.org-config/config.json:
* BuildSlaveSupport/build.webkit.org-config/master.cfg:
(InstallWpeDependencies):
(appendCustomBuildFlags):
(Factory.__init__):
(loadBuilderConfig):
* BuildSlaveSupport/build.webkit.org-config/mastercfg_unittest.py:
* BuildSlaveSupport/build.webkit.org-config/templates/root.html:
2017-05-09 Sam Weinig <sam@webkit.org>
Remove support for legacy Notifications
https://bugs.webkit.org/show_bug.cgi?id=171487
Reviewed by Jon Lee.
* DumpRenderTree/win/DRTDesktopNotificationPresenter.cpp:
(DRTDesktopNotificationPresenter::checkNotificationPermission):
* Scripts/webkitperl/FeatureList.pm:
* TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
Remove use and definition of ENABLE_LEGACY_NOTIFICATIONS.
2017-05-10 Michael Catanzaro <mcatanzaro@igalia.com>
Remove user agent quirk for Slack
https://bugs.webkit.org/show_bug.cgi?id=171869
Reviewed by Carlos Garcia Campos.
Remove the corresponding test.
* TestWebKitAPI/Tests/WebCore/UserAgentQuirks.cpp:
(TestWebKitAPI::TEST):
2017-05-10 Commit Queue <commit-queue@webkit.org>
Unreviewed, rolling out r216578.
https://bugs.webkit.org/show_bug.cgi?id=171920
Broke the GTK+ build with Wayland enabled (Requested by KaL on
#webkit).
Reverted changeset:
"[GTK] Bump GTK+ and its dependencies in jhbuild"
https://bugs.webkit.org/show_bug.cgi?id=171918
http://trac.webkit.org/changeset/216578
2017-05-10 Carlos Garcia Campos <cgarcia@igalia.com>
[GTK] Bump GTK+ and its dependencies in jhbuild
https://bugs.webkit.org/show_bug.cgi?id=171918
Reviewed by Carlos Alberto Lopez Perez.
* WebKitTestRunner/InjectedBundle/gtk/ActivateFontsGtk.cpp:
(WTR::initializeGtkSettings):
* gtk/jhbuild.modules:
* gtk/patches/gtk+-configure-fix-detecting-CUPS-2.x.patch: Removed.
* gtk/patches/librsvg-2.36.1-bump-up-config.guess-to-support-aarch64.patch: Removed.
2017-05-10 Don Olmstead <don.olmstead@am.sony.com>
[Win] Set CMake args in build-webkit
https://bugs.webkit.org/show_bug.cgi?id=171436
Reviewed by Per Arne Vollan.
* Scripts/build-webkit:
2017-05-10 Carlos Garcia Campos <cgarcia@igalia.com>
ImageDiff: Add CG implementation for new ImageDiff
https://bugs.webkit.org/show_bug.cgi?id=170608
Reviewed Alex Christensen.
* DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
* DumpRenderTree/win/ImageDiffCairo.cpp: Removed.
* DumpRenderTree/win/ImageDiffWin.cpp: Removed.
* ImageDiff/CMakeLists.txt:
* ImageDiff/Cairo.cmake:
* ImageDiff/ImageDiff.cpp:
(main):
* ImageDiff/ImageDiff.xcodeproj/project.pbxproj:
* ImageDiff/PlatformImage.cpp:
* ImageDiff/PlatformImage.h:
* ImageDiff/cairo/PlatformImageCairo.cpp:
* ImageDiff/cg/ImageDiff.cpp: Removed.
* ImageDiff/cg/PlatformImageCG.cpp: Added.
(ImageDiff::PlatformImage::createFromStdin):
(ImageDiff::PlatformImage::createFromDiffData):
(ImageDiff::PlatformImage::PlatformImage):
(ImageDiff::PlatformImage::~PlatformImage):
(ImageDiff::PlatformImage::width):
(ImageDiff::PlatformImage::height):
(ImageDiff::PlatformImage::rowBytes):
(ImageDiff::PlatformImage::hasAlpha):
(ImageDiff::PlatformImage::pixels):
(ImageDiff::PlatformImage::writeAsPNGToStdout):
2017-05-10 Zan Dobersek <zdobersek@igalia.com>
Enable FTL JIT by default on AArch64
https://bugs.webkit.org/show_bug.cgi?id=144039
Reviewed by Yusuke Suzuki.
* Scripts/build-jsc: Enable the FTL JIT option by default on ARM64.
* Scripts/run-jsc-stress-tests: Unmark the ARM64 and Linux combination
as an unsupported FTL platform.
* Scripts/webkitdirs.pm:
(isARM64): Returns 1 if the determined architecture is 'arm64'.
* Scripts/webkitperl/FeatureList.pm: Enable FTL_JIT and WEBASSEMBLY on ARM64.
2017-05-09 Jonathan Bedard <jbedard@apple.com>
webkitpy: Remove unneeded crash log retrieval, refactor Darwin crash retrieval
https://bugs.webkit.org/show_bug.cgi?id=170857
<rdar://problem/31635373>
Reviewed by Aakash Jain.
Since LayoutTestRelay has been removed, iOS Simulators and Macs can use the same
code to search for crash logs.
* Scripts/webkitpy/port/darwin.py:
(DarwinPort._get_crash_log): Moved from MacPort.
* Scripts/webkitpy/port/darwin_testcase.py:
(DarwinTest.test_get_crash_log): Moved from MacTest.
* Scripts/webkitpy/port/ios_device.py:
(IOSDevicePort._get_crash_log): Implement pass-through for iOS device, since iOS
devices must search for crash-logs remotely.
* Scripts/webkitpy/port/ios_simulator.py:
(IOSSimulatorPort._get_crash_log): Deleted.
* Scripts/webkitpy/port/ios_simulator_unittest.py:
(IOSSimulatorTest.test_get_crash_log): Deleted.
* Scripts/webkitpy/port/mac.py:
(MacPort._get_crash_log): Moved to DarwinPort
* Scripts/webkitpy/port/mac_unittest.py:
(MacTest.test_get_crash_log): Moved to DarwinTest.
2017-05-09 Jonathan Bedard <jbedard@apple.com>
build ImageDiff with host SDK from Make
https://bugs.webkit.org/show_bug.cgi?id=171835
Reviewed by Alexey Proskuryakov.
ImageDiff should be built for the default SDK and default architecture when
the SDKROOT is set to either iOS device or iOS simulator. Check the
DO_NOT_BUILD_IMAGE_DIFF flag to skip the ImageDiff build.
* ImageDiff/Makefile: Use Mac SDK when building for iOS Simulator or iOS device.
* Makefile: Do not build ImageDiff if the DO_NOT_BUILD_IMAGE_DIFF flag is set.
2017-05-09 Matt Lewis <jlewis3@apple.com>
Unreviewed, adding myself to contributors.json
* Scripts/webkitpy/common/config/contributors.json:
2017-05-09 Jonathan Bedard <jbedard@apple.com>
REGRESSION: ImageDiff not building with make
https://bugs.webkit.org/show_bug.cgi?id=171788
Reviewed by Alex Christensen.
* Makefile: Build ImageDiff for all platforms.
2017-05-09 Fujii Hironori <Hironori.Fujii@sony.com>
[Win] ImageDiff isn't built since Bug 168945
https://bugs.webkit.org/show_bug.cgi?id=171847
Reviewed by Alex Christensen.
* CMakeLists.txt: Add 'ImageDiff' sub-directory to build if WIN32.
* ImageDiff/ImageDiff.cpp: Include some header files to fix compilation errors.
* ImageDiff/PlatformWin.cmake: Define USE_CAIRO if WinCairo port.
2017-05-09 Zan Dobersek <zdobersek@igalia.com>
Upstream the WPE port
https://bugs.webkit.org/show_bug.cgi?id=171110
Reviewed by Alex Christensen.
webkit-dev thread:
https://lists.webkit.org/pipermail/webkit-dev/2017-April/028923.html
Add WPE support to various tooling scripts, TestWebKitAPI and WebKitTestRunner.
In-file changes removed from this ChangeLog entry for brevity.
* BuildSlaveSupport/built-product-archive:
* BuildSlaveSupport/test-result-archive:
* CMakeLists.txt:
* ImageDiff/PlatformWPE.cmake: Added.
* Scripts/build-dumprendertree:
* Scripts/build-webkit:
* Scripts/build-webkittestrunner:
* Scripts/update-webkit-libs-jhbuild:
* Scripts/update-webkitwpe-libs: Added.
* Scripts/webkitdirs.pm:
* Scripts/webkitperl/FeatureList.pm:
* Scripts/webkitpy/layout_tests/run_webkit_tests.py:
* Scripts/webkitpy/port/factory.py:
* Scripts/webkitpy/port/wpe.py: Added.
* TestWebKitAPI/PlatformWPE.cmake: Added.
* TestWebKitAPI/wpe/InjectedBundleControllerWPE.cpp: Copied from Source/WebKit2/Shared/DrawingAreaInfo.h.
* TestWebKitAPI/wpe/PlatformUtilitiesWPE.cpp: Added.
* TestWebKitAPI/wpe/main.cpp: Copied from Source/WebKit2/Shared/DrawingAreaInfo.h.
* WebKitTestRunner/InjectedBundle/AccessibilityController.cpp:
* WebKitTestRunner/InjectedBundle/AccessibilityController.h:
* WebKitTestRunner/InjectedBundle/AccessibilityUIElement.cpp:
* WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h:
* WebKitTestRunner/InjectedBundle/TestRunner.cpp:
* WebKitTestRunner/InjectedBundle/TestRunner.h:
* WebKitTestRunner/InjectedBundle/wpe/AccessibilityControllerWPE.cpp: Added.
* WebKitTestRunner/InjectedBundle/wpe/AccessibilityUIElementWPE.cpp: Added.
* WebKitTestRunner/InjectedBundle/wpe/ActivateFontsWPE.cpp: Added.
* WebKitTestRunner/InjectedBundle/wpe/InjectedBundleWPE.cpp: Copied from Source/WebKit2/Shared/DrawingAreaInfo.h.
* WebKitTestRunner/InjectedBundle/wpe/TestRunnerWPE.cpp: Copied from Source/WebKit2/Shared/DrawingAreaInfo.h.
* WebKitTestRunner/PlatformWPE.cmake: Added.
* WebKitTestRunner/PlatformWebView.h:
* WebKitTestRunner/TestController.cpp:
* WebKitTestRunner/wpe/EventSenderProxyWPE.cpp: Added.
* WebKitTestRunner/wpe/HeadlessViewBackend.cpp: Added.
* WebKitTestRunner/wpe/HeadlessViewBackend.h: Copied from Source/WebKit2/Shared/CoordinatedGraphics/threadedcompositor/CompositingRunLoop.h.
* WebKitTestRunner/wpe/PlatformWebViewWPE.cpp: Added.
* WebKitTestRunner/wpe/TestControllerWPE.cpp: Added.
* WebKitTestRunner/wpe/main.cpp: Copied from Source/WebKit2/Shared/DrawingAreaInfo.h.
* jhbuild/jhbuild-wrapper:
* wpe/generate-inspector-gresource-manifest.py: Added.
* wpe/jhbuild.modules: Added.
* wpe/jhbuildrc: Added.
* wpe/patches/cairo-egl-device-create-for-egl-surface.patch: Added.
* wpe/patches/fontconfig-C-11-requires-a-space-between-literal-and-identifier.patch: Added.
* wpe/patches/freetype6-2.4.11-truetype-font-height-fix.patch: Added.
* wpe/patches/gdate-suppress-string-format-literal-warning.patch: Added.
* wpe/patches/glib-warning-fix.patch: Added.
* wpe/patches/gst-plugins-bad-0001-dtls-port-to-OpenSSL-1.1.0.patch: Added.
* wpe/patches/gst-plugins-bad-0002-dtlscertificate-Fix-error-checking-in-RSA_generate_k.patch: Added.
* wpe/patches/gst-plugins-good-Revert-qtdemux-expose-streams-with-first-moof-for-fr.patch: Added.
* wpe/patches/gst-plugins-good-use-the-tfdt-decode-time.patch: Added.
* wpe/patches/gstreamer-typefind-Only-push-a-CAPS-event-downstream-if-the-.patch: Added.
2017-05-08 Jonathan Bedard <jbedard@apple.com>
Implement PlatformWebView::windowSnapshotImage and createBitmapContextFromWebView for iOS devices
https://bugs.webkit.org/show_bug.cgi?id=169421
<rdar://problem/30950171>
Reviewed by Tim Horton.
* DumpRenderTree/ios/PixelDumpSupportIOS.mm:
(createBitmapContextFromWebView): Implement for IOSurface.
* WebKitTestRunner/ios/PlatformWebViewIOS.mm:
(WTR::PlatformWebView::windowSnapshotImage): Use snapshot API for device.
2017-05-08 Jonathan Bedard <jbedard@apple.com>
buildbot: Cleanup simulators after running tests
https://bugs.webkit.org/show_bug.cgi?id=171679
Reviewed by Aakash Jain.
simctl is partitioned for each user. Since kill-old-processes
is run as root, we need to specify the buildbot user when tearing
down simulators between steps.
* BuildSlaveSupport/build.webkit.org-config/master.cfg:
(KillOldProcesses): Pass buildbot user to kill-old-processes.
* BuildSlaveSupport/kill-old-processes:
(main): Specify the user for simctl if one has been provided.
2017-05-08 Carlos Alberto Lopez Perez <clopez@igalia.com>
REGRESSION(r216179): [GTK] Script install-dependencies misses liborc
https://bugs.webkit.org/show_bug.cgi?id=171681
Reviewed by Carlos Garcia Campos.
* gtk/install-dependencies:
2017-05-08 Carlos Garcia Campos <cgarcia@igalia.com>
Unreviewed. Fix GTK+ test /webkit2/WebKitConsoleMessage/network-error after r215556.
Glib uses now Unicode quotes in error messages.
* TestWebKitAPI/Tests/WebKit2Gtk/TestConsoleMessage.cpp:
(testWebKitConsoleMessageNetworkError):
2017-05-08 Carlos Garcia Campos <cgarcia@igalia.com>
Unreviewed. Fix GTK+ test /webkit2/WebKitWebView/javascript-dialogs after r215404.
Sending down+up keys is no longer enough to simulate a real user interaction after r215404, the key events now
should be handled by the web process to be considered a user interaction. So, add an input to the HTML and send
characters to the input. Also fix typo in the function name.
* TestWebKitAPI/Tests/WebKit2Gtk/TestUIClient.cpp:
(testWebViewJavaScriptDialogs):
2017-05-07 Michael Catanzaro <mcatanzaro@igalia.com>
[GTK] Cannot sign in with new Google sign-in page
https://bugs.webkit.org/show_bug.cgi?id=171770
Unreviewed. This just adds a test.
* TestWebKitAPI/Tests/WebCore/UserAgentQuirks.cpp:
(TestWebKitAPI::TEST):
2017-05-06 Simon Fraser <simon.fraser@apple.com>
[iOS WK2] Make rotation tests more reliable
https://bugs.webkit.org/show_bug.cgi?id=171778
Reviewed by Tim Horton.
Switching between "safari-style" rotation and normal rotation left state on the WKWebView
that would cause later viewport-sensitive tests to fail. The WKWebView would be left
with override layout parameters, and an override orientation, and these caused viewport
size to leak into later tests, and WebCore orientation to not get reset correctly.
Also, WKWebView was unregistering for UIWindowDidRotateNotification notifications when
an override orientation was set, and would never re-register, causing lost orientationchanged
events.
Fix by exposing WKWebView SPI to clear the various bits of overide state. Also don't unregister
from the UIWindowDidRotateNotification notification; it's already ignored anyway if it fires.
Also wait for a visible content rect update after resizing the WKWebVeiw between tests, to make sure
the WebProcess is caught up before proceeding with the test.
* WebKitTestRunner/ios/PlatformWebViewIOS.mm:
(-[PlatformWebViewController viewWillTransitionToSize:withTransitionCoordinator:]):
* WebKitTestRunner/ios/TestControllerIOS.mm:
(WTR::TestController::platformResetStateToConsistentValues):
(WTR::TestController::platformConfigureViewForTest):
2017-05-06 Csaba Osztrogonác <ossy@webkit.org>
[Mac][cmake] Buildfix after r216047
https://bugs.webkit.org/show_bug.cgi?id=171769
Unreviewed buildfix.
* WebKitTestRunner/cocoa/TestRunnerWKWebView.mm:
2017-05-05 Brady Eidson <beidson@apple.com>
API test WebKit2.WebsiteDataStoreCustomPaths is failing on ios-simulator.
<rdar://problem/31977294> and https://bugs.webkit.org/show_bug.cgi?id=171513
Reviewed by Andy Estes.
* TestWebKitAPI/Tests/WebKit2Cocoa/WebsiteDataStoreCustomPaths.mm:
(TEST):
2017-05-05 Brian Burg <bburg@apple.com>
[Cocoa] Converting from WebCore::Cookie to NSHTTPCookie always marks cookies as session cookies
https://bugs.webkit.org/show_bug.cgi?id=171748
<rdar://problem/32027327>
Reviewed by Michael Catanzaro.
Remove temporary workaround now that the assertion failure is fixed.
* TestWebKitAPI/Tests/WebKit2Cocoa/WKHTTPCookieStore.mm:
(TEST):
2017-05-05 Simon Fraser <simon.fraser@apple.com>
Make it possible to test rotation in iOS WebKitTestRunner
https://bugs.webkit.org/show_bug.cgi?id=171755
Reviewed by Tim Horton.
Add to UIScriptController:
void simulateRotation(DeviceOrientation orientation, object callback);
void simulateRotationLikeSafari(DeviceOrientation orientation, object callback);
The former just does a view resize, as a simple WKWebView app would do. The second does
animation more like MobileSafari, using _begin/_endAnimatedResize. and associated override
layout size and interface orientation. The two behaviors produce different resize and
orientationchange events and sizes, and both need to be tested.
Rotation is initiated by a call on UIDevice, and responded to by the root view controller,
which is now a custom subclass (PlatformWebViewController).
* DumpRenderTree/ios/UIScriptControllerIOS.mm:
(WTR::UIScriptController::simulateRotation):
(WTR::UIScriptController::simulateRotationLikeSafari):
* DumpRenderTree/mac/UIScriptControllerMac.mm:
(WTR::UIScriptController::simulateRotation):
(WTR::UIScriptController::simulateRotationLikeSafari):
* TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
* TestRunnerShared/UIScriptContext/UIScriptController.cpp:
(WTR::toDeviceOrientation):
(WTR::UIScriptController::simulateRotation):
(WTR::UIScriptController::simulateRotationLikeSafari):
* TestRunnerShared/UIScriptContext/UIScriptController.h:
* WebKitTestRunner/cocoa/TestRunnerWKWebView.h:
* WebKitTestRunner/cocoa/TestRunnerWKWebView.mm:
(-[TestRunnerWKWebView dealloc]):
(-[TestRunnerWKWebView _didEndRotation]):
* WebKitTestRunner/ios/PlatformWebViewIOS.mm:
(-[PlatformWebViewController viewWillTransitionToSize:withTransitionCoordinator:]):
(WTR::PlatformWebView::PlatformWebView):
* WebKitTestRunner/ios/TestControllerIOS.mm:
(WTR::TestController::platformResetStateToConsistentValues):
* WebKitTestRunner/ios/UIScriptControllerIOS.mm:
(WTR::toUIDeviceOrientation):
(WTR::UIScriptController::simulateRotation):
(WTR::UIScriptController::simulateRotationLikeSafari):
(WTR::UIScriptController::platformClearAllCallbacks):
* WebKitTestRunner/mac/UIScriptControllerMac.mm:
(WTR::UIScriptController::simulateRotation):
(WTR::UIScriptController::simulateRotationLikeSafari):
2017-05-05 Jonathan Bedard <jbedard@apple.com>
Use ImageDiff built by host SDK and remove ImageDiff from DumpRenderTree
https://bugs.webkit.org/show_bug.cgi?id=168945
<rdar://problem/30745695>
Reviewed by David Kilzer.
Use ImageDiff built with the host machine's SDK and stop building ImageDiff with the
target SDK. These two changes must happen simultaneously because some archives will
clobber the ImageDiff from the host SDK with the ImageDiff from the target SDK.
* DumpRenderTree/mac/Configurations/ImageDiff.xcconfig: Remove ImageDiff from project.
* DumpRenderTree/PlatformWin.cmake: Remove ImageDiff. Note that the CMakeLists.txt in the
tools directory still includes ImageDiff.
* DumpRenderTree/cg/ImageDiffCG.cpp: Removed.
* DumpRenderTree/mac/Configurations/DumpRenderTree.xcconfig: Removed.
* Scripts/webkitpy/port/darwin.py:
(DarwinPort._path_to_image_diff): Return the correct path to ImageDiff when building
locally or when running archives.
* Scripts/webkitpy/port/image_diff.py:
(IOSSimulatorImageDiffer): Deleted.
* Scripts/webkitpy/port/ios_simulator.py:
(IOSSimulatorPort.diff_image): Deleted.
2017-05-05 Brian Burg <bburg@apple.com>
API test WebKit2.WKHTTPCookieStore fails due to possible issue with handling non-session cookies
https://bugs.webkit.org/show_bug.cgi?id=171748
Unreviewed test gardening.
The assertion failure will be investigated separately in order to avoid rolling out
the fix for "secure" cookies. This assertion fails even without r216258 applied.
* TestWebKitAPI/Tests/WebKit2Cocoa/WKHTTPCookieStore.mm:
(TEST):
2017-05-05 Jonathan Bedard <jbedard@apple.com>
Unreviewed, rolling out r216260.
Breaks internal iOS testers
Reverted changeset:
"Use ImageDiff built by host SDK and remove ImageDiff from
DumpRenderTree"
https://bugs.webkit.org/show_bug.cgi?id=168945
http://trac.webkit.org/changeset/216260
2017-05-05 Jonathan Bedard <jbedard@apple.com>
Use ImageDiff built by host SDK and remove ImageDiff from DumpRenderTree
https://bugs.webkit.org/show_bug.cgi?id=168945
<rdar://problem/30745695>
Reviewed by David Kilzer.
Use ImageDiff built with the host machine's SDK and stop building ImageDiff with the
target SDK. These two changes must happen simultaneously because some archives will
clobber the ImageDiff from the host SDK with the ImageDiff from the target SDK.
* DumpRenderTree/mac/Configurations/ImageDiff.xcconfig: Remove ImageDiff from project.
* DumpRenderTree/PlatformWin.cmake: Remove ImageDiff. Note that the CMakeLists.txt in the
tools directory still includes ImageDiff.
* DumpRenderTree/cg/ImageDiffCG.cpp: Removed.
* DumpRenderTree/mac/Configurations/DumpRenderTree.xcconfig: Removed.
* Scripts/webkitpy/port/darwin.py:
(DarwinPort._path_to_image_diff): Return the correct path to ImageDiff when building
locally or when running archives.
* Scripts/webkitpy/port/image_diff.py:
(IOSSimulatorImageDiffer): Deleted.
* Scripts/webkitpy/port/ios_simulator.py:
(IOSSimulatorPort.diff_image): Deleted.
2017-05-05 Brian Burg <bburg@apple.com>
[Cocoa] Converting from WebCore::Cookie to NSHTTPCookie always marks cookies as secure
https://bugs.webkit.org/show_bug.cgi?id=171700
<rdar://problem/32017975>
Reviewed by Brady Eidson.
Fix a mistake in the test that should have caught this bug.
* TestWebKitAPI/Tests/WebKit2Cocoa/WKHTTPCookieStore.mm:
(TEST):
The assertions that were meant to check round-tripping were actually checking
the properties of the original cookie objects, not the round-tripped ones.
This test now fails without the bugfix and passes when it is applied.
2017-05-05 Daniel Bates <dabates@apple.com>
Use EXPECT_EQ() when comparing strings in TestWebKitAPI tests
https://bugs.webkit.org/show_bug.cgi?id=171698
Reviewed by Darin Adler.
We should use EXPECT_EQ() instead of EXPECT_TRUE() to compare WTF::String() objects
so that we get pretty diff output when the actual string differs from the expected
string as opposed to seeing a boolean result. The former makes makes it straightforward
to diagnose a regression without reading the code for the test or instrumenting it to
determine the actual string that was compared.
* TestWebKitAPI/Tests/WTF/WTFString.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebCore/mac/GPUFunction.mm:
(TestWebKitAPI::TEST_F):
* TestWebKitAPI/Tests/WebCore/mac/GPULibrary.mm:
(TestWebKitAPI::TEST_F):
2017-05-05 Chris Dumez <cdumez@apple.com>
Rename webProcessDidCrashWithReason callback to webProcessDidTerminate and stop calling webProcessDidCrash for client terminations
https://bugs.webkit.org/show_bug.cgi?id=171624
Reviewed by Dan Bernstein.
Extend API test coverage to cover crashes in addition to terminations requested by the client.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKit2/ProcessDidTerminate.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2/ProcessDidCrashWithReason.cpp.
(TestWebKitAPI::webProcessWasTerminatedByClient):
(TestWebKitAPI::webProcessCrashed):
(TestWebKitAPI::TEST):
2017-05-04 Mark Lam <mark.lam@apple.com>
DRT's setAudioResultCallback() and IDBRequest::setResult() need to acquire the JSLock.
https://bugs.webkit.org/show_bug.cgi?id=171716
<rdar://problem/30878027>
Reviewed by Saam Barati.
setAudioResultCallback() needs to acquire the JSLock before calling toJS() (which
does JS conversion and therefore, potentially JS allocations) and accessing
methods of internal JS data structures (which may do JS invocation, etc).
* DumpRenderTree/TestRunner.cpp:
(setAudioResultCallback):
2017-05-05 Jonathan Bedard <jbedard@apple.com>
buildbot: Cleanup simulators after running tests
https://bugs.webkit.org/show_bug.cgi?id=171679
<rdar://problem/31994361>
Reviewed by Aakash Jain.
We shutdown the simulator process between tests, but in some cases, this is not
sufficient. Explicitly shutdown every booted simulator.
* BuildSlaveSupport/kill-old-processes:
(main): Shutdown all booted simulators.
2017-05-05 Carlos Garcia Campos <cgarcia@igalia.com>
[GTK] Assertion failure in Inspector::RemoteInspector::setRemoteInspectorClient when disposing WebKitWebContext
https://bugs.webkit.org/show_bug.cgi?id=171644
Reviewed by Michael Catanzaro.
Check that only one WebKitWebContext can have automation enabled.
* TestWebKitAPI/Tests/WebKit2Gtk/TestAutomationSession.cpp:
(testAutomationSessionRequestSession):
2017-05-05 Carlos Garcia Campos <cgarcia@igalia.com>
[GTK] TestController timeout source callback should return G_SOURCE_REMOVE
https://bugs.webkit.org/show_bug.cgi?id=171724
Reviewed by Michael Catanzaro.
It's currently returning CONTINUE which causes it to be called again even if the run loop has been stopped.
* WebKitTestRunner/gtk/TestControllerGtk.cpp:
(WTR::timeoutSource):
2017-05-05 Carlos Garcia Campos <cgarcia@igalia.com>
Unreviewed. Fix wrong assert after r215176.
Cairo surface received by computeMD5HashStringForCairoSurface() doesn't need to be ARGB32 since r215176, it
could also be RGB24 when created from a web view snapshot.
* WebKitTestRunner/cairo/TestInvocationCairo.cpp:
(WTR::computeMD5HashStringForCairoSurface):
2017-05-04 Brian Burg <bburg@apple.com>
lldb_webkit.py should provide a type summary for WebCore::URL
https://bugs.webkit.org/show_bug.cgi?id=171670
Reviewed by Jer Noble.
Just print out the underlying string using the WTFString provider.
* lldb/lldb_webkit.py:
(__lldb_init_module):
(WebCoreURL_SummaryProvider):
(WebCoreURLProvider):
(WebCoreURLProvider.__init__):
(WebCoreURLProvider.to_string):
2017-05-04 Commit Queue <commit-queue@webkit.org>
Unreviewed, rolling out r216206.
https://bugs.webkit.org/show_bug.cgi?id=171714
Multiple LayoutTests crashing in Document::page() (Requested
by ap on #webkit).
Reverted changeset:
"Remove support for legacy Notifications"
https://bugs.webkit.org/show_bug.cgi?id=171487
http://trac.webkit.org/changeset/216206
2017-05-04 Mark Lam <mark.lam@apple.com>
API test WTF.StaticStringImpl crashing in TestWebKitAPI::WTF_StaticStringImpl_Test::TestBody() + 3188
https://bugs.webkit.org/show_bug.cgi?id=171702
Reviewed by Filip Pizlo.
The test was supposed to use the MAKE_STATIC_STRING_IMPL macro. I had previously
changed it to instantiate an automatic StaticStringImpl (i.e. stack allocated) to
confirm that the test will detect a regression. Unfortunately, I forgot to
change it back to using MAKE_STATIC_STRING_IMPL before I landed the test.
This patch fixes that.
* TestWebKitAPI/Tests/WTF/StringImpl.cpp:
(TestWebKitAPI::neverDestroyedString):
2017-05-04 Ryan Haddad <ryanhaddad@apple.com>
Disable failing API test WebKit2.ResizeWithHiddenContentDoesNotHang.
https://bugs.webkit.org/show_bug.cgi?id=170195
Unreviewed test gardening.
* TestWebKitAPI/Tests/WebKit2Cocoa/AnimatedResize.mm:
(TEST):
2017-05-04 Don Olmstead <don.olmstead@am.sony.com>
[Win] Remove redundant macros that are set in the CMake config
https://bugs.webkit.org/show_bug.cgi?id=171571
Reviewed by Brent Fulgham.
* DumpRenderTree/config.h:
* MiniBrowser/win/stdafx.h:
* TestWebKitAPI/config.h:
2017-05-04 Said Abou-Hallawa <sabouhallawa@apple.com>
Add testRunner.display() to force displaying the web page for testing
https://bugs.webkit.org/show_bug.cgi?id=171694
Reviewed by Simon Fraser.
Unlike testRunner.displayAndTrackRepaints(), this new function forces
drawing the web page but without track repaints.
* DumpRenderTree/TestRunner.cpp:
(displayCallback):
(TestRunner::staticFunctions):
* DumpRenderTree/TestRunner.h:
* DumpRenderTree/mac/TestRunnerMac.mm:
(TestRunner::display):
* DumpRenderTree/win/TestRunnerWin.cpp:
(TestRunner::display):
* WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
* WebKitTestRunner/InjectedBundle/TestRunner.cpp:
(WTR::TestRunner::display):
* WebKitTestRunner/InjectedBundle/TestRunner.h:
2017-05-04 Mark Lam <mark.lam@apple.com>
NeverDestroyed<String>(ASCIILiteral(...)) is not thread safe.
https://bugs.webkit.org/show_bug.cgi?id=171586
<rdar://problem/31873190>
Reviewed by Yusuke Suzuki.
API test for exercising StaticStringImpl and the MAKE_STATIC_STRING_IMPL macro.
* TestWebKitAPI/Tests/WTF/StringImpl.cpp:
(TestWebKitAPI::neverDestroyedString):
(TestWebKitAPI::getNeverDestroyedStringAtStackDepth):
(TestWebKitAPI::TEST):
2017-05-04 Wenson Hsieh <wenson_hsieh@apple.com>
[WK2] Add support for keeping the selection in a focused editable element when dragging begins
https://bugs.webkit.org/show_bug.cgi?id=171585
<rdar://problem/31544320>
Reviewed by Beth Dakin and Zalan Bujtas.
Adds 1 new unit test and tweaks existing tests to check that when first responder status is lost after beginning
a drag while editing, content is still moved (and not copied) when performing data interaction on a different
element. ContentEditableMoveParagraphs checks that content can be shifted within a single element via a move
operation rather than a copy.
See WebCore ChangeLog for more details.
Tests: DataInteractionSimulator.ContentEditableToContentEditable
DataInteractionSimulator.ContentEditableToTextarea
DataInteractionSimulator.ContentEditableMoveParagraphs
DataInteractionSimulator.TextAreaToInput
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKit2Cocoa/two-paragraph-contenteditable.html: Added.
* TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
(TestWebKitAPI::TEST):
* TestWebKitAPI/ios/DataInteractionSimulator.h:
* TestWebKitAPI/ios/DataInteractionSimulator.mm:
(-[DataInteractionSimulator initWithWebView:]):
(-[DataInteractionSimulator dealloc]):
(-[DataInteractionSimulator _advanceProgress]):
(-[DataInteractionSimulator waitForInputSession]):
(-[DataInteractionSimulator _webView:focusShouldStartInputSession:]):
(-[DataInteractionSimulator _webView:didStartInputSession:]):
2017-05-04 Said Abou-Hallawa <sabouhallawa@apple.com>
Rename TestRunner.display() to TestRunner::displayAndTrackRepaints()
https://bugs.webkit.org/show_bug.cgi?id=171641
Reviewed by Simon Fraser.
The plan is to add back the TestRunner.display() which does the display
only without track repaints.
* DumpRenderTree/DumpRenderTree.h:
* DumpRenderTree/TestRunner.cpp:
(displayAndTrackRepaintsCallback):
(TestRunner::staticFunctions):
(displayCallback): Deleted.
(displayInvalidatedRegionCallback): Deleted.
* DumpRenderTree/TestRunner.h:
* DumpRenderTree/mac/DumpRenderTree.mm:
(displayWebView):
(displayAndTrackRepaintsWebView):
* DumpRenderTree/mac/TestRunnerMac.mm:
(TestRunner::displayAndTrackRepaints):
(TestRunner::display): Deleted.
* DumpRenderTree/win/TestRunnerWin.cpp:
(TestRunner::displayAndTrackRepaints):
(TestRunner::display): Deleted.
* WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
* WebKitTestRunner/InjectedBundle/TestRunner.cpp:
(WTR::TestRunner::displayAndTrackRepaints):
(WTR::TestRunner::display): Deleted.
* WebKitTestRunner/InjectedBundle/TestRunner.h:
2017-05-04 Brady Eidson <beidson@apple.com>
[ios-simulator] API test WebKit2.WebsiteDataStoreCustomPaths is failing.
https://bugs.webkit.org/show_bug.cgi?id=171513
Unreviewed gardening.
* TestWebKitAPI/Tests/WebKit2Cocoa/WebsiteDataStoreCustomPaths.mm:
(TEST): Skip the failing parts of the test on iOS for now.
2017-05-03 Jonathan Bedard <jbedard@apple.com>
Make ImageDiff stand-alone
https://bugs.webkit.org/show_bug.cgi?id=168939
Reviewed by David Kilzer.
Create ImageDiff without dependencies on bmalloc and WTF so that it exists as a
stand-alone project. Note that this change does not eliminate the ImageDiff inside
the DumpRenderTree project.
* ImageDiff/ImageDiff.xcodeproj: Added.
* ImageDiff/ImageDiff.xcodeproj/project.pbxproj: Added.
* ImageDiff/Makefile: Use ImageDiff project.
* ImageDiff/PlatformMac.cmake: Added.
* ImageDiff/PlatformWin.cmake: Added.
* ImageDiff/cg: Added.
* ImageDiff/cg/Configurations: Added.
* ImageDiff/cg/Configurations/Base.xcconfig: Copied from Tools/DumpRenderTree/mac/Configurations/Base.xcconfig.
* ImageDiff/cg/Configurations/DebugRelease.xcconfig: Copied from Tools/DumpRenderTree/mac/Configurations/DebugRelease.xcconfig.
* ImageDiff/cg/Configurations/ImageDiff.xcconfig: Copied from Tools/DumpRenderTree/mac/Configurations/ImageDiff.xcconfig.
* ImageDiff/cg/ImageDiff.cpp: Copied from Tools/DumpRenderTree/cg/ImageDiffCG.cpp.
(createImageFromStdin): Stop using RetainPtr.
(createDifferenceImage): Ditto.
(main): Ditto.
* Scripts/build-imagediff: Stop building WTF and bmalloc.
2017-05-04 Sam Weinig <sam@webkit.org>
Remove support for legacy Notifications
https://bugs.webkit.org/show_bug.cgi?id=171487
Reviewed by Jon Lee.
* DumpRenderTree/win/DRTDesktopNotificationPresenter.cpp:
(DRTDesktopNotificationPresenter::checkNotificationPermission):
* Scripts/webkitperl/FeatureList.pm:
* TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
Remove use and definition of ENABLE_LEGACY_NOTIFICATIONS.
2017-05-04 Andy Estes <aestes@apple.com>
Give +testwebkitapi_configurationWithTestPlugInClassName: a shorter name
https://bugs.webkit.org/show_bug.cgi?id=171673
Reviewed by Dan Bernstein.
* TestWebKitAPI/Tests/WebKit2Cocoa/AdditionalReadAccessAllowedURLs.mm:
(TEST):
* TestWebKitAPI/Tests/WebKit2Cocoa/BundleEditingDelegate.mm:
(TEST):
* TestWebKitAPI/Tests/WebKit2Cocoa/BundleParameters.mm:
(TEST):
* TestWebKitAPI/Tests/WebKit2Cocoa/BundleRangeHandle.mm:
(TEST):
* TestWebKitAPI/Tests/WebKit2Cocoa/CancelFontSubresource.mm:
(TEST):
* TestWebKitAPI/Tests/WebKit2Cocoa/ContentFiltering.mm:
(configurationWithContentFilterSettings):
(-[LazilyLoadPlatformFrameworksController init]):
* TestWebKitAPI/Tests/WebKit2Cocoa/RemoteObjectRegistry.mm:
(TEST):
* TestWebKitAPI/Tests/WebKit2Cocoa/RenderedImageWithOptions.mm:
(runTestWithWidth):
* TestWebKitAPI/Tests/WebKit2Cocoa/UserContentWorld.mm:
(TEST):
* TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
(TestWebKitAPI::TEST):
* TestWebKitAPI/WKWebViewConfigurationExtras.h:
* TestWebKitAPI/WKWebViewConfigurationExtras.mm:
(+[WKWebViewConfiguration _test_configurationWithTestPlugInClassName:]):
(+[WKWebViewConfiguration testwebkitapi_configurationWithTestPlugInClassName:]): Renamed to
+_test_configurationWithTestPlugInClassName:
2017-05-04 Eric Carlson <eric.carlson@apple.com>
[MediaStream] Allow host application to enable/disable media capture
https://bugs.webkit.org/show_bug.cgi?id=171292
<rdar://problem/31821492>
Reviewed by Jer Noble.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKit2Cocoa/UserMediaDisabled.mm: Added.
(-[UserMediaMessageHandler userContentController:didReceiveScriptMessage:]):
(-[UserMediaUIDelegate _webView:requestUserMediaAuthorizationForDevices:url:mainFrameURL:decisionHandler:]):
(-[UserMediaUIDelegate _webView:checkUserMediaPermissionForURL:mainFrameURL:frameIdentifier:decisionHandler:]):
(MediaCaptureDisabledTest::SetUp):
(MediaCaptureDisabledTest::loadTestAndWaitForMessage):
(TEST_F):
* TestWebKitAPI/Tests/WebKit2Cocoa/disableGetUserMedia.html: Added.
2017-05-04 Caio Lima <ticaiolima@gmail.com>
Unreviewed, Adding self to contributors.json
* Scripts/webkitpy/common/config/contributors.json: Added name.
2017-05-04 Konstantin Tokarev <annulen@yandex.ru>
Fix compilation with ICU 59.1
https://bugs.webkit.org/show_bug.cgi?id=171612
Reviewed by Mark Lam.
ICU 59.1 has broken source compatibility. Now it defines UChar as
char16_t, which does not allow automatic type conversion from unsigned
short in C++ code.
* TestRunnerShared/UIScriptContext/UIScriptContext.cpp:
(UIScriptContext::tryToCompleteUIScriptForCurrentParentCallback):
2017-05-04 Andy Estes <aestes@apple.com>
[Cocoa] Add an optional width parameter to -[WKWebProcessPlugInNodeHandle renderedImageWithOptions:]
https://bugs.webkit.org/show_bug.cgi?id=171646
<rdar://problem/30306321>
Reviewed by Tim Horton.
* TestWebKitAPI/Tests/WebKit2Cocoa/RenderedImageWithOptions.mm:
(runTestWithWidth):
(TEST):
(-[RenderedImageWithOptionsObject didRenderImageWithSize:]): Deleted.
* TestWebKitAPI/Tests/WebKit2Cocoa/RenderedImageWithOptionsPlugIn.mm:
(-[RenderedImageWithOptionsPlugIn webProcessPlugIn:didCreateBrowserContextController:]):
(-[RenderedImageWithOptionsPlugIn webProcessPlugInBrowserContextController:didFinishLoadForFrame:]):
(-[RenderedImageWithOptionsPlugIn renderImageWithWidth:completionHandler:]):
* TestWebKitAPI/Tests/WebKit2Cocoa/RenderedImageWithOptionsProtocol.h:
2017-05-04 Adrian Perez de Castro <aperez@igalia.com>
[GTK] Fontconfig 2.11.2 in JHBuild does not build with glibc 2.25+ or gperf 3.1+
https://bugs.webkit.org/show_bug.cgi?id=171649
Reviewed by Carlos Garcia Campos.
Add two patches picked from the upstream repository to fix building of
the Fontconfig module in JHBuild. Additionally, this needed a patch to
add "autogen.sh" as it is not included in release tarballs. Also:
building the module with srcdir!=builddir prevents "fcobjshash.gperf"
being regenerated (which is needed) so this is disabled for the
Fontconfig module.
* gtk/jhbuild.modules:
* gtk/patches/fontconfig-2.11.1-add-autogen.patch: Added.
* gtk/patches/fontconfig-Avoid-conflicts-with-integer-width-macros-from-TS-18661-1-2014.patch: Added.
* gtk/patches/fontconfig-Fix-the-build-issue-with-gperf-3.1.patch: Added.
2017-05-04 Commit Queue <commit-queue@webkit.org>
Unreviewed, rolling out r216172.
https://bugs.webkit.org/show_bug.cgi?id=171654
FTBFS for iOS due to missing WebPageProxy::stopMediaCapture()
implementation. (Requested by ddkilzer on #webkit).
Reverted changeset:
"[MediaStream] Allow host application to enable/disable media
capture"
https://bugs.webkit.org/show_bug.cgi?id=171292
http://trac.webkit.org/changeset/216172
2017-05-04 Carlos Garcia Campos <cgarcia@igalia.com>
[GTK] Bump GStreamer version to 1.10.4 in jhbuild
https://bugs.webkit.org/show_bug.cgi?id=171595
Reviewed by Xabier Rodriguez-Calvar.
* gtk/jhbuild.modules:
* gtk/patches/gst-plugins-bad-0001-dtls-port-to-OpenSSL-1.1.0.patch: Removed.
* gtk/patches/gst-plugins-bad-0002-dtlscertificate-Fix-error-checking-in-RSA_generate_k.patch: Removed.
* gtk/patches/gst-plugins-good-0001-rtpbin-pipeline-gets-an-EOS-when-any-rtpsources-byes.patch: Removed.
* gtk/patches/gst-plugins-good-0002-rtpbin-avoid-generating-errors-when-rtcp-messages-ar.patch: Removed.
* gtk/patches/gst-plugins-good-0004-qtdemux-add-context-for-a-preferred-protection.patch:
* gtk/patches/gst-plugins-good-Revert-qtdemux-expose-streams-with-first-moof-for-fr.patch: Removed.
* gtk/patches/gst-plugins-good-use-the-tfdt-decode-time.patch: Removed.
2017-05-03 Saam Barati <sbarati@apple.com>
How we build polymorphic cases is wrong when making a call from Wasm
https://bugs.webkit.org/show_bug.cgi?id=171527
Reviewed by JF Bastien.
* Scripts/run-jsc-stress-tests:
2017-05-03 Eric Carlson <eric.carlson@apple.com>
[MediaStream] Allow host application to enable/disable media capture
https://bugs.webkit.org/show_bug.cgi?id=171292
<rdar://problem/31821492>
Reviewed by Jer Noble.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKit2Cocoa/UserMediaDisabled.mm: Added.
(-[UserMediaMessageHandler userContentController:didReceiveScriptMessage:]):
(-[UserMediaUIDelegate _webView:requestUserMediaAuthorizationForDevices:url:mainFrameURL:decisionHandler:]):
(-[UserMediaUIDelegate _webView:checkUserMediaPermissionForURL:mainFrameURL:frameIdentifier:decisionHandler:]):
(MediaCaptureDisabledTest::SetUp):
(MediaCaptureDisabledTest::loadTestAndWaitForMessage):
(TEST_F):
* TestWebKitAPI/Tests/WebKit2Cocoa/disableGetUserMedia.html: Added.
2017-05-03 John Wilander <wilander@apple.com>
Resource Load Statistics: Remove all statistics for modifiedSince website data removals
https://bugs.webkit.org/show_bug.cgi?id=171584
<rdar://problem/24702576>
Reviewed by Brent Fulgham.
New function to call the clear function that takes a modifiedSince parameter.
* WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
* WebKitTestRunner/InjectedBundle/TestRunner.cpp:
(WTR::TestRunner::statisticsClearInMemoryAndPersistentStoreModifiedSinceHours):
* WebKitTestRunner/InjectedBundle/TestRunner.h:
* WebKitTestRunner/TestController.cpp:
(WTR::TestController::statisticsClearInMemoryAndPersistentStoreModifiedSinceHours):
* WebKitTestRunner/TestController.h:
* WebKitTestRunner/TestInvocation.cpp:
(WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
2017-05-03 Commit Queue <commit-queue@webkit.org>
Unreviewed, rolling out r216160 and r216161.
https://bugs.webkit.org/show_bug.cgi?id=171640
These changes broke the iOS build. (Requested by mlewis13 on
#webkit).
Reverted changesets:
"[MediaStream] Allow host application to enable/disable media
capture"
https://bugs.webkit.org/show_bug.cgi?id=171292
http://trac.webkit.org/changeset/216160
"[MediaStream] Allow host application to enable/disable media
capture"
https://bugs.webkit.org/show_bug.cgi?id=171292
http://trac.webkit.org/changeset/216161
2017-05-03 Eric Carlson <eric.carlson@apple.com>
[MediaStream] Allow host application to enable/disable media capture
https://bugs.webkit.org/show_bug.cgi?id=171292
<rdar://problem/31821492>
Reviewed by Jer Noble.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKit2Cocoa/UserMediaDisabled.mm: Added.
(-[UserMediaMessageHandler userContentController:didReceiveScriptMessage:]):
(-[UserMediaUIDelegate _webView:requestUserMediaAuthorizationForDevices:url:mainFrameURL:decisionHandler:]):
(-[UserMediaUIDelegate _webView:checkUserMediaPermissionForURL:mainFrameURL:frameIdentifier:decisionHandler:]):
(MediaCaptureDisabledTest::SetUp):
(MediaCaptureDisabledTest::loadTestAndWaitForMessage):
(TEST_F):
* TestWebKitAPI/Tests/WebKit2Cocoa/disableGetUserMedia.html: Added.
2017-04-26 Jiewen Tan <jiewen_tan@apple.com>
[WebCrypto] Add an api test for testing wrapping/unwrapping serialized crypto keys
https://bugs.webkit.org/show_bug.cgi?id=171350
<rdar://problem/28600836>
Patched by Brady Eidson.
Reviewed by Brent Fulgham.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKit2/NavigationClientDefaultCrypto.cpp: Added.
(TestWebKitAPI::runJavaScriptAlert):
(TestWebKitAPI::decidePolicyForNavigationAction):
(TestWebKitAPI::decidePolicyForNavigationResponse):
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit2/navigation-client-default-crypto.html: Added.
2017-05-03 Simon Fraser <simon.fraser@apple.com>
Have WKWebView call _updateVisibleContentRects for the current transaction if possible, rather than always delaying
https://bugs.webkit.org/show_bug.cgi?id=171619
https://bugs.webkit.org/show_bug.cgi?id=170195
Reviewed by Tim Horton.
Re-enable WebKit2.ResizeWithHiddenContentDoesNotHang.
* TestWebKitAPI/Tests/WebKit2Cocoa/AnimatedResize.mm:
(TEST):
2017-05-03 Michael Catanzaro <mcatanzaro@igalia.com>
YouTube user agent quirk breaks new YouTube
https://bugs.webkit.org/show_bug.cgi?id=171603
Reviewed by Carlos Garcia Campos.
Remove the YouTube quirk test.
* TestWebKitAPI/Tests/WebCore/UserAgentQuirks.cpp:
(TestWebKitAPI::TEST):
2017-05-03 Said Abou-Hallawa <sabouhallawa@apple.com>
Async image decoding should be disabled for snapshots, printing and preview
https://bugs.webkit.org/show_bug.cgi?id=171467
Reviewed by Simon Fraser.
Add a API test for snapshotting with large images. Ensure the images are
drawn correctly which implies they should have been synchronously decoded.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKit2/large-red-square-image.html: Added.
* TestWebKitAPI/Tests/WebKit2Cocoa/WKWebViewSnapshot.mm:
(TEST):
2017-05-03 Chris Dumez <cdumez@apple.com>
[WK2] Extend processDidCrash delegate to let the client know the reason for the crash
https://bugs.webkit.org/show_bug.cgi?id=171565
<rdar://problem/31204417>
Reviewed by Sam Weinig.
Add API test coverage.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKit2/ProcessDidCrashWithReason.cpp: Added.
(TestWebKitAPI::didFinishNavigation):
(TestWebKitAPI::didCrashWithReason):
(TestWebKitAPI::TEST):
2017-05-02 David Kilzer <ddkilzer@apple.com>
check-webkit-style should also keep js-test-post[-async].js in sync
<https://webkit.org/b/171568>
Reviewed by Joseph Pecoraro.
* Scripts/webkitpy/style/checker.py:
(_NEVER_SKIPPED_JS_FILES): Add new list that just contains
JavaScript files not to be skipped.
(_NEVER_SKIPPED_FILES): Update to use _NEVER_SKIPPED_JS_FILES.
(CheckerDispatcher._create_checker): Update to use
_NEVER_SKIPPED_JS_FILES.
* Scripts/webkitpy/style/checkers/jstest.py:
(ALL_JS_TEST_FUNCTION_FILES): Rename from ALL_JS_TEST_FILES.
This is the list of files containing functions that need to be
kept in sync.
(KEEP_JS_TEST_FILES_IN_SYNC): Change to list-of-lists format so
we can keep more sets of files in sync between
LayoutTests/resources and LayoutTests/http/tests/resources.
(JSTestChecker.check): Update to use KEEP_JS_TEST_FILES_IN_SYNC
as list of lists. Update for ALL_JS_TEST_FUNCTION_FILES rename.
(JSTestChecker.check_js_test_files): Add 'file_group' argument
for list of files to check instead of using
KEEP_JS_TEST_FILES_IN_SYNC.
(JSTestChecker.check_js_test_functions): Update for
ALL_JS_TEST_FUNCTION_FILES rename.
* Scripts/webkitpy/style/checkers/jstest_unittest.py:
(JSTestCheckerTestCase):
(JSTestCheckerTestCase.test_map_functions_to_dict):
- Add test case for map_functions_to_dict() in jstest.py.
2017-05-02 Aakash Jain <aakash_jain@apple.com>
ews should indicate in logs when it fails to fetch the attachment
https://bugs.webkit.org/show_bug.cgi?id=171583
Reviewed by Alexey Proskuryakov.
* Scripts/webkitpy/common/net/bugzilla/bugzilla.py:
(Bugzilla.fetch_attachment): Added log statement.
2017-05-02 David Kilzer <ddkilzer@apple.com>
Rolling out jstest_unittest.py so it can be reviewed
Follow-up fix for:
check-webkit-style should keep JavaScript test functions in sync
<https://webkit.org/b/171424>
* Scripts/webkitpy/style/checkers/jstest_unittest.py: Remove.
2017-05-02 David Kilzer <ddkilzer@apple.com>
check-webkit-style should keep JavaScript test functions in sync
<https://webkit.org/b/171424>
Reviewed by Joseph Pecoraro.
Add a new JSTestChecker for check-webkit-style that keeps these
two files in sync:
LayoutTests/http/tests/resources/js-test-pre.js
LayoutTests/resources/js-test-pre.js
And keeps implementations of shouldBe(), shouldNotBe(),
shouldNotThrow(), and shouldThrow() in sync across multiple
files (with the ability to add more functions later):
JSTests/stress/resources/standalone-pre.js
LayoutTests/http/tests/resources/js-test-pre.js
LayoutTests/resources/js-test-pre.js
LayoutTests/resources/js-test.js
LayoutTests/resources/standalone-pre.js
* Scripts/webkitpy/style/checker.py: Remove unused import. Add
import for JSTestChecker.
(_NEVER_SKIPPED_FILES): Add array of file names that are never
skipped regardless of other rules.
(_all_categories): Add JSTestChecker categories.
(CheckerDispatcher.should_skip_without_warning): Use
_NEVER_SKIPPED_FILES.
(CheckerDispatcher._create_checker): Return JSTestChecker for
the files to check.
* Scripts/webkitpy/style/checkers/jstest.py: Add.
(map_functions_to_dict): Parse JavaScript source by splitting on
/^function\s+/ regex. This is good enough for the sanity checks
to keep function implementations in sync.
(strip_blank_lines_and_comments): Strips blank lines and lines
with comments from the end of a chunk of text representing a
function.
(JSTestChecker): New checker.
(JSTestChecker.__init__):
(JSTestChecker.check):
(JSTestChecker.check_js_test_files): Keeps whole files in sync.
(JSTestChecker.check_js_test_functions): Keeps individual
functions in sync.
* Scripts/webkitpy/style/checkers/jstest_unittest.py: Add test
case.
(JSTestTestCase):
(JSTestTestCase.test_map_functions_to_dict):
2017-05-02 Joanmarie Diggs <jdiggs@igalia.com>
AX: Update implementation of aria-orientation
https://bugs.webkit.org/show_bug.cgi?id=171166
Reviewed by Chris Fleizach.
Return "AXUnknownOrientation" when ATK_STATE_VERTICAL and ATK_STATE_HORIZONTAL
are both absent from the state set. Before we were returning an empty string
which was not consistent with what the Mac port does, thus making shared tests
harder.
* WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
(WTR::AccessibilityUIElement::orientation):
2017-05-01 David Kilzer <ddkilzer@apple.com>
Stop using sprintf() in JavaScriptCore debugger
<https://webkit.org/b/171512>
Reviewed by Keith Miller.
* Scripts/webkitpy/style/checker.py:
(_PATH_RULES_SPECIFIER): Ignore some formatting checkers since
Source/JavaScriptCore/disassembler/udis86/ is generated code.
2017-05-01 Timothy Horton <timothy_horton@apple.com>
Expose viewport-fit instead of clip-to-safe-area
https://bugs.webkit.org/show_bug.cgi?id=171503
<rdar://problem/31918249>
Reviewed by Simon Fraser.
* DumpRenderTree/ios/UIScriptControllerIOS.mm:
(WTR::UIScriptController::setSafeAreaInsets):
(WTR::UIScriptController::setObscuredInsets): Deleted.
* TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
* TestRunnerShared/UIScriptContext/UIScriptController.cpp:
(WTR::UIScriptController::setSafeAreaInsets):
(WTR::UIScriptController::setObscuredInsets): Deleted.
* TestRunnerShared/UIScriptContext/UIScriptController.h:
* WebKitTestRunner/cocoa/TestRunnerWKWebView.h:
* WebKitTestRunner/cocoa/TestRunnerWKWebView.mm:
(-[TestRunnerWKWebView setOverrideSafeAreaInsets:]):
(-[TestRunnerWKWebView _safeAreaInsetsForFrame:inSuperview:]):
* WebKitTestRunner/ios/TestControllerIOS.mm:
(WTR::TestController::platformResetStateToConsistentValues):
* WebKitTestRunner/ios/UIKitSPI.h:
* WebKitTestRunner/ios/UIScriptControllerIOS.mm:
(WTR::UIScriptController::setSafeAreaInsets):
(WTR::UIScriptController::setObscuredInsets): Deleted.
Expose a safe area inset setter instead of obscured insets.
2017-05-01 Wenson Hsieh <wenson_hsieh@apple.com>
Unreviewed, fix the build on a new internal SDK
Replace usages of NSItemProviderRepresentationVisibilityAll with
UIItemProviderRepresentationOptionsVisibilityAll.
* TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
(-[UIItemProvider registerDataRepresentationForTypeIdentifier:withData:]):
(TestWebKitAPI::TEST):
2017-05-01 David Kilzer <ddkilzer@apple.com>
[Cocoa] Replace uses of [get…Class() alloc] in TestWebKitAPI
<https://webkit.org/b/171493>
Reviewed by Dan Bernstein.
* TestWebKitAPI/Tests/WebKit/ios/AudioSessionCategoryIOS.mm:
Remove UIKit soft-link since TestWebKitAPI links to
UIKit.framework.
(TestWebKitAPI::WebKit1_AudioSessionCategoryIOS_Test): Use
UIWindow and UIWebView classes directly.
* TestWebKitAPI/Tests/WebKit2Cocoa/RequiresUserActionForPlayback.mm:
Remove UIKit soft-link since TestWebKitAPI links to
UIKit.framework.
(RequiresUserActionForPlaybackTest::createWebView): Use UIWindow
class directly.
2017-05-01 Brady Eidson <beidson@apple.com>
Update names in WKURLSchemeHandler/WKURLSchemeHandlerTask APIs.
<rdar://problem/31824838> and https://bugs.webkit.org/show_bug.cgi?id=171508
Reviewed by Andy Estes.
* TestWebKitAPI/Tests/WebKit2Cocoa/WKURLSchemeHandler-1.mm:
(-[SchemeHandler webView:startURLSchemeTask:]):
(-[SchemeHandler webView:stopURLSchemeTask:]):
(-[SchemeHandler webView:startTask:]): Deleted.
(-[SchemeHandler webView:stopTask:]): Deleted.
2017-05-01 Jason Marcell <jmarcell@apple.com>
Add a new function for getting the Git hash for a pure git directory.
https://bugs.webkit.org/show_bug.cgi?id=171450
Reviewed by David Kilzer.
* Scripts/VCSUtils.pm:
(gitHashForDirectory):
2017-05-01 Joanmarie Diggs <jdiggs@igalia.com>
[ATK] Expose values of aria-rowcount, aria-colcount, aria-rowindex, aria-colindex, aria-rowspan, and aria-colspan as object attributes
https://bugs.webkit.org/show_bug.cgi?id=171496
Reviewed by Chris Fleizach.
Add new attribute names so that the values of the object attributes can be tested.
* WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
(WTR::AccessibilityUIElement::numberAttributeValue):
2017-05-01 Beth Dakin <bdakin@apple.com>
On-screen panel for candidate bar is in the wrong place when the caret is at the
start of a paragraph
https://bugs.webkit.org/show_bug.cgi?id=171453
-and corresponding-
rdar://problem/29779764
Reviewed by Tim Horton.
This test hard-codes the y-coordinate for the expected candidateRect.
* TestWebKitAPI/Tests/WebKit2Cocoa/WKWebViewCandidateTests.mm:
(TEST):
2017-05-01 David Kilzer <ddkilzer@apple.com>
check-webkit-style: Enable sprintf(), strcat(), strcpy() and printf() format checks
<https://webkit.org/b/171494>
Reviewed by Brent Fulgham.
* Scripts/webkitpy/style/checkers/cpp.py:
(check_language): Change categories for certain checkers from
'runtime/printf' to 'security/printf' so they are no longer
filtered.
(CppChecker.categories): Add 'security/printf'.
* Scripts/webkitpy/style/checkers/cpp_unittest.py:
(CppStyleTest.test_insecure_string_operations): Add new test for
sprintf(), strcat() and strcpy().
(CppStyleTest.test_format_strings): Update test results for new
'security/printf' category use.
2017-05-01 Joanmarie Diggs <jdiggs@igalia.com>
AX: [GTK] Add support to query for aria-current
https://bugs.webkit.org/show_bug.cgi?id=149016
Reviewed by Chris Fleizach.
Implement support for "AXARIACurrent" string attribute value.
* WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
2017-05-01 David Kilzer <ddkilzer@apple.com>
REGRESSION (r216000): test-webkitpy fails after adding new soft-linked class checker
Unreviewed.
Follow-up fix for:
[Cocoa] Have check-webkit-style advise against use of [get…Class() alloc]
https://bugs.webkit.org/show_bug.cgi?id=171486
* Scripts/webkitpy/style/checkers/cpp.py:
(check_soft_link_class_alloc): Use (\w+) instead of ([^\s]+) to
match and capture the function name. The latter also mistakenly
matches C-preprocessor directives.
(CppChecker.categories): Add 'runtime/soft-linked-alloc', which
is a requirement for the CppChecker class.
2017-05-01 Carlos Garcia Campos <cgarcia@igalia.com>
[GTK] Add automation session API
https://bugs.webkit.org/show_bug.cgi?id=171428
Reviewed by Carlos Alberto Lopez Perez.
Add an automation mode to MiniBrowser using the new API and add a unit test too.
* MiniBrowser/gtk/BrowserWindow.c:
(webViewTitleChanged):
(webViewDecidePolicy):
(newTabCallback):
(openPrivateWindow):
(browserWindowFinalize):
(browser_window_init):
(browser_window_get_or_create_web_view_for_automation):
* MiniBrowser/gtk/BrowserWindow.h:
* MiniBrowser/gtk/main.c:
(createBrowserTab):
(createWebViewForAutomationCallback):
(automationStartedCallback):
(main):
* TestWebKitAPI/Tests/WebKit2Gtk/CMakeLists.txt:
* TestWebKitAPI/Tests/WebKit2Gtk/TestAutomationSession.cpp: Added.
(testAutomationSessionRequestSession):
(beforeAll):
(afterAll):
2017-04-30 Dan Bernstein <mitz@apple.com>
[Cocoa] Have check-webkit-style advise against use of [get…Class() alloc]
https://bugs.webkit.org/show_bug.cgi?id=171486
Reviewed by Sam Weinig.
* Scripts/webkitpy/style/checkers/cpp.py:
(check_soft_link_class_alloc): Added. Looks for [get…Class() alloc] and suggests
alloc…Instance() instead.
(check_style): Invoke new check.
2017-04-30 Brady Eidson <beidson@apple.com>
More fixing after r215991
https://bugs.webkit.org/show_bug.cgi?id=171483
* TestWebKitAPI/Tests/WebKit2Cocoa/WebsiteDataStoreCustomPaths.mm:
(TEST):
2017-04-30 Brady Eidson <beidson@apple.com>
Updates to _WKWebsiteDataStoreConfiguration cookie storage location SPI.
<rdar://problem/31906397> and https://bugs.webkit.org/show_bug.cgi?id=171483
Reviewed by Geoff Garen (and kind of Andy Estes).
* TestWebKitAPI/Tests/WebKit2Cocoa/WebsiteDataStoreCustomPaths.mm:
(TEST):
2017-04-30 Joanmarie Diggs <jdiggs@igalia.com>
[ATK] Implement support for aria-autocomplete
https://bugs.webkit.org/show_bug.cgi?id=171167
Reviewed by Chris Fleizach.
Add "AXSupportsAutoCompletion" attribute so the presence of
ATK_STATE_SUPPORTS_AUTOCOMPLETION can be tested.
* WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
(WTR::AccessibilityUIElement::boolAttributeValue):
2017-04-30 Joanmarie Diggs <jdiggs@igalia.com>
[ATK] ARIA treegrid role should be exposed as ATK_ROLE_TREE_TABLE; not ATK_ROLE_TABLE
https://bugs.webkit.org/show_bug.cgi?id=171170
Reviewed by Chris Fleizach.
Add "AXInterfaceTable" attribute to test which elements implement AtkTable.
* WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
(WTR::AccessibilityUIElement::boolAttributeValue):
2017-04-30 Joanmarie Diggs <jdiggs@igalia.com>
[ATK] Emit object:state-changed:busy event when aria-busy value changes
https://bugs.webkit.org/show_bug.cgi?id=171181
Reviewed by Chris Fleizach.
Add handler for AXElementBusyChanged notifications.
* WebKitTestRunner/InjectedBundle/atk/AccessibilityNotificationHandlerAtk.cpp:
2017-04-29 Aakash Jain <aakash_jain@apple.com>
Use PEP8 style guide for raising exceptions in webkitpy.
https://bugs.webkit.org/show_bug.cgi?id=171439
Reviewed by Daniel Bates.
As per https://www.python.org/dev/peps/pep-0008/
"When raising an exception in Python 2, use raise ValueError('message')
instead of the older form raise ValueError, 'message'"
* Scripts/webkitpy/common/net/irc/ircbot.py: Using new style for raising exceptions.
* Scripts/webkitpy/common/thread/messagepump.py: Same.
* Scripts/webkitpy/tool/bot/queueengine.py: Same.
* Scripts/webkitpy/tool/commands/queues.py: Same.
* Scripts/webkitpy/tool/commands/stepsequence.py: Same.
* Scripts/webkitpy/tool/multicommandtool.py: Same.
* Scripts/webkitpy/tool/steps/abstractstep.py: Same.
2017-04-28 Simon Fraser <simon.fraser@apple.com>
Add system trace points for Document::updateTouchEventRegions()
https://bugs.webkit.org/show_bug.cgi?id=171470
rdar://problem/31901239
Reviewed by Tim Horton.
Add trace markers for updateTouchEventRegions.
* Tracing/SystemTracePoints.plist:
2017-04-28 Jonathan Bedard <jbedard@apple.com>
webkitpy: Add apple_additions to webkitpy to insert Internal tools
https://bugs.webkit.org/show_bug.cgi?id=170461
<rdar://problem/31433077>
Reviewed by Daniel Bates.
Allow a package to be pulled in by run-webkit-tests which provides an interface to
run layout tests on an iOS device. If this package is not available, throw an
exception when attempting to run layout tests on an iOS device.
* Scripts/webkitpy/port/config.py:
(apple_additions): Import apple_additions package.
* Scripts/webkitpy/port/device.py:
(Device.install_dylibs): Pass a directory with all the frameworks and dylibs to be
installed on a device.
(Device.prepare_for_testing): Pass a list of ports to forward from the device to the
host, the bundle id of the app to be used for testing and a path to the layout test
directory to be mounted on the device.
(Device.finished_testing):
* Scripts/webkitpy/port/factory.py:
(platform_options): Add apple_additions platform options if apple_additions exists.
* Scripts/webkitpy/port/ios.py:
(IOSPort.setup_test_run): Install dylibs and frameworks on the device, pass ports
to forward, the bundle ID of the testing app and the layout tests directory to
each device.
* Scripts/webkitpy/port/ios_device.py:
(IOSDevicePort):
(IOSDevicePort.default_child_processes): Query apple_additions for the number of child
processes to be run.
(IOSDevicePort.using_multiple_devices): Always assume multiple devices are used. When
a single device is used, it is still accessed through an array.
(IOSDevicePort._device_for_worker_number_map): Query apple_additions for the device
for worker number map.
(IOSDevicePort._driver_class): Query apple_additions for the test driver.
(IOSDevicePort.determine_full_port_name): Use class variable over hard-coded string.
(IOSDevicePort.check_for_leaks): No implementation for iOSDevicePort.
(IOSDevicePort.look_for_new_crash_logs): Ditto.
(IOSDevicePort.look_for_new_samples): Ditto.
(IOSDevicePort.sample_process): Ditto.
(IOSDevicePort._build_driver_flags): Use class variable over hard-coded string.
(IOSDevicePort._create_devices): Check that devices are available for testing and check
that we have enough devices for each child process.
(IOSDevicePort.clean_up_test_run): Have apple_additions preform any needed clean up.
* Scripts/webkitpy/port/ios_device_unittest.py:
(IOSDeviceTest.test_operating_system):
(IOSDeviceTest.test_spindump): Override method from DarwinTest.
(IOSDeviceTest.test_sample_process): Ditto.
(IOSDeviceTest.test_sample_process_exception): Ditto.
2017-04-28 Wenson Hsieh <wenson_hsieh@apple.com>
Fix and re-enable data interaction unit tests
https://bugs.webkit.org/show_bug.cgi?id=171446
<rdar://problem/31820646>
Reviewed by Tim Horton.
Enables all DataInteractionTests, and adjusts file upload tests to no longer write to a temporary file before
registering with the UIItemProvider, and instead just register data directly via
-registerDataRepresentationForTypeIdentifier:visibility:loadHandler:.
* TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
(TestWebKitAPI::TEST):
(temporaryURLForDataInteractionFileLoad): Deleted.
(cleanUpDataInteractionTemporaryPath): Deleted.
(-[UIItemProvider registerFileRepresentationForTypeIdentifier:withData:filename:]): Deleted.
* TestWebKitAPI/ios/DataInteractionSimulator.h:
* TestWebKitAPI/ios/DataInteractionSimulator.mm:
2017-04-28 Brady Eidson <beidson@apple.com>
Teach the DatabaseProcess to be fully SessionID aware
https://bugs.webkit.org/show_bug.cgi?id=171451
Reviewed by Geoffrey Garen.
* TestWebKitAPI/Tests/WebKit2Cocoa/WebsiteDataStoreCustomPaths.mm:
2017-04-28 Jonathan Bedard <jbedard@apple.com>
Unreviewed follow-up to r214705.
shut.copytree will fail if given a file as an argument instead of a directory.
* Scripts/webkitpy/common/system/filesystem.py:
(FileSystem.copy_to_base_host): Use copytree when source is a directory and copyfile
when source is a file.
(FileSystem.copy_from_base_host): Ditto.
2017-04-28 Chris Dumez <cdumez@apple.com>
Update DOMTokenList.replace() to match the latest DOM specification
https://bugs.webkit.org/show_bug.cgi?id=171388
Reviewed by Alex Christensen.
Add API test coverage for new Vector API.
* TestWebKitAPI/Tests/WTF/Vector.cpp:
(TestWebKitAPI::TEST):
2017-04-28 Jonathan Bedard <jbedard@apple.com>
WebKitTestRunner/DumpRenderTree prevent device from sleeping
https://bugs.webkit.org/show_bug.cgi?id=170731
Reviewed by Alex Christensen.
While running layout tests on a device, the device should not be put asleep.
* DumpRenderTree/mac/DumpRenderTree.mm:
(dumpRenderTree): Disable idle timer.
* WebKitTestRunner/ios/TestControllerIOS.mm:
(WTR::TestController::platformInitialize): Ditto.
2017-04-28 Brady Eidson <beidson@apple.com>
Start of support for multiple WebsiteDataStore/SessionIDs per process
https://bugs.webkit.org/show_bug.cgi?id=171422
Reviewed by Geoffrey Garen.
* TestWebKitAPI/Tests/WebKit2Cocoa/WebsiteDataStoreCustomPaths.mm:
(TEST):
2017-04-28 Youenn Fablet <youenn@apple.com>
Adding a runtime flag specific to MediaDevices
https://bugs.webkit.org/show_bug.cgi?id=171433
Reviewed by Geoffrey Garen.
Updating WTR and DRT as peer connection and media stream runtime flags are enabled by default.
Setting media devices runtime flag to true for WTR and DRT.
* DumpRenderTree/mac/DumpRenderTree.mm:
(enableExperimentalFeatures):
(resetWebPreferencesToConsistentValues):
* TestWebKitAPI/Tests/WebKit2/EnumerateMediaDevices.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit2/UserMedia.cpp:
(TestWebKitAPI::TEST):
* WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
(WTR::InjectedBundle::beginTesting):
* WebKitTestRunner/InjectedBundle/TestRunner.cpp:
(WTR::TestRunner::setMediaDevicesEnabled):
(WTR::TestRunner::setMediaStreamEnabled): Deleted.
(WTR::TestRunner::setPeerConnectionEnabled): Deleted.
* WebKitTestRunner/InjectedBundle/TestRunner.h:
* WebKitTestRunner/TestController.cpp:
(WTR::TestController::resetPreferencesToConsistentValues):
2017-04-28 Dean Jackson <dino@apple.com>
[WebGPU] Label MTLCommandQueues with a prefix for internal telemetry
https://bugs.webkit.org/show_bug.cgi?id=171441
<rdar://problem/31826915>
Reviewed by Tim Horton.
Add an API test for GPUCommandQueue, exercising creation
and setting the label.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebCore/mac/GPUCommandQueue.mm: Added.
(TestWebKitAPI::TEST_F):
2017-04-28 Joanmarie Diggs <jdiggs@igalia.com>
[ATK] aria-modal="true" should be exposed via ATK_STATE_MODAL
https://bugs.webkit.org/show_bug.cgi?id=171188
Reviewed by Chris Fleizach.
Add "AXModal" attribute string so that we can test the state's exposure.
* WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
(WTR::AccessibilityUIElement::boolAttributeValue):
2017-04-28 Joanmarie Diggs <jdiggs@igalia.com>
[ATK] GridCellRole should implement AtkTableCell (regression?)
https://bugs.webkit.org/show_bug.cgi?id=171179
Reviewed by Chris Fleizach.
Add new "AXInterfaceTableCell" attribute so that we can test whether or
not there is an implementation of AtkTableCell (i.e. without risking false
negatives from bugs in the interface's implementation).
* WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
(WTR::AccessibilityUIElement::boolAttributeValue):
2017-04-27 Carlos Garcia Campos <cgarcia@igalia.com>
Move UUID from WebCore/platform to WTF
https://bugs.webkit.org/show_bug.cgi?id=171372
Reviewed by Michael Catanzaro.
* WebKitTestRunner/TestController.cpp:
2017-04-27 Alex Christensen <achristensen@webkit.org>
Add stub SPI for setting cookie storage path on _WKWebsiteDataStoreConfiguration
https://bugs.webkit.org/show_bug.cgi?id=171399
Reviewed by Brady Eidson.
* TestWebKitAPI/Tests/WebKit2Cocoa/WebsiteDataStoreCustomPaths.html:
* TestWebKitAPI/Tests/WebKit2Cocoa/WebsiteDataStoreCustomPaths.mm:
(TEST):
2017-04-27 Ryan Haddad <ryanhaddad@apple.com>
Disable flaky API test WKWebView.SetOverrideContentSecurityPolicyWithEmptyStringForPageWithCSP.
https://bugs.webkit.org/show_bug.cgi?id=167914
Unreviewed test gardening.
* TestWebKitAPI/Tests/WebKit2Cocoa/OverrideContentSecurityPolicy.mm:
(TEST):
2017-04-26 Saam Barati <sbarati@apple.com>
Add some more testing modes for Wasm tests now that we have tier up
https://bugs.webkit.org/show_bug.cgi?id=171360
Reviewed by Keith Miller.
Lets enable the FTL on all Wasm tests. Let's also run each
test with and without CJIT.
* Scripts/run-jsc-stress-tests:
2017-04-26 Aakash Jain <aakash_jain@apple.com>
JSC EWS Patch Relevance skips few JSC scripts
https://bugs.webkit.org/show_bug.cgi?id=171351
Reviewed by Alexey Proskuryakov.
* Scripts/webkitpy/tool/steps/checkpatchrelevance.py:
(CheckPatchRelevance): Added few jsc related scripts.
2017-04-26 Youenn Fablet <youenn@apple.com>
Test importer should delete obsolete files based on w3c-import.log
https://bugs.webkit.org/show_bug.cgi?id=171348
Reviewed by Chris Dumez.
* Scripts/webkitpy/w3c/test_importer.py:
(TestImporter.do_import): Removing dangling -expected.txt files in regular import mode.
(TestImporter.remove_deleted_files): Fixing according w3c-import.log current format.
* Scripts/webkitpy/w3c/test_importer_unittest.py:
(test_remove_obsolete_content):
2017-04-26 Jonathan Bedard <jbedard@apple.com>
REGRESSION (r213926): We're sometimes trying to start WebKitTestRunner without proper DYLD variables
<rdar://problem/31816459>
Unreviewed infrastructure fix.
Some of our iOS Simulator bots are slow and will register crashes due to an incorrect
DYLD_FRAMEWORK_PATH when installing an app.
* Scripts/webkitpy/port/ios.py:
(IOSPort.setup_test_run): Pass DYLD_FRAMEWORK_PATH to app on install.
2017-04-26 Joanmarie Diggs <jdiggs@igalia.com>
[ATK] Elements with a defined, non-false value for aria-current should expose ATK_STATE_ACTIVE
https://bugs.webkit.org/show_bug.cgi?id=171163
Reviewed by Chris Fleizach.
Add support for state-change notifications for ATK_STATE_ACTIVE.
* WebKitTestRunner/InjectedBundle/atk/AccessibilityNotificationHandlerAtk.cpp:
2017-04-26 Jonathan Bedard <jbedard@apple.com>
webkitpy: Teardown iOS Simulators on exit if managed Simulators are still running
https://bugs.webkit.org/show_bug.cgi?id=171293
Reviewed by Aakash Jain.
We should make an effort to teardown simulators which we booted even when an exception is
thrown while booting. Make some IOSSimulatorPort functions into static methods and register
one of these functions to be run at exit to ensure any devices webkitpy is managing gets
torn down.
* Scripts/webkitpy/layout_tests/controllers/manager.py:
(Manager._set_up_run): Rely on exit handlers to teardown, not exceptions.
* Scripts/webkitpy/port/ios_simulator.py:
(IOSSimulatorPort._teardown_managed_simulators): Function run on exit which will kill all
iOS simulators and teardown and managed devices.
(IOSSimulatorPort._create_simulators): Register teardown function.
(IOSSimulatorPort.clean_up_test_run): Move device teardown to _teardown_managed_simulators.
(IOSSimulatorPort._remove_device): Deleted.
2017-04-26 Joanmarie Diggs <jdiggs@igalia.com>
[ATK] Implement support for new ARIA 1.1 values of aria-haspopup
https://bugs.webkit.org/show_bug.cgi?id=171164
Reviewed by Chris Fleizach.
hasPopup() should return whether or not ATK_STATE_HAS_POPUP is in the
AtkStateSet; not what is found in the AtkObject's attributes.
* WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
(WTR::AccessibilityUIElement::hasPopup):
2017-04-25 Alex Christensen <achristensen@webkit.org>
Encoded filename should be decoded for WKContentExtension.identifier
https://bugs.webkit.org/show_bug.cgi?id=171316
Reviewed by Andy Estes.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKit2Cocoa/WKContentExtensionStore.mm: Copied from Tools/TestWebKitAPI/Tests/WebKit2Cocoa/WKUserContentExtensionStore.mm.
(TEST_F):
* TestWebKitAPI/Tests/WebKit2Cocoa/WKUserContentExtensionStore.mm: Removed.
2017-04-25 Alex Christensen <achristensen@webkit.org>
REGRESSION(206450): WebKit2PlatformMouseEvent m_modifierFlags not set
https://bugs.webkit.org/show_bug.cgi?id=171297
<rdar://problem/31530719>
Reviewed by Geoffrey Garen.
* TestWebKitAPI/PlatformWebView.h:
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKit2/EventModifiers.cpp: Added.
(TestWebKitAPI::didFinishLoadForFrame):
(TestWebKitAPI::mouseDidMoveOverElement):
(TestWebKitAPI::setClients):
(TestWebKitAPI::TEST):
* TestWebKitAPI/mac/PlatformWebViewMac.mm:
(TestWebKitAPI::PlatformWebView::simulateRightClick):
(TestWebKitAPI::PlatformWebView::simulateMouseMove):
2017-04-25 Wenson Hsieh <wenson_hsieh@apple.com>
Unreviewed, temporarily disable the data interaction unit tests.
The API around data interaction will change significantly in the near future, and
these tests will begin to fail. These will be reenabled once the bots are on an SDK
that supports the updated data interaction API.
* TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
* TestWebKitAPI/ios/DataInteractionSimulator.h:
* TestWebKitAPI/ios/DataInteractionSimulator.mm:
2017-04-25 Brent Fulgham <bfulgham@apple.com>
Limit allowed size of document.title to avoid locking WebKit clients
https://bugs.webkit.org/show_bug.cgi?id=165113
<rdar://problem/28324389>
Reviewed by Darin Adler.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj: Add new files.
* TestWebKitAPI/Tests/WebKit2/LimitTitleSize.cpp: Added.
* TestWebKitAPI/Tests/WebKit2/set-long-title.html: Added.
* TestWebKitAPI/Tests/mac/LimitTitleSize.mm: Added.
2017-04-25 John Wilander <wilander@apple.com>
Resource Load Statistics: Introduce shorter time-to-live for cookie partition whitelisting
https://bugs.webkit.org/show_bug.cgi?id=171295
<rdar://problem/31823818>
Reviewed by Brent Fulgham.
* WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
* WebKitTestRunner/InjectedBundle/TestRunner.cpp:
(WTR::TestRunner::setStatisticsTimeToLiveCookiePartitionFree):
(WTR::TestRunner::statisticsFireShouldPartitionCookiesHandler):
(WTR::TestRunner::statisticsFireShouldPartitionCookiesHandlerForOneDomain):
* WebKitTestRunner/InjectedBundle/TestRunner.h:
* WebKitTestRunner/TestController.cpp:
(WTR::TestController::setStatisticsTimeToLiveCookiePartitionFree):
(WTR::TestController::statisticsFireShouldPartitionCookiesHandler):
(WTR::TestController::statisticsFireShouldPartitionCookiesHandlerForOneDomain):
* WebKitTestRunner/TestController.h:
* WebKitTestRunner/TestInvocation.cpp:
(WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
2017-04-25 Tim Horton <timothy_horton@apple.com>
Try to fix the WKTR build after r215758
* Scripts/build-webkittestrunner:
2017-04-25 Daniel Bates <dabates@apple.com>
Remove more EFL code
https://bugs.webkit.org/show_bug.cgi?id=171288
Rubber-stamped by Simon Fraser.
The EFL port is no longer in the WebKit OpenSource Project repository. Remove more code
that was part of the EFL port.
* CMakeLists.txt:
* DumpRenderTree/AccessibilityController.h:
* DumpRenderTree/AccessibilityUIElement.cpp:
(AccessibilityUIElement::getJSClass):
* DumpRenderTree/AccessibilityUIElement.h:
* DumpRenderTree/DumpRenderTree.h:
* DumpRenderTree/cairo/PixelDumpSupportCairo.h:
* ImageDiff/efl/ImageDiff.cpp: Removed.
* MiniBrowser/efl/CMakeLists.txt: Removed.
* MiniBrowser/efl/main.c: Removed.
* Scripts/build-dumprendertree:
* Scripts/build-jsc:
* Scripts/build-webkit:
* Scripts/build-webkittestrunner:
* Scripts/run-minibrowser:
* Scripts/update-webkit-libs-jhbuild:
* Scripts/update-webkitefl-libs: Removed.
* Scripts/webkitdirs.pm:
(argumentsForConfiguration):
(extractNonMacOSHostConfiguration):
(executableProductDir):
(builtDylibPathForName):
(determinePortName):
(launcherPath):
(launcherName):
(getJhbuildPath):
(wrapperPrefixIfNeeded):
(generateBuildSystemFromCMakeProject):
(buildCMakeProjectOrExit):
(isEfl): Deleted.
* Scripts/webkitperl/FeatureList.pm:
* Scripts/webkitperl/webkitdirs_unittest/extractNonMacOSHostConfiguration.pl:
* Scripts/webkitpy/common/config/ports.py:
(DeprecatedPort.port):
(GtkWK2Port.run_webkit_tests_command):
(EflWK2Port): Deleted.
(EflWK2Port.build_webkit_command): Deleted.
* Scripts/webkitpy/port/builders.py:
* Scripts/webkitpy/port/efl.py: Removed.
* Scripts/webkitpy/port/efl_unittest.py: Removed.
* Scripts/webkitpy/port/factory.py:
(platform_options):
(PortFactory):
* Scripts/webkitpy/style/checkers/test_expectations_unittest.py:
(TestExpectationsTestCase.test_determine_port_from_expectations_path):
* Scripts/webkitpy/tool/commands/rebaseline_unittest.py:
(TestRebaselineTest.test_baseline_directory):
(TestRebaselineExpectations.test_rebaseline_expectations):
* TestWebKitAPI/PlatformEfl.cmake: Removed.
* TestWebKitAPI/PlatformWebView.h:
* TestWebKitAPI/Tests/WebKit2/WKPreferences.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit2/efl/WKViewClientWebProcessCallbacks.cpp: Removed.
* TestWebKitAPI/Tests/WebKit2/efl/WKViewClientWebProcessCallbacks_Bundle.cpp: Removed.
* TestWebKitAPI/Tests/WebKit2/efl/WKViewScrollTo.cpp: Removed.
* TestWebKitAPI/Tests/WebKit2/efl/scrollTo.html: Removed.
* TestWebKitAPI/efl/InjectedBundleController.cpp: Removed.
* TestWebKitAPI/efl/PlatformUtilities.cpp: Removed.
* TestWebKitAPI/efl/PlatformWebView.cpp: Removed.
* TestWebKitAPI/efl/main.cpp: Removed.
* WebKitTestRunner/EventSenderProxy.h:
* WebKitTestRunner/InjectedBundle/AccessibilityController.cpp:
* WebKitTestRunner/InjectedBundle/AccessibilityController.h:
* WebKitTestRunner/InjectedBundle/AccessibilityUIElement.cpp:
* WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h:
* WebKitTestRunner/InjectedBundle/EventSendingController.cpp:
(WTR::EventSendingController::contextClick):
* WebKitTestRunner/InjectedBundle/TestRunner.h:
* WebKitTestRunner/InjectedBundle/atk/AccessibilityNotificationHandlerAtk.cpp:
(WTR::AccessibilityNotificationHandler::setNotificationFunctionCallback):
(WTR::AccessibilityNotificationHandler::removeAccessibilityNotificationHandler):
* WebKitTestRunner/InjectedBundle/efl/ActivateFontsEfl.cpp: Removed.
* WebKitTestRunner/InjectedBundle/efl/FontManagement.cpp: Removed.
* WebKitTestRunner/InjectedBundle/efl/FontManagement.h: Removed.
* WebKitTestRunner/InjectedBundle/efl/InjectedBundleEfl.cpp: Removed.
* WebKitTestRunner/InjectedBundle/efl/TestRunnerEfl.cpp: Removed.
* WebKitTestRunner/PlatformEfl.cmake: Removed.
* WebKitTestRunner/PlatformWebView.h:
* WebKitTestRunner/TestController.cpp:
(WTR::TestController::resetStateToConsistentValues):
* WebKitTestRunner/efl/EventSenderProxyEfl.cpp: Removed.
* WebKitTestRunner/efl/PlatformWebViewEfl.cpp: Removed.
* WebKitTestRunner/efl/TestControllerEfl.cpp: Removed.
* WebKitTestRunner/efl/main.cpp: Removed.
* efl/install-dependencies: Removed.
* efl/jhbuild-optional.modules: Removed.
* efl/jhbuild.modules: Removed.
* efl/jhbuildrc: Removed.
* efl/patches/evas-fix-build-with-giflib5.patch: Removed.
* efl/patches/fontconfig-C-11-requires-a-space-between-literal-and-identifier.patch: Removed.
* efl/patches/gst-libav.patch: Removed.
* efl/patches/gst-plugins-base-rtp-rtcpbuffer-fix-typo-in-enum.patch: Removed.
* efl/patches/gst-plugins-good-Revert-qtdemux-expose-streams-with-first-moof-for-fr.patch: Removed.
* efl/patches/gst-plugins-good-use-the-tfdt-decode-time.patch: Removed.
* efl/patches/openwebrtc-gst-plugins-clang-warning-fix.patch: Removed.
* gtk/manifest.txt.in:
2017-04-25 Daniel Bates <dabates@apple.com>
[Cocoa][Win] Enable of X-Content-Type-Options: nosniff header
https://bugs.webkit.org/show_bug.cgi?id=136452
<rdar://problem/23412620>
Reviewed by Brent Fulgham.
Enable X-Content-Type-Options: nosniff on Mac, iOS and Windows platforms.
* Scripts/webkitperl/FeatureList.pm: Also do not enable nosniff on EFL
as the EFL port is no longer in the WebKit OpenSource repository.
* TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
2017-04-25 Zan Dobersek <zdobersek@igalia.com>
Unreviewed follow-up to r215739 and r215740.
* gtk/jhbuild.modules: List the libgcrypt patch that has to be applied.
This (and r215740) was supposed to land in r215739, but I managed to
specify the previous version of the patch.
2017-04-25 Zan Dobersek <zdobersek@igalia.com>
Unreviewed follow-up to r215739.
* gtk/patches/libgcrypt-use-only-dev-urandom-for-testing.patch: Add the missing
libgcrypt patch that enforces the use of /dev/urandom.
2017-04-25 Zan Dobersek <zdobersek@igalia.com>
[GTK] Add libgpg-error, libgcrypt libraries to JHBuild
https://bugs.webkit.org/show_bug.cgi?id=171270
Reviewed by Michael Catanzaro.
* gtk/jhbuild.modules: Add the latest stable versions of libgpg-error and libgcrypt
libraries to the webkitgtk-testing-dependencies metamodule. This will help people
that use systems that don't yet provide libgcrypt >= 1.7.0.
2017-04-25 Carlos Alberto Lopez Perez <clopez@igalia.com>
[GTK] Improve an unit test for the JHBuild wrapper.
https://bugs.webkit.org/show_bug.cgi?id=168036
Unreviewed follow-up patch after r215727
* Scripts/webkitpy/port/base_unittest.py:
(test_jhbuild_wrapper): Improve the unit test by ensuring the directory
wasn't there before calling MockFileSystem.maybe_make_directory(), and
also that it exists after calling it.
2017-04-25 Carlos Alberto Lopez Perez <clopez@igalia.com>
[GTK] ImageDiff should be run by jhbuild-wrapper in case of using jhbuild
https://bugs.webkit.org/show_bug.cgi?id=168036
Reviewed by Michael Catanzaro.
Call ImageDiff with the JHBuild wrapper if we should use it.
Also add some unit tests for the JHBuild wrapper feature.
* Scripts/webkitpy/port/base.py:
(Port._should_use_jhbuild): Use self._filesystem instead of os.path to allow mock testing.
* Scripts/webkitpy/port/base_unittest.py:
(test_jhbuild_wrapper): Add a test for port._should_use_jhbuild()
* Scripts/webkitpy/port/image_diff.py:
(ImageDiffer._start): The actual fix, use the wrapper if we should.
* Scripts/webkitpy/port/image_diff_unittest.py: Removed. This two tests are now integrated in port_testcase
* Scripts/webkitpy/port/port_testcase.py:
(PortTestCase):
(PortTestCase.test_diff_image): Test the command with wrapper and without it.
(PortTestCase.test_diff_image_passed): Moved from image_diff_unittest.py
(PortTestCase.test_diff_image_failed): Moved from image_diff_unittest.py
2017-04-25 Wenson Hsieh <wenson_hsieh@apple.com>
Support reading NSURL titles from the pasteboard when performing data interaction
https://bugs.webkit.org/show_bug.cgi?id=171156
<rdar://problem/31356937>
Reviewed by Tim Horton.
Adds a new unit test, DataInteractionTests.ExternalSourceTitledNSURL.
* TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
(TestWebKitAPI::TEST):
2017-04-24 Wenson Hsieh <wenson_hsieh@apple.com>
Respect fidelity order when reading web content from item providers
https://bugs.webkit.org/show_bug.cgi?id=171155
<rdar://problem/31356937>
Reviewed by Tim Horton.
Adds a new unit test (DataInteractionTests.RespectsExternalSourceFidelityRankings). See WebCore ChangeLog for
more details.
* TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
(TestWebKitAPI::TEST):
2017-04-24 Carlos Alberto Lopez Perez <clopez@igalia.com>
SyntaxError fix after r215702.
https://bugs.webkit.org/show_bug.cgi?id=168944
Unreviewed "build" fix.
* BuildSlaveSupport/built-product-archive:
(archiveBuiltProduct):
2017-04-24 Jonathan Bedard <jbedard@apple.com>
Package ImageDiff built with host SDK
https://bugs.webkit.org/show_bug.cgi?id=168944
<rdar://problem/30745642>
Reviewed by David Kilzer.
iOS Simulator and iOS device should archive the ImageDiff built for the host
machine.
* BuildSlaveSupport/built-product-archive:
(determineWebKitBuildDirectories): Add _hostBuildDirectory for iOS.
(archiveBuiltProduct): Archive Mac products for iOS so that ImageDiff is included.
2017-04-24 Keith Miller <keith_miller@apple.com>
ThreadMessage API tests failing on release bots
https://bugs.webkit.org/show_bug.cgi?id=171246
Reviewed by Saam Barati.
Need to make sure that C++ doesn't optimize away our spin loop.
* TestWebKitAPI/Tests/WTF/ThreadMessages.cpp:
(runThreadMessageTest):
(TEST):
2017-04-24 Alex Christensen <achristensen@webkit.org>
Reduce copies and allocations in SharedBuffer::append
https://bugs.webkit.org/show_bug.cgi?id=170956
Reviewed by Andreas Kling.
* TestWebKitAPI/Tests/WebCore/cocoa/SharedBuffer.mm:
(TestWebKitAPI::TEST_F):
2017-04-24 Carlos Garcia Campos <cgarcia@igalia.com>
[GTK] Switch to use ENABLE_REMOTE_INSPECTOR instead of ENABLE_INSPECTOR_SERVER for the remote inspector
https://bugs.webkit.org/show_bug.cgi?id=166680
Reviewed by Michael Catanzaro.
Update remote inspector unit tests.
* TestWebKitAPI/Tests/WebKit2Gtk/InspectorTestServer.cpp:
(main):
* TestWebKitAPI/Tests/WebKit2Gtk/TestInspectorServer.cpp:
(connectToInspectorServer):
(waitUntilInspectorServerIsReady):
(startTestServer):
(testInspectorServerPageList):
(beforeAll):
2017-04-23 Youenn Fablet <youenn@apple.com>
Add a tool to update expected.txt files from EWS bot results
https://bugs.webkit.org/show_bug.cgi?id=169538
Reviewed by Ryosuke Niwa.
This script updates expected-txt files from bugzilla posted EWS results.
It uses mac-wk2 as the generic baseline and adds platform-specific results if other ports
have results different from the generic baseline.
* Scripts/update-test-expectations-from-bugzilla: Added.
* Scripts/webkitpy/common/net/bugzilla/test_expectation_updater.py: Added.
* Scripts/webkitpy/common/net/bugzilla/test_expectation_updater_unittest.py: Added.
* Scripts/webkitpy/layout_tests/controllers/test_result_writer.py: Adding helper routines.
2017-04-22 Youenn Fablet <youenn@apple.com>
Add an option to import tip-of-tree WPT tests
https://bugs.webkit.org/show_bug.cgi?id=171152
Reviewed by Joseph Pecoraro.
Adding a '-t' option to import tip of tree WPT tests.
Updating importer based on the fact that csswg-test is no longer a thing.
* Scripts/webkitpy/w3c/test_downloader.py:
(TestDownloader.download_tests):
* Scripts/webkitpy/w3c/test_importer.py:
(configure_logging):
(TestImporter.do_import):
(TestImporter.write_import_log):
2017-04-22 Wenson Hsieh <wenson_hsieh@apple.com>
File inputs only accept UTI types that can be inserted into contenteditable areas when dropping
https://bugs.webkit.org/show_bug.cgi?id=171177
<rdar://problem/31765379>
Reviewed by Andy Estes.
Tests uploading a JSON file to a file input.
* TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
(TestWebKitAPI::TEST):
2017-04-21 Wenson Hsieh <wenson_hsieh@apple.com>
Support writing link titles to the pasteboard when beginning data interaction on a link
https://bugs.webkit.org/show_bug.cgi?id=171154
<rdar://problem/31356937>
Reviewed by Andy Estes.
Augments an existing unit test, DataInteractionTests.LinkToInput, to also check that the fetching the NSURL from
the source UIItemProvider generated by performing data interaction results in an NSURL with the _title attribute
matching the title of the link.
* TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
(TestWebKitAPI::TEST):
2017-04-21 Michael Catanzaro <mcatanzaro@igalia.com>
Unreviewed, rolling out r215608.
Hundreds of test failures on GTK bot
Reverted changeset:
"Reduce copies and allocations in SharedBuffer::append"
https://bugs.webkit.org/show_bug.cgi?id=170956
http://trac.webkit.org/changeset/215608
2017-04-21 Wenson Hsieh <wenson_hsieh@apple.com>
[WK2] Add delegate hooks for overriding unhanded data interaction operations
https://bugs.webkit.org/show_bug.cgi?id=171005
<rdar://problem/31669646>
Reviewed by Tim Horton.
Adds a new API test checking that normal WebKit behavior when vending updated data interaction operations may
be overridden, resulting in a data interaction operation being performed when it otherwise would not have. Also
adjusts for some changes in WebKit2 (See WebKit2 ChangeLog for more details).
New API test:
DataInteractionTests.OverrideDataInteractionOperation
* TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
(-[UIItemProvider registerDataRepresentationForTypeIdentifier:withData:]):
(TestWebKitAPI::TEST):
* TestWebKitAPI/ios/DataInteractionSimulator.h:
* TestWebKitAPI/ios/DataInteractionSimulator.mm:
(-[DataInteractionSimulator initWithWebView:]):
(-[DataInteractionSimulator dealloc]):
(-[DataInteractionSimulator _webView:dataInteractionOperationWasHandled:forSession:itemProviders:]):
(-[DataInteractionSimulator _webView:willUpdateDataInteractionOperationToOperation:forSession:]):
(-[DataInteractionSimulator webViewDidPerformDataInteractionControllerOperation:]): Deleted.
2017-04-21 Ryan Haddad <ryanhaddad@apple.com>
Temporarily disable two flaky API tests.
Unreviewed test gardening.
* TestWebKitAPI/Tests/WebKit2Cocoa/BundleRangeHandle.mm:
(TEST):
* TestWebKitAPI/Tests/WebKit2Cocoa/DataDetection.mm:
(TEST):
2017-04-21 Keith Miller <keith_miller@apple.com>
Unreviewed, rolling out r215634.
underlying build issues should have been fixed
Reverted changeset:
"Unreviewed, rolling out r215620 and r215623."
https://bugs.webkit.org/show_bug.cgi?id=171139
http://trac.webkit.org/changeset/215634
2017-04-21 Aakash Jain <aakash_jain@apple.com>
Bubbles on dashboard doesn't turn red for test262 failures
https://bugs.webkit.org/show_bug.cgi?id=171129
Reviewed by Alexey Proskuryakov.
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotIteration.js: Added test262-test.
2017-04-21 Commit Queue <commit-queue@webkit.org>
Unreviewed, rolling out r215620 and r215623.
https://bugs.webkit.org/show_bug.cgi?id=171139
broke arm64 build (Requested by keith_miller on #webkit).
Reverted changesets:
"Add signaling API"
https://bugs.webkit.org/show_bug.cgi?id=170976
http://trac.webkit.org/changeset/215620
"Unreviewed, fix Cloop build."
http://trac.webkit.org/changeset/215623
2017-04-20 Keith Miller <keith_miller@apple.com>
Add signaling API
https://bugs.webkit.org/show_bug.cgi?id=170976
Reviewed by Filip Pizlo.
Add tests for ThreadMessages.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WTF/ThreadMessages.cpp: Added.
(runThreadMessageTest):
(TEST):
2017-04-20 Conrad Shultz <conrad_shultz@apple.com>
commit-log-editor should respect the git editor if one is set
https://bugs.webkit.org/show_bug.cgi?id=171085
<rdar://problem/31745506>
Reviewed by Daniel Bates.
* Scripts/commit-log-editor:
If Git is available, consider GIT_LOG_EDITOR and any global Git editor preference when
deciding which editor to present. We examine the global editor preference since that may be
set automatically by installers or third-party tools.
2017-04-21 Alex Christensen <achristensen@webkit.org>
Reduce copies and allocations in SharedBuffer::append
https://bugs.webkit.org/show_bug.cgi?id=170956
Reviewed by Andreas Kling.
* TestWebKitAPI/Tests/WebCore/cocoa/SharedBuffer.mm:
(TestWebKitAPI::TEST_F):
2017-04-20 Konstantin Tokarev <annulen@yandex.ru>
[cmake] Define FORWARDING_HEADERS_DIR in WebKitFS and use it everywhere
https://bugs.webkit.org/show_bug.cgi?id=171071
Reviewed by Michael Catanzaro.
"${DERIVED_SOURCES_DIR}/ForwardingHeaders" path occurs very often in the
build system files. GTK-specifc FORWARDING_HEADERS_DIR variable should
be available for all ports.
* DumpRenderTree/PlatformMac.cmake:
* MiniBrowser/mac/CMakeLists.txt:
* MiniBrowser/win/CMakeLists.txt:
* TestWebKitAPI/PlatformJSCOnly.cmake:
* TestWebKitAPI/PlatformMac.cmake:
* TestWebKitAPI/PlatformWin.cmake:
* WebKitTestRunner/PlatformMac.cmake:
2017-04-20 Joseph Pecoraro <pecoraro@apple.com>
Test262 bot does not go red with failures
https://bugs.webkit.org/show_bug.cgi?id=171044
Reviewed by Aakash Jain.
The piped output of run-jsc-stress-tests is different from
its non-piped output. Switch to parsing the correct output.
* BuildSlaveSupport/build.webkit.org-config/master.cfg:
(RunTest262Tests.countFailures):
Just count the number of lines that start with "FAIL:".
* BuildSlaveSupport/build.webkit.org-config/mastercfg_unittest.py:
(RunTest262TestsTest.test_no_regressions_output):
(test_failure_output):
(test_failures_output):
Updated tests with new sample output produced partially from bots and
locally. In cases of failure the return code of run-jsc-stress-tests
is still 0 so update the expected return code in the tests.
2017-04-20 Brady Eidson <beidson@apple.com>
WebContent process becomes unresponsive after returning nil from async version of -webView:createWebViewWithConfiguration:...
<rdar://problem/31739023> and https://bugs.webkit.org/show_bug.cgi?id=171090
Reviewed by Andy Estes.
* TestWebKitAPI/Tests/WebKit2/open-and-close-window.html:
* TestWebKitAPI/Tests/WebKit2Cocoa/OpenAndCloseWindow.mm:
(resetToConsistentState):
(-[OpenAndCloseWindowUIDelegate webViewDidClose:]):
(-[OpenAndCloseWindowUIDelegate webView:createWebViewWithConfiguration:forNavigationAction:windowFeatures:]):
(TEST):
(-[OpenAndCloseWindowUIDelegateAsync _webView:createWebViewWithConfiguration:forNavigationAction:windowFeatures:completionHandler:]):
2017-04-20 Wenson Hsieh <wenson_hsieh@apple.com>
[ios-simulator] PositionInformationTests API tests are timing out
https://bugs.webkit.org/show_bug.cgi?id=171089
Rubber-stamped by Tim Horton.
Addresses failures observed in the new position information tests added in r215573 by only running them if the
DATA_INTERACTION feature flag is enabled.
* TestWebKitAPI/Tests/ios/PositionInformationTests.mm:
2017-04-20 Brady Eidson <beidson@apple.com>
Skip WebKit2.OpenAndCloseWindowAsyncCallbackException for now.
https://bugs.webkit.org/show_bug.cgi?id=171083
Unreviewed.
* TestWebKitAPI/Tests/WebKit2Cocoa/OpenAndCloseWindow.mm:
2017-04-20 Brady Eidson <beidson@apple.com>
Add CompletionHandlerCallChecker to SPI added in r215545.
https://bugs.webkit.org/show_bug.cgi?id=171067
Reviewed by Dan Bernstein.
* TestWebKitAPI/Tests/WebKit2Cocoa/OpenAndCloseWindow.mm:
(TEST):
(-[OpenAndCloseWindowUIDelegateAsync _webView:createWebViewWithConfiguration:forNavigationAction:windowFeatures:completionHandler:]):
2017-04-20 Wenson Hsieh <wenson_hsieh@apple.com>
[WK2] -[WKContentView doAfterPositionInformationUpdate:atPosition:] should be robust against synchronous reentrancy
https://bugs.webkit.org/show_bug.cgi?id=170922
<rdar://problem/31634990>
Reviewed by Tim Horton.
Adds six new unit tests for retrieving interaction information at a given position in the UI process. See
WebKit2 ChangeLog for more details.
* TestWebKitAPI/Tests/ios/PositionInformationTests.mm:
(-[_WKDraggableElementInfo expectToBeLink:image:atPoint:]):
(TestWebKitAPI::TEST):
(TestWebKitAPI::expectCGPointsToBeEqual): Deleted.
2017-04-20 Xan Lopez <xlopez@igalia.com>
[GTK][jhbuild] Update glib and glib-networking to the latest stable versions
https://bugs.webkit.org/show_bug.cgi?id=170942
Reviewed by Carlos Garcia Campos.
Update glib and glib-networking to the last stable releases. This
is needed to get working TLS certificate verification at all at
least in Fedora.
* gtk/install-dependencies: add libmount, needed for newer glib.
* gtk/jhbuild.modules: update glib and glib-networking to last
stable releases.
2017-04-20 Joanmarie Diggs <jdiggs@igalia.com>
[ATK] Implement support for DPub ARIA roles
https://bugs.webkit.org/show_bug.cgi?id=170679
Reviewed by Chris Fleizach.
Add DPub ARIA landmark roles to roleToString().
* WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
2017-04-19 Joseph Pecoraro <pecoraro@apple.com>
Remove WebKitTestRunner code for enabling features that are already enabled by default
https://bugs.webkit.org/show_bug.cgi?id=171033
Reviewed by Ryosuke Niwa.
* WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
(WTR::InjectedBundle::beginTesting):
* WebKitTestRunner/InjectedBundle/TestRunner.cpp:
(WTR::TestRunner::setShadowDOMEnabled): Deleted.
(WTR::TestRunner::setCustomElementsEnabled): Deleted.
(WTR::TestRunner::setFetchAPIEnabled): Deleted.
(WTR::TestRunner::setDownloadAttributeEnabled): Deleted.
* WebKitTestRunner/InjectedBundle/TestRunner.h:
2017-04-19 Youenn Fablet <youenn@apple.com>
[Mac] Allow customizing H264 encoder
https://bugs.webkit.org/show_bug.cgi?id=170829
Reviewed by Alex Christensen.
* TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
2017-04-19 Brady Eidson <beidson@apple.com>
Add asynchronous equivalent of -[<WKUIDelegate> webView:createWebViewWithConfiguration:...].
<rdar://problem/30699851> and https://bugs.webkit.org/show_bug.cgi?id=171018
Reviewed by Tim Horton.
* TestWebKitAPI/Tests/WebKit2Cocoa/OpenAndCloseWindow.mm:
(TEST):
(-[OpenAndCloseWindowUIDelegateAsync webView:createWebViewWithConfiguration:forNavigationAction:windowFeatures:]):
(-[OpenAndCloseWindowUIDelegateAsync _webView:createWebViewWithConfiguration:forNavigationAction:windowFeatures:completionHandler:]):
2017-04-19 Brady Eidson <beidson@apple.com>
REGRESSION (r213168): An extra Web Content process is spun up on launch and is never closed.
<rdar://problem/30774839> and https://bugs.webkit.org/show_bug.cgi?id=171002
Reviewed by Alex Christensen.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKit2Cocoa/InitialWarmedProcessUsed.mm: Added.
2017-04-19 Brent Fulgham <bfulgham@apple.com>
[WK2] Run tests with ResourceLoadStatistics enabled
https://bugs.webkit.org/show_bug.cgi?id=170952
Reviewed by Andy Estes.
Excercise the load statistics code during tests.
* WebKitTestRunner/cocoa/TestControllerCocoa.mm:
(WTR::initializeWebViewConfiguration):
2017-04-19 Bill Ming <mbbill@gmail.com>
close_fds should be set to False on Windows.
https://bugs.webkit.org/show_bug.cgi?id=170838
Reviewed by Brent Fulgham.
* Scripts/webkitpy/common/system/executive.py:
(Executive._should_close_fds):
2017-04-19 David Kilzer <ddkilzer@apple.com>
Stop using strcpy() in WebKit::EnvironmentUtilities::stripValuesEndingWithString()
<https://webkit.org/b/170994>
<rdar://problem/29889932>
Reviewed by Brent Fulgham.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
(EnvironmentUtilitiesTest.cpp): Add to TestWebKitAPILibrary
target.
* TestWebKitAPI/Tests/WebKit2/EnvironmentUtilitiesTest.cpp: Add.
(TestWebKitAPI::strip): Helper method to set/get environment
variable for testing.
(TestWebKitAPI::WebKit2_StripValuesEndingWithString_Test): Add
tests.
2017-04-19 JF Bastien <jfbastien@apple.com>
WebAssembly: add script which can import GCC torture tests
https://bugs.webkit.org/show_bug.cgi?id=170740
Reviewed by Saam Barati.
Add a script which can import the GCC torture tests and create a
yaml file to run them as part of jsc's WebAssembly regression
tests.
This patch doesn't commit the tests themselves because they're
licensed differently.
* Scripts/run-jsc-stress-tests: learn how to run
Emscripten-generated .js+.wasm files, and do a bit of cleanup on
the options because WebAssembly is enabled by default.
* Scripts/update-wasm-gcc-torture.py: Added.
(parse_args):
(update_lkgr):
(untar_torture):
(list_js_files):
(waterfall_known_failures):
(create_yaml):
(main):
2017-04-19 Youenn Fablet <youenn@apple.com>
Import web-platform-tests/tools
https://bugs.webkit.org/show_bug.cgi?id=170718
Reviewed by Alex Christensen.
* Scripts/webkitpy/layout_tests/servers/web_platform_test_launcher.py:
(main):
* Scripts/webkitpy/layout_tests/servers/web_platform_test_server.py:
(WebPlatformTestServer.ports_to_forward):
(WebPlatformTestServer._prepare_config):
(WebPlatformTestServer._install_modules): Deleted.
* Scripts/webkitpy/w3c/test_importer.py:
(TestImporter.write_html_files_for_templated_js_tests):
2017-04-18 Wenson Hsieh <wenson_hsieh@apple.com>
[WK2] Add infrastructure and unit tests for file uploads using data interaction
https://bugs.webkit.org/show_bug.cgi?id=170903
<rdar://problem/31314689>
Reviewed by Tim Horton.
Adds 5 new unit tests covering different cases of uploading files through data interaction, as well as
infrastructure for simulating UIItemProviders that load file data. Makes a few adjustments to the
DataInteractionSimulator along the way, detailed in the per-method annotations below. See
<https://bugs.webkit.org/show_bug.cgi?id=170880> for more details about the change this patch is testing.
New tests:
DataInteractionTests.ExternalSourceImageToFileInput
DataInteractionTests.ExternalSourceHTMLToUploadArea
DataInteractionTests.ExternalSourceImageAndHTMLToSingleFileInput
DataInteractionTests.ExternalSourceImageAndHTMLToMultipleFileInput
DataInteractionTests.ExternalSourceImageAndHTMLToUploadArea
* TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
(testIconImage):
(temporaryURLForDataInteractionFileLoad):
(cleanUpDataInteractionTemporaryPath):
Creates and tears down temporary file directories for testing data interaction.
(-[UIItemProvider registerFileRepresentationForTypeIdentifier:withData:filename:]):
(TestWebKitAPI::TEST):
* TestWebKitAPI/ios/DataInteractionSimulator.h:
* TestWebKitAPI/ios/DataInteractionSimulator.mm:
Make necessary changes to be able to test what happens when data interaction ends over an element with no
operation. Previously, we would always simulate performing a data interaction operation when ending the
simulation, but this causes us to wait indefinitely for a data operation response to arrive in the UI process.
Instead, we need to note whether or not the content view is allowing data interaction, and only perform an
operation and wait for the -didPerform call if the operation was allowed. Otherwise, we immediately transition
the phase to Cancelled and end the run.
(-[DataInteractionSimulator _resetSimulatedState]):
(-[DataInteractionSimulator runFrom:to:]):
(-[DataInteractionSimulator _concludeDataInteractionAndPerformOperationIfNecessary]):
(-[DataInteractionSimulator _advanceProgress]):
(-[DataInteractionSimulator externalItemProviders]):
(-[DataInteractionSimulator setExternalItemProviders:]):
Previously, we hard-coded DataInteractionSimulator to only support a single external item provider. In order to
test the scenario where multiple files are being "data interacted" into a file-type input, we generalize this to
take multiple item providers.
(-[DataInteractionSimulator externalItemProvider]): Deleted.
(-[DataInteractionSimulator setExternalItemProvider:]): Deleted.
2017-04-18 John Wilander <wilander@apple.com>
Make WebCore::topPrivatelyControlledDomain() return "localhost" for localhost
https://bugs.webkit.org/show_bug.cgi?id=170798
<rdar://problem/31595108>
Reviewed by Alex Christensen.
* TestWebKitAPI/Tests/mac/PublicSuffix.mm:
(TestWebKitAPI::TEST_F):
Added two negative test cases for WebCore::isPublicSuffix().
Added test cases with mixed case domains, localhost, and
non-ASCII for WebCore::topPrivatelyControlledDomain().
2017-04-18 Jonathan Bedard <jbedard@apple.com>
Unreviewed, rolling out r215346 and 215361.
The problem these changes were fixing was addressed in
<https://trac.webkit.org/changeset/215416/webkit>.
Reverted changesets:
"webkitpy: Ignore previously launched pid when system is under
stress"
https://bugs.webkit.org/show_bug.cgi?id=170741
http://trac.webkit.org/changeset/215346
http://trac.webkit.org/changeset/215361
2017-04-17 Alex Christensen <achristensen@webkit.org>
Allow Variants of RetainPtrs
https://bugs.webkit.org/show_bug.cgi?id=170923
Reviewed by Tim Horton and Sam Weinig.
* TestWebKitAPI/Tests/WTF/Variant.cpp:
(TestWebKitAPI::TEST):
Add tests for RetainPtr and for another class with overloaded operator& to verify such classes can
work in Variants.
2017-04-17 Brady Eidson <beidson@apple.com>
Make WKHTTPCookieStore public.
<rdar://problem/31024691> and https://bugs.webkit.org/show_bug.cgi?id=170920
Reviewed by Geoffrey Garen.
* TestWebKitAPI/Tests/WebKit2Cocoa/WKHTTPCookieStore.mm:
(TEST):
2017-04-17 Youenn Fablet <youenn@apple.com>
Disable outdated WritableStream API
https://bugs.webkit.org/show_bug.cgi?id=170749
<rdar://problem/31446233>
Reviewed by Alex Christensen.
Replacing READABLE_STREAM_API, READABLE_BYTE_STREAM_API and WRITABLE_STREAM_API compilation flag by:
- A STREAMS_API compilation flag.
- A ReadableByteStreamAPI and WritableStreamAPI runtime flags, turned off except for RWT and DRT.
* DumpRenderTree/mac/DumpRenderTree.mm:
(enableExperimentalFeatures):
* TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
* WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
(WTR::InjectedBundle::beginTesting):
* WebKitTestRunner/InjectedBundle/TestRunner.cpp:
(WTR::TestRunner::setFetchAPIEnabled):
(WTR::TestRunner::setWritableStreamAPIEnabled):
(WTR::TestRunner::setReadableByteStreamAPIEnabled):
* WebKitTestRunner/InjectedBundle/TestRunner.h:
2017-04-17 Tim Horton <timothy_horton@apple.com>
Provide a viewport parameter to disable clipping to the safe area
https://bugs.webkit.org/show_bug.cgi?id=170766
<rdar://problem/31564634>
Reviewed by Beth Dakin.
* DumpRenderTree/ios/UIScriptControllerIOS.mm:
(WTR::UIScriptController::setObscuredInsets):
* TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
* TestRunnerShared/UIScriptContext/UIScriptController.cpp:
(WTR::UIScriptController::setObscuredInsets):
* TestRunnerShared/UIScriptContext/UIScriptController.h:
* WebKitTestRunner/ios/TestControllerIOS.mm:
(WTR::TestController::platformResetStateToConsistentValues):
* WebKitTestRunner/ios/UIScriptControllerIOS.mm:
(WTR::UIScriptController::setObscuredInsets):
Add a UIScriptController mechanism to install obscured insets
on the web view.
2017-04-17 Dan Bernstein <mitz@apple.com>
[Cocoa] Move isNullFunctionPointer down into WTF
https://bugs.webkit.org/show_bug.cgi?id=170892
Reviewed by Sam Weinig.
* TestWebKitAPI/Configurations/TestWTF.xcconfig:
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WTF/darwin/WeakLinking.cpp: Added.
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WTF/darwin/libTestWTFAlwaysMissing-iOS-v2.tbd: Added.
* TestWebKitAPI/Tests/WTF/darwin/libTestWTFAlwaysMissing-iOS.tbd: Added.
* TestWebKitAPI/Tests/WTF/darwin/libTestWTFAlwaysMissing-macOS-v2.tbd: Added.
* TestWebKitAPI/Tests/WTF/darwin/libTestWTFAlwaysMissing-macOS.tbd: Added.
2017-04-17 Jonathan Bedard <jbedard@apple.com>
webkitpy: Correct poll when killing ServerProcess
Unreviewed infrastructure fix.
* Scripts/webkitpy/port/server_process.py:
(ServerProcess._kill): A polled process equaling 'None' means the process is running.
2017-04-17 Eric Carlson <eric.carlson@apple.com>
[MediaStream] Enable getUserMedia API test
https://bugs.webkit.org/show_bug.cgi?id=170901
<rdar://problem/31656594>
Reviewed by Youenn Fablet.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj: Add test.
* TestWebKitAPI/Tests/WebKit2/UserMedia.cpp:
(TestWebKitAPI::decidePolicyForUserMediaPermissionRequestCallBack):
(TestWebKitAPI::TEST): Enable capture with mock devices.
* TestWebKitAPI/Tests/WebKit2/getUserMedia.html: Update to mediaDevices.getUserMedia
2017-04-17 Xan Lopez <xan@igalia.com>
[GTK] Update the Fedora dependencies for WebKitGTK+
https://bugs.webkit.org/show_bug.cgi?id=170590
Reviewed by Carlos Alberto Lopez Perez.
* gtk/install-dependencies: add a bunch of modules necessary to
get a proper set of GStreamer codecs for WebRTC.
2017-04-16 Sam Weinig <sam@webkit.org>
[WebIDL] Switch IDLAttributes.txt over to a more structured format so that more information can be added for each attribute
https://bugs.webkit.org/show_bug.cgi?id=170843
Reviewed by Chris Dumez.
* DumpRenderTree/DerivedSources.make:
* WebKitTestRunner/DerivedSources.make:
* Scripts/webkitpy/bindings/main.py:
(BindingsTests.generate_from_idl):
Pass IDLAttributes.json, as it is now mandatory to have one.
2017-04-14 Mark Lam <mark.lam@apple.com>
Update architectures in xcconfig files.
https://bugs.webkit.org/show_bug.cgi?id=170867
<rdar://problem/31628104>
Reviewed by Joseph Pecoraro.
* DumpRenderTree/mac/Configurations/Base.xcconfig:
* MobileMiniBrowser/Configurations/Base.xcconfig:
* TestWebKitAPI/Configurations/Base.xcconfig:
* TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
* WebKitTestRunner/Configurations/Base.xcconfig:
2017-04-14 Brady Eidson <beidson@apple.com>
Fix basic WKURLSchemeHandler bugs.
<rdar://problem/30647559> and https://bugs.webkit.org/show_bug.cgi?id=170862
Reviewed by Andy Estes.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKit2Cocoa/WKURLSchemeHandler-1.mm: Added.
(-[SchemeHandler initWithData:mimeType:]):
(-[SchemeHandler dealloc]):
(-[SchemeHandler webView:startTask:]):
(-[SchemeHandler webView:stopTask:]):
(TEST):
2017-04-14 Bill Ming <mbbill@gmail.com>
webkit-patch failed to detect git repository
https://bugs.webkit.org/show_bug.cgi?id=170859
Reviewed by Daniel Bates.
Windows cmd does not accept single quoted path. So, using
double quotes here will provide better platform compatibility.
* Scripts/VCSUtils.pm:
(isGitDirectory):
(isGitSVNDirectory):
(svnRevisionForDirectory):
(svnInfoForPath):
2017-04-14 Ryan Haddad <ryanhaddad@apple.com>
Unreviewed, rolling out r215374.
This change causes LayoutTests to exit early with crashes on
Sierra.
Reverted changeset:
"webkitpy: Ignore previously launched pid when system is under
stress"
https://bugs.webkit.org/show_bug.cgi?id=170741
http://trac.webkit.org/changeset/215374
2017-04-14 Dan Bernstein <mitz@apple.com>
[ios-simulator] API test WebKit2.AdditionalReadAccessAllowedURLs is failing
https://bugs.webkit.org/show_bug.cgi?id=170856
Disabled the newly-added test in the Simulator, which doesn’t enforce sandboxing.
* TestWebKitAPI/Tests/WebKit2Cocoa/AdditionalReadAccessAllowedURLs.mm:
2017-04-14 Jonathan Bedard <jbedard@apple.com>
webkitpy: Ignore previously launched pid when system is under stress
https://bugs.webkit.org/show_bug.cgi?id=170741
Unreviewed infrastructure fix.
Drivers are destroyed between failing layout tests, which is not necessary and
prevents the work-around implemented in https://bugs.webkit.org/show_bug.cgi?id=170741.
* Scripts/webkitpy/layout_tests/controllers/layout_test_runner.py:
(Worker._kill_driver): Do not destroy drivers when they are stopped.
* Scripts/webkitpy/port/driver.py:
(Driver.stop): Reset driver values set in initializer.
2017-04-14 Andy Estes <aestes@apple.com>
[ios-simulator] API test WebKit2.WKWebProcessPlugInRangeHandle timing out
https://bugs.webkit.org/show_bug.cgi?id=167594
Re-enabled this API test now that webkit.org/b/161967 is fixed.
* TestWebKitAPI/Tests/WebKit2Cocoa/BundleRangeHandle.mm:
(TEST):
2017-04-14 Andy Estes <aestes@apple.com>
[ios-simulator] API test WebKit2.DataDetectionReferenceDate timing out
https://bugs.webkit.org/show_bug.cgi?id=161967
Reviewed by Alexey Proskuryakov.
* TestWebKitAPI/Tests/WebKit2Cocoa/DataDetection.mm:
(TEST): Re-enabled WebKit2.DataDetectionReferenceDate.
2017-04-14 Ryan Haddad <ryanhaddad@apple.com>
Unreviewed, rolling out r215363.
This change causes LayoutTests to exit early with crashes.
Reverted changeset:
"webkitpy: Ignore previously launched pid when system is under
stress"
https://bugs.webkit.org/show_bug.cgi?id=170741
http://trac.webkit.org/changeset/215363
2017-04-14 Jonathan Bedard <jbedard@apple.com>
webkitpy: Ignore previously launched pid when system is under stress
https://bugs.webkit.org/show_bug.cgi?id=170741
Unreviewed infrastructure fix.
Drivers are destroyed between failing layout tests, which is not necessary and
prevents the work-around implemented in https://bugs.webkit.org/show_bug.cgi?id=170741.
* Scripts/webkitpy/layout_tests/controllers/layout_test_runner.py:
(Worker._kill_driver): Do not destroy drivers when they are stopped.
2017-04-14 Jonathan Bedard <jbedard@apple.com>
webkitpy: Ignore previously launched pid when system is under stress
https://bugs.webkit.org/show_bug.cgi?id=170741
Unreviewed infrastructure fix.
Server processes are destroyed in the driver, which is not necessary and prevents
the work-around implemented in https://bugs.webkit.org/show_bug.cgi?id=170741.
* Scripts/webkitpy/port/driver.py:
(Driver.run_test): Do not destroy server process.
(Driver._start): Only create the server process if it is None.
(Driver.stop): Do not destroy server process.
2017-04-13 Dan Bernstein <mitz@apple.com>
[Cocoa] Allow clients to specify in _WKProcessPoolConfiguration additional directory sandbox extensions
https://bugs.webkit.org/show_bug.cgi?id=170387
Reviewed by Sam Weinig.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKit2Cocoa/AdditionalReadAccessAllowedURLs.mm: Added.
(TEST):
* TestWebKitAPI/Tests/WebKit2Cocoa/AdditionalReadAccessAllowedURLsPlugin.mm: Added.
(-[AdditionalReadAccessAllowedURLsPlugIn webProcessPlugIn:didCreateBrowserContextController:]):
(-[AdditionalReadAccessAllowedURLsPlugIn dealloc]):
(-[AdditionalReadAccessAllowedURLsPlugIn readStringFromURL:completionHandler:]):
* TestWebKitAPI/Tests/WebKit2Cocoa/AdditionalReadAccessAllowedURLsProtocol.h: Added.
2017-04-13 Jonathan Bedard <jbedard@apple.com>
webkitpy: Ignore previously launched pid when system is under stress
https://bugs.webkit.org/show_bug.cgi?id=170741
Reviewed by David Kilzer.
We have seen cases where xcrun simctl launch will return a pid of a previous
process and the process will appear to be running even though it is crashing.
Ensure that the PID that simulator_process is receiving is not the pid of the
previously run process.
* Scripts/webkitpy/port/simulator_process.py:
(SimulatorProcess._start): Check to make sure we aren't receiving an old PID.
2017-04-13 Jonathan Bedard <jbedard@apple.com>
Build ImageDiff with host SDK
https://bugs.webkit.org/show_bug.cgi?id=168531
Reviewed by David Kilzer.
ImageDiff should be built and run with the host SDK, not the target SDK.
Build ImageDiff twice, once for the target SDK and once for the host
as an intermediate step towards building for only the host SDK.
* ImageDiff/Makefile: Added.
* Makefile: Add ImageDiff to list of targets.
* Scripts/build-imagediff: Build bmalloc and WTF for the host.
* Scripts/build-webkit: Build ImageDiff for host.
* Scripts/webkitdirs.pm: Export extractNonMacOSHostConfiguration.
(extractNonMacOSHostConfiguration): Remove non-host configuration data from the array.
* Scripts/webkitperl/webkitdirs_unittest/extractNonMacOSHostConfiguration.pl: Added.
* Scripts/webkitpy/port/base.py:
(Port.check_build): Attempt to build image diff if not found.
(Port.check_image_diff): Enable logging flag.
(Port._build_image_diff): Allow webkitpy to build image-diff during testing.
2017-04-12 Alex Christensen <achristensen@webkit.org>
Clean up SharedBuffer public functions
https://bugs.webkit.org/show_bug.cgi?id=170795
Reviewed by Andreas Kling.
* TestWebKitAPI/Tests/WebCore/SharedBuffer.cpp:
(TestWebKitAPI::TEST_F):
2017-04-12 Dan Bernstein <mitz@apple.com>
[Mac] Future-proof .xcconfig files
https://bugs.webkit.org/show_bug.cgi?id=170802
Reviewed by Tim Horton.
* DumpRenderTree/mac/Configurations/Base.xcconfig:
* DumpRenderTree/mac/Configurations/DebugRelease.xcconfig:
* MiniBrowser/Configurations/Base.xcconfig:
* MiniBrowser/Configurations/DebugRelease.xcconfig:
* TestWebKitAPI/Configurations/Base.xcconfig:
* TestWebKitAPI/Configurations/DebugRelease.xcconfig:
* TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
* WebKitTestRunner/Configurations/Base.xcconfig:
* WebKitTestRunner/Configurations/DebugRelease.xcconfig:
2017-04-12 Alex Christensen <achristensen@webkit.org>
Remove unused SharedBuffer::wrapCFDataArray
https://bugs.webkit.org/show_bug.cgi?id=170794
Reviewed by Brady Eidson.
* TestWebKitAPI/Tests/WebCore/cocoa/SharedBuffer.mm:
(TestWebKitAPI::TEST_F):
2017-04-12 Yusuke Suzuki <utatane.tea@gmail.com>
[WTF] Introduce Thread class and use RefPtr<Thread> and align Windows Threading implementation semantics to Pthread one
https://bugs.webkit.org/show_bug.cgi?id=170502
Reviewed by Mark Lam.
Mechanical change. Use Thread:: APIs.
* DumpRenderTree/JavaScriptThreading.cpp:
(runJavaScriptThread):
(startJavaScriptThreads):
(stopJavaScriptThreads):
* DumpRenderTree/mac/DumpRenderTree.mm:
(testThreadIdentifierMap):
* TestWebKitAPI/Tests/WTF/Condition.cpp:
* TestWebKitAPI/Tests/WTF/Lock.cpp:
(TestWebKitAPI::runLockTest):
* TestWebKitAPI/Tests/WTF/ParkingLot.cpp:
2017-04-12 Alex Christensen <achristensen@webkit.org>
Modernize vector adoption
https://bugs.webkit.org/show_bug.cgi?id=170758
Reviewed by Geoffrey Garen.
* TestWebKitAPI/Tests/WebCore/SharedBuffer.cpp:
(TestWebKitAPI::TEST_F):
2017-04-11 Dean Jackson <dino@apple.com>
Disable outdated WritableStream API
https://bugs.webkit.org/show_bug.cgi?id=170749
<rdar://problem/31446233>
Reviewed by Tim Horton.
The API we implement is no longer accurate. Disable it until we
are compatible with the new specification
* TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
2017-04-11 David Quesada <david_quesada@apple.com>
Add SPI for handling geolocation authorization requests
https://bugs.webkit.org/show_bug.cgi?id=170362
rdar://problem/17508627
Reviewed by Alex Christensen.
Add API tests for the new WKUIDelegate SPI for allowing or denying websites permission
to use geolocation. Adopt the new WKProcessPool._coreLocationProvider property to
provide a stub object to simulate the various configurations of geolocation permissions:
1. The app doesn't have permission to use geolocation.
2. The app is allowed to use geolocation, but the UI delegate denies the web view permission.
3. The app is allowed to use geolocation, and the UI delegate allows the web view permission.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKit2Cocoa/Geolocation.mm: Added.
(-[TestCoreLocationProvider setListener:]):
(-[TestCoreLocationProvider requestGeolocationAuthorization]):
(-[TestCoreLocationProvider start]):
(-[TestCoreLocationProvider stop]):
(-[TestCoreLocationProvider setEnableHighAccuracy:]):
(expectException):
(-[GeolocationTestUIDelegate _webView:requestGeolocationAuthorizationForURL:frame:decisionHandler:]):
(-[GeolocationTestUIDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit2Cocoa/GeolocationGetCurrentPositionResult.html: Added.
2017-04-10 Matt Rajca <mrajca@apple.com>
Change autoplay state to "prevented" when media is paused due to restrictions.
https://bugs.webkit.org/show_bug.cgi?id=170686
Reviewed by Alex Christensen.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKit2/autoplay-muted-with-controls.html: Added test.
* TestWebKitAPI/Tests/WebKit2Cocoa/WebsitePolicies.mm:
(TEST):
2017-04-11 Yusuke Suzuki <utatane.tea@gmail.com>
[WebCore][JSC] ResourceUsageData.{timeOfNextEdenCollection,timeOfNextFullCollection} should be MonotonicTime
https://bugs.webkit.org/show_bug.cgi?id=170725
Reviewed by Sam Weinig.
* TestWebKitAPI/Tests/WTF/Time.cpp:
(TestWebKitAPI::TEST):
2017-04-10 Alex Christensen <achristensen@webkit.org>
Revert r215217
https://bugs.webkit.org/show_bug.cgi?id=170703
* TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
2017-04-10 Alex Christensen <achristensen@webkit.org>
Continue enabling WebRTC
https://bugs.webkit.org/show_bug.cgi?id=170703
Reviewed by Youenn Fablet.
* TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
2017-04-10 Kocsen Chung <kocsen_chung@apple.com>
Have parseRevisionProperty use default repo name as the Buildbot key.
https://bugs.webkit.org/show_bug.cgi?id=170696
Reviewed by Daniel Bates.
Previously, we needed to set a key and a fallbackKey when addressing
Buildbot data for Internal. That is no longer necessary as we can make a safe assumption
that the repo name maps exactly to that key for every repository other
than WebKit.
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotIteration.js:
Set `key = repositoryName` and only use fallback keys when dealing with WebKit.
2017-04-10 Aakash Jain <aakash_jain@apple.com>
Add test262 JavaScriptCore tests to dashboard
https://bugs.webkit.org/show_bug.cgi?id=170711
Rubber-stamped by Joseph Pecoraro.
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/WebKitBuildbot.js:
(WebKitBuildbot): Added test262 JSC tests to dashboard.
2017-04-10 Alex Christensen <achristensen@webkit.org>
REGRESSION(r195479) First main resource load in new WebProcess bypasses content extensions
https://bugs.webkit.org/show_bug.cgi?id=170707
<rdar://problem/27788755>
Reviewed by Tim Horton.
* TestWebKitAPI/Tests/WebKit2Cocoa/WKUserContentExtensionStore.mm:
(-[ContentExtensionDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
(TEST_F):
* TestWebKitAPI/Tests/WebKit2Cocoa/WebsitePolicies.mm:
(-[ContentBlockingWebsitePoliciesDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
(-[ContentBlockingWebsitePoliciesDelegate _webView:decidePolicyForNavigationAction:decisionHandler:]):
(TEST):
2017-04-10 Alex Christensen <achristensen@webkit.org>
Add API to get available content extension identifiers in a WKContentExtensionStore
https://bugs.webkit.org/show_bug.cgi?id=170093
Reviewed by Geoffrey Garen.
* TestWebKitAPI/Tests/WebKit2Cocoa/WKUserContentExtensionStore.mm:
(TEST_F):
2017-04-10 Wenson Hsieh <wenson_hsieh@apple.com>
Refactor DataInteractionTests.UnresponsivePageDoesNotHangUI to not check against a fixed time interval
https://bugs.webkit.org/show_bug.cgi?id=170658
Reviewed by Tim Horton.
Uses ignoreSynchronousMessagingTimeoutsForTesting to ensure that this test times out if data interaction
preparation is synchronous, or passes if it is asynchronous.
* TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
(TestWebKitAPI::TEST):
* TestWebKitAPI/cocoa/TestWKWebView.h:
* TestWebKitAPI/cocoa/TestWKWebView.mm:
(-[TestWKWebView initWithFrame:]):
(-[TestWKWebView initWithFrame:configuration:processPoolConfiguration:]):
(-[TestWKWebView _setUpTestWindow:]):
2017-04-10 Brent Fulgham <bfulgham@apple.com>
[WK2][macOS] Block access to Apple Events before launch.
https://bugs.webkit.org/show_bug.cgi?id=170626
<rdar://problem/16079334>
Reviewed by Alexey Proskuryakov.
Add a new TestWebKitAPI test that fails if Apple Events are sent.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj: Add new files.
* TestWebKitAPI/Tests/WebKit2/mac/InjectedBundleAppleEvent.cpp: Added.
(TestWebKitAPI::didReceiveMessageFromInjectedBundle):
(TestWebKitAPI::didFinishLoadForFrame):
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit2/mac/InjectedBundleAppleEvent_Bundle.cpp: Added.
(TestWebKitAPI::InjectedBundleAppleEventTest::InjectedBundleAppleEventTest):
(TestWebKitAPI::InjectedBundleAppleEventTest::didCreatePage):
2017-04-10 Guillaume Emont <guijemont@igalia.com>
[JSC] Do not run FTL stress tests on MIPS
https://bugs.webkit.org/show_bug.cgi?id=170684
Reviewed by Carlos Alberto Lopez Perez.
run-jsc-stress-tests does not correctly detect MIPS platforms, and its
logic to detect if the platform supports FTL ignores that MIPS does
not support FTL. This adds detection of MIPS (with the magic number
determined empirically) and fixes the determination of whether we
support FTL.
* Scripts/run-jsc-stress-tests:
2017-04-10 Jonathan Bedard <jbedard@apple.com>
webkitpy: Increase estimate for processes run by iOS Simulators
https://bugs.webkit.org/show_bug.cgi?id=170678
<rdar://problem/31534061>
Reviewed by Aakash Jain.
Previously, it was estimated that each simulated iOS device would run about 100
processes. With newer versions of iOS, this is closer to 125.
* Scripts/webkitpy/port/ios_simulator.py:
(IOSSimulatorPort): Increase process estimate from 100 to 125.
2017-04-10 Adrian Perez de Castro <aperez@igalia.com>
[GTK] Misplaced right click menu on web page due to deprecated gtk_menu_popup()
https://bugs.webkit.org/show_bug.cgi?id=170553
Reviewed by Michael Catanzaro.
Use gtk_menu_popup_at_pointer() and gtk_menu_popup_at_rect() when
building with GTK+ 3.22 or newer. This allows the Wayland GTK+ backend
to properly position popup menus, and also avoids using functions
which were deprecated starting at that GTK+ release.
* MiniBrowser/gtk/BrowserSearchBar.c:
(searchEntryMenuIconPressedCallback):
Update MiniBrowser to use gtk_menu_popup_at_pointer().
2017-04-10 Wenson Hsieh <wenson_hsieh@apple.com>
REGRESSION (r214403): fast/events/drag-to-navigate.html and fast/events/only-valid-drop-targets-receive-file-drop.html failing
https://bugs.webkit.org/show_bug.cgi?id=170677
<rdar://problem/31512633>
Reviewed by Tim Horton.
Fixes two drag and drop LayoutTests by introducing and enabling a TestOptions switch (enableDragDestinationActionLoad)
to allow dropping URLs to trigger page navigation.
* DumpRenderTree/TestOptions.h:
* DumpRenderTree/TestOptions.mm:
(TestOptions::TestOptions):
* DumpRenderTree/mac/DumpRenderTree.mm:
(resetWebViewToConsistentStateBeforeTesting):
* DumpRenderTree/mac/UIDelegate.h:
* DumpRenderTree/mac/UIDelegate.mm:
(-[UIDelegate resetToConsistentStateBeforeTesting:]):
(-[UIDelegate webView:dragDestinationActionMaskForDraggingInfo:]):
2017-04-10 Fujii Hironori <Hironori.Fujii@sony.com>
update-webkit-dependency should report $response->message for diagnose
https://bugs.webkit.org/show_bug.cgi?id=170666
Reviewed by Alex Christensen.
* Scripts/update-webkit-dependency: Print $response->message to STDERR if an error happens.
2017-04-10 Wenson Hsieh <wenson_hsieh@apple.com>
Data interaction on an image enclosed by an anchor should vend the anchor's URL
https://bugs.webkit.org/show_bug.cgi?id=170660
<rdar://problem/31043220>
Reviewed by Tim Horton.
Adds two new unit tests covering cases where data interaction is triggered from an image nested underneath an
anchor. In one of the tests, the link has an href, and in the other, its href is missing, in which case we
should fall back to the image URL instead. Also fixes a related unit test that was trying to check selection
rects, but should not be.
See WebCore ChangeLog for more details.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKit2Cocoa/image-in-link-and-input.html: Added.
* TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
(TestWebKitAPI::TEST):
2017-04-10 Carlos Garcia Campos <cgarcia@igalia.com>
[GTK] Remove the GDK dependency from ImageDiff
https://bugs.webkit.org/show_bug.cgi?id=85299
Reviewed by Žan Doberšek.
Add a cairo only implementation of ImageDiff. We currently have 3 different implementations of ImageDiff: the
Gdk based one used by GTK+ port, the cairo based one used by WinCairo and the CG based one. Most of the code is
actually common in all of them, but it's duplicated. So, I've taken advantage of this patch to refactor the
ImageDiff code to share the common implementation. This patch adds the cross-platform code, and the cairo
implementation and enables it in the GTK+ port. In follow up patches we can move WinCairo to this implementation
and also add CG implementation.
* ImageDiff/CMakeLists.txt:
* ImageDiff/Cairo.cmake: Added.
* ImageDiff/ImageDiff.cpp: Added.
(main):
* ImageDiff/PlatformGTK.cmake:
* ImageDiff/PlatformImage.cpp: Added.
(ImageDiff::PlatformImage::isCompatible):
(ImageDiff::PlatformImage::difference):
* ImageDiff/PlatformImage.h: Added.
* ImageDiff/cairo/PlatformImageCairo.cpp: Added.
(ImageDiff::PlatformImage::createFromStdin):
(ImageDiff::PlatformImage::createFromDiffData):
(ImageDiff::PlatformImage::PlatformImage):
(ImageDiff::PlatformImage::~PlatformImage):
(ImageDiff::PlatformImage::width):
(ImageDiff::PlatformImage::height):
(ImageDiff::PlatformImage::rowBytes):
(ImageDiff::PlatformImage::hasAlpha):
(ImageDiff::PlatformImage::pixels):
(ImageDiff::PlatformImage::writeAsPNGToStdout):
* ImageDiff/gtk/ImageDiff.cpp: Removed.
2017-04-10 Carlos Garcia Campos <cgarcia@igalia.com>
REGRESSION(r214426): [GTK] Test media/video-click-dblckick-standalone.html started to fail in the bots after r214426
https://bugs.webkit.org/show_bug.cgi?id=170667
Reviewed by Žan Doberšek.
In r214666 we disabled modern media controls runtime feature for the GTK+ port, but layout tests still override
that value.
* WebKitTestRunner/gtk/TestControllerGtk.cpp:
(WTR::TestController::updatePlatformSpecificTestOptionsForTest): Disable modern media controls.
2017-04-10 Carlos Garcia Campos <cgarcia@igalia.com>
WTR: Avoid conversion from platform image to WKImage and then to platform image again when dumping pixel results
https://bugs.webkit.org/show_bug.cgi?id=170653
Reviewed by Tim Horton.
When dumping pixels from a web view snapshot, we create a platform image that is then converted to a WKImage,
which is a ShareableBitmap, so the image is rendered into a graphics context. Then we immediately extract the
platform image back from the WKImage to dump the pixels. We could avoid that conversion by taking the web
snapshot from TestInvocation::dumpPixelsAndCompareWithExpected().
* WebKitTestRunner/PlatformWebView.h: Add PlatformImage typedef and use it as return value of windowSnapshotImage().
* WebKitTestRunner/TestInvocation.cpp:
(WTR::TestInvocation::dumpResults): Pass the WKImage to dumpPixelsAndCompareWithExpected() only when pixel
results were created in the web process.
* WebKitTestRunner/TestInvocation.h: Make WKImage a default paramater of dumpPixelsAndCompareWithExpected().
* WebKitTestRunner/cairo/TestInvocationCairo.cpp:
(WTR::TestInvocation::dumpPixelsAndCompareWithExpected): Create the cairo surface from the given WKimage in case
of web contents snapshot, and use PlatformWebView::windowSnapshotImage() in case of web view snapshot.
* WebKitTestRunner/cg/TestInvocationCG.cpp:
(WTR::createCGContextFromCGImage): Changed to receive a CGImageRef and renamed.
(WTR::createCGContextFromImage): Get the CGImageRef from the WKImage and call createCGContextFromCGImage().
(WTR::paintRepaintRectOverlay): It receives now the image size instead of the WKImage.
(WTR::TestInvocation::dumpPixelsAndCompareWithExpected): Create the CGContextRef from the WKImage in case of web
contents snpashot, and use PlatformWebView::windowSnapshotImage() in case of web view snapshot.
* WebKitTestRunner/gtk/PlatformWebViewGtk.cpp:
(WTR::PlatformWebView::windowSnapshotImage): Return the cairo surface instead of creating a WKImage. Also use
RGB24 format to match what mac does (kCGWindowImageShouldBeOpaque).
* WebKitTestRunner/ios/PlatformWebViewIOS.mm:
(WTR::PlatformWebView::windowSnapshotImage): Return the CGImageRef instead of creating a WKImage.
* WebKitTestRunner/mac/PlatformWebViewMac.mm:
(WTR::PlatformWebView::windowSnapshotImage): Ditto.
2017-04-10 Chris Dumez <cdumez@apple.com>
Drop Timer::startOneShot() overload taking a double
https://bugs.webkit.org/show_bug.cgi?id=170659
Reviewed by Yusuke Suzuki.
Drop Timer::startOneShot() overload taking a double as people should use Seconds type now.
* TestWebKitAPI/Tests/WTF/RunLoop.cpp:
(TestWebKitAPI::TEST):
* WebKitTestRunner/InjectedBundle/gtk/TestRunnerGtk.cpp:
(WTR::TestRunner::initializeWaitToDumpWatchdogTimerIfNeeded):
2017-04-09 Wenson Hsieh <wenson_hsieh@apple.com>
[WK2] Add infrastructure to perform actions after an asynchronous position information request finishes
https://bugs.webkit.org/show_bug.cgi?id=170658
<rdar://problem/31431450>
Reviewed by Tim Horton.
Adds a new test verifying that when a web page is unresponsive, the process of preparing for data interaction
does not also cause the UI process to spin. We assume here that the call to prepare must be asynchronous, so it
should complete before the unresponsiveness timeout is triggered.
See WebKit2 ChangeLog for more details.
* TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
(TestWebKitAPI::TEST):
2017-04-09 Chris Dumez <cdumez@apple.com>
Drop Timer::startRepeating() overload taking a double
https://bugs.webkit.org/show_bug.cgi?id=170656
Reviewed by Yusuke Suzuki.
Drop Timer::startRepeating() overload taking a double as people should use Seconds type now.
* TestWebKitAPI/Tests/WTF/RunLoop.cpp:
(TestWebKitAPI::TEST):
2017-04-09 Youenn Fablet <youenn@apple.com>
Resync WPT tests up to 23cd07d4685d81024b7440e042f8bbdb33e7ddec
https://bugs.webkit.org/show_bug.cgi?id=170647
Reviewed by Sam Weinig.
* Scripts/webkitpy/common/checkout/scm/git.py:
(Git.fetch): Fetching origin remote in case there is more than one.
2017-04-08 Simon Fraser <simon.fraser@apple.com>
Update CSSProperties.json with correct fill-and-stroke status, and other cleanup
https://bugs.webkit.org/show_bug.cgi?id=170643
Reviewed by Chris Dumez.
Update the CSSProperties.json style checker to allow:
- comments in codegen_properties
- obsolete-category and obsolete-url in specification blocks
- renamed "done" to "supported"
Fix some references to codegen_properties to be codegen-properties.
* Scripts/webkitpy/style/checkers/jsonchecker.py:
(JSONCSSPropertiesChecker.validate_status_type):
(JSONCSSPropertiesChecker.validate_property_specification):
(JSONCSSPropertiesChecker.check_codegen_properties):
2017-04-08 Youenn Fablet <youenn@apple.com>
WebRTC tests gardening
https://bugs.webkit.org/show_bug.cgi?id=170508
Reviewed by Eric Carlson.
* TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
2017-04-07 Keith Miller <keith_miller@apple.com>
Add a PriorityQueue class
https://bugs.webkit.org/show_bug.cgi?id=170579
Reviewed by Saam Barati.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WTF/PriorityQueue.cpp: Added.
(operator _z ):
(enqueue):
(dequeue):
(TEST):
(compareMove):
2017-04-07 Ryosuke Niwa <rniwa@webkit.org>
Replace ES6SampleBench by ARES-6 in run-benchmark
https://bugs.webkit.org/show_bug.cgi?id=170585
Reviewed by Saam Barati.
Updated the plan file for ES6SampleBench to run ARES-6 instead. Also increased the number of iterations
from 4 to 8 to match teh default, and reduced the number of browser instances to use from 5 to 3.
* Scripts/webkitpy/benchmark_runner/data/patches/ARES-6.patch: Renamed from ES6SampleBench.patch.
* Scripts/webkitpy/benchmark_runner/data/plans/ares6.plan: Renamed from es6bench.plan.
2017-04-07 Myles C. Maxfield <mmaxfield@apple.com>
REGRESSION(r211382): Complex text with justification erroneously overflows containers
https://bugs.webkit.org/show_bug.cgi?id=170399
<rdar://problem/31442008>
Reviewed by Simon Fraser.
Check for the invariant that the sum of the advances is equal to m_totalWidth.
* TestWebKitAPI/Tests/WebCore/ComplexTextController.cpp:
(TestWebKitAPI::TEST_F):
2017-04-07 Ryan Haddad <ryanhaddad@apple.com>
[ios-simulator] API test WebKit2.WKWebProcessPlugInRangeHandle timing out
https://bugs.webkit.org/show_bug.cgi?id=167594
Unreviewed test gardening.
Disable this test because it is still timing out on the bots.
* TestWebKitAPI/Tests/WebKit2Cocoa/BundleRangeHandle.mm:
(TEST):
2017-04-07 Jonathan Bedard <jbedard@apple.com>
REGRESSION (r214553): Allow layout-tests to be run from Xcode without re-directing stdout, stdin and stderr
https://bugs.webkit.org/show_bug.cgi?id=170601
<rdar://problem/31492696>
Reviewed by Simon Fraser.
* TestRunnerShared/IOSLayoutTestCommunication.cpp:
(setUpIOSLayoutTestCommunication): Skip TCP setup if no port is in the environment.
(tearDownIOSLayoutTestCommunication): Only teardown if TCP was used.
2017-04-07 Aakash Jain <aakash_jain@apple.com>
Add support for test262 JavaScriptCore tests
https://bugs.webkit.org/show_bug.cgi?id=170523
Reviewed by Daniel Bates.
* BuildSlaveSupport/build.webkit.org-config/config.json: Added bot433 and bot434.
* BuildSlaveSupport/build.webkit.org-config/master.cfg:
(RunTest262Tests): Added class to run Test262 tests.
(RunTest262Tests.start): Added.
(RunTest262Tests.countFailures): Method to count the failures.
(Test262Factory): Added Test262 factory class.
* BuildSlaveSupport/build.webkit.org-config/mastercfg_unittest.py:
(RunTest262TestsTest): Added unit tests.
(RunTest262TestsTest.assertResults): Helper method.
(RunTest262TestsTest.test_no_regressions_output): Added test case.
(test_failure_output): Same.
(test_failures_output): Same.
2017-04-07 Caio Lima <ticaiolima@gmail.com>
[JSC] Change --debug option to --debugger
https://bugs.webkit.org/show_bug.cgi?id=170587
Reviewed by Keith Miller.
* Scripts/run-jsc:
This patch is changing the new debugger flag for Tools/Scripts/run-jsc
to --debugger to avoid shadowing --debug flag used to run JSC with
Debug build.
2017-04-07 Brent Fulgham <bfulgham@apple.com>
WebKit should percent encode single quotes in query strings
https://bugs.webkit.org/show_bug.cgi?id=170561
<rdar://problem/7415154>
Reviewed by Alex Christensen.
Add a test case for single-quote in the URL query string.
* TestWebKitAPI/Tests/WebCore/URLParser.cpp:
2017-04-06 Myles C. Maxfield <mmaxfield@apple.com>
Make FontWithFeatures test font pass OTS
https://bugs.webkit.org/show_bug.cgi?id=169788
Reviewed by Tim Horton.
OTS, or the OpenType Sanitizer, is a check which tells if fonts are properly formed.
Previously, our FontWithFeatures test font did not pass this check. This patch updates
the font to pass the checks. Now, we can use this font on other platforms, and
contribute the font to the W3C for testing the CSS Fonts level 3 spec.
* FontWithFeatures/FontWithFeatures/FontCreator.cpp:
(Generator::appendCFFTable):
(Generator::Feature::operator<):
(Generator::appendGSUBTable):
(Generator::appendOS2Table):
(Generator::appendFormat4CMAPTable):
(Generator::appendHEADTable):
(Generator::appendHHEATable):
(Generator::NameRecord::operator<):
(Generator::appendNameSubtable):
(Generator::appendNAMETable):
2017-04-06 Alexey Proskuryakov <ap@apple.com>
Disable flaky WebKit2.ResizeWithHiddenContentDoesNotHang
for https://bugs.webkit.org/show_bug.cgi?id=170195
* TestWebKitAPI/Tests/WebKit2Cocoa/AnimatedResize.mm:
2017-04-06 Ryan Haddad <ryanhaddad@apple.com>
Unreviewed, rolling out r215046.
This change broke internal builds.
Reverted changeset:
"WebRTC tests gardening"
https://bugs.webkit.org/show_bug.cgi?id=170508
http://trac.webkit.org/changeset/215046
2017-04-06 Youenn Fablet <youenn@apple.com>
WebRTC tests gardening
https://bugs.webkit.org/show_bug.cgi?id=170508
Reviewed by Eric Carlson.
* TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
2017-04-06 Jonathan Bedard <jbedard@apple.com>
REGRESSION: Simulators failing to install after launch_app times out
<rdar://problem/31478107>
Unreviewed infrastructure fix.
* Scripts/webkitpy/xcode/simulated_device.py:
(SimulatedDevice.launch_app._install_timeout): Raise RuntimeError, not Exception.
2017-04-05 Joseph Pecoraro <pecoraro@apple.com>
test262: module test progressions need updated expectations (@@iterator changes)
https://bugs.webkit.org/show_bug.cgi?id=170535
Reviewed by Saam Barati.
* Scripts/run-jsc-stress-tests:
Add :failDueToOutdatedOrBadTest to distinguish between a test failure
in JavaScriptCore or an outdated or incorrect test262 test.
2017-04-05 Joseph Pecoraro <pecoraro@apple.com>
Remove run-jsc-stress-tests benign warning about otool '-S' switch
https://bugs.webkit.org/show_bug.cgi?id=170527
Reviewed by Aakash Jain.
* Scripts/run-jsc-stress-tests:
The switch is not necessary and produces an error.
2017-04-05 Jonathan Bedard <jbedard@apple.com>
webkitpy: Add pid logging for simulator processes
https://bugs.webkit.org/show_bug.cgi?id=170505
Reviewed by Alexey Proskuryakov.
* Scripts/webkitpy/port/simulator_process.py:
(SimulatorProcess._start.handler): Add pid to exception.
(SimulatorProcess._start): Ditto.
* Scripts/webkitpy/xcode/simulated_device.py:
(SimulatedDevice.launch_app): Log pid when the process fails to launch and when
a pid is successfully returned.
2017-04-05 Ryan Haddad <ryanhaddad@apple.com>
Unreviewed, rolling out r214932.
This change broke an internal build.
Reverted changeset:
"[ios-simulator] API test WebKit2.DataDetectionReferenceDate
timing out"
https://bugs.webkit.org/show_bug.cgi?id=161967
http://trac.webkit.org/changeset/214932
2017-04-05 Ryan Haddad <ryanhaddad@apple.com>
Unreviewed, rolling out r214962.
Roll r214937 back in because it wasn't at fault for the build
breakage.
Reverted changeset:
"Unreviewed, rolling out r214937."
https://bugs.webkit.org/show_bug.cgi?id=170365
http://trac.webkit.org/changeset/214962
2017-04-05 Ryan Haddad <ryanhaddad@apple.com>
Unreviewed, rolling out r214937.
This change broke an internal build.
Reverted changeset:
"REGRESSION (r202472): Data Detection overwrites existing
links in detected ranges"
https://bugs.webkit.org/show_bug.cgi?id=170365
http://trac.webkit.org/changeset/214937
2017-04-05 Jonathan Bedard <jbedard@apple.com>
Increase timeouts for simulator testing
Unreviewed infrastructure fix.
r214895 was not sufficient, increasing timeouts again.
* Scripts/webkitpy/xcode/simulated_device.py:
(SimulatedDevice.install_app): Increase timeout from 3 to 10 seconds.
2017-04-05 Aakash Jain <aakash_jain@apple.com>
Formatting fix to remove extra space.
Unreviewed formatting fix.
* Scripts/webkitdirs.pm:
(isEmbeddedWebKit): Remove extra space.
2017-04-05 Aakash Jain <aakash_jain@apple.com>
Rename isIOSLikeWebKit to isEmbeddedWebKit.
Rubber-stamped by Alexey Proskuryakov.
* Scripts/webkitdirs.pm:
(isEmbeddedWebKit): Added
(isIOSLikeWebKit): Deleted.
2017-04-05 Alex Christensen <achristensen@webkit.org>
Fix CMake build.
* TestRunnerShared/EventSerialization/mac/EventSerializerMac.mm:
* TestRunnerShared/spi/CoreGraphicsSPI.h: Removed.
* TestRunnerShared/spi/CoreGraphicsTestSPI.h: Copied from Tools/TestRunnerShared/spi/CoreGraphicsSPI.h.
There is a CoreGraphicsSPI.h in WebCore and the CMake build was finding the wrong one.
Since we just inherit the include paths from WebCore in the CMake build and since this SPI is only used for testing,
I just renamed CoreGraphicsSPI.h to CoreGraphicsTestSPI.h to avoid any name collisions.
* WebKitTestRunner/PlatformMac.cmake:
Add some missing files.
* WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:
2017-04-05 Keith Miller <keith_miller@apple.com>
Add debug option to run-jsc script
https://bugs.webkit.org/show_bug.cgi?id=170503
Reviewed by Yusuke Suzuki.
Adds a new option to the run-jsc script so that when passed
"--debug" it will wrap the jsc call with an lldb invocation. If
someone wishes to use a different debugger they can set the
DEBUGGER environment variable. Additionally, run-jsc now exits
with the exit status of the jsc call.
* Scripts/run-jsc:
2017-04-05 Andy Estes <aestes@apple.com>
REGRESSION (r202472): Data Detection overwrites existing links in detected ranges
https://bugs.webkit.org/show_bug.cgi?id=170365
<rdar://problem/29205721>
Reviewed by Tim Horton.
* TestWebKitAPI/Tests/WebKit2Cocoa/DataDetection.mm:
(expectLinkCount): Changed to only query links with the x-apple-data-detectors attribute.
(TEST): Re-enabled the test, which now passes.
2017-04-05 Andy Estes <aestes@apple.com>
[ios-simulator] API test WebKit2.WKWebProcessPlugInRangeHandle timing out
https://bugs.webkit.org/show_bug.cgi?id=167594
Re-enabled this API test now that webkit.org/b/161967 is fixed.
* TestWebKitAPI/Tests/WebKit2Cocoa/BundleRangeHandle.mm:
(TEST):
2017-04-05 Andy Estes <aestes@apple.com>
[ios-simulator] API test WebKit2.DataDetectionReferenceDate timing out
https://bugs.webkit.org/show_bug.cgi?id=161967
Reviewed by Alexey Proskuryakov.
* TestWebKitAPI/Tests/WebKit2Cocoa/DataDetection.mm:
(TEST): Re-enabled WebKit2.DataDetectionReferenceDate.
2017-04-04 Simon Fraser <simon.fraser@apple.com>
Various settings in Minibrowser are off by default, and should be on
https://bugs.webkit.org/show_bug.cgi?id=170465
rdar://problem/31421543
Reviewed by Tim Horton.
Explicitly set preferences that should be on by default to enabled, if they have not been
set previously.
* MiniBrowser/mac/SettingsController.m:
(-[SettingsController init]):
2017-04-04 JF Bastien <jfbastien@apple.com>
Add JF Bastien as reviewer
https://bugs.webkit.org/show_bug.cgi?id=170481
Reviewed by Mark Lam.
* Scripts/webkitpy/common/config/contributors.json:
2017-04-04 Jonathan Bedard <jbedard@apple.com>
Increase timeouts for simulator testing
Unreviewed infrastructure fix.
* Scripts/webkitpy/port/simulator_process.py:
(SimulatorProcess._start): Increase timeout from 3 to 6 seconds.
* Scripts/webkitpy/xcode/simulated_device.py:
(SimulatedDevice.install_app): Increase timeout from 1 to 3 seconds.
2017-04-04 Tim Horton <timothy_horton@apple.com>
[Mac] -[WKWebView findMatchesForString:relativeToMatch:findOptions:maxResults:resultCollector:] invokes the resultCollector with didWrap = NO even when it wraps
https://bugs.webkit.org/show_bug.cgi?id=165801
<rdar://problem/29649535>
Reviewed by Wenson Hsieh.
* TestWebKitAPI/Tests/WebKit2Cocoa/FindInPage.mm:
(TEST):
Add some tests for wrapping finds.
2017-04-03 Joseph Pecoraro <pecoraro@apple.com>
Add some new patterns to filter-build-webkit
https://bugs.webkit.org/show_bug.cgi?id=170429
Reviewed by Alexey Proskuryakov.
* Scripts/filter-build-webkit:
(setOutputFormatOption):
2017-04-03 Wenson Hsieh <wenson_hsieh@apple.com>
Data interaction should register type identifiers in order of priority
https://bugs.webkit.org/show_bug.cgi?id=170428
<rdar://problem/30633296>
Reviewed by Tim Horton.
Augments existing unit tests to check for the existence and priority of type identifiers in the UIItemProviders
created upon starting data interaction. Also fixes a race condition in one of the unit tests and adds a new unit
test for data interaction from a textarea to an input.
* TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
(checkTypeIdentifierPrecedesOtherTypeIdentifier):
(TestWebKitAPI::TEST):
* TestWebKitAPI/ios/DataInteractionSimulator.h:
* TestWebKitAPI/ios/DataInteractionSimulator.mm:
(-[DataInteractionSimulator _advanceProgress]):
(-[DataInteractionSimulator sourceItemProviders]):
(-[DataInteractionSimulator _webView:showCustomSheetForElement:]):
2017-04-03 Carlos Alberto Lopez Perez <clopez@igalia.com>
[GTK][JHBuild] Update mesa repository url for tarballs
https://bugs.webkit.org/show_bug.cgi?id=170431
Reviewed by Michael Catanzaro.
* gtk/jhbuild.modules:
2017-04-03 Joseph Pecoraro <pecoraro@apple.com>
TestWebKitAPI: Warning: Multiple build commands for Ahem.ttf
https://bugs.webkit.org/show_bug.cgi?id=170430
Reviewed by Alexey Proskuryakov.
* TestWebKitAPI/Tests/mac/Ahem.ttf: Removed.
Eliminate one of the copies of Ahem.ttf.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
Once eliminated, there is now only one Ahem.ttf that is copied
to the Resources bundle. Drive-by sort the project file.
2017-04-03 Simon Fraser <simon.fraser@apple.com>
Allow MiniBrowser windows to receive local file drags again
https://bugs.webkit.org/show_bug.cgi?id=170422
Reviewed by Wenson Hsieh.
Adopt the new UIDelegate SPI to allow drops.
* MiniBrowser/mac/WK2BrowserWindowController.m:
(-[WK2BrowserWindowController _webView:dragDestinationActionMaskForDraggingInfo:]):
2017-04-03 Carlos Alberto Lopez Perez <clopez@igalia.com>
[GTK][JHBuild] Fetch libvpx from a release tarball instead of git
https://bugs.webkit.org/show_bug.cgi?id=170426
Reviewed by Michael Catanzaro.
* gtk/jhbuild.modules:
2017-04-03 Nan Wang <n_wang@apple.com>
AX: Expose link children when doing search predication on iOS
https://bugs.webkit.org/show_bug.cgi?id=170424
<rdar://problem/31413335>
Reviewed by Chris Fleizach.
* DumpRenderTree/ios/AccessibilityUIElementIOS.mm:
(AccessibilityUIElement::uiElementForSearchPredicate):
* WebKitTestRunner/InjectedBundle/ios/AccessibilityUIElementIOS.mm:
(WTR::AccessibilityUIElement::uiElementForSearchPredicate):
2017-04-03 Brian Burg <bburg@apple.com>
run-safari should support launching with custom language and locale
https://bugs.webkit.org/show_bug.cgi?id=170397
Reviewed by Alexey Proskuryakov.
Hook up -AppleLanguages and -AppleLocale to command line options.
* Scripts/webkitdirs.pm:
(printHelpAndExitForRunAndDebugWebKitAppIfNeeded):
(argumentsForRunAndDebugMacWebKitApp):
2017-04-03 Jonathan Bedard <jbedard@apple.com>
webkitpy: Provide option to skip install
https://bugs.webkit.org/show_bug.cgi?id=170344
Reviewed by Alexey Proskuryakov.
Installing can take time for on device testing. Provide an option to skip install
and use whatever driver is currently installed on the device or simulator.
* Scripts/webkitpy/port/base.py:
(Port.check_build): Do not check driver if skipping install.
* Scripts/webkitpy/port/factory.py:
(platform_options): Add '--no-install' option.
* Scripts/webkitpy/port/ios.py:
(IOSPort.setup_test_run): Check install option before installing.
2017-04-03 Keith Miller <keith_miller@apple.com>
WebAssembly: Update spec tests
https://bugs.webkit.org/show_bug.cgi?id=170361
Rubber-stamped by Saam Barati.
Update the runner to know the new wasm spec test harness code.
* Scripts/run-jsc-stress-tests:
2017-04-01 Alexey Proskuryakov <ap@apple.com>
Rolling back <https://trac.webkit.org/r214697>, as it made WebKit2.DataDetectionReferenceDate time out.
Was REGRESSION (r202472): Data Detection overwrites existing links in detected ranges
https://bugs.webkit.org/show_bug.cgi?id=170365
* TestWebKitAPI/Tests/WebKit2Cocoa/DataDetection.mm:
2017-04-01 Csaba Osztrogonác <ossy@webkit.org>
Mac cmake buildfix after 214586.
https://bugs.webkit.org/show_bug.cgi?id=170381
Unreviewed speculative buildfix.
* WebKitTestRunner/PlatformMac.cmake:
2017-04-01 Csaba Osztrogonác <ossy@webkit.org>
Unreviewed speculative Mac cmake buildfix after r214586, just for fun.
https://bugs.webkit.org/show_bug.cgi?id=161675
* WebKitTestRunner/PlatformMac.cmake:
2017-03-31 Jonathan Bedard <jbedard@apple.com>
webkitpy: Add target host concept
https://bugs.webkit.org/show_bug.cgi?id=170186
<rdar://problem/31301797>
Reviewed by Alexey Proskuryakov.
Adding the idea of a target host. Target hosts are objects conforming to the
structure of the SystemHost object in Scripts/webkitpy/common/system/systemhost.py
Target hosts are the hosts associated with a worker process.
* Scripts/webkitpy/common/system/filesystem.py:
(FileSystem.map_base_host_path): Convert a path from an absolute path on the base
host to an absolute path on this host.
(FileSystem.move_to_base_host): Move file from this host to the base host.
(FileSystem.move_from_base_host): Move file from the base host to this host.
(FileSystem.copy_to_base_host): Copy file from this host to the base host.
(FileSystem.copy_from_base_host): Copy file from the base host to this host.
* Scripts/webkitpy/common/system/filesystem_mock.py:
(MockFileSystem.map_base_host_path): Convert a path from an absolute path on the base
host to an absolute path on this host.
(MockFileSystem.move_to_base_host): Move file from this host to the base host.
(MockFileSystem.move_from_base_host): Move file from the base host to this host.
(MockFileSystem.copy_to_base_host): Copy file from this host to the base host.
(MockFileSystem.copy_from_base_host): Copy file from the base host to this host.
* Scripts/webkitpy/port/base.py:
(Port.target_host): Return host determined by worker number.
(Port.abspath_for_test): Accept optional target_host argument to return location
of test on a target host.
(Port._driver_tempdir): Accept optional target_host argument to return a temporary
directory on a target host.
(Port.sample_process): Accept optional target_host argument to sample process on
a target host.
* Scripts/webkitpy/port/darwin.py:
(DarwinPort.sample_process): Run sample process on target host.
(DarwinPort.sample_file_path): Accept directory for file.
(DarwinPort.spindump_file_path): Ditto.
* Scripts/webkitpy/port/darwin_testcase.py:
(DarwinTest.test_spindump): Check file movement.
(DarwinTest.test_sample_process): Ditto.
(DarwinTest.test_sample_process_exception):
* Scripts/webkitpy/port/driver.py:
(Driver.__init__): Add and set self._target_host variable.
(Driver._start): Pass target host to _driver_tempdir().
(Driver.stop): Call the target host's rmtree.
(Driver._check_for_driver_timeout): Pass target host to sample_process.
(Driver._check_for_driver_crash_or_unresponsiveness): Ditto.
(Driver._command_from_driver_input): Pass target host to abspath_for_test and map
layout test directory to target host.
* Scripts/webkitpy/port/ios.py:
(IOSPort):
(IOSPort.target_host): Replaced device_for_worker_number.
(IOSPort.setup_test_run): Replace device_for_worker_number with target_host.
(IOSPort.device_for_worker_number): Replaced with target_host.
* Scripts/webkitpy/port/server_process.py:
(ServerProcess.__init__): Accept target_host instead of worker_number.
(ServerProcess._start): Replace _host with _target_host.
(ServerProcess._handle_timeout): Ditto.
(ServerProcess._kill): Ditto.
* Scripts/webkitpy/port/simulator_process.py:
(SimulatorProcess.__init__): Accept target_host instead of worker_number.
(SimulatorProcess._start): Replace _device with _target_host.
(SimulatorProcess.stop): Ditto.
(SimulatorProcess._kill): Deleted.
2017-03-31 Jonathan Bedard <jbedard@apple.com>
Unreviewed fix after r214569
https://bugs.webkit.org/show_bug.cgi?id=170255
Unreviewed infrastructure fix.
* Scripts/webkitpy/port/ios.py:
(IOSPort.clean_up_test_run): Check if the device is defined before teardown.
2017-03-31 Andy Estes <aestes@apple.com>
REGRESSION (r202472): Data Detection overwrites existing links in detected ranges
https://bugs.webkit.org/show_bug.cgi?id=170365
<rdar://problem/29205721>
Reviewed by Tim Horton.
* TestWebKitAPI/Tests/WebKit2Cocoa/DataDetection.mm:
(expectLinkCount): Changed to only query links with the x-apple-data-detectors attribute.
(TEST): Re-enabled the test, which now passes.
2017-03-31 Tim Horton <timothy_horton@apple.com>
Mail can get stuck underneath FindController::findStringMatches after searching in a long message
https://bugs.webkit.org/show_bug.cgi?id=170326
<rdar://problem/30330395>
Reviewed by Simon Fraser.
* TestWebKitAPI/Tests/WebKit2Cocoa/FindInPage.mm:
(TEST):
2017-03-31 Carlos Garcia Campos <cgarcia@igalia.com>
Unreviewed. Fix WTR crashes in GTK+ port after r214413.
Fixes: http/tests/ssl/upgrade-origin-usage.html
http/tests/websocket/tests/hybi/network-process-crash-error.html
http/tests/websocket/tests/hybi/simple-wss.html
* WebKitTestRunner/gtk/TestControllerGtk.cpp:
(WTR::TestController::platformContext): Return the context.
2017-03-30 Sam Weinig <sam@webkit.org>
Expose the WKView SPI, _prepareForMoveToWindow:withCompletionHandler as WKWebView SPI
https://bugs.webkit.org/show_bug.cgi?id=170315
Reviewed by Simon Fraser.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKit2Cocoa/PrepareForMoveToWindow.mm: Added.
Add test showing the completion handler is called.
2017-03-30 Filip Pizlo <fpizlo@apple.com>
Air should support linear scan for optLevel<2
https://bugs.webkit.org/show_bug.cgi?id=170161
Reviewed by Saam Barati.
This makes us run a bunch of JS tests at optLevel=1 to force testing of this new compiler
pipeline.
* Scripts/run-jsc-stress-tests:
2017-03-30 Aakash Jain <aakash_jain@apple.com>
Support tvOS and watchOS in webkitdirs.pm
https://bugs.webkit.org/show_bug.cgi?id=170267
Reviewed by Alexey Proskuryakov.
* Scripts/webkitdirs.pm:
(determineXcodeSDK): Evaluate sdk for tvos and watchos.
(xcodeSDKPlatformName): Added support for tvos and watchos.
(determinePortName): Same.
(isAppleCocoaWebKit): Same.
(willUseAppleTVDeviceSDK): Added.
(willUseAppleTVSimulatorSDK): Added.
(willUseWatchDeviceSDK): Added.
(willUseWatchSimulatorSDK): Added.
(isTVOSWebKit): Added.
(isWATCHOSWebKit): Added.
(isIOSLikeWebKit): Added.
2017-03-30 Wenson Hsieh <wenson_hsieh@apple.com>
[WK2] Touches should not cancel when showing a custom action sheet while data interaction is active
https://bugs.webkit.org/show_bug.cgi?id=170291
<rdar://problem/31301388>
Reviewed by Tim Horton.
Adds support for testing how the custom action sheet presentation codepath interacts with data interaction, as
well as a new unit test. In this case, we force data interaction to fail if touches are canceled on the
shared UIApplication, and verify that data interaction completes successfully.
* TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
(TestWebKitAPI::TEST):
* TestWebKitAPI/ios/DataInteractionSimulator.h:
* TestWebKitAPI/ios/DataInteractionSimulator.mm:
(-[DataInteractionSimulatorApplication _cancelAllTouches]):
(-[DataInteractionSimulator initWithWebView:]):
(-[DataInteractionSimulator simulateAllTouchesCanceled:]):
(-[DataInteractionSimulator runFrom:to:]):
(-[DataInteractionSimulator _advanceProgress]):
(-[DataInteractionSimulator _webView:showCustomSheetForElement:]):
2017-03-30 Per Arne Vollan <pvollan@apple.com>
[Win] Pass close_fds = True in Python popen call.
https://bugs.webkit.org/show_bug.cgi?id=170172
Reviewed by Brent Fulgham.
This was previously not supported on Windows, but in Python 2.7.10 it is.
* Scripts/webkitpy/common/system/executive.py:
(Executive._should_close_fds):
* Scripts/webkitpy/port/server_process.py:
(ServerProcess._start):
2017-03-30 Aakash Jain <aakash_jain@apple.com>
Change my status to be a WebKit reviewer.
Unreviewed status update edit.
* Scripts/webkitpy/common/config/contributors.json:
2017-03-30 Carlos Alberto Lopez Perez <clopez@igalia.com>
Change my status to be a WebKit reviewer.
Unreviewed status update edit.
* Scripts/webkitpy/common/config/contributors.json:
2017-03-29 Tim Horton <timothy_horton@apple.com>
Swipe gesture tests don't work on macOS Sierra
https://bugs.webkit.org/show_bug.cgi?id=161675
<rdar://problem/23379930>
Reviewed by Darin Adler.
* DumpRenderTree/mac/UIScriptControllerMac.mm:
(WTR::UIScriptController::platformPlayBackEventStream):
(WTR::UIScriptController::beginBackSwipe):
(WTR::UIScriptController::completeBackSwipe):
* TestRunnerShared/EventSerialization/mac/EventSerializerMac.h: Copied from Tools/DumpRenderTree/mac/UIScriptControllerMac.mm.
* TestRunnerShared/EventSerialization/mac/EventSerializerMac.mm: Added.
(eventIsOfType):
(eventIsOfTypes):
(eventIsOfGestureType):
(eventIsOfGestureTypes):
(+[EventSerializer dictionaryForEvent:relativeToTime:]):
(+[EventSerializer createEventForDictionary:inWindow:relativeToTime:]):
(+[EventSerializer playEventStream:inWindow:completionHandler:]):
* TestRunnerShared/EventSerialization/mac/SharedEventStreamsMac.h: Copied from Tools/WebKitTestRunner/mac/UIScriptControllerMac.mm.
* TestRunnerShared/EventSerialization/mac/SharedEventStreamsMac.mm: Added.
(beginSwipeBackEventStream):
(completeSwipeBackEventStream):
* TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
* TestRunnerShared/UIScriptContext/UIScriptController.cpp:
(WTR::UIScriptController::playBackEventStream):
(WTR::UIScriptController::beginBackSwipe):
(WTR::UIScriptController::completeBackSwipe):
(WTR::UIScriptController::platformPlayBackEventStream):
(WTR::UIScriptController::platformClearAllCallbacks): Deleted.
* TestRunnerShared/UIScriptContext/UIScriptController.h:
* TestRunnerShared/spi/CoreGraphicsSPI.h: Added.
* TestRunnerShared/spi/IOKitSPI.h: Renamed from Tools/WebKitTestRunner/ios/IOKitSPI.h.
* WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:
* WebKitTestRunner/mac/UIScriptControllerMac.mm:
(WTR::playBackEvents):
(WTR::UIScriptController::beginBackSwipe):
(WTR::UIScriptController::completeBackSwipe):
(WTR::UIScriptController::platformPlayBackEventStream):
2017-03-29 Jonathan Bedard <jbedard@apple.com>
webkitpy: Robust test clean-up
https://bugs.webkit.org/show_bug.cgi?id=170255
Reviewed by Alexey Proskuryakov.
On-device testing is the motivation for this change. Failure to run clean-up functions can
result in zombie processes, residual NFS mounts and other undesirable remnants from a failed
test run. Make an effort to clean-up even if exceptions are thrown during set-up or clean-up.
* Scripts/webkitpy/layout_tests/controllers/manager.py:
(Manager._set_up_run): Clean up test run if set-up fails.
* Scripts/webkitpy/port/ios.py:
(IOSPort.clean_up_test_run): Continue cleaning up devices even after an exception is thrown.
2017-03-29 Jonathan Bedard <jbedard@apple.com>
Simulator testing stops after the first crash
<rdar://problem/31325362>
Unreviewed infrastructure fix.
* Scripts/webkitpy/xcode/simulated_device.py:
(SimulatedDevice):
(SimulatedDevice.launch_app): Increase timeout when attempting to launch app.
2017-03-29 Jonathan Bedard <jbedard@apple.com>
webkitpy: Standardize web-server port definitions
https://bugs.webkit.org/show_bug.cgi?id=170144
<rdar://problem/31284026>
Reviewed by Daniel Bates.
Default web-server ports should be declared in global variables.
Add functions to web-servers which return the ports these servers
are using so that other tools can forward them.
* Scripts/webkitpy/layout_tests/servers/apache_http_server.py:
(LayoutTestApacheHttpd.__init__): Use shared constants in http_server_base.py.
* Scripts/webkitpy/layout_tests/servers/apache_http_server_unittest.py:
(TestLayoutTestApacheHttpd.test_start_cmd): Check port_to_forward for expected values.
* Scripts/webkitpy/layout_tests/servers/http_server.py:
(Lighttpd.__init__): Use shared constants in http_server_base.py.
(Lighttpd._prepare_config): Ditto.
* Scripts/webkitpy/layout_tests/servers/http_server_base.py:
(HttpServerBase): Add default port constants.
(HttpServerBase.ports_to_forward): Add function to return ports used for http server.
* Scripts/webkitpy/layout_tests/servers/http_server_unittest.py:
(TestHttpServer.test_start_cmd): Check port_to_forward for expected values.
* Scripts/webkitpy/layout_tests/servers/web_platform_test_server.py:
(WebPlatformTestServer.ports_to_forward): Add function to return ports used for web-platform tests.
* Scripts/webkitpy/layout_tests/servers/websocket_server.py:
(PyWebSocket): Make default port values public.
(PyWebSocket.__init__): Use public default port.
(PyWebSocket.ports_to_forward): Return port used in an array.
* Scripts/webkitpy/port/base.py:
(Port.to.ports_to_forward): Return all ports used the various web-servers managed by the port object.
(Port.to.start_websocket_server): Use PyWebSocket port constants.
2017-03-29 Wenson Hsieh <wenson_hsieh@apple.com>
Links with empty hrefs should not be drag sources
https://bugs.webkit.org/show_bug.cgi?id=170241
<rdar://problem/31305505>
Reviewed by Tim Horton.
Adds a new API test: DataInteractionTests.LinkWithEmptyHREF.
* TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
(TestWebKitAPI::TEST):
* TestWebKitAPI/ios/DataInteractionSimulator.h:
Expose the current phase of the data interaction simulator for verifying behaviors in unit tests.
* TestWebKitAPI/ios/DataInteractionSimulator.mm:
(-[DataInteractionSimulator phase]):
2017-03-29 Jonathan Bedard <jbedard@apple.com>
Use TCP instead of FIFOs for Simulator/Device communication
https://bugs.webkit.org/show_bug.cgi?id=169419
<rdar://problem/30949615>
Reviewed by Alexey Proskuryakov.
Using TCP instead of FIFOs when communicating with devices allows the device being tested
to be on a different machine then the one handling the management of the test run.
* DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
* DumpRenderTree/mac/DumpRenderTree.mm:
(dumpRenderTree): Call setUp/tearDownIOSLayoutTestCommunication() instead of using FIFOs.
* Scripts/webkitpy/port/device.py:
(Device.__init__): Initialize the listening_socket.
(Device.listening_port): Return port of listening socket.
(Device.prepare_for_testing): Open listening socket on an open port, prepare platform device
fro testing.
(Device.finished_testing): Close listening socket associated with this device, call the
platform device's finished_testing function if it exists.
* Scripts/webkitpy/port/ios.py:
(IOSPort.setup_test_run): Prepare each device for testing.
(IOSPort.clean_up_test_run): Notify each device that testing has completed.
* Scripts/webkitpy/port/ios_simulator.py:
(IOSSimulatorPort): Work around device persistence bug.
(IOSSimulatorPort.__init__): Ditto.
* Scripts/webkitpy/port/simulator_process.py:
(SimulatorProcess):
(SimulatorProcess.NonBlockingFileFromSocket): Add to work around shortcomings in
Python 2’s makefile.
(SimulatorProcess.NonBlockingFileFromSocket.__init__): Initialize file with socket.
(SimulatorProcess.ReadFileSocket.close): Close file and then socket;
(SimulatorProcess.__init__): Pass TCP port over environment, remove FIFO names.
(SimulatorProcess.__getattr__): Expose all file attributes.
(SimulatorProcess._accept_connection_create_file): Wait for connection from server and
create and return a file-like object from the incoming connection.
(SimulatorProcess._start): Use TCP connections instead of FIFOs.
(SimulatorProcess._start.handler): Output server port in timeout exception.
(SimulatorProcess._reset): Deleted.
* TestRunnerShared/IOSLayoutTestCommunication.cpp: Added.
(connectToServer): Return socket connected to the provided server address.
(setupiOSLayoutTestCommunication): Connect stdin, stdout and stderr as socket to a
TCP server running on localhost.
(tearDownIOSLayoutTestCommunication): Close stdin, stdout and stderr TCP sockets.
* TestRunnerShared/IOSLayoutTestCommunication.h: Added.
* WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:
* WebKitTestRunner/ios/TestControllerIOS.mm:
(WTR::TestController::platformInitialize): Call setUpIOSLayoutTestCommunication()
instead of using FIFOs.
(WTR::TestController::platformDestroy): Call tearDownIOSLayoutTestCommunication().
2017-03-29 Jonathan Bedard <jbedard@apple.com>
webkitpy: Add IOSDevicePort and IOSPort tests
https://bugs.webkit.org/show_bug.cgi?id=170206
<rdar://problem/31308364>
Reviewed by Alexey Proskuryakov.
* Scripts/webkitpy/port/darwin_testcase.py: Removed unused import.
* Scripts/webkitpy/port/ios_device_unittest.py: Added.
(iosDeviceTest): Contains tests for the IOSDevicePort.
(iosDeviceTest.make_port): Creates an IOSDevicePort with arguments.
(iosDeviceTest.test_operating_system): Check for the correct operating system.
* Scripts/webkitpy/port/ios_simulator_unittest.py: Moved from Tools/Scripts/webkitpy/port/ios_unittest.py.
(iosSimulatorTest): Inherit from ios_testcase.
(iosSimulatorTest.make_port): Ditto.
(iosSimulatorTest.test_get_crash_log): Ditto.
* Scripts/webkitpy/port/ios_testcase.py: Added.
(iOSTest): Contains shared tests for the IOSDevicePort and IOSSimulatorPort.
(iOSTest.test_driver_name): Tests for iOS app driver.
(iOSTest.test_baseline_searchpath): Check that ios and ios-wk1 are in the baseline search path.
* Scripts/webkitpy/port/ios_unittest.py: Moved to ios_simulator_unittest.py.
* Scripts/webkitpy/port/port_testcase.py:
(PortTestCase): Rename is_simulator to disable_setup to more accurately describe it's meaning.
(PortTestCase.test_diff_image): Use disable_setup instead of is_simulator.
(PortTestCase.test_diff_image_crashed): Ditto.
2017-03-28 Jason Marcell <jmarcell@apple.com>
Fix `index-expected.txt` for dashboard test results.
https://bugs.webkit.org/show_bug.cgi?id=170214
Reviewed by Alexey Proskuryakov.
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/tests/index-expected.txt:
2017-03-28 Alexey Proskuryakov <ap@apple.com>
Bot watcher's dashboard has separate settings for "mac" and "macos"
https://bugs.webkit.org/show_bug.cgi?id=170164
Reviewed by Tim Horton.
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Settings.js:
(Settings.prototype.parsePlatformFamily): Aded a special case for "macos".
2017-03-28 Alexey Proskuryakov <ap@apple.com>
Fix dashboard test results on the dashboard
https://bugs.webkit.org/show_bug.cgi?id=170158
Reviewed by Tim Horton.
Link to result diff instead of stdio. Looking at the diff, I wonder if it can be
further improved, as it's not super readable, but stdio is entirely useless in this context.
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Buildbot.js:
(Buildbot.prototype.dashboardTestResultsURLForIteration): Generate formatted diff link.
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotIteration.js:
Fixed a typo in step name, so that it's actually treated as productive.
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotTesterQueueView.js:
(BuildbotTesterQueueView.prototype.appendBuilderQueueStatus):
(BuildbotTesterQueueView.prototype.update):
(BuildbotTesterQueueView.prototype._presentPopoverForGenericTestFailures):
Added special handling for dashboard test results.
2017-03-28 Aakash Jain <aakash_jain@apple.com>
Fix Dashboard test _presentPopoverForJavaScriptCoreTestRegressions
https://bugs.webkit.org/show_bug.cgi?id=170193
Reviewed by Alexey Proskuryakov.
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/tests/resources/tests.js:
Fixed the order of arguments.
2017-03-28 Aakash Jain <aakash_jain@apple.com>
Dashboard tests fails to fetch the revision from commits
https://bugs.webkit.org/show_bug.cgi?id=170191
Reviewed by Alexey Proskuryakov.
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/tests/resources/MockTrac.js:
Added recordedCommitIndicesByRevisionNumber.
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/tests/resources/tests.js:
(setup): Populated trac.recordedCommitIndicesByRevisionNumber since the dashboard code uses this variable.
2017-03-28 Timothy Horton <timothy_horton@apple.com>
Safari crashes when attempting to close tab that is displaying PDF
https://bugs.webkit.org/show_bug.cgi?id=170201
<rdar://problem/31242019>
Reviewed by Wenson Hsieh.
* TestWebKitAPI/Tests/WebKit2Cocoa/DoAfterNextPresentationUpdateAfterCrash.mm:
(TEST):
Add a test for doAfterNextStablePresentationUpdate just like the existing
non-stable one.
2017-03-28 Jonathan Bedard <jbedard@apple.com>
webkitpy: Use host pattern for devices
https://bugs.webkit.org/show_bug.cgi?id=170121
Reviewed by Daniel Bates.
Devices should be treated like hosts throughout webkitpy
so that more code can be re-used. Add the needed properties
and use executive over custom implemented polling/killing
functions.
* Scripts/webkitpy/port/device.py:
(Device):
(Device.executive): Add optional executive property.
(Device.filesystem): Add optional filesystem property.
(Device.user): Add optional user property.
(Device.platform): Add optional platform property.
(Device.workspace): Add optional workspace property.
(Device.poll): Deleted.
* Scripts/webkitpy/port/simulator_process.py:
(SimulatorProcess.Popen.poll): Use the devices executive.
(SimulatorProcess.stop): Ditto.
(SimulatorProcess._kill): Ditto.
* Scripts/webkitpy/xcode/simulated_device.py:
(SimulatedDevice.__init__): Add executive, filesystem, user, platform
and workspace to the platform device.
(SimulatedDevice.poll): Deleted.
2017-03-28 Aakash Jain <aakash_jain@apple.com>
Dashboard test fails with error: latestIterationGetter is not a function
https://bugs.webkit.org/show_bug.cgi?id=170167
Reviewed by Alexey Proskuryakov.
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/tests/resources/tests.js:
(this.view._latestProductiveIteration): Configure _latestProductiveIteration in setup.
2017-03-27 Lucas Forschler <lforschler@apple.com>
Another test v8.
2017-03-27 Lucas Forschler <lforschler@apple.com>
Another test v7.
2017-03-27 Lucas Forschler <lforschler@apple.com>
Another test v6.
2017-03-27 Lucas Forschler <lforschler@apple.com>
Another test v5.
2017-03-27 Lucas Forschler <lforschler@apple.com>
Another test v4.
2017-03-27 Lucas Forschler <lforschler@apple.com>
Another test v3.
2017-03-27 Lucas Forschler <lforschler@apple.com>
Another test v2.
2017-03-27 Lucas Forschler <lforschler@apple.com>
Another test.
2017-03-27 Lucas Forschler <lforschler@apple.com>
<rdar://problem/30949128>
Update build.webkit.org to use port 16000 for PBChangeSource.
Reviewed by Alexey Proskuryakov.
* BuildSlaveSupport/build.webkit.org-config/master.cfg:
2017-03-27 Jason Marcell <jmarcell@apple.com>
Bots should run the dashboard tests
https://bugs.webkit.org/show_bug.cgi?id=168994
Reviewed by Daniel Bates and David Kilzer.
We pull the `--results-directory` argument value out so that `RunDashboardTests` can override it so that we can separately run the dashboard layout tests.
* BuildSlaveSupport/build.webkit.org-config/master.cfg:
(RunWebKitTests): Define a class variable called resultDirectory for the `--results-directory` argument so that subclasses can override this if needed.
(RunWebKitTests.start): Set the `--results-directory` argument value to the value of self.resultDirectory.
(RunDashboardTests): Subclass of RunWebKitTests in which we run the layout tests for the Bot Watcher's Dashboard.
(RunDashboardTests.start): Override the `--layout-tests-directory` to point to the dashboard layout tests.
(ExtractTestResults.addCustomURLs): Update the current results URL label to indicate that it links to layout tests results and add a new link to link to dashboard layout test results.
(TestFactory.__init__): Update unit tests to account for new RunDashboardTests step.
* BuildSlaveSupport/build.webkit.org-config/mastercfg_unittest.py:
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotIteration.js:
2017-03-27 Jonathan Bedard <jbedard@apple.com>
webkitpy: Look for 'ios' test expectations for IOSPorts
https://bugs.webkit.org/show_bug.cgi?id=169413
Reviewed by Alexey Proskuryakov.
Test expectations for iOS tests should include the 'ios' folder. Modify
default_baseline_search_path to include 'ios' folder and derivatives for
IOSPort.
* Scripts/webkitpy/port/ios.py:
(IOSPort._generate_all_test_configurations): Moved from IOSSimulatorPort.
(IOSPort.default_baseline_search_path): Add ios expectations along with port specific expectations.
(IOSPort.test_expectations_file_position): Added for testing.
* Scripts/webkitpy/port/ios_simulator.py:
(IOSSimulatorPort._generate_all_test_configurations): Moved to IOSPort.
(IOSSimulatorPort.default_baseline_search_path): Moved to IOSPort.
2017-03-27 Jonathan Bedard <jbedard@apple.com>
REGRESSION: Reseting _device_map on each child process
<rdar://problem/31274476>
Unreviewed infrastructure fix.
* Scripts/webkitpy/port/ios_simulator.py:
(IOSSimulatorPort): Add _DEVICE_MAP class variable.
(IOSSimulatorPort.__init__): Use shared class variable
(IOSSimulatorPort._device_for_worker_number_map): Use _DEVICE_MAP class variable
(IOSSimulatorPort._create_devices): Ditto.
(IOSSimulatorPort._quit_ios_simulator): Ditto.
(IOSSimulatorPort.clean_up_test_run): Ditto.
2017-03-27 Jonathan Bedard <jbedard@apple.com>
REGRESSION: Failing to iterate over Simulator.managed_devices map
<rdar://problem/31274476>
Unreviewed infrastructure fix.
* Scripts/webkitpy/port/ios_simulator.py:
(IOSSimulatorPort._create_devices): Iterate through managed_devices by worker number.
2017-03-27 Alex Christensen <achristensen@webkit.org>
Make WebSockets work in network process
https://bugs.webkit.org/show_bug.cgi?id=169930
Reviewed by Youenn Fablet.
* WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
Add terminateNetworkProcess for the new test
http/tests/websocket/tests/hybi/network-process-crash-error.html
* WebKitTestRunner/InjectedBundle/TestRunner.cpp:
(WTR::TestRunner::setAllowsAnySSLCertificate):
(WTR::TestRunner::terminateNetworkProcess):
* WebKitTestRunner/InjectedBundle/TestRunner.h:
* WebKitTestRunner/TestController.cpp:
(WTR::TestController::setAllowsAnySSLCertificate):
(WTR::TestController::terminateNetworkProcess):
* WebKitTestRunner/TestController.h:
* WebKitTestRunner/TestInvocation.cpp:
(WTR::TestInvocation::didReceiveMessageFromInjectedBundle):
(WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
* WebKitTestRunner/cocoa/TestControllerCocoa.mm:
(WTR::TestController::platformContext):
* WebKitTestRunner/gtk/TestControllerGtk.cpp:
(WTR::TestController::platformContext):
(WTR::TestController::platformLibraryPathForTesting):
Add some infrastructure for http/tests/websocket/tests/hybi/simple-wss.html
which calls testRunner.setAllowsAnySSLCertificate. It used to only be effective
for the WebProcess, but SocketStreamHandleImpl::createStreams is now in the NetworkProcess,
and we need its call to Settings::allowsAnySSLCertificate to be loosened for this test,
which tests that wss works, but our test certificate has an invalid certificate chain.
We want production software to not have the ability to have its security weakened, so this
is a test code path that is only implemented in WebKitTestRunner.
2017-03-25 Jonathan Bedard <jbedard@apple.com>
webkitpy: Use generalized device instead of platform specific one
https://bugs.webkit.org/show_bug.cgi?id=170078
Reviewed by Daniel Bates.
SimulatedDevice is re-created each time 'xcrun simctl list' is called. Device
should remain persistent. Changing Device to a more explicit interface.
SimulatedDevice no longer inherits from Device and IOSSimulator returns Devices
wrapping SimulatedDevices.
* Scripts/webkitpy/port/device.py: Added.
(Device):
(Device.__init__): Construct with platform device.
(Device.install_app): Install app at app path on platform device.
(Device.launch_app): Launch app with bundle ID on platform device.
(Device.poll): Poll platform device.
(Device.udid): Access platform device UDID.
(Device.__nonzero__): Check if instantiated with a valid platform device.
(Device.__eq__): Compare by udid.
(Device.__ne__): Ditto.
(Device.__repr__): Print out platform_device representation.
* Scripts/webkitpy/port/ios_simulator.py:
(IOSSimulatorPort.__init__): Initialize the _device_map to an empty dictionary.
(IOSSimulatorPort._device_for_worker_number_map): Return self._device_map.
(IOSSimulatorPort._create_simulators): Call Simulator.managed_devices directly.
(IOSSimulatorPort._create_devices): Place Simulator.managed_devices into the
device map.
(IOSSimulatorPort._quit_ios_simulator): Reset self._device_map.
* Scripts/webkitpy/xcode/device.py: Removed.
* Scripts/webkitpy/xcode/simulated_device.py:
(SimulatedDevice):
(SimulatedDevice.__init__): Move host, name and did to SimulatedDevice.
(SimulatedDevice.__eq__): Compare two simulated devices.
(SimulatedDevice.__ne__): Ditto.
(SimulatedDevice.__repr__): Print name and udid.
2017-03-25 Adrian Perez de Castro <aperez@igalia.com>
[GTK] No value returned from PrintCustomWidgetTest::createWebKitPrintOperation() in TestPrinting.cpp
https://bugs.webkit.org/show_bug.cgi?id=170059
Reviewed by Carlos Garcia Campos.
* TestWebKitAPI/Tests/WebKit2Gtk/TestPrinting.cpp: Use "void" as return type in the declaration,
the only use of the method in this same file ignores the returned value anyway.
2017-03-24 Srinivasan Vijayaraghavan <svijayaraghavan@apple.com>
webkitpy should be able to run API tests
https://bugs.webkit.org/show_bug.cgi?id=170028
Reviewed by Alexey Proskuryakov.
* Scripts/webkitpy/common/config/ports.py:
(DeprecatedPort.run_api_tests_command): Added.
* Scripts/webkitpy/port/base.py:
(Port.api_results_directory): Added.
* Scripts/webkitpy/tool/steps/runtests.py:
(RunTests.run): Check if we should be running API tests.
(RunTests._run_api_tests): Generate script to run API tests with json output.
* Scripts/webkitpy/tool/steps/steps_unittest.py: Unit tests.
2017-03-24 Srinivasan Vijayaraghavan <svijayaraghavan@apple.com>
Add JSON results for API tests
https://bugs.webkit.org/show_bug.cgi?id=170021
Reviewed by Alexey Proskuryakov.
* Scripts/run-api-tests:
(runTestsBySuite): Appends failures and timeouts to JSON data.
(writeJsonDataIfApplicable): Writes JSON data to a file.
2017-03-24 Lucas Forschler <lforschler@apple.com>
update committer_auth.py to be python 2.7 compliant
https://bugs.webkit.org/show_bug.cgi?id=170063
Reviewed by Alexey Proskuryakov.
* BuildSlaveSupport/build.webkit.org-config/committer_auth.py:
(CommitterAuth.authenticate):
convert e.message to e.args[0]
2017-03-24 Srinivasan Vijayaraghavan <svijayaraghavan@apple.com>
webkitpy: Parse JSON results from run-api-tests
https://bugs.webkit.org/show_bug.cgi?id=170062
Reviewed by Alexey Proskuryakov.
* Scripts/webkitpy/common/net/apitestresults.py: Added.
(APITestResults): Structure to represent API test results.
(APITestResults.__init__):
(APITestResults.intersection): Return the failures common to both sets of results.
(APITestResults.results_from_string): Create an APITestResults object from a JSON results string.
(APITestResults.equals): Return True if both results were the same.
(APITestResults.is_subset): Return True if failing tests are a subset of the other failing tests.
(APITestResults.all_passed): Return True if everything passed.
(APITestResults.failing_tests): List of tests that didn't pass.
(APITestResults.did_exceed_test_failure_limit): Always False.
* Scripts/webkitpy/common/net/apitestresults_unittest.py: Added.
(APITestResultsTest): Unit tests.
* Scripts/webkitpy/tool/bot/apitestresultsreader.py: Added.
(APITestResultsReader): Read contents of JSON results file.
2017-03-24 Alex Christensen <achristensen@webkit.org>
REGRESSION: Content Blocker: Blocking "a[href*=randomString]" doesn't work
https://bugs.webkit.org/show_bug.cgi?id=169167
Reviewed by Simon Fraser.
* TestWebKitAPI/Tests/WebCore/ContentExtensions.cpp:
(TestWebKitAPI::TEST_F):
Test an example of a selector that was incorrectly determined to be invalid.
2017-03-24 Jonathan Bedard <jbedard@apple.com>
Increase timeout for booting simulators.
<rdar://problem/31080009>
Unreviewed infrastructure fix.
* Scripts/webkitpy/xcode/simulator.py:
(Simulator.wait_until_device_is_booted): Increase timeout.
(Simulator.wait_until_device_is_in_state): Increase timeout.
2017-03-24 Carlos Garcia Campos <cgarcia@igalia.com>
Unreviewed. Fix GTK+ test /webkit2/WebKitWebView/javascript-dialogs after r214277.
Since r214277 beforeunload events are not fired unless there's some user interaction, so we need to simulate it
in our unit tests to work.
* TestWebKitAPI/Tests/WebKit2Gtk/TestUIClient.cpp:
(testWebViewJavaScriptDialogs):
2017-03-24 Carlos Garcia Campos <cgarcia@igalia.com>
[GTK] Add MIMETypeRegistry implementation using xdgmime and remove the GTK+ one
https://bugs.webkit.org/show_bug.cgi?id=170001
Reviewed by Michael Catanzaro.
Ignore style of xdgmime sources.
* Scripts/webkitpy/tool/steps/checkstyle.py:
2017-03-23 Wenson Hsieh <wenson_hsieh@apple.com>
Dragging on a large image should not revert to a file icon if data interaction is enabled
https://bugs.webkit.org/show_bug.cgi?id=170018
<rdar://problem/31184508>
Reviewed by Tim Horton.
Add new tests for data interaction. LargeImageToTargetDiv verifies the change made in this patch, while
AttachmentElementItemProviders was a test that was previously removed due to <rdar://problem/31038797>.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKit2Cocoa/large-red-square.png: Added.
* TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
(TestWebKitAPI::TEST):
2017-03-23 Fujii Hironori <Hironori.Fujii@sony.com>
Update WinCairoRequirements.zip
https://bugs.webkit.org/show_bug.cgi?id=169950
Reviewed by Alex Christensen.
* Scripts/update-webkit-wincairo-libs: Replace $winCairoLibsURL.
== Rolled over to ChangeLog-2017-03-23 ==