blob: 39d27d3f4b08dd0aaebb0ec96ace63ab4986c40b [file] [log] [blame]
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 ==