Add SPI to WKURLSchemeTask for redirection
[WebKit-https.git] / Tools / ChangeLog
1 2017-06-23  Alex Christensen  <achristensen@webkit.org>
2
3         Add SPI to WKURLSchemeTask for redirection
4         https://bugs.webkit.org/show_bug.cgi?id=173730
5
6         Reviewed by Brady Eidson.
7
8         * TestWebKitAPI/Tests/WebKit2Cocoa/WKURLSchemeHandler-1.mm:
9         (-[SchemeHandler webView:startURLSchemeTask:]):
10         (-[SchemeHandler webView:stopURLSchemeTask:]):
11         (TEST):
12         (-[RedirectSchemeHandler webView:startURLSchemeTask:]):
13         (-[RedirectSchemeHandler webView:stopURLSchemeTask:]):
14         (-[RedirectSchemeHandler webView:didReceiveServerRedirectForProvisionalNavigation:]):
15         (-[RedirectSchemeHandler webView:decidePolicyForNavigationResponse:decisionHandler:]):
16         (-[RedirectSchemeHandler userContentController:didReceiveScriptMessage:]):
17
18 2017-06-23  Carlos Garcia Campos  <cgarcia@igalia.com>
19
20         [WPE] Use JSC API to send script messages from web extension in tests
21         https://bugs.webkit.org/show_bug.cgi?id=173757
22
23         Reviewed by Žan Doberšek.
24
25         The GTK+ uses DOM bindings to send the messages. We can just build the message string and use JSEvaluateScript
26         to run postMessage().
27
28         Fixes: /wpe/WebKitSecurityManager/file-xhr
29                /wpe/WebKitConsoleMessage/console-api
30                /wpe/WebKitConsoleMessage/js-exception
31                /wpe/WebKitConsoleMessage/network-error
32                /wpe/WebKitConsoleMessage/security-error
33
34         * TestWebKitAPI/Tests/WebKitGLib/TestConsoleMessage.cpp:
35         (testWebKitConsoleMessageSecurityError): Remove ifdefs.
36         (beforeAll): Ditto.
37         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitWebContext.cpp:
38         (testWebContextSecurityFileXHR): Ditto.
39         (beforeAll): Ditto.
40         * TestWebKitAPI/Tests/WebKitGLib/WebExtensionTest.cpp:
41         (consoleMessageSentCallback): Use JSEvaluateScript in WPE. We need to escape the '"' in the message string.
42         (pageCreatedCallback): Remove ifdefs.
43
44 2017-06-23  Carlos Garcia Campos  <cgarcia@igalia.com>
45
46         Unreviewed. Fix WPE /wpe/WebKitWebView/javascript-dialogs and /wpe/WebKitWebView/window-properties
47
48         Skip onbeforeunload dialog tests for now in WPE since we don't have a implemention for
49         simulateUserInteraction(). And do not expect changes in "geometry" property of WebKitWindowProperties that
50         doesn't exist yet in WPE.
51
52         * TestWebKitAPI/Tests/WebKitGLib/TestUIClient.cpp:
53         (testWebViewJavaScriptDialogs):
54         (testWebViewWindowProperties):
55
56 2017-06-22  Carlos Garcia Campos  <cgarcia@igalia.com>
57
58         [GTK] Upgrade pixman and cairo in jhbuild
59         https://bugs.webkit.org/show_bug.cgi?id=173710
60
61         Reviewed by Carlos Alberto Lopez Perez.
62
63         * gtk/jhbuild.modules:
64
65 2017-06-22  Carlos Garcia Campos  <cgarcia@igalia.com>
66
67         REGRESSION(r218686): [GTK] Several unit tests are failing after r218686 in the bots
68         https://bugs.webkit.org/show_bug.cgi?id=173711
69
70         Reviewed by Carlos Alberto Lopez Perez.
71
72         I can't reproduce it locally, but it's complaining about a g_setenv() and I only added one in r218686 to recover
73         the XDG_RUNTIME_DIR, because it's required by Wayland to work. So, I guess that env var is not set in the bots.
74
75         * TestWebKitAPI/glib/WebKitGLib/WebKitTestBus.cpp:
76         (WebKitTestBus::run): Ensure value is not nullptr before calling g_setenv().
77
78 2017-06-22  David Kilzer  <ddkilzer@apple.com>
79
80         REGRESSION (r218419): 7 leaks in PluginLoadClientPolicies.mm
81         <https://webkit.org/b/173721>
82
83         Reviewed by Joseph Pecoraro.
84
85         Use RetainPtr<> to create NSMutableDictionary and NSNumber
86         objects to fix leaks and to avoid the autoreleasepool.
87
88         * TestWebKitAPI/Tests/WebKit2Cocoa/PluginLoadClientPolicies.mm:
89         (TEST):
90
91 2017-06-22  Matt Lewis  <jlewis3@apple.com>
92
93         Unreviewed, rolling out r218633.
94
95         The test is failing frequently on Sierra Debug and Windows
96
97         Reverted changeset:
98
99         "AX: Cannot call setValue() on contenteditable or ARIA text
100         controls"
101         https://bugs.webkit.org/show_bug.cgi?id=173520
102         http://trac.webkit.org/changeset/218633
103
104 2017-06-22  David Kilzer  <ddkilzer@apple.com>
105
106         [TestWebKitAPI] Fix misuse of -[NSData dataWithBytesNoCopy:length:] with global variables
107         <https://webkit.org/b/173690>
108
109         Reviewed by Chris Dumez.
110
111         Per documentation, -[NSData dataWithBytesNoCopy:length:] takes
112         ownership of malloc()-ed memory, then frees it when it's
113         released.  These tests were passing global variables into the
114         method, which is not malloc()-ed memory, which violates the API
115         contract.
116
117         The fix is to switch to use
118         -[NSData dataWithBytesNoCopy:length:freeWhenDone:] and to pass
119         NO for the last argument.
120
121         Caught by the clang static analyzer.
122
123         * TestWebKitAPI/Tests/WebKit2Cocoa/IconLoadingDelegate.mm:
124         (TEST):
125         * TestWebKitAPI/Tests/WebKit2Cocoa/WKURLSchemeHandler-1.mm:
126         (TEST):
127
128 2017-06-22  Carlos Garcia Campos  <cgarcia@igalia.com>
129
130         [GTK] Upgrade Harfbuzz to version 1.4.2
131         https://bugs.webkit.org/show_bug.cgi?id=173592
132
133         Reviewed by Carlos Alberto Lopez Perez.
134
135         * gtk/jhbuild.modules:
136
137 2017-06-22  Carlos Garcia Campos  <cgarcia@igalia.com>
138
139         [WPE] Update WPEBackend-mesa
140         https://bugs.webkit.org/show_bug.cgi?id=173705
141
142         Reviewed by Carlos Alberto Lopez Perez.
143
144         A crash has been fixed, needed for unit tests to work.
145
146         * wpe/jhbuild.modules:
147
148 2017-06-22  Carlos Garcia Campos  <cgarcia@igalia.com>
149
150         Remove unused coordinated graphics C API
151         https://bugs.webkit.org/show_bug.cgi?id=173706
152
153         Reviewed by Žan Doberšek.
154
155         * TestWebKitAPI/Tests/WebKit2/CoordinatedGraphics/WKViewIsActiveSetIsActive.cpp: Removed.
156         * TestWebKitAPI/Tests/WebKit2/CoordinatedGraphics/WKViewIsActiveSetIsActive_Bundle.cpp: Removed.
157         * TestWebKitAPI/Tests/WebKit2/CoordinatedGraphics/WKViewRestoreZoomAndScrollBackForward.cpp: Removed.
158         * TestWebKitAPI/Tests/WebKit2/CoordinatedGraphics/WKViewUserViewportToContents.cpp: Removed.
159         * TestWebKitAPI/Tests/WebKit2/CoordinatedGraphics/backforward1.html: Removed.
160         * TestWebKitAPI/Tests/WebKit2/CoordinatedGraphics/backforward2.html: Removed.
161
162 2017-06-22  Carlos Garcia Campos  <cgarcia@igalia.com>
163
164         [WPE] Build glib API tests
165         https://bugs.webkit.org/show_bug.cgi?id=173702
166
167         Reviewed by Žan Doberšek.
168
169         Many of the tests pass without problems, others need to be investigated, and some others are known issues. The
170         main difference between the GTK+ and WPE WebKitWebView is that in GTK+ it's a GtkWidget, so initially
171         unowned. The tests assume that webkit_web_view_new methods return a floating reference. This patch adds
172         Test::adoptView() method that returns a GRefPtr<WebKitWebView> with a different implementation in GTK+ and
173         WPE. In the case of GTK+, it sinks the floating reference, while in WPE it simply adopts the reference. Another
174         difference is that in GTK+ the web view is initially hidden and needs to be added to a window to make it
175         visible. Also, some tests need the web view to be realized to work, and others need that the view is added to a
176         toplevel window, instead of a popup window. All those things are not needed at all in WPE. I've added several
177         #ifdefs with FIXME comments for the things that we know don't work in WPE yet, for example, because we haven't
178         implemented the methods to send events to the web view. Those will be removed eventually when we fix the issues
179         and implement the missing features.
180
181         * CMakeLists.txt:
182         * TestWebKitAPI/Tests/WebKit2Gtk/EditorTest.cpp:
183         * TestWebKitAPI/Tests/WebKitGLib/FrameTest.cpp:
184         * TestWebKitAPI/Tests/WebKitGLib/TestAutomationSession.cpp:
185         (testAutomationSessionRequestSession):
186         * TestWebKitAPI/Tests/WebKitGLib/TestBackForwardList.cpp:
187         (testWebKitWebViewSessionState):
188         (testWebKitWebViewSessionStateWithFormData):
189         (testWebKitWebViewNavigationAfterSessionRestore):
190         * TestWebKitAPI/Tests/WebKitGLib/TestConsoleMessage.cpp:
191         (beforeAll):
192         * TestWebKitAPI/Tests/WebKitGLib/TestCookieManager.cpp:
193         (testCookieManagerEphemeral):
194         * TestWebKitAPI/Tests/WebKitGLib/TestDownloads.cpp:
195         (testBlobDownload):
196         (beforeAll):
197         * TestWebKitAPI/Tests/WebKitGLib/TestFrame.cpp:
198         * TestWebKitAPI/Tests/WebKitGLib/TestLoaderClient.cpp:
199         * TestWebKitAPI/Tests/WebKitGLib/TestMultiprocess.cpp:
200         (testProcessPerWebView):
201         * TestWebKitAPI/Tests/WebKitGLib/TestSSL.cpp:
202         * TestWebKitAPI/Tests/WebKitGLib/TestUIClient.cpp:
203         (testWebViewCreateNavigationData):
204         (testWebViewJavaScriptDialogs):
205         (testWebViewWindowProperties):
206         (testWebViewMouseTarget):
207         (testWebViewGeolocationPermissionRequests):
208         (testWebViewUserMediaPermissionRequests):
209         (testWebViewAudioOnlyUserMediaPermissionRequests):
210         (testWebViewFileChooserRequest):
211         (beforeAll):
212         * TestWebKitAPI/Tests/WebKitGLib/TestWebExtensions.cpp:
213         (beforeAll):
214         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitFaviconDatabase.cpp:
215         (testPrivateBrowsing):
216         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitFindController.cpp:
217         (testFindControllerHide):
218         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitSecurityOrigin.cpp:
219         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitSettings.cpp:
220         (testWebKitSettings):
221         (beforeAll):
222         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitUserContentManager.cpp:
223         (testWebViewNewWithUserContentManager):
224         (beforeAll):
225         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitWebContext.cpp:
226         (testWebContextEphemeral):
227         (testWebContextProxySettings):
228         (beforeAll):
229         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitWebView.cpp:
230         (testWebViewWebContext):
231         (testWebViewWebContextLifetime):
232         (testWebViewEphemeral):
233         (testWebViewSettings):
234         (testWebViewCanShowMIMEType):
235         (testWebViewPageVisibility):
236         (testWebViewIsPlayingAudio):
237         (beforeAll):
238         * TestWebKitAPI/Tests/WebKitGLib/TestWebsiteData.cpp:
239         (testWebsiteDataEphemeral):
240         * TestWebKitAPI/Tests/WebKitGLib/WebExtensionTest.cpp:
241         (documentLoadedCallback):
242         (pageCreatedCallback):
243         (methodCallCallback):
244         * TestWebKitAPI/Tests/WebKitGLib/WebProcessTest.h:
245         * TestWebKitAPI/glib/CMakeLists.txt:
246         * TestWebKitAPI/glib/PlatformGTK.cmake:
247         * TestWebKitAPI/glib/WebKitGLib/LoadTrackingTest.cpp:
248         * TestWebKitAPI/glib/WebKitGLib/TestMain.cpp:
249         (main):
250         * TestWebKitAPI/glib/WebKitGLib/TestMain.h:
251         (Test::adoptView):
252         * TestWebKitAPI/glib/WebKitGLib/WebKitTestBus.cpp:
253         (WebKitTestBus::run):
254         * TestWebKitAPI/glib/WebKitGLib/WebViewTest.cpp:
255         (WebViewTest::~WebViewTest):
256         (WebViewTest::initializeWebView):
257         * TestWebKitAPI/glib/WebKitGLib/WebViewTest.h:
258         * TestWebKitAPI/glib/WebKitGLib/gtk/WebViewTestGtk.cpp: Added.
259         (WebViewTest::platformDestroy):
260         (WebViewTest::platformInitializeWebView):
261         (WebViewTest::quitMainLoopAfterProcessingPendingEvents):
262         (WebViewTest::resizeView):
263         (WebViewTest::hideView):
264         (parentWindowMapped):
265         (WebViewTest::showInWindow):
266         (WebViewTest::showInWindowAndWaitUntilMapped):
267         (WebViewTest::mouseMoveTo):
268         (WebViewTest::clickMouseButton):
269         (WebViewTest::emitPopupMenuSignal):
270         (WebViewTest::keyStroke):
271         (WebViewTest::doMouseButtonEvent):
272         * TestWebKitAPI/glib/WebKitGLib/wpe/WebViewTestWPE.cpp: Copied from Tools/TestWebKitAPI/Tests/WebKitGLib/WebProcessTest.h.
273         (WebViewTest::platformDestroy):
274         (WebViewTest::platformInitializeWebView):
275         (WebViewTest::quitMainLoopAfterProcessingPendingEvents):
276         (WebViewTest::resizeView):
277         (WebViewTest::hideView):
278         (WebViewTest::mouseMoveTo):
279         (WebViewTest::clickMouseButton):
280         (WebViewTest::keyStroke):
281
282 2017-06-22  Carlos Garcia Campos  <cgarcia@igalia.com>
283
284         [GTK] Move WebKit2 GLib API tests to glib directories
285         https://bugs.webkit.org/show_bug.cgi?id=173642
286
287         Reviewed by Žan Doberšek.
288
289         * CMakeLists.txt:
290         * TestWebKitAPI/Tests/WebKit2Gtk/CMakeLists.txt: Removed.
291         * TestWebKitAPI/Tests/WebKit2Gtk/resources/webkit2gtk-tests.gresource.xml: Removed.
292         * TestWebKitAPI/Tests/WebKitGLib/FrameTest.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/FrameTest.cpp.
293         * TestWebKitAPI/Tests/WebKitGLib/TestAuthentication.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestAuthentication.cpp.
294         * TestWebKitAPI/Tests/WebKitGLib/TestAutomationSession.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestAutomationSession.cpp.
295         * TestWebKitAPI/Tests/WebKitGLib/TestBackForwardList.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestBackForwardList.cpp.
296         * TestWebKitAPI/Tests/WebKitGLib/TestConsoleMessage.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestConsoleMessage.cpp.
297         (testWebKitConsoleMessageNetworkError):
298         * TestWebKitAPI/Tests/WebKitGLib/TestCookieManager.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestCookieManager.cpp.
299         * TestWebKitAPI/Tests/WebKitGLib/TestDownloads.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestDownloads.cpp.
300         * TestWebKitAPI/Tests/WebKitGLib/TestFrame.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestFrame.cpp.
301         * TestWebKitAPI/Tests/WebKitGLib/TestLoaderClient.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestLoaderClient.cpp.
302         (testLoadFromGResource):
303         * TestWebKitAPI/Tests/WebKitGLib/TestMultiprocess.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestMultiprocess.cpp.
304         * TestWebKitAPI/Tests/WebKitGLib/TestResources.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestResources.cpp.
305         * TestWebKitAPI/Tests/WebKitGLib/TestSSL.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestSSL.cpp.
306         * TestWebKitAPI/Tests/WebKitGLib/TestUIClient.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestUIClient.cpp.
307         * TestWebKitAPI/Tests/WebKitGLib/TestWebExtensions.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestWebExtensions.cpp.
308         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitFaviconDatabase.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitFaviconDatabase.cpp.
309         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitFindController.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitFindController.cpp.
310         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitPolicyClient.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitPolicyClient.cpp.
311         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitSecurityOrigin.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitSecurityOrigin.cpp.
312         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitSettings.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitSettings.cpp.
313         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitUserContentManager.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitUserContentManager.cpp.
314         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitWebContext.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitWebContext.cpp.
315         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitWebView.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitWebView.cpp.
316         (testWebViewRunJavaScript):
317         * TestWebKitAPI/Tests/WebKitGLib/TestWebsiteData.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestWebsiteData.cpp.
318         * TestWebKitAPI/Tests/WebKitGLib/WebExtensionTest.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/WebExtensionTest.cpp.
319         (registerGResource):
320         * TestWebKitAPI/Tests/WebKitGLib/WebProcessTest.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/WebProcessTest.cpp.
321         * TestWebKitAPI/Tests/WebKitGLib/WebProcessTest.h: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/WebProcessTest.h.
322         * TestWebKitAPI/Tests/WebKitGLib/resources/blank.ico: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/resources/blank.ico.
323         * TestWebKitAPI/Tests/WebKitGLib/resources/boring.html: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/resources/boring.html.
324         * TestWebKitAPI/Tests/WebKitGLib/resources/link-title.js: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/resources/link-title.js.
325         * TestWebKitAPI/Tests/WebKitGLib/resources/silence.mpg: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/resources/silence.mpg.
326         * TestWebKitAPI/Tests/WebKitGLib/resources/simple.json: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/resources/simple.json.
327         * TestWebKitAPI/Tests/WebKitGLib/resources/test-cert.pem: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/resources/test-cert.pem.
328         * TestWebKitAPI/Tests/WebKitGLib/resources/test-key.pem: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/resources/test-key.pem.
329         * TestWebKitAPI/Tests/WebKitGLib/resources/test.pdf: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/resources/test.pdf.
330         * TestWebKitAPI/Tests/WebKitGLib/resources/track.ogg: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/resources/track.ogg.
331         * TestWebKitAPI/Tests/WebKitGLib/resources/webkitglib-tests.gresource.xml: Added.
332         * TestWebKitAPI/glib/CMakeLists.txt: Added.
333         * TestWebKitAPI/glib/PlatformGTK.cmake: Added.
334         * TestWebKitAPI/glib/WebKitGLib/LoadTrackingTest.cpp: Renamed from Tools/TestWebKitAPI/gtk/WebKit2Gtk/LoadTrackingTest.cpp.
335         * TestWebKitAPI/glib/WebKitGLib/LoadTrackingTest.h: Renamed from Tools/TestWebKitAPI/gtk/WebKit2Gtk/LoadTrackingTest.h.
336         * TestWebKitAPI/glib/WebKitGLib/TestMain.cpp: Renamed from Tools/TestWebKitAPI/gtk/WebKit2Gtk/TestMain.cpp.
337         (registerGResource):
338         * TestWebKitAPI/glib/WebKitGLib/TestMain.h: Renamed from Tools/TestWebKitAPI/gtk/WebKit2Gtk/TestMain.h.
339         (Test::getResourcesDir):
340         * TestWebKitAPI/glib/WebKitGLib/WebKitTestBus.cpp: Renamed from Tools/TestWebKitAPI/gtk/WebKit2Gtk/WebKitTestBus.cpp.
341         * TestWebKitAPI/glib/WebKitGLib/WebKitTestBus.h: Renamed from Tools/TestWebKitAPI/gtk/WebKit2Gtk/WebKitTestBus.h.
342         * TestWebKitAPI/glib/WebKitGLib/WebKitTestServer.cpp: Renamed from Tools/TestWebKitAPI/gtk/WebKit2Gtk/WebKitTestServer.cpp.
343         * TestWebKitAPI/glib/WebKitGLib/WebKitTestServer.h: Renamed from Tools/TestWebKitAPI/gtk/WebKit2Gtk/WebKitTestServer.h.
344         * TestWebKitAPI/glib/WebKitGLib/WebViewTest.cpp: Renamed from Tools/TestWebKitAPI/gtk/WebKit2Gtk/WebViewTest.cpp.
345         * TestWebKitAPI/glib/WebKitGLib/WebViewTest.h: Renamed from Tools/TestWebKitAPI/gtk/WebKit2Gtk/WebViewTest.h.
346
347 2017-06-22  Carlos Garcia Campos  <cgarcia@igalia.com>
348
349         [WPE] Add initial web extensions API
350         https://bugs.webkit.org/show_bug.cgi?id=173640
351
352         Reviewed by Žan Doberšek.
353
354         Add style checker exceptions for WPE web extensions API files.
355
356         * Scripts/webkitpy/style/checker.py:
357
358 2017-06-21  Wenson Hsieh  <wenson_hsieh@apple.com>
359
360         [iOS DnD] [WK2] Cancelling a drag interaction using the ObjC SPI causes subsequent dragging to fail
361         https://bugs.webkit.org/show_bug.cgi?id=173659
362         <rdar://problem/32879788>
363
364         Reviewed by Tim Horton.
365
366         Adds a new test to verify that a lift cancelled within the UI process does not cause subsequent dragging to fail.
367
368         * TestWebKitAPI/Tests/WebKit2Cocoa/link-and-target-div.html:
369
370         Augment this test page to log dragend and dragstart events on the drag source as well.
371
372         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
373         (checkStringArraysAreEqual):
374         (TestWebKitAPI::TEST):
375
376 2017-06-21  Antoine Quint  <graouts@apple.com>
377
378         Ensure DRT always logs rAF suspension debugging code
379         https://bugs.webkit.org/show_bug.cgi?id=173681
380
381         Reviewed by Tim "Mr. T" Horton.
382
383         * DumpRenderTree/mac/DumpRenderTree.mm:
384         (resetWebPreferencesToConsistentValues):
385
386 2017-06-21  Chris Dumez  <cdumez@apple.com>
387
388         Allow constructing a WTF:Function from a function pointer
389         https://bugs.webkit.org/show_bug.cgi?id=173660
390
391         Reviewed by Alex Christensen.
392
393         Add API test coverage.
394
395         * TestWebKitAPI/Tests/WTF/Function.cpp:
396         (TestWebKitAPI::returnThree):
397         (TestWebKitAPI::returnFour):
398         (TestWebKitAPI::returnPassedValue):
399         (TestWebKitAPI::TEST):
400
401 2017-06-21  Antoine Quint  <graouts@apple.com>
402
403         Add logging to identify when the Page suspends scripted animations
404         https://bugs.webkit.org/show_bug.cgi?id=173626
405
406         Reviewed by Tim Horton.
407
408         Turn the new logging on for WK1/DRT since the issue we're trying to pinpoint only occurs on WK1 bots.
409
410         * DumpRenderTree/mac/DumpRenderTree.mm:
411         (resetWebPreferencesToConsistentValues):
412
413 2017-06-21  Chris Fleizach  <cfleizach@apple.com>
414
415         AX: Cannot call setValue() on contenteditable or ARIA text controls
416         https://bugs.webkit.org/show_bug.cgi?id=173520
417
418         Reviewed by Ryosuke Niwa.
419
420         Add setValue() method to WKTR (already existed in DRT).
421
422         * WebKitTestRunner/InjectedBundle/AccessibilityUIElement.cpp:
423         (WTR::AccessibilityUIElement::setValue):
424         * WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h:
425         * WebKitTestRunner/InjectedBundle/Bindings/AccessibilityUIElement.idl:
426         * WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:
427         (WTR::AccessibilityUIElement::setValue):
428
429 2017-06-21  Zan Dobersek  <zdobersek@igalia.com>
430
431         List libtasn1 packages in GTK+ and WPE install-dependencies scripts
432         as one of the dependencies required to build the product.
433
434         Rubber-stamped by Carlos Garcia Campos.
435
436         * gtk/install-dependencies:
437         * wpe/install-dependencies:
438
439 2017-06-20  Myles C. Maxfield  <mmaxfield@apple.com>
440
441         Disable font variations on macOS Sierra and iOS 10
442         https://bugs.webkit.org/show_bug.cgi?id=173618
443         <rdar://problem/32879164>
444
445         Reviewed by Jon Lee.
446
447         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
448
449 2017-06-20  Wenson Hsieh  <wenson_hsieh@apple.com>
450
451         [iOS DnD] [WK2] Remove custom logic for disambiguating long press action sheet gestures and drag lift
452         https://bugs.webkit.org/show_bug.cgi?id=173578
453         <rdar://problem/32825028>
454
455         Reviewed by Tim Horton.
456
457         Slight tweak to ensure that DataInteractionTests.CustomActionSheetPopover still passes and verifies that showing
458         a custom popover does not cause dragging to fail when the popover is presented.
459
460         * TestWebKitAPI/ios/DataInteractionSimulator.mm:
461         (-[DataInteractionSimulator _advanceProgress]):
462
463 2017-06-20  Carlos Garcia Campos  <cgarcia@igalia.com>
464
465         [WPE] Add initial implementation of glib API
466         https://bugs.webkit.org/show_bug.cgi?id=173546
467
468         Reviewed by Žan Doberšek.
469
470         Disable geolocation because WPE doesn't implement any provider and update the style checker exceptions to
471         include WPE glib API files.
472
473         * Scripts/webkitperl/FeatureList.pm:
474         * Scripts/webkitpy/style/checker.py:
475         * Scripts/webkitpy/style/checkers/cpp.py:
476         (check_identifier_name_in_declaration):
477
478 2017-06-20  Carlos Garcia Campos  <cgarcia@igalia.com>
479
480         [GTK] Upgrade to ICU to version 57.1
481         https://bugs.webkit.org/show_bug.cgi?id=173538
482
483         Reviewed by Žan Doberšek.
484
485         * gtk/jhbuild.modules:
486
487 2017-06-20  Carlos Garcia Campos  <cgarcia@igalia.com>
488
489         [GTK] Remove unneeded modules from the jhbuild
490         https://bugs.webkit.org/show_bug.cgi?id=170540
491
492         Reviewed by Michael Catanzaro.
493
494         We are building libxslt and libffi that we don't really need to build from sources.
495
496         * gtk/jhbuild.modules:
497
498 2017-06-19  Frederic Wang  <fwang@igalia.com>
499
500         [Mac] Add an experimental feature setting for async frame scrolling
501         https://bugs.webkit.org/show_bug.cgi?id=173359
502
503         Reviewed by Simon Fraser.
504
505         * DumpRenderTree/mac/DumpRenderTree.mm:
506         (enableExperimentalFeatures): Do not enable async frame scrolling for now.
507         (resetWebPreferencesToConsistentValues): Disable async frame scrolling by default.
508         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
509         (WTR::InjectedBundle::beginTesting): Initalize to async frame scrolling to false.
510
511 2017-06-19  Guillaume Emont  <guijemont@igalia.com>
512
513         Unreviewed, adding myself to contributors.json
514
515         * Scripts/webkitpy/common/config/contributors.json:
516
517 2017-06-19  Joseph Pecoraro  <pecoraro@apple.com>
518
519         test262: Completion values for control flow do not match the spec
520         https://bugs.webkit.org/show_bug.cgi?id=171265
521
522         Reviewed by Saam Barati.
523
524         * Scripts/run-jsc-stress-tests:
525         Include a :failDueToOutdatedOrBadTest to mark failures with justification.
526
527 2017-06-19  Zalan Bujtas  <zalan@apple.com>
528
529         Opening certain mails brings up a mail that grows indefinitely.
530         https://bugs.webkit.org/show_bug.cgi?id=173562
531         <rdar://problem/32766579>
532
533         Reviewed by Tim Horton.
534
535         * TestWebKitAPI/Tests/WebKit2Cocoa/AutoLayoutIntegration.mm:
536         (TEST):
537
538 2017-06-19  Wenson Hsieh  <wenson_hsieh@apple.com>
539
540         [iOS DnD] Support .zip archives for file uploads via drag and drop
541         https://bugs.webkit.org/show_bug.cgi?id=173511
542         <rdar://problem/32521025>
543
544         Reviewed by Tim Horton.
545
546         Adds tests for dropping .zip archives into a JavaScript-based file upload area, as well as into a file input.
547         Also verifies that URLs are not handled as file drops. See WebCore ChangeLog for more details.
548
549         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
550         * TestWebKitAPI/Tests/WebKit2Cocoa/compressed-files.zip: Added.
551         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
552         (testZIPArchive):
553         (TestWebKitAPI::TEST):
554
555 2017-06-18  Darin Adler  <darin@apple.com>
556
557         Fix Ref to deref before assignment, add tests for this to RefPtr, Ref, Function
558         https://bugs.webkit.org/show_bug.cgi?id=173526
559
560         Reviewed by Sam Weinig.
561
562         * TestWebKitAPI/CMakeLists.txt: Added Function.cpp.
563         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj: Ditto.
564
565         * TestWebKitAPI/Tests/WTF/Function.cpp: Added. Contains basic tests and some
566         tests for assignment before destruction ones.
567
568         * TestWebKitAPI/Tests/WTF/MoveOnly.h: Added a () operator so this can be used
569         as a function, so it can be used in WTF::Function tests.
570
571         * TestWebKitAPI/Tests/WTF/Ref.cpp: Use EXPECT macros insead of ASSERT.
572         Added tests for swap and for assignment before deref.
573
574         * TestWebKitAPI/Tests/WTF/RefLogger.cpp: Stopped using inlining; no good reason
575         to inline everything. Also removed the unnecessary clearing of the log every time
576         the DerivedRefLogger constructor is called.
577         * TestWebKitAPI/Tests/WTF/RefLogger.h: Ditto.
578
579         * TestWebKitAPI/Tests/WTF/RefPtr.cpp: Use EXPECT macros instead of ASSERT.
580         Added tests for assignment before deref and similar for releaseNonNull.
581
582 2017-06-19  Sam Weinig  <sam@webkit.org>
583
584         [WebIDL] Properly model buffer source / typed arrays as their own IDL types
585         https://bugs.webkit.org/show_bug.cgi?id=173513
586
587         Reviewed by Alex Christensen.
588
589         * DumpRenderTree/Bindings/CodeGeneratorDumpRenderTree.pm:
590         * WebKitTestRunner/InjectedBundle/Bindings/CodeGeneratorTestRunner.pm:
591         Replace IsNonPointerType subroutine with IsPrimitiveType so we can remove IsNonPointerType.
592
593 2017-06-19  Per Arne Vollan  <pvollan@apple.com>
594
595         [Win] fast/dom/assign-to-window-status.html is flaky.
596         https://bugs.webkit.org/show_bug.cgi?id=173512
597
598         Reviewed by Alex Christensen.
599
600         We should not dump status callbacks when test is done.
601
602         * DumpRenderTree/win/UIDelegate.cpp:
603         (UIDelegate::setStatusText):
604
605 2017-06-19  Carlos Alberto Lopez Perez  <clopez@igalia.com>
606
607         [WPE][JHBuild] Update WPEBackend-mesa
608         https://bugs.webkit.org/show_bug.cgi?id=173433
609
610         Unreviewed.
611
612         Update WPEBackend-mesa back (like it was done originally in r218344)
613         after fixing the issue with the DISPLAY environment variables that
614         caused the crashes.
615
616         * wpe/jhbuild.modules:
617
618 2017-06-19  Carlos Alberto Lopez Perez  <clopez@igalia.com>
619
620         Rename unit test file after r218482
621         https://bugs.webkit.org/show_bug.cgi?id=173483
622
623         Unreviewed.
624
625         * Scripts/webkitpy/port/waylanddriver_unittest.py: Renamed from Tools/Scripts/webkitpy/port/wayland_unittest.py.
626
627 2017-06-19  Carlos Garcia Campos  <cgarcia@igalia.com>
628
629         Unreviewed. Fix wrong style checker condition added in r218487.
630
631         * Scripts/webkitpy/style/checkers/cpp.py:
632         (check_identifier_name_in_declaration):
633
634 2017-06-19  Adrian Perez de Castro  <aperez@igalia.com>
635
636         Missing <functional> includes make builds fail with GCC 7.x
637         https://bugs.webkit.org/show_bug.cgi?id=173544
638
639         Unreviewed gardening.
640
641         Fix compilation with GCC 7.
642
643         * TestWebKitAPI/Tests/WTF/HashSet.cpp:
644         * TestWebKitAPI/Tests/WebKit2Gtk/WebProcessTest.h:
645
646 2017-06-19  Carlos Garcia Campos  <cgarcia@igalia.com>
647
648         [GTK] Move GTK+ API files that could be shared to glib dirs
649         https://bugs.webkit.org/show_bug.cgi?id=173545
650
651         Reviewed by Žan Doberšek.
652
653         Update paths of GTK+ API in watchlist and style checker.
654
655         * Scripts/webkitpy/common/config/watchlist:
656         * Scripts/webkitpy/style/checker.py:
657         * Scripts/webkitpy/style/checkers/cpp.py:
658         (check_identifier_name_in_declaration):
659
660 2017-06-19  Carlos Alberto Lopez Perez  <clopez@igalia.com>
661
662         Port setup_environ_for_server should not set environment variables related with the driver.
663         https://bugs.webkit.org/show_bug.cgi?id=173483
664
665         Reviewed by Carlos Garcia Campos.
666
667         The port setup_environ_for_server() should not set environment variables
668         that depend on the type of driver (like DISPLAY or GDK_BACKEND).
669         This varibles should be only set on the driver setup_environ_for_test().
670
671         This causes that (for example) the variable DISPLAY or XAUTHORITY leaks
672         into the test environment even when running the tests with a driver
673         that is not the Xorg or Xvfb one.
674
675         * Scripts/webkitpy/port/base.py: Stop setting XAUTHORITY and DISPLAY here.
676         (Port.to.setup_environ_for_server):
677         * Scripts/webkitpy/port/driver.py: Remove unneded WEBKIT_OUTPUTDIR that is already set on base.py
678         (Driver._setup_environ_for_driver):
679         * Scripts/webkitpy/port/driver_unittest.py:
680         (DriverTest.test_setup_environ_for_test):
681         (DriverTest):
682         (DriverTest.test_setup_environ_base_vars):
683         * Scripts/webkitpy/port/gtk.py: Stop setting GDK_BACKEND here and do that on the driver (Xvfb).
684         (GtkPort.setup_environ_for_server):
685         * Scripts/webkitpy/port/wayland_unittest.py: Added.
686         (WaylandDriverTest):
687         (WaylandDriverTest.make_driver):
688         (WaylandDriverTest.make_environment):
689         (WaylandDriverTest.test_checkdriver):
690         (WaylandDriverTest.test_environment_needed_variables):
691         (WaylandDriverTest.test_environment_forbidden_variables):
692         (WaylandDriverTest.test_environment_optional_variables):
693         * Scripts/webkitpy/port/waylanddriver.py: Allow the driver to run also with WAYLAND_SOCKET.
694         (WaylandDriver.check_driver):
695         (WaylandDriver._setup_environ_for_test):
696         * Scripts/webkitpy/port/xorgdriver.py:
697         (XorgDriver.check_driver):
698         (XorgDriver._setup_environ_for_test):
699         * Scripts/webkitpy/port/xorgdriver_unittest.py: Added.
700         (XorgDriverTest):
701         (XorgDriverTest.make_driver):
702         (XorgDriverTest.make_environment):
703         (XorgDriverTest.test_checkdriver):
704         (XorgDriverTest.test_environment_needed_variables):
705         (XorgDriverTest.test_environment_forbidden_variables):
706         (XorgDriverTest.test_environment_optional_variables):
707         * Scripts/webkitpy/port/xvfbdriver.py:
708         (XvfbDriver._setup_environ_for_test):
709         * Scripts/webkitpy/port/xvfbdriver_unittest.py:
710         (XvfbDriverTest.assertDriverStartSuccessful):
711
712
713 2017-05-14 Frederic Wang  <fwang@igalia.com>
714
715         Add heuristic to avoid flattening "fullscreen" iframes
716         https://bugs.webkit.org/show_bug.cgi?id=171914
717
718         Reviewed by Simon Fraser.
719
720         * DumpRenderTree/mac/DumpRenderTree.mm:
721         (resetWebPreferencesToConsistentValues): Use WebKitFrameFlatteningDisabled.
722
723 2017-06-18  Chris Dumez  <cdumez@apple.com>
724
725         Crash when re-entering MediaDevicesEnumerationRequest::cancel()
726         https://bugs.webkit.org/show_bug.cgi?id=173522
727         <rdar://problem/31185739>
728
729         Reviewed by Darin Adler.
730
731         Add API test for re-entering Function's assignment operators.
732
733         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
734         * TestWebKitAPI/Tests/WTF/Function.cpp: Added.
735         (TestWebKitAPI::TestObject::TestObject):
736         (TestWebKitAPI::TestObject::~TestObject):
737         (TestWebKitAPI::TestObject::operator()):
738         (TestWebKitAPI::TEST):
739
740 2017-06-16  Dan Bernstein  <mitz@apple.com>
741
742         [Cocoa] Some declarations have missing or incorrect availability attributes
743         https://bugs.webkit.org/show_bug.cgi?id=173508
744
745         Reviewed by Tim Horton.
746
747         * TestWebKitAPI/Tests/ios/PositionInformationTests.mm:
748         (TestWebKitAPI::TEST): Updated for renames.
749
750 2017-06-16  Wenson Hsieh  <wenson_hsieh@apple.com>
751
752         [iOS DnD] Upstream iOS drag and drop implementation into OpenSource WebKit
753         https://bugs.webkit.org/show_bug.cgi?id=173366
754         <rdar://problem/32767014>
755
756         Reviewed by Tim Horton.
757
758         Move test pages and pieces of DataInteractionSimulator hidden behind WebKitAdditions into TestWebKitAPI. No
759         change in behavior.
760
761         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
762         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
763         * TestWebKitAPI/Tests/WebKit2Cocoa/autofocus-contenteditable.html: Added.
764         * TestWebKitAPI/Tests/WebKit2Cocoa/background-image-link-and-input.html: Added.
765         * TestWebKitAPI/Tests/WebKit2Cocoa/contenteditable-and-textarea.html: Added.
766         * TestWebKitAPI/Tests/WebKit2Cocoa/div-and-large-image.html: Added.
767         * TestWebKitAPI/Tests/WebKit2Cocoa/file-uploading.html: Added.
768         * TestWebKitAPI/Tests/WebKit2Cocoa/image-and-contenteditable.html: Added.
769         * TestWebKitAPI/Tests/WebKit2Cocoa/image-and-textarea.html: Added.
770         * TestWebKitAPI/Tests/WebKit2Cocoa/link-and-input.html: Added.
771         * TestWebKitAPI/Tests/WebKit2Cocoa/link-and-target-div.html: Added.
772         * TestWebKitAPI/Tests/WebKit2Cocoa/prevent-operation.html: Added.
773         * TestWebKitAPI/Tests/WebKit2Cocoa/prevent-start.html: Added.
774         * TestWebKitAPI/Tests/WebKit2Cocoa/textarea-to-input.html: Added.
775         * TestWebKitAPI/ios/DataInteractionSimulator.mm:
776         (-[MockDragDropSession initWithItems:location:window:]):
777         (-[MockDragDropSession allowsMoveOperation]):
778         (-[MockDragDropSession isRestrictedToDraggingApplication]):
779         (-[MockDragDropSession hasItemsConformingToTypeIdentifiers:]):
780         (-[MockDragDropSession canLoadObjectsOfClass:]):
781         (-[MockDragDropSession canLoadObjectsOfClasses:]):
782         (-[MockDragDropSession items]):
783         (-[MockDragDropSession setItems:]):
784         (-[MockDragDropSession locationInView:]):
785         (-[MockDataOperationSession initWithProviders:location:window:]):
786         (-[MockDataOperationSession session]):
787         (-[MockDataOperationSession isLocal]):
788         (-[MockDataOperationSession progress]):
789         (-[MockDataOperationSession setProgressIndicatorStyle:]):
790         (-[MockDataOperationSession progressIndicatorStyle]):
791         (-[MockDataOperationSession operationMask]):
792         (-[MockDataOperationSession localDragSession]):
793         (-[MockDataOperationSession hasItemsConformingToTypeIdentifier:]):
794         (-[MockDataOperationSession canCreateItemsOfClass:]):
795         (-[MockDataOperationSession loadObjectsOfClass:completion:]):
796         (-[MockDataInteractionSession initWithWindow:]):
797         (-[MockDataInteractionSession localOperationMask]):
798         (-[MockDataInteractionSession externalOperationMask]):
799         (-[MockDataInteractionSession session]):
800         (-[DataInteractionSimulator _advanceProgress]):
801
802 2017-06-16  Alex Christensen  <achristensen@webkit.org>
803
804         Show punycode to user if a URL has dotless i or j followed by diacritic dot
805         https://bugs.webkit.org/show_bug.cgi?id=173431
806
807         Reviewed by Darin Adler.
808
809         * TestWebKitAPI/Tests/WebCore/cocoa/URLExtras.mm:
810         (TestWebKitAPI::TEST):
811
812 2017-06-16  Chris Dumez  <cdumez@apple.com>
813
814         [WK2] Add WKProcessPool SPI to efficiently reset all plugin load client policies
815         https://bugs.webkit.org/show_bug.cgi?id=173472
816         <rdar://problem/28858817>
817
818         Reviewed by Brady Eidson.
819
820         Add API test coverage.
821
822         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
823         * TestWebKitAPI/Tests/WebKit2Cocoa/PluginLoadClientPolicies.mm: Added.
824         (TEST):
825
826 2017-06-16  Brady Eidson  <beidson@apple.com>
827
828         REGRESSION (r218015) IconLoaders for already-cached resources expect to be asynchronous, no longer are.
829         <rdar://problem/32817519> and https://bugs.webkit.org/show_bug.cgi?id=173478
830
831         Reviewed by Daniel Bates.
832
833         * TestWebKitAPI/Tests/WebKit2Cocoa/IconLoadingDelegate.mm:
834
835 2017-06-16  Chris Dumez  <cdumez@apple.com>
836
837         DRT fails to reset page visibility between tests
838         https://bugs.webkit.org/show_bug.cgi?id=173485
839
840         Reviewed by Alexey Proskuryakov.
841
842         DRT fails to reset page visibility between tests and relies on tests calling testRunner.resetPageVisibility().
843         Fix this to address flakiness.
844
845         I confirmed this by commenting out the call to testRunner.resetPageVisibility() in
846         fast/events/page-visibility-onvisibilitychange.html and running the test in a loop.
847         The test became flaky without the DRT change and was no longer flaky with the DRT
848         change.
849
850         WebKitTestRunner already does this.
851
852         * DumpRenderTree/mac/DumpRenderTree.mm:
853         (resetWebViewToConsistentStateBeforeTesting):
854
855 2017-06-16  Alex Christensen  <achristensen@webkit.org>
856
857         Implement basic authentication in MiniBrowser
858         https://bugs.webkit.org/show_bug.cgi?id=173443
859
860         Reviewed by Tim Horton.
861
862         * MiniBrowser/mac/WK2BrowserWindowController.m:
863         (-[WK2BrowserWindowController webView:didReceiveAuthenticationChallenge:completionHandler:]):
864
865 2017-06-16  Jer Noble  <jer.noble@apple.com>
866
867         [WebRTC] Removing a MediaStreamTrack from a MediaStream reports no recording to WebKit clients
868         https://bugs.webkit.org/show_bug.cgi?id=173398
869         <rdar://problem/32592961>
870
871         Reviewed by Eric Carlson.
872
873         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
874         * TestWebKitAPI/Tests/WebKit2/MediaStreamTrackDetached.mm: Added.
875         (-[MediaStreamTrackDetachedUIDelegate _webView:requestUserMediaAuthorizationForDevices:url:mainFrameURL:decisionHandler:]):
876         (-[MediaStreamTrackDetachedUIDelegate _webView:checkUserMediaPermissionForURL:mainFrameURL:frameIdentifier:decisionHandler:]):
877         (-[MediaStreamTrackDetachedUIDelegate _webView:mediaCaptureStateDidChange:]):
878         (TestWebKitAPI::TEST):
879         * TestWebKitAPI/Tests/WebKit2/mediastreamtrack-detached.html: Added.
880
881 2017-06-16  Matt Lewis  <jlewis3@apple.com>
882
883         Unreviewed, rolling out r218375.
884
885         The API test MediaStreamTrackDetached is still timing out
886         after the patch
887
888         Reverted changeset:
889
890         "[WebRTC] Removing a MediaStreamTrack from a MediaStream
891         reports no recording to WebKit clients"
892         https://bugs.webkit.org/show_bug.cgi?id=173398
893         http://trac.webkit.org/changeset/218375
894
895 2017-06-15  Jer Noble  <jer.noble@apple.com>
896
897         [WebRTC] Removing a MediaStreamTrack from a MediaStream reports no recording to WebKit clients
898         https://bugs.webkit.org/show_bug.cgi?id=173398
899         <rdar://problem/32592961>
900
901         Reviewed by Eric Carlson.
902
903         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
904         * TestWebKitAPI/Tests/WebKit2/MediaStreamTrackDetached.mm: Added.
905         (-[MediaStreamTrackDetachedUIDelegate _webView:requestUserMediaAuthorizationForDevices:url:mainFrameURL:decisionHandler:]):
906         (-[MediaStreamTrackDetachedUIDelegate _webView:checkUserMediaPermissionForURL:mainFrameURL:frameIdentifier:decisionHandler:]):
907         (-[MediaStreamTrackDetachedUIDelegate _webView:mediaCaptureStateDidChange:]):
908         (TestWebKitAPI::TEST):
909         * TestWebKitAPI/Tests/WebKit2/mediastreamtrack-detached.html: Added.
910
911 2017-06-15  Matt Lewis  <jlewis3@apple.com>
912
913         Unreviewed, rolling out r218365.
914
915         The revision caused API timeouts on all builds.
916
917         Reverted changeset:
918
919         "[WebRTC] Removing a MediaStreamTrack from a MediaStream
920         reports no recording to WebKit clients"
921         https://bugs.webkit.org/show_bug.cgi?id=173398
922         http://trac.webkit.org/changeset/218365
923
924 2017-06-15  Jer Noble  <jer.noble@apple.com>
925
926         [WebRTC] Removing a MediaStreamTrack from a MediaStream reports no recording to WebKit clients
927         https://bugs.webkit.org/show_bug.cgi?id=173398
928         <rdar://problem/32592961>
929
930         Reviewed by Eric Carlson.
931
932         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
933         * TestWebKitAPI/Tests/WebKit2/MediaStreamTrackDetached.mm: Added.
934         (-[MediaStreamTrackDetachedUIDelegate _webView:requestUserMediaAuthorizationForDevices:url:mainFrameURL:decisionHandler:]):
935         (-[MediaStreamTrackDetachedUIDelegate _webView:checkUserMediaPermissionForURL:mainFrameURL:frameIdentifier:decisionHandler:]):
936         (-[MediaStreamTrackDetachedUIDelegate _webView:mediaCaptureStateDidChange:]):
937         (TestWebKitAPI::TEST):
938         * TestWebKitAPI/Tests/WebKit2/mediastreamtrack-detached.html: Added.
939
940 2017-06-15  Carlos Alberto Lopez Perez  <clopez@igalia.com>
941
942         REGRESSION(r218344): [WPE] Thousands of layout test crashes
943         https://bugs.webkit.org/show_bug.cgi?id=173433
944
945         Unreviewed.
946
947         * wpe/jhbuild.modules: Revert the update of WPEBackend-mesa.
948
949 2017-06-15  Carlos Alberto Lopez Perez  <clopez@igalia.com>
950
951         [WPE] The run-minibrowser script should allow to execute also a WPE launcher
952         https://bugs.webkit.org/show_bug.cgi?id=173061
953
954         Reviewed by Žan Doberšek.
955
956         Launch dyz <https://github.com/Igalia/dyz> with the script
957         run-minibrowser for the wpe port. It is now built as part of the
958         WPE dependencies with JHBuild.
959
960         * Scripts/run-minibrowser:
961         * Scripts/webkitdirs.pm:
962         (launcherPath):
963         (launcherName):
964         * wpe/install-dependencies: Luajit is needed for building dyz.
965         * wpe/jhbuild.modules: Add dyz and update the revision for WPEBackend-mesa.
966
967 2017-06-15  Wenson Hsieh  <wenson_hsieh@apple.com>
968
969         Using -[WebItemProviderPasteboard setItemProviders:] to swap out item providers before a drop breaks item provider loading
970         https://bugs.webkit.org/show_bug.cgi?id=173338
971         <rdar://problem/32777720>
972
973         Reviewed by Tim Horton.
974
975         Adds new unit tests to ensure that -_webView:willPerformDropWithSession: can be used to filter out drag items
976         used by WebKit when handling a drop. These tests ensure that WebItemProviderPasteboard is still able to handle
977         these remaining items on drop.
978
979         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
980         (TestWebKitAPI::TEST):
981         * TestWebKitAPI/ios/DataInteractionSimulator.h:
982         * TestWebKitAPI/ios/DataInteractionSimulator.mm:
983
984         Add -overridePerformDropBlock, which can be set to provide custom handling of dropped items.
985
986         (-[DataInteractionSimulator _webView:willPerformDropWithSession:]):
987
988 2017-06-15  Per Arne Vollan  <pvollan@apple.com>
989
990         [Win] Crash in accessibility layout test.
991         https://bugs.webkit.org/show_bug.cgi?id=173401
992
993         Reviewed by Brent Fulgham.
994
995         We should not manually release the punkVal IUnknown member in a _variant_t object, since the punkVal
996         member will be automatically released when the _variant_t object goes out of scope if the vt member
997         does not equal VT_UNKNOWN | VT_BYREF.
998         See https://msdn.microsoft.com/en-us/library/windows/desktop/ms221165(v=vs.85).aspx. 
999
1000         * DumpRenderTree/win/AccessibilityUIElementWin.cpp:
1001         (AccessibilityUIElement::titleUIElement):
1002
1003 2017-06-15  Carlos Garcia Campos  <cgarcia@igalia.com>
1004
1005         [GTK] Add API to allow overriding popup menus
1006         https://bugs.webkit.org/show_bug.cgi?id=172905
1007
1008         Reviewed by Michael Catanzaro.
1009
1010         Add a unit test to check the new API.
1011
1012         * TestWebKitAPI/Tests/WebKit2Gtk/CMakeLists.txt:
1013         * TestWebKitAPI/Tests/WebKit2Gtk/TestOptionMenu.cpp: Added.
1014         (OptionMenuTest::OptionMenuTest):
1015         (OptionMenuTest::~OptionMenuTest):
1016         (OptionMenuTest::destroyMenu):
1017         (OptionMenuTest::showOptionMenuCallback):
1018         (OptionMenuTest::menuCloseCallback):
1019         (OptionMenuTest::showOptionMenu):
1020         (OptionMenuTest::clickAtPositionAndWaitUntilOptionMenuShown):
1021         (OptionMenuTest::close):
1022         (OptionMenuTest::activateItem):
1023         (OptionMenuTest::selectItem):
1024         (testOptionMenuSimple):
1025         (testOptionMenuGroups):
1026         (testOptionMenuActivate):
1027         (testOptionMenuSelect):
1028         (beforeAll):
1029         (afterAll):
1030
1031 2017-06-15  Fujii Hironori  <Hironori.Fujii@sony.com>
1032
1033         [WinCairo] DumpRenderTree.cpp: error C3861: 'CFURLCacheCreate': identifier not found
1034         https://bugs.webkit.org/show_bug.cgi?id=173399
1035
1036         Reviewed by Per Arne Vollan.
1037
1038         OpenCFLite doesn't have CFURLCacheCreate and CFURLCacheSetSharedURLCache.
1039         Curl port needs to do nothing because libcurl doesn't have disk cache.
1040
1041         * DumpRenderTree/win/DumpRenderTree.cpp:
1042         (prepareConsistentTestingEnvironment): Call CFURLCacheCreate() and
1043         CFURLCacheSetSharedURLCache() only if USE(CFURLCONNECTION).
1044
1045 2017-06-14  Tomas Popela  <tpopela@redhat.com>
1046
1047         [GTK] integer expression expected if running Tools/gtk/install-dependencies
1048         https://bugs.webkit.org/show_bug.cgi?id=173356
1049
1050         Reviewed by Michael Catanzaro.
1051
1052         Use the correct operator to compare the strings.
1053
1054         * gtk/install-dependencies:
1055
1056 2017-06-14  Commit Queue  <commit-queue@webkit.org>
1057
1058         Unreviewed, rolling out r218285.
1059         https://bugs.webkit.org/show_bug.cgi?id=173391
1060
1061         API test fails on iOS (Requested by alexchristensen on
1062         #webkit).
1063
1064         Reverted changeset:
1065
1066         "Add SPI for immediate injection of user scripts"
1067         https://bugs.webkit.org/show_bug.cgi?id=173342
1068         http://trac.webkit.org/changeset/218285
1069
1070 2017-06-14  Chris Dumez  <cdumez@apple.com>
1071
1072         WebKit falsely reports that a web process is unresponsive if you close a page shortly after stopping a load
1073         https://bugs.webkit.org/show_bug.cgi?id=173384
1074         <rdar://problem/32723779>
1075
1076         Reviewed by Dan Bernstein.
1077
1078         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1079         * TestWebKitAPI/Tests/WebKit2/ResponsivenessTimer.cpp: Added.
1080         Add API test coverage.
1081
1082         * TestWebKitAPI/cocoa/UtilitiesCocoa.mm:
1083         (TestWebKitAPI::Util::sleep):
1084         Update implementation of Util::sleep() so that we actually run the run loop.
1085         Otherwise, we don't process events while sleeping.
1086
1087 2017-06-14  Alex Christensen  <achristensen@webkit.org>
1088
1089         Add SPI for immediate injection of user scripts
1090         https://bugs.webkit.org/show_bug.cgi?id=173342
1091         <rdar://problem/29202285>
1092
1093         Reviewed by Brady Eidson.
1094
1095         * TestWebKitAPI/Tests/WebKit2Cocoa/UserContentController.mm:
1096         (waitForMessage):
1097         (TEST):
1098
1099 2017-06-14  Claudio Saavedra  <csaavedra@igalia.com>
1100
1101         Add WPE to the flakiness dashboard
1102         https://bugs.webkit.org/show_bug.cgi?id=173365
1103
1104         Reviewed by Carlos Alberto Lopez Perez.
1105
1106         * TestResultServer/static-dashboards/builders.jsonp:
1107         * TestResultServer/static-dashboards/flakiness_dashboard.js:
1108         * TestResultServer/static-dashboards/flakiness_dashboard_unittests.js:
1109         (resetGlobals):
1110         * TestResultServer/static-dashboards/loader_unittests.js:
1111
1112 2017-06-14  Brady Eidson  <beidson@apple.com>
1113
1114         WKIconLoadingDelegate never gets asked about the default favicon if touch/touch-precomposed icons are in the <head>
1115         <rdar://problem/32614328> and https://bugs.webkit.org/show_bug.cgi?id=173376
1116
1117         Reviewed by Alex Christensen.
1118
1119         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1120         * TestWebKitAPI/Tests/WebKit2Cocoa/IconLoadingDelegate.mm: Added.
1121         (-[IconLoadingDelegate webView:shouldLoadIconWithParameters:completionHandler:]):
1122         (-[IconLoadingSchemeHandler initWithData:mimeType:]):
1123         (-[IconLoadingSchemeHandler webView:startURLSchemeTask:]):
1124         (-[IconLoadingSchemeHandler webView:stopURLSchemeTask:]):
1125         (TEST):
1126
1127 2017-06-14  Tim Horton  <timothy_horton@apple.com>
1128
1129         WKContentViewEditingActions API test always fails
1130         https://bugs.webkit.org/show_bug.cgi?id=173374
1131
1132         Reviewed by Wenson Hsieh.
1133
1134         * TestWebKitAPI/Tests/WebKit2Cocoa/WKContentViewEditingActions.mm:
1135         (TEST):
1136         selectAll isn't working, because canPerformAction for selectAll returns NO
1137         if selectionIsNone (which is true in the non-contenteditable case).
1138         Instead, make use of r218180's test page, which knows how to select itself.
1139         Also, reset the pasteboard at the beginning of the test to reduce confusion
1140         (I landed the test broken because my simulator had the correct text
1141         stuck in its pasteboard).
1142
1143 2017-06-14  Jonathan Bedard  <jbedard@apple.com>
1144
1145         Configure screen scale for running layout tests on plus devices
1146         https://bugs.webkit.org/show_bug.cgi?id=173319
1147
1148         Reviewed by Tim Horton.
1149
1150         * DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj: Include UIKitTestSPI.h in project.
1151         * DumpRenderTree/mac/DumpRenderTree.mm:
1152         (dumpRenderTree): Set screen scale to 2.0.
1153         * TestRunnerShared/spi/UIKitTestSPI.h: Copied from Tools/WebKitTestRunner/ios/UIKitSPI.h,
1154         add _setScale for UIScreen.
1155         * WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj: Include UIKitTestSPI.h in project.
1156         * WebKitTestRunner/cocoa/TestRunnerWKWebView.mm: Import UIKitTestSPI.h instead of UIKitSPI.h.
1157         * WebKitTestRunner/ios/HIDEventGenerator.h: Ditto.
1158         * WebKitTestRunner/ios/HIDEventGenerator.mm: Ditto.
1159         * WebKitTestRunner/ios/PlatformWebViewIOS.mm: Ditto.
1160         * WebKitTestRunner/ios/TestControllerIOS.mm: Ditto.
1161         (WTR::TestController::platformInitialize): Set screen scale to 2.0.
1162         * WebKitTestRunner/ios/UIKitSPI.h: Moved to TestRunnerShared/spi/UIKitTestSPI.h.
1163         * WebKitTestRunner/ios/UIScriptControllerIOS.mm: Import UIKitTestSPI.h instead of UIKitSPI.h.
1164         * WebKitTestRunner/ios/mainIOS.mm: Ditto.
1165
1166 2017-06-14  Alexey Proskuryakov  <ap@apple.com>
1167
1168         Add iOS 11 support to the bot watcher's dashboard
1169         https://bugs.webkit.org/show_bug.cgi?id=173369
1170
1171         Reviewed by Lucas Forschler.
1172
1173         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/IOS11.png: Added.
1174         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/IOS11@2x.png: Added.
1175         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/IOS11Simulator.png: Added.
1176         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/IOS11Simulator@2x.png: Added.
1177         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Dashboard.js:
1178         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/Main.css:
1179
1180 2017-06-14  Carlos Alberto Lopez Perez  <clopez@igalia.com>
1181
1182         [GTK][WPE] Raise the timeout values for layout tests
1183         https://bugs.webkit.org/show_bug.cgi?id=173368
1184
1185         Reviewed by Carlos Garcia Campos.
1186
1187         Raise the values to 15 seconds in Release builds and 30 seconds (2x) in Debug builds.
1188         When running under valgrind a 10x multiplier is applied.
1189
1190         * Scripts/webkitpy/port/gtk.py:
1191         (GtkPort.default_timeout_ms):
1192         * Scripts/webkitpy/port/gtk_unittest.py:
1193         (GtkPortTest.test_default_timeout_ms):
1194         * Scripts/webkitpy/port/wpe.py:
1195         (WPEPort.default_timeout_ms):
1196         * Scripts/webkitpy/port/wpe_unittest.py: Copied from Tools/Scripts/webkitpy/port/gtk_unittest.py.
1197         (WPEPortTest):
1198         (WPEPortTest.make_port):
1199         (WPEPortTest.test_default_timeout_ms):
1200         (WPEPortTest.test_get_crash_log):
1201
1202 2017-06-14  Alex Christensen  <achristensen@webkit.org>
1203
1204         Test persistent WKHTTPCookieStorages on iOS.
1205         https://bugs.webkit.org/show_bug.cgi?id=173284
1206
1207         * TestWebKitAPI/Tests/WebKit2Cocoa/WKHTTPCookieStore.mm:
1208         (TEST):
1209         Make the bots green again for now. There's still a problem, and I'll investigate and fix.
1210
1211 2017-06-14  Per Arne Vollan  <pvollan@apple.com>
1212
1213         [Win] DRT should not use disk cache.
1214         https://bugs.webkit.org/show_bug.cgi?id=173361
1215
1216         Reviewed by Darin Adler.
1217
1218         Like on macOS/iOS, DRT on Windows should only use memory cache.
1219
1220         * DumpRenderTree/win/DumpRenderTree.cpp:
1221         (setDefaultsToConsistentValuesForTesting):
1222         (prepareConsistentTestingEnvironment):
1223
1224 2017-06-14  Nael Ouedraogo  <nael.ouedraogo@crf.canon.fr>
1225
1226         MediaSource duration attribute should not be equal to Infinity when set to a value greater than 2^64
1227         https://bugs.webkit.org/show_bug.cgi?id=171668
1228
1229         Reviewed by Jer Noble.
1230
1231         MediaSource duration attribute is a double represented in MediaSource by a MediaTime instance created with
1232         MediaTime::CreateWithDouble(). This method implements an overflow control mechanism which sets MediaTime to
1233         Infinity when the double value passed as argument is greater than 2^64.
1234
1235         This patch removes the overflow control mechanism when time value is represented as a double. This patch also
1236         modifies the behavior of mathematical operations between a double MediaTime and rational MediaTime: the rational
1237         MediaTime is converted to a double before applying the operation. Double MediaTime precision is the same as for
1238         double. Overflow mechanisms still apply to the conversion of a double MediaTime to rational with setTimescale()
1239         method. No behavior change for rational MediaTime.
1240
1241         * TestWebKitAPI/Tests/WTF/MediaTime.cpp: Add tests to check operation results between double and rational MediaTime.
1242         (TestWebKitAPI::TEST):
1243
1244 2017-06-13  Alex Christensen  <achristensen@webkit.org>
1245
1246         Test persistent WKHTTPCookieStorages on iOS
1247         https://bugs.webkit.org/show_bug.cgi?id=173284
1248         <rdar://problem/32260156>
1249
1250         * TestWebKitAPI/Tests/WebKit2Cocoa/WKHTTPCookieStore.mm:
1251         (TEST):
1252
1253 2017-06-13  Matt Rajca  <mrajca@apple.com>
1254
1255         WebsitePolicies: let clients select specific autoplay quirks
1256         https://bugs.webkit.org/show_bug.cgi?id=173343
1257
1258         Reviewed by Alex Christensen.
1259
1260         * TestWebKitAPI/Tests/WebKit2Cocoa/WebsitePolicies.mm:
1261         (-[AutoplayPoliciesDelegate _webView:decidePolicyForNavigationAction:decisionHandler:]):
1262         (TEST): Updated tests.
1263
1264 2017-06-13  Daniel Bates  <dabates@apple.com>
1265
1266         Implement W3C Secure Contexts Draft Specification
1267         https://bugs.webkit.org/show_bug.cgi?id=158121
1268         <rdar://problem/26012994>
1269
1270         Reviewed by Brent Fulgham.
1271
1272         Part 4
1273
1274         Expose the isSecureContext attribute by default in DumpRenderTree and WebKitTestRunner.
1275         Teach DumpRenderTree for Mac and WebKitTestRunner to parse the test option enableIsSecureContextAttribute
1276         to toggle the runtime enabled feature flag isSecureContextAttributeEnabled.
1277
1278         * DumpRenderTree/TestOptions.h:
1279         * DumpRenderTree/TestOptions.mm:
1280         (TestOptions::TestOptions):
1281         * DumpRenderTree/mac/DumpRenderTree.mm:
1282         (setWebPreferencesForTestOptions):
1283         * DumpRenderTree/win/DumpRenderTree.cpp:
1284         (enableExperimentalFeatures):
1285         * WebKitTestRunner/TestController.cpp:
1286         (WTR::TestController::resetPreferencesToConsistentValues):
1287         (WTR::updateTestOptionsFromTestHeader):
1288         * WebKitTestRunner/TestOptions.h:
1289         (WTR::TestOptions::hasSameInitializationOptions):
1290
1291 2017-06-13  Alex Christensen  <achristensen@webkit.org>
1292
1293         Test persistent WKHTTPCookieStorages on iOS
1294         https://bugs.webkit.org/show_bug.cgi?id=173284
1295         <rdar://problem/32260156>
1296
1297         Reviewed by Alexey Proskuryakov.
1298
1299         * TestWebKitAPI/Tests/WebKit2Cocoa/WKHTTPCookieStore.mm:
1300         (TEST):
1301
1302 2017-06-13  Carlos Garcia Campos  <cgarcia@igalia.com>
1303
1304         [GTK] Blob download doesn't work
1305         https://bugs.webkit.org/show_bug.cgi?id=172442
1306
1307         Reviewed by Carlos Alberto Lopez Perez.
1308
1309         Add a unit test to check blob downloads.
1310
1311         * TestWebKitAPI/Tests/WebKit2Gtk/TestDownloads.cpp:
1312         (testBlobDownload):
1313         (beforeAll):
1314
1315 2017-06-13  Carlos Garcia Campos  <cgarcia@igalia.com>
1316
1317         [GTK] Do not include WTR, DumpRendererTree and ImageDiff in tarballs
1318         https://bugs.webkit.org/show_bug.cgi?id=173316
1319
1320         Reviewed by Alex Christensen.
1321
1322         It's not really possible to run layout tests from the tarball, so it's better not to include those files.
1323
1324         * gtk/manifest.txt.in:
1325
1326 2017-06-13  Carlos Garcia Campos  <cgarcia@igalia.com>
1327
1328         [WTR] Crash in WebGeolocationManagerProxy::~WebGeolocationManagerProxy() when running several tests
1329         https://bugs.webkit.org/show_bug.cgi?id=173315
1330
1331         Reviewed by Darin Adler.
1332
1333         This has started to happen after r218165, but I don't think it's a regression, but that r218165 revealed the bug
1334         somehow in WTR. The problem is that GeolocationProviderMock keeps a pointer to the WKGeolocationManagerRef
1335         returned by WKContextGetGeolocationManager. But in TestController::generatePageConfiguration() the context is
1336         freed before the GeolocationProviderMock. When the GeolocationProviderMock is then destroyed, it calls
1337         WKGeolocationManagerSetProvider(m_geolocationManager, 0); but the WKGeolocationManagerRef has already been
1338         destroyed. GeolocationProviderMock should keep a reference to the WKContext to ensure the
1339         WKGeolocationManagerRef is not destroyed.
1340
1341         * WebKitTestRunner/GeolocationProviderMock.cpp:
1342         (WTR::GeolocationProviderMock::GeolocationProviderMock):
1343         * WebKitTestRunner/GeolocationProviderMock.h:
1344
1345 2017-06-13  Wenson Hsieh  <wenson_hsieh@apple.com>
1346
1347         Unable to paste text that was copied from a page into the universal search field
1348         https://bugs.webkit.org/show_bug.cgi?id=173293
1349         <rdar://problem/32440918>
1350
1351         Reviewed by Ryosuke Niwa.
1352
1353         Adds 2 new unit tests for copying plain and rich selected web content.
1354         See WebCore and WebKit ChangeLogs for more detail.
1355
1356         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1357         * TestWebKitAPI/Tests/WebKit2Cocoa/rich-and-plain-text.html: Added.
1358         * TestWebKitAPI/Tests/ios/UIPasteboardTests.mm: Added.
1359         (TestWebKitAPI::dataForPasteboardType):
1360         (TestWebKitAPI::setUpWebViewForPasteboardTests):
1361         (TestWebKitAPI::TEST):
1362
1363 2017-06-13  Joanmarie Diggs  <jdiggs@igalia.com>
1364
1365         AX: [ATK] Implement missing AtkRelation types
1366         https://bugs.webkit.org/show_bug.cgi?id=155494
1367
1368         Reviewed by Darin Adler.
1369
1370         Add additional methods to test ARIA properties which are exposed via
1371         AtkRelation. Implement ATK support for ariaOwnsElementAtIndex().
1372
1373         * WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h:
1374         (WTR::AccessibilityUIElement::ariaLabelledByElementAtIndex):
1375         (WTR::AccessibilityUIElement::ariaDescribedByElementAtIndex):
1376         (WTR::AccessibilityUIElement::ariaOwnsReferencingElementAtIndex):
1377         (WTR::AccessibilityUIElement::ariaFlowToReferencingElementAtIndex):
1378         (WTR::AccessibilityUIElement::ariaControlsReferencingElementAtIndex):
1379         (WTR::AccessibilityUIElement::ariaLabelledByReferencingElementAtIndex):
1380         (WTR::AccessibilityUIElement::ariaDescribedByReferencingElementAtIndex):
1381         * WebKitTestRunner/InjectedBundle/Bindings/AccessibilityUIElement.idl:
1382         * WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
1383         (WTR::AccessibilityUIElement::ariaOwnsElementAtIndex):
1384         (WTR::AccessibilityUIElement::ariaOwnsReferencingElementAtIndex):
1385         (WTR::AccessibilityUIElement::ariaFlowToReferencingElementAtIndex):
1386         (WTR::AccessibilityUIElement::ariaControlsReferencingElementAtIndex):
1387         (WTR::AccessibilityUIElement::ariaLabelledByElementAtIndex):
1388         (WTR::AccessibilityUIElement::ariaLabelledByReferencingElementAtIndex):
1389         (WTR::AccessibilityUIElement::ariaDescribedByElementAtIndex):
1390         (WTR::AccessibilityUIElement::ariaDescribedByReferencingElementAtIndex):
1391
1392 2017-06-12  Daniel Bates  <dabates@apple.com>
1393
1394         Add unit tests for SecurityOrigin::IsPotentiallyTrustworthy()
1395         https://bugs.webkit.org/show_bug.cgi?id=173286
1396         <rdar://problem/32726102>
1397
1398         Reviewed by Brent Fulgham.
1399
1400         * TestWebKitAPI/Tests/WebCore/SecurityOrigin.cpp:
1401         (TestWebKitAPI::TEST_F):
1402
1403 2017-06-12  Lucas Forschler  <lforschler@apple.com>
1404
1405         <rdar://problem/32683422>
1406         Teach copy-webkitlibraries-to-product-directory script about updated libraries.
1407
1408         Reviewed by Conrad Schultz.
1409
1410         * Scripts/copy-webkitlibraries-to-product-directory:
1411
1412 2017-06-12  Tim Horton  <timothy_horton@apple.com>
1413
1414         [iOS] Cmd-C doesn't copy text from WKWebView
1415         https://bugs.webkit.org/show_bug.cgi?id=173277
1416         <rdar://problem/32396742>
1417
1418         Reviewed by Dan Bernstein.
1419
1420         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1421         * Tests/WebKit2Cocoa/WKContentViewEditingActions.mm:
1422         Add a test ensuring that -copy on WKContentView will cause text to be copied.
1423
1424 2017-06-12  Jiewen Tan  <jiewen_tan@apple.com>
1425
1426         [WebCrypto] Remove experimental feature flag of SubtleCrypto
1427         https://bugs.webkit.org/show_bug.cgi?id=173197
1428         <rdar://problem/32688148>
1429
1430         Reviewed by Brent Fulgham.
1431
1432         * DumpRenderTree/mac/DumpRenderTree.mm:
1433         (enableExperimentalFeatures):
1434         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
1435         (WTR::InjectedBundle::beginTesting):
1436         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
1437         (WTR::TestRunner::setSubtleCryptoEnabled): Deleted.
1438         * WebKitTestRunner/InjectedBundle/TestRunner.h:
1439
1440 2017-06-12  Wenson Hsieh  <wenson_hsieh@apple.com>
1441
1442         [iOS DnD] Allow the injected bundle to add client data when writing an image to the pasteboard
1443         https://bugs.webkit.org/show_bug.cgi?id=173238
1444         <rdar://problem/31943370>
1445
1446         Reviewed by Ryosuke Niwa and Tim Horton.
1447
1448         Add a new unit test to verify that data inserted by the injected bundle when beginning a drag on an image
1449         element is plumbed across to the UI delegate. Also refactors injected bundle unit tests to use the new version
1450         of adjustedDataInteractionItemProvidersForItemProvider: that takes representing objects and additional data.
1451
1452         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
1453         (TestWebKitAPI::TEST):
1454         * TestWebKitAPI/ios/DataInteractionSimulator.h:
1455         * TestWebKitAPI/ios/DataInteractionSimulator.mm:
1456         (-[DataInteractionSimulator _webView:adjustedDataInteractionItemProvidersForItemProvider:representingObjects:additionalData:]):
1457         (-[DataInteractionSimulator _webView:adjustedDataInteractionItemProviders:]): Deleted.
1458
1459 2017-06-12  Wenson Hsieh  <wenson_hsieh@apple.com>
1460
1461         WebItemProviderPasteboard should call its completion block immediately after a synchronous load
1462         https://bugs.webkit.org/show_bug.cgi?id=173225
1463         <rdar://problem/32713144>
1464
1465         Reviewed by Tim Horton.
1466
1467         Adds a new unit test to verify whether the completion block is called synchronously or asynchronously, in both
1468         cases where the synchronous timeout is very large, and the synchronous timeout is not used (0).
1469
1470         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
1471         (TestWebKitAPI::TEST):
1472
1473 2017-06-12  Jonathan Bedard  <jbedard@apple.com>
1474
1475         Return correct process names for iOS on-device testing
1476         https://bugs.webkit.org/show_bug.cgi?id=173263
1477
1478         Reviewed by Alex Christensen.
1479
1480         When running tests on iOS devices, process names do not end with '.Development'
1481         as they do on Mac and iOS simulator.
1482
1483         * WebKitTestRunner/TestController.cpp:
1484         (WTR::TestController::webProcessName): Return correct process name without '.Development'
1485         for iOS on-device testing.
1486         (WTR::TestController::networkProcessName): Ditto.
1487         (WTR::TestController::databaseProcessName): Ditto.
1488
1489 2017-06-12  Chris Dumez  <cdumez@apple.com>
1490
1491         Regression(r217867): Legacy SessionHistoryEntryData format should not change
1492         https://bugs.webkit.org/show_bug.cgi?id=173267
1493         <rdar://problem/32701257>
1494
1495         Reviewed by Simon Fraser.
1496
1497         Restrict test to stop covering saving / restore of scrollRestoration via the legacy
1498         SessionHistoryEntryData. Maintain coverage for the default value of scrollRestoration
1499         though as this covers the crash that r217867 was fixing.
1500
1501         * TestWebKitAPI/Tests/WebKit2/RestoreSessionState.cpp:
1502         (TestWebKitAPI::createSessionStateData):
1503         (TestWebKitAPI::TEST):
1504         (TestWebKitAPI::createSessionStateDataContainingScrollRestoration): Deleted.
1505
1506 2017-06-12  Carlos Garcia Campos  <cgarcia@igalia.com>
1507
1508         [GTK] Stop dismissing menus attached to the web view for every injected event
1509         https://bugs.webkit.org/show_bug.cgi?id=172708
1510
1511         Reviewed by Alex Christensen.
1512
1513         It's a workaround we added in r184015 that has worked so far for the context menu, but doesn't really work now
1514         that we also attach popup menus to the web view. We really need to be able to show a popup menu, and then send
1515         events while the menu is open.
1516
1517         * WebKitTestRunner/InjectedBundle/EventSendingController.cpp:
1518         (WTR::EventSendingController::contextClick): Use WKBundlePageCopyContextMenuAtPointInWindow() also in GTK+ port.
1519         * WebKitTestRunner/gtk/EventSenderProxyGtk.cpp:
1520         (WTR::EventSenderProxy::dispatchEvent): Stop calling PlatformWebView::dismissAllPopupMenus().
1521
1522 2017-06-12  Miguel Gomez  <magomez@igalia.com>
1523
1524         [GTK][WPE] Enable GStreamer GL on development builds
1525         https://bugs.webkit.org/show_bug.cgi?id=173248
1526
1527         Enable GStreamer GL for GTK and WPE.
1528
1529         Reviewed by Carlos Garcia Campos.
1530
1531         * Scripts/webkitperl/FeatureList.pm:
1532
1533 2017-06-12  Carlos Garcia Campos  <cgarcia@igalia.com>
1534
1535         Unreviewed. Fix GTK+ test /webkit2/WebKitWebView/notification after r216641.
1536
1537         Notifications are no longer cleared on page navigation.
1538
1539         * TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitWebView.cpp:
1540         (testWebViewNotification):
1541
1542 2017-06-11  Carlos Garcia Campos  <cgarcia@igalia.com>
1543
1544         Unreviewed. Fix GTK+ test /webkit2/WebKitAutomationSession/request-session after r217831.
1545
1546         DBus interface and object path names were updated in r217831.
1547
1548         * TestWebKitAPI/Tests/WebKit2Gtk/TestAutomationSession.cpp:
1549
1550 2017-06-10  Dan Bernstein  <mitz@apple.com>
1551
1552         Reverted r218056 because it made the IDE reindex constantly.
1553
1554         * ContentExtensionTester/Configurations/DebugRelease.xcconfig:
1555         * DumpRenderTree/mac/Configurations/DebugRelease.xcconfig:
1556         * ImageDiff/cg/Configurations/DebugRelease.xcconfig:
1557         * MiniBrowser/Configurations/DebugRelease.xcconfig:
1558         * MobileMiniBrowser/Configurations/DebugRelease.xcconfig:
1559         * TestWebKitAPI/Configurations/DebugRelease.xcconfig:
1560         * WebEditingTester/Configurations/DebugRelease.xcconfig:
1561         * WebKitTestRunner/Configurations/DebugRelease.xcconfig:
1562
1563 2017-06-10  Dan Bernstein  <mitz@apple.com>
1564
1565         [Xcode] With Xcode 9 developer beta, everything rebuilds when switching between command-line and IDE
1566         https://bugs.webkit.org/show_bug.cgi?id=173223
1567
1568         Reviewed by Sam Weinig.
1569
1570         The rebuilds were happening due to a difference in the compiler options that the IDE and
1571         xcodebuild were specifying. Only the IDE was passing the -index-store-path option. To make
1572         xcodebuild pass that option, too, set CLANG_INDEX_STORE_ENABLE to YES if it is unset, and
1573         specify an appropriate path in CLANG_INDEX_STORE_PATH.
1574
1575         * ContentExtensionTester/Configurations/DebugRelease.xcconfig:
1576         * DumpRenderTree/mac/Configurations/DebugRelease.xcconfig:
1577         * ImageDiff/cg/Configurations/DebugRelease.xcconfig:
1578         * MiniBrowser/Configurations/DebugRelease.xcconfig:
1579         * MobileMiniBrowser/Configurations/DebugRelease.xcconfig:
1580         * TestWebKitAPI/Configurations/DebugRelease.xcconfig:
1581         * WebEditingTester/Configurations/DebugRelease.xcconfig:
1582         * WebKitTestRunner/Configurations/DebugRelease.xcconfig:
1583
1584 2017-06-10  Jonathan Bedard  <jbedard@apple.com>
1585
1586         webkitpy: Reduce polling in ServerProcess
1587         https://bugs.webkit.org/show_bug.cgi?id=173116
1588
1589         Reviewed by Ryosuke Niwa.
1590
1591         We should be smarter about polling. We do not need to poll every time a line is read from
1592         stdout and stderr since lines are usually read from cached data. We should only poll
1593         when extracting that cached data from stdout and stderr.
1594
1595         * Scripts/webkitpy/port/driver.py:
1596         (Driver._read_block): Rely on output of the ServerProcess to detect a crash or a timeout
1597         and on ServerProcess to poll the process if not data is available in stdout and stderr.
1598         * Scripts/webkitpy/port/driver_unittest.py:
1599         (DriverTest.test_read_block_crashed_process): Test that the Driver will handle a crashing
1600         ServerProcess.
1601         * Scripts/webkitpy/port/server_process.py:
1602         (ServerProcess._read): Allow for data to be read from _output even if the process has
1603         crashed. Only poll the process if data needs to be extracted from stdout or stderr. 
1604         * Scripts/webkitpy/port/server_process_mock.py:
1605         (MockServerProcess): Add number_of_times_polled.
1606         (MockServerProcess.poll): Increment number_of_times_polled.
1607         (MockServerProcess.has_crashed): Poll before returning crash state.
1608         (MockServerProcess.read_stdout_line): MockServerProcess should return None if it has crashed,
1609         just like a ServerProcess would.
1610         (MockServerProcess.read_stdout): Ditto.
1611         * Scripts/webkitpy/port/server_process_unittest.py:
1612         (TestServerProcess.test_basic): Use stdin.readline() instead of time.sleep() to prevent the
1613         process from ending before stdout and stderr are read. This is the reason this test was flakey.
1614         (TestServerProcess):
1615         (TestServerProcess.test_process_crashing): Test that when a process crashes, data can be read until
1616         the processes is polled.
1617         (TestServerProcess.test_process_crashing_no_data): Test that when a process which has not output any
1618         data to stdout and stderr crashes, ServerProcess._read(...) polls the process to detect the crash.
1619
1620 2017-06-10  Andy Estes  <aestes@apple.com>
1621
1622         [QuickLook] PreviewLoader needs to check if its ResourceLoader has reached the terminal state before calling didReceiveResponse() and friends
1623         https://bugs.webkit.org/show_bug.cgi?id=173190
1624         <rdar://problem/31360659>
1625
1626         Reviewed by Brady Eidson.
1627         
1628         Added a release assert that tries to create a proper test failure if the web process crashes.
1629
1630         * TestWebKitAPI/Tests/WebKit2Cocoa/QuickLook.mm:
1631         (-[QuickLookDecidePolicyDelegate _webViewWebProcessDidCrash:]):
1632
1633 2017-06-09  Wenson Hsieh  <wenson_hsieh@apple.com>
1634
1635         [iOS DnD] Add a hook to perform two-step drops in editable content
1636         https://bugs.webkit.org/show_bug.cgi?id=172992
1637         <rdar://problem/32590174>
1638
1639         Reviewed by Tim Horton.
1640
1641         Adds 2 new API tests to cover using the injected editing bundle to override performTwoStepDrop.
1642         Tests:  DataInteractionTests.InjectedBundleOverridePerformTwoStepDrop
1643                 DataInteractionTests.InjectedBundleAllowPerformTwoStepDrop
1644
1645         * TestWebKitAPI/Tests/WebKit2Cocoa/BundleEditingDelegatePlugIn.mm:
1646         (-[BundleEditingDelegatePlugIn webProcessPlugIn:didCreateBrowserContextController:]):
1647         (-[BundleEditingDelegatePlugIn _webProcessPlugInBrowserContextController:performTwoStepDrop:atDestination:isMove:]):
1648
1649         Allow the BundleOverridePerformTwoStepDrop bundle parameter to determine whether or not two-step drops should
1650         be overridden. Currently, this is overridden to just return true.
1651
1652         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
1653         (TestWebKitAPI::TEST):
1654         * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
1655         (WTR::InjectedBundlePage::InjectedBundlePage):
1656
1657 2017-06-09  Zan Dobersek  <zdobersek@igalia.com>
1658
1659         [WPE] Enable ENCRYPTED_MEDIA for build-webkit builds
1660         https://bugs.webkit.org/show_bug.cgi?id=173103
1661
1662         Reviewed by Xabier Rodriguez-Calvar.
1663
1664         * Scripts/webkitperl/FeatureList.pm: Enable ENCRYPTED_MEDIA flag
1665         when building the WPE port through build-webkit.
1666
1667 2017-06-09  Zan Dobersek  <zdobersek@igalia.com>
1668
1669         [WPE] Enable MEDIA_SOURCE for build-webkit builds
1670         https://bugs.webkit.org/show_bug.cgi?id=173136
1671
1672         Reviewed by Xabier Rodriguez-Calvar.
1673
1674         * Scripts/webkitperl/FeatureList.pm: Enable the MEDIA_SOURCE feature for WPE.
1675
1676 2017-06-08  Carlos Garcia Campos  <cgarcia@igalia.com>
1677
1678         [GTK] Use API::FormClient instead of the C API in WebKitFormClient
1679         https://bugs.webkit.org/show_bug.cgi?id=173098
1680
1681         Reviewed by Žan Doberšek.
1682
1683         Fix memory leak and runtime warning when running /webkit2/WebKitWebView/submit-form. The web extension is
1684         assuming that all tests containing forms define ids for the form elements like
1685         /webkit2/WebKitWebExtension/form-controls-associated-signal does.
1686
1687         * TestWebKitAPI/Tests/WebKit2Gtk/WebExtensionTest.cpp:
1688         (formControlsAssociatedCallback):
1689
1690 2017-06-08  Jonathan Bedard  <jbedard@apple.com>
1691
1692         webkitpy: Run sample/spindump on iOS devices
1693         https://bugs.webkit.org/show_bug.cgi?id=171881
1694         <rdar://problem/32084602>
1695
1696         Reviewed by Daniel Bates.
1697
1698         * Scripts/webkitpy/port/darwin.py:
1699         (DarwinPort.sample_process): Only add sudo prefix if the platform is Mac, which
1700         requires sudo to run spindump.
1701         * Scripts/webkitpy/port/ios_device.py:
1702         (IOSDevicePort.look_for_new_samples): Deleted.
1703         (IOSDevicePort.sample_process): Deleted.
1704         * Scripts/webkitpy/port/ios_device_unittest.py:
1705         (IOSDeviceTest): iOS devices use 'ios' and their os_name.
1706         (IOSDeviceTest.test_spindump):
1707         (IOSDeviceTest.test_sample_process):
1708         (IOSDeviceTest.test_sample_process_exception):
1709         * Scripts/webkitpy/port/ios_simulator_unittest.py:
1710         (IOSSimulatorTest): iOS Simulators run on Mac and use 'mac' as their os_name.
1711
1712 2017-06-08  Keith Miller  <keith_miller@apple.com>
1713
1714         WebAssembly: We should only create wrappers for functions that can be exported
1715         https://bugs.webkit.org/show_bug.cgi?id=173088
1716
1717         Reviewed by Saam Barati.
1718
1719         Add quick mode for wasm tests.
1720
1721         * Scripts/run-jsc-stress-tests:
1722
1723 2017-06-08  Darin Adler  <darin@apple.com>
1724
1725         WTF tests have incorrect RefLogger lifetimes making it impossible to test with Address Sanitizer
1726         https://bugs.webkit.org/show_bug.cgi?id=173106
1727
1728         Reviewed by Sam Weinig.
1729
1730         * TestWebKitAPI/Tests/WTF/HashCountedSet.cpp: Define RefLogger objects first, so they are
1731         destroyed last.
1732         * TestWebKitAPI/Tests/WTF/HashMap.cpp: Ditto.
1733         * TestWebKitAPI/Tests/WTF/HashSet.cpp: Ditto.
1734
1735 2017-06-07  Dan Bernstein  <mitz@apple.com>
1736
1737         [Cocoa] additionalReadAccessAllowedURLs doesn’t preserve non-Latin1 paths
1738         https://bugs.webkit.org/show_bug.cgi?id=173086
1739
1740         Reviewed by Andy Estes.
1741
1742         * TestWebKitAPI/Tests/WebKit2Cocoa/AdditionalReadAccessAllowedURLs.mm:
1743         (TEST):
1744
1745 2017-06-07  Alexey Proskuryakov  <ap@apple.com>
1746
1747         Add High Sierra support to WebKit tools
1748         https://bugs.webkit.org/show_bug.cgi?id=173080
1749
1750         Rubber-stamped by Daniel Bates.
1751
1752         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/HighSierra.png: Added.
1753         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/HighSierra@2x.png: Added.
1754         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Dashboard.js:
1755         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/Main.css:
1756         Added dashboard support.
1757
1758         * BuildSlaveSupport/build.webkit.org-config/wkbuild.py:
1759         * BuildSlaveSupport/build.webkit.org-config/wkbuild_unittest.py:
1760         Trigger the right build queues on check-in.
1761
1762         * Scripts/webkitpy/common/system/platforminfo.py:
1763         * Scripts/webkitpy/common/system/platforminfo_unittest.py:
1764         * Scripts/webkitpy/layout_tests/models/test_expectations.py:
1765         * Scripts/webkitpy/port/mac.py:
1766         * Scripts/webkitpy/port/mac_unittest.py:
1767         * TestResultServer/static-dashboards/flakiness_dashboard.js:
1768         Added cases for Sierra, and updated tests for new baseline search paths.
1769
1770 2017-06-07  Ryan Haddad  <ryanhaddad@apple.com>
1771
1772         Unreviewed, rolling out r217902.
1773
1774         This change appears to have caused imported/w3c/web-platform-
1775         tests/fetch/api/cors tests to fail on El Capitan.
1776
1777         Reverted changeset:
1778
1779         "Teach run-webkit-tests how to run HTTPS Web Platform Tests"
1780         https://bugs.webkit.org/show_bug.cgi?id=172930
1781         http://trac.webkit.org/changeset/217902
1782
1783 2017-06-07  Daniel Bates  <dabates@apple.com>
1784
1785         Teach run-webkit-tests how to run HTTPS Web Platform Tests
1786         https://bugs.webkit.org/show_bug.cgi?id=172930
1787         <rdar://problem/32570201>
1788
1789         Reviewed by Youenn Fablet.
1790
1791         Some web platform tests need to be run from an HTTPS server in order to exercise functionality
1792         that is conditioned on the page being delivered over a secure protocol. One example of such
1793         a test is LayoutTests/imported/w3c/web-platform-tests/WebCryptoAPI/secure_context/crypto-subtle-secure-context-available.https.sub.html.
1794
1795         Ideally we should look to use wptrunner to run Web Platform Tests. For now, modify run-webkit-tests
1796         to access web platform tests from an HTTPS server when the filename of the test contains ".https.".
1797         This makes run-webkit-test match the behavior of wptrunner: <https://github.com/w3c/web-platform-tests/blob/7ce469d1c46dd45aacfe1b408bf2ad36a630e089/tools/manifest/item.py#L42>.
1798
1799         * Scripts/webkitpy/layout_tests/servers/web_platform_test_server.py:
1800         (https_base_url): Parses the Web Platform Tests JSON configuration and returns the base URL
1801         to the Web Platform Tests HTTPS server.
1802         * Scripts/webkitpy/port/base.py:
1803         (Port.to.web_platform_test_server_https_base_url): Turns around and calls https_base_url().
1804         * Scripts/webkitpy/port/driver.py:
1805         (Driver.__init__): Caches the base URL to the Web Platform Tests HTTPS server. Also rename
1806         instance variables web_platform_test_server_doc_root, web_platform_test_server_base_url to
1807         _web_platform_test_server_doc_root and _web_platform_test_server_base_url, respectively to
1808         indicate that they should be considered private instance variables.
1809         (Driver.is_web_platform_test): Update code for renamed instance variables.
1810         (Driver):
1811         (Driver._web_platform_test_base_url_for_test): Returns the URL to access the specified test.
1812         (Driver.test_to_uri): Modified to use Driver._web_platform_test_base_url_for_test() to
1813         determine the base URL to use to access the test.
1814         (Driver.uri_to_test): Added logic to compute the filesystem local test name from a Web
1815         Platform Tests HTTPS URL. Also updated code for renamed instance variables.
1816
1817 2017-06-07  Per Arne Vollan  <pvollan@apple.com>
1818
1819         Support removal of authentication data through the Website data store API.
1820         https://bugs.webkit.org/show_bug.cgi?id=171217
1821
1822         Reviewed by Brady Eidson.
1823
1824         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
1825         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
1826         (WTR::InjectedBundle::didReceiveMessageToPage):
1827         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
1828         (WTR::TestRunner::removeAllSessionCredentials):
1829         (WTR::TestRunner::callDidRemoveAllSessionCredentialsCallback):
1830         * WebKitTestRunner/InjectedBundle/TestRunner.h:
1831         * WebKitTestRunner/TestController.h:
1832         * WebKitTestRunner/TestInvocation.cpp:
1833         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
1834         (WTR::TestInvocation::didRemoveAllSessionCredentials):
1835         * WebKitTestRunner/TestInvocation.h:
1836         * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
1837         (WTR::TestController::removeAllSessionCredentials):
1838
1839 2017-06-07  Charlie Turner  <cturner@igalia.com>
1840
1841         Add Charlie Turner as contributor
1842         https://bugs.webkit.org/show_bug.cgi?id=173055
1843
1844         Reviewed by Carlos Alberto Lopez Perez.
1845
1846         I also ran the Tools/Scripts/validate-committer-lists --canonicalize command at the suggestion
1847         of webkit-patch upload, which reordered some fields and removed a newline.
1848
1849         * Scripts/webkitpy/common/config/contributors.json:
1850
1851 2017-06-06  Chris Dumez  <cdumez@apple.com>
1852
1853         RELEASE_ASSERT(static_cast<size_t>(enumerationValue) < WTF_ARRAY_LENGTH(values)) hit in convertEnumerationToJS<WebCore::History::ScrollRestoration>()
1854         https://bugs.webkit.org/show_bug.cgi?id=173033
1855         <rdar://problem/32591099>
1856
1857         Reviewed by Simon Fraser.
1858
1859         Add API test coverage to make sure History's scrollRestoration is properly saved / restored via the
1860         WKPageCopySessionState() / WKPageRestoreFromSessionState() C API.
1861
1862         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1863         * TestWebKitAPI/Tests/WebKit2/RestoreSessionState.cpp: Added.
1864         (TestWebKitAPI::didFinishLoadForFrame):
1865         (TestWebKitAPI::setPageLoaderClient):
1866         (TestWebKitAPI::createSessionStateDataContainingScrollRestoration):
1867         (TestWebKitAPI::TEST):
1868
1869 2017-06-06  Andy Estes  <aestes@apple.com>
1870
1871         REGRESSION (r199558): WKWebView upload file which name contains Chinese character results in garbled code
1872         https://bugs.webkit.org/show_bug.cgi?id=172849
1873         <rdar://problem/32567454>
1874
1875         Reviewed by Darin Adler.
1876
1877         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1878         * TestWebKitAPI/Tests/WebKit2Cocoa/RunOpenPanel.mm: Added.
1879         (-[RunOpenPanelUIDelegate webView:runOpenPanelWithParameters:initiatedByFrame:completionHandler:]):
1880         (TestWebKitAPI::TEST):
1881
1882 2017-06-06  Yoav Weiss  <yoav@yoav.ws>
1883
1884         [preload] Conditional support for media preloading and align media `as` values.
1885         https://bugs.webkit.org/show_bug.cgi?id=172501
1886
1887         Reviewed by Dean Jackson.
1888
1889         Turn on media preloading preference for tests.
1890
1891         * DumpRenderTree/mac/DumpRenderTree.mm: Turn on media preloading preference.
1892         * DumpRenderTree/win/DumpRenderTree.cpp: Turn on media preloading preference.
1893         * WebKitTestRunner/TestController.cpp: Turn on media preloading preference.
1894
1895 2017-06-06  Jonathan Bedard  <jbedard@apple.com>
1896
1897         webkitpy: Return correct process names from SimulatorProcess
1898         https://bugs.webkit.org/show_bug.cgi?id=172940
1899
1900         Reviewed by Aakash Jain.
1901
1902         * Scripts/webkitpy/port/darwin.py:
1903         (DarwinPort.plist_data_from_bundle): Share plist access code for accessing different plist entries.
1904         (DarwinPort.app_identifier_from_bundle): Use plist_data_from_bundle.
1905         (DarwinPort.app_executable_from_bundle): Access name of app executable from provided app bundle.
1906         * Scripts/webkitpy/port/driver.py:
1907         (Driver.has_crashed): Use _server_process.process_name() instead of _server_process.name() since
1908         _server_process.name() will not return the correct process name for iOS.
1909         (Driver._check_for_driver_crash_or_unresponsiveness): Ditto.
1910         (Driver._read_block): Ditto.
1911         * Scripts/webkitpy/port/driver_unittest.py:
1912         (DriverTest.test_check_for_driver_crash.FakeServerProcess.process_name): Update since Driver uses
1913         process_name() instead of name().
1914         * Scripts/webkitpy/port/server_process.py:
1915         (ServerProcess._start): Use process_name() instead of name().
1916         (ServerProcess.stop): Ditto.
1917         (ServerProcess.name): Deleted.
1918         * Scripts/webkitpy/port/simulator_process.py:
1919         (SimulatorProcess.process_name): Check the provided bundle for the process name.
1920
1921 2017-06-06  Dean Johnson  <dean_johnson@apple.com>
1922
1923         test-webkitpy: stop forking unsafely from within a spawned process
1924         https://bugs.webkit.org/show_bug.cgi?id=172774
1925
1926         Reviewed by Darin Adler.
1927
1928         * Scripts/webkitpy/common/net/buildbot/buildbot.py:
1929         (Builder.__init__): We don't use mechanize.Browser() as part of testing, so only initialize it when
1930         it's going to be used.
1931         (Builder.force_build):
1932
1933 2017-06-06  Jonathan Bedard  <jbedard@apple.com>
1934
1935         webkitpy: Process crash-logs for iOS devices
1936         https://bugs.webkit.org/show_bug.cgi?id=171976
1937         <rdar://problem/32134551>
1938
1939         Reviewed by David Kilzer.
1940
1941         When running layout tests on an iOS device, crash logs should be processed.
1942         Implement crash log searching and parsing for iOS devices.
1943
1944         * Scripts/webkitpy/common/system/crashlogs.py:
1945         (CrashLogs): Moved process regular expression for Darwin to class variable.
1946         (CrashLogs.__init__): Accept optional list of crash logs to ignore.
1947         (CrashLogs.find_newest_log): Add iOS as a potential platform.
1948         (CrashLogs.find_all_logs): Ditto.
1949         (CrashLogs._parse_darwin_crash_log): Share code for parsing of Darwin crash logs.
1950         Do not assume that a Darwin crash log starts with the process.
1951         (CrashLogs._find_newest_log_darwin): Remove .app in process name for iOS, use
1952         shared code for parsing Darwin crash logs.
1953         (CrashLogs._find_newest_log_darwin.is_crash_log): Skip crash logs passed into this
1954         object so that crash logs already on the system before testing are not parsed.
1955         (CrashLogs._find_newest_log_win.is_crash_log): Ditto.
1956         (CrashLogs._find_all_logs_darwin.is_crash_log): Ditto.
1957         (CrashLogs._find_all_logs_darwin): Use shared code for parsing Darwin crash logs.
1958         * Scripts/webkitpy/common/system/crashlogs_unittest.py:
1959         (make_mock_crash_report_darwin): Crash logs may not have their process on the first line.
1960         * Scripts/webkitpy/common/system/systemhost.py:
1961         (SystemHost.symbolicate_crash_log_if_needed): The symbolicated crash log for most
1962         systems is just the crashlog, use this behavior by default.
1963         * Scripts/webkitpy/common/system/systemhost_mock.py:
1964         (MockSystemHost.symbolicate_crash_log_if_needed): The symbolicated crash log for most
1965         systems is just the crashlog, use this behavior by default.
1966         * Scripts/webkitpy/port/apple.py:
1967         (ApplePort): Add a dictionary mapping hosts to a list of crash logs to be skipped.
1968         (ApplePort.setup_test_run): Set the list of crash logs to be skipped to the crash logs on
1969         the system before testing begins
1970         * Scripts/webkitpy/port/base.py:
1971         (Port._get_crash_log): Pass optional target host when getting crash logs.
1972         * Scripts/webkitpy/port/darwin.py:
1973         (DarwinPort._look_for_all_crash_logs_in_log_dir): Pass list of crash logs to be skipped to
1974         CrashLogs object.
1975         (DarwinPort._get_crash_log): Pass optional target host when getting crash logs, pass list of crash
1976         logs to be skipped to CrashLogs object.
1977         * Scripts/webkitpy/port/darwin_testcase.py:
1978         (DarwinTest.test_get_crash_log): Removed unused local function.
1979         (DarwinTest.test_get_crash_log.fake_time_cb): Deleted.
1980         * Scripts/webkitpy/port/device.py:
1981         (Device.symbolicate_crash_log_if_needed): If the platform device has a function with this
1982         name, call it. Otherwise, assume the default behavior and read the file at the provided path.
1983         * Scripts/webkitpy/port/driver.py:
1984         (Driver._get_crash_log): Pass optional target host when getting crash logs.
1985         * Scripts/webkitpy/port/gtk.py:
1986         (GtkPort._get_crash_log): Pass optional target host when getting crash logs.
1987         * Scripts/webkitpy/port/ios.py: Ditto.
1988         (IOSPort.setup_test_run): Each device is treated as an independent host. Set the list of crash logs
1989         to be skipped for each host.
1990         * Scripts/webkitpy/port/ios_device.py:
1991         (IOSDevicePort.path_to_crash_logs): Consult apple_additions for the path to crash logs.
1992         (IOSDevicePort._look_for_all_crash_logs_in_log_dir): Search every connected device for
1993         crash logs and pass list of crash logs to ignore to each instance of CrashLogs.
1994         (IOSDevicePort._get_crash_log): Search the specified target host for a crash log if a target
1995         host is specified. Else, search all connected devices for the specified crash-log.
1996         (IOSDevicePort.look_for_new_crash_logs): Deleted.
1997         * Scripts/webkitpy/port/ios_device_unittest.py:
1998         (IOSDeviceTest.test_crashlog_path): Without apple_additions, an exception should be raised.
1999         (IOSDeviceTest.test_get_crash_log): Ditto.
2000         * Scripts/webkitpy/port/simulator_process.py:
2001         (SimulatorProcess.process_name): Check the provided bundle for the process name.
2002         * Scripts/webkitpy/port/win.py:
2003         (WinPort._get_crash_log): Pass optional target host when getting crash logs, pass list of crash
2004         logs to be skipped to CrashLogs object.
2005         * Scripts/webkitpy/port/wpe.py:
2006         (WPEPort._get_crash_log): Pass optional target host when getting crash logs.
2007
2008 2017-06-06  David Kilzer  <ddkilzer@apple.com>
2009
2010         Move WTF_ATTRIBUTE_PRINTF() from implementation to declaration
2011         <https://webkit.org/b/172804>
2012
2013         Reviewed by Darin Adler.
2014
2015         WTF_ATTRIBUTE_PRINTF() only works outside the current
2016         compilation unit if it's on the declaration, not the
2017         implementation, of a function or class method.
2018
2019         * DumpRenderTree/TestNetscapePlugIn/PluginObject.cpp:
2020         * DumpRenderTree/TestNetscapePlugIn/PluginObject.h:
2021         * DumpRenderTree/TestNetscapePlugIn/PluginTest.cpp:
2022         * DumpRenderTree/TestNetscapePlugIn/PluginTest.h:
2023         - Move WTF_ATTRIBUTE_PRINTF() macro to declaration.
2024         * DumpRenderTree/TestNetscapePlugIn/main.cpp:
2025         - Remove redundant CRASH() macro definition.  Use the one from
2026           <wtf/Assertions.h> instead.
2027
2028 2017-06-06  Joseph Pecoraro  <pecoraro@apple.com>
2029
2030         Move Resource Timing / User Timing from experimental features into main preferences
2031         https://bugs.webkit.org/show_bug.cgi?id=172950
2032
2033         Reviewed by Darin Adler.
2034
2035         * DumpRenderTree/mac/DumpRenderTree.mm:
2036         (enableExperimentalFeatures):
2037         (resetWebPreferencesToConsistentValues):
2038         * DumpRenderTree/win/DumpRenderTree.cpp:
2039         (enableExperimentalFeatures):
2040         (resetWebPreferencesToConsistentValues):
2041         * WebKitTestRunner/TestController.cpp:
2042         (WTR::TestController::resetPreferencesToConsistentValues):
2043         Move out no longer experimental features to the main list.
2044
2045 2017-06-06  Carlos Alberto Lopez Perez  <clopez@igalia.com>
2046
2047         [WPE] Add an install-dependencies script
2048         https://bugs.webkit.org/show_bug.cgi?id=172948
2049
2050         Reviewed by Žan Doberšek.
2051
2052         It is based on the gtk/install-dependencies script.
2053         Includes support for Debian based distrubutions, Fedora and Arch.
2054         It has been tested on a minimal Debian 9 chroot.
2055
2056         * wpe/install-dependencies: Added.
2057
2058 2017-06-05  Wenson Hsieh  <wenson_hsieh@apple.com>
2059
2060         Refactor -[WebItemProviderPasteboard valuesForPasteboardType:inItemSet:] to check readable types
2061         https://bugs.webkit.org/show_bug.cgi?id=172891
2062         <rdar://problem/32204540>
2063
2064         Reviewed by Darin Adler.
2065
2066         Adds 2 new API tests to exercise data interaction of HTML data and an attributed string into a rich
2067         contenteditable. See WebCore ChangeLog for more details.
2068
2069         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
2070         (TestWebKitAPI::TEST):
2071
2072 2017-06-05  Daniel Bates  <dabates@apple.com>
2073
2074         webkitpy: Abstract Executive class
2075         https://bugs.webkit.org/show_bug.cgi?id=172928
2076         <rdar://problem/32569531>
2077
2078         Reviewed by Ryosuke Niwa.
2079
2080         Adds an AbstractExecutive class and makes Executive extend AbstractExecutive.
2081         This will make it straightforward to create additional derived classes that
2082         adhere to the same interface, say for iOS on-device testing.
2083
2084         * Scripts/webkitpy/common/system/abstractexecutive.py: Added.
2085         (AbstractExecutive):
2086         (AbstractExecutive.run_and_throw_if_fail):
2087         (AbstractExecutive.cpu_count):
2088         (AbstractExecutive.interpreter_for_script):
2089         (AbstractExecutive.shell_command_for_script):
2090         (AbstractExecutive.kill_process):
2091         (AbstractExecutive.check_running_pid):
2092         (AbstractExecutive.running_pids):
2093         (AbstractExecutive.wait_newest):
2094         (AbstractExecutive.wait_limited):
2095         (AbstractExecutive.interrupt):
2096         (AbstractExecutive.default_error_handler):
2097         (AbstractExecutive.ignore_error):
2098         (AbstractExecutive._stringify_args):
2099         (AbstractExecutive.command_for_printing):
2100         (AbstractExecutive.run_command):
2101         (AbstractExecutive.popen):
2102         (AbstractExecutive.run_in_parallel):
2103         * Scripts/webkitpy/common/system/executive.py:
2104         (Executive):
2105         (Executive.cpu_count):
2106         (Executive.running_pids):
2107         (Executive.kill_all):
2108         (Executive._compute_stdin):
2109         (Executive.interpreter_for_script): Deleted.
2110         (Executive.shell_command_for_script): Deleted.
2111         (Executive.wait_newest): Deleted.
2112         (Executive.wait_limited): Deleted.
2113         (Executive.default_error_handler): Deleted.
2114         (Executive.ignore_error): Deleted.
2115         (Executive.command_for_printing): Deleted.
2116
2117 2017-06-05  Jonathan Bedard  <jbedard@apple.com>
2118
2119         webkitpy: Add iOS to platform
2120         https://bugs.webkit.org/show_bug.cgi?id=172931
2121
2122         Reviewed by Daniel Bates.
2123
2124         * Scripts/webkitpy/common/system/platforminfo.py:
2125         PlatformInfo.__init__): Use platform_module.release() as the os_version for iOS device.
2126         (PlatformInfo.is_ios): Added.
2127         (PlatformInfo._determine_os_name): A platform name of 'ios' means that the os name is 'ios'.
2128         * Scripts/webkitpy/common/system/platforminfo_mock.py:
2129         (MockPlatformInfo.is_ios): Added.
2130
2131 2017-06-05  Carlos Alberto Lopez Perez  <clopez@igalia.com>
2132
2133         [WPE][JHBuild] Switch github repository from git:// to https://
2134         https://bugs.webkit.org/show_bug.cgi?id=172921
2135
2136         Reviewed by Alex Christensen.
2137
2138         * wpe/jhbuild.modules:
2139
2140 2017-06-05  Tim Horton  <timothy_horton@apple.com>
2141
2142         ASSERTION FAILED: m_currentScriptCallbackID in UIScriptContext::requestUIScriptCompletion(JSStringRef) running fast/events/ios/autocorrect-with-range-selection.html
2143         https://bugs.webkit.org/show_bug.cgi?id=172887
2144         <rdar://problem/32546061>
2145
2146         Reviewed by Sam Weinig.
2147
2148         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
2149         (WTR::UIScriptController::applyAutocorrection):
2150         applyAutocorrection can call its completion handler synchronously,
2151         which makes UIScriptController unhappy (see bug 172884).
2152
2153 2017-06-03  Jonathan Bedard  <jbedard@apple.com>
2154
2155         webkitpy: Add contextmanager to disable logging for a block
2156         https://bugs.webkit.org/show_bug.cgi?id=172876
2157
2158         Reviewed by Daniel Bates.
2159
2160         Add a context manager which will use an OutputCapture object to capture logging
2161         in a block and hold it in a variable.
2162
2163         * Scripts/webkitpy/common/system/outputcapture.py:
2164         (OutputCaptureScope):
2165         (OutputCaptureScope.__init__): Construct with OutputCapture object.
2166         (OutputCaptureScope.__enter__): Begin capturing output. 
2167         (OutputCaptureScope.__exit__): Restore output and save captured output to a variable.
2168         output and retain the resulting log.
2169         * Scripts/webkitpy/common/system/outputcapture_unittest.py:
2170         (OutputCaptureTest.test_output_capture_scope): Added.
2171
2172 2017-06-02  Zalan Bujtas  <zalan@apple.com>
2173
2174         Cleanup FrameView::autoSizeIfEnabled.
2175         https://bugs.webkit.org/show_bug.cgi?id=172889
2176         <rdar://problem/32550783>
2177
2178         Reviewed by Tim Horton.
2179
2180         * TestWebKitAPI/Tests/WebKit2Cocoa/AutoLayoutIntegration.mm:
2181         (-[AutoLayoutWKWebView load:withWidth:expectingContentSize:resettingWidth:]): progression.
2182         (TEST):
2183
2184 2017-06-02  Chris Dumez  <cdumez@apple.com>
2185
2186         ResourceLoadStatistics are not using unique paths during test runs
2187         https://bugs.webkit.org/show_bug.cgi?id=172861
2188         <rdar://problem/32442251>
2189
2190         Reviewed by Darin Adler.
2191
2192         Make sure WebKitTestRunner sets a temporary path for saving resource
2193         load statistics.
2194
2195         * WebKitTestRunner/TestController.cpp:
2196         (WTR::TestController::generateContextConfiguration):
2197
2198 2017-06-02  Brady Eidson  <beidson@apple.com>
2199
2200         Prevent scheme handlers from handling all built-in URL schemes.
2201         <rdar://problem/32404790> and https://bugs.webkit.org/show_bug.cgi?id=172869
2202
2203         Reviewed by Andy Estes.
2204
2205         * TestWebKitAPI/Tests/WebKit2Cocoa/WKURLSchemeHandler-1.mm:
2206
2207 2017-06-02  Stephan Szabo  <stephan.szabo@am.sony.com>
2208
2209         [JSCOnly] Build static jsc.exe on Windows
2210         https://bugs.webkit.org/show_bug.cgi?id=172833
2211
2212         Reviewed by Konstantin Tokarev.
2213
2214         * CMakeLists.txt:
2215         * Scripts/build-jsc:
2216
2217 2017-06-02  Zalan Bujtas  <zalan@apple.com>
2218
2219         Disable ViewportSizeForViewportUnits tests on iOS.
2220         https://bugs.webkit.org/show_bug.cgi?id=172872
2221
2222         Reviewed by Tim Horton.
2223
2224         * TestWebKitAPI/Tests/WebKit2/ViewportSizeForViewportUnits.mm:
2225
2226 2017-06-02  Zalan Bujtas  <zalan@apple.com>
2227
2228         Allow clients to override viewport size for CSS viewport units.
2229         https://bugs.webkit.org/show_bug.cgi?id=172838
2230         <rdar://problem/32523441>
2231
2232         Reviewed by Tim Horton.
2233
2234         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2235         * TestWebKitAPI/Tests/WebKit2/ViewportSizeForViewportUnits.mm: Added.
2236         (TEST):
2237
2238 2017-06-02  Simon Fraser  <simon.fraser@apple.com>
2239
2240         Get <chrono> out of StdLibExtras.h
2241         https://bugs.webkit.org/show_bug.cgi?id=172744
2242
2243         Reviewed by Zalan Bujtas.
2244
2245         * TestWebKitAPI/Tests/WTF/WorkQueue.cpp:
2246
2247 2017-06-02  Zan Dobersek  <zdobersek@igalia.com>
2248
2249         [WPE] Enable SUBTLE_CRYPTO
2250         https://bugs.webkit.org/show_bug.cgi?id=172756
2251
2252         Reviewed by Michael Catanzaro.
2253
2254         * Scripts/webkitperl/FeatureList.pm: Set ENABLE_SUBTLE_CRYPTO to 1 for WPE.
2255         * wpe/jhbuild.modules: Add libgpg-error and libgcrypt dependencies.
2256         * wpe/patches/libgcrypt-use-only-dev-urandom-for-testing.patch: Added. Prevents
2257         exhausting entropy when running the crypto layout tests.
2258
2259 2017-06-01  Carlos Garcia Campos  <cgarcia@igalia.com>
2260
2261         [GTK] Bump GTK+ and its dependencies in jhbuild
2262         https://bugs.webkit.org/show_bug.cgi?id=171918
2263
2264         Reviewed by Carlos Alberto Lopez Perez.
2265
2266         * WebKitTestRunner/InjectedBundle/gtk/ActivateFontsGtk.cpp:
2267         (WTR::initializeGtkSettings):
2268         * gtk/jhbuild.modules:
2269         * gtk/patches/gtk+-configure-fix-detecting-CUPS-2.x.patch: Removed.
2270         * gtk/patches/librsvg-2.36.1-bump-up-config.guess-to-support-aarch64.patch: Removed.
2271
2272 2017-06-01  Carlos Garcia Campos  <cgarcia@igalia.com>
2273
2274         [GTK] Bump wayland and weston in jhbuild
2275         https://bugs.webkit.org/show_bug.cgi?id=171921
2276
2277         Reviewed by Carlos Alberto Lopez Perez.
2278
2279         * gtk/jhbuild.modules:
2280         * gtk/patches/weston-libweston-include-weston-egl-ext.h-in-drm-x11-and-wa.patch: Added.
2281
2282 2017-06-01  Andy Estes  <aestes@apple.com>
2283
2284         REGRESSION (r217626): ENABLE_APPLE_PAY_SESSION_V3 was disabled by mistake
2285         https://bugs.webkit.org/show_bug.cgi?id=172828
2286
2287         Reviewed by Beth Dakin.
2288
2289         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
2290
2291 2017-06-01  Jonathan Bedard  <jbedard@apple.com>
2292
2293         webkitpy: Remove unneeded simulator teardown
2294         https://bugs.webkit.org/show_bug.cgi?id=171891
2295
2296         Reviewed by Aakash Jain.
2297
2298         * Scripts/webkitpy/port/ios_simulator.py:
2299         (IOSSimulatorPort.clean_up_test_run): Remove FIFO deletion since TCP is used
2300         for communication between Python and WebKitTestRunner/DumpRenderTree.
2301
2302 2017-06-01  Keith Miller  <keith_miller@apple.com>
2303
2304         Undo rollout in r217638 with bug fix
2305         https://bugs.webkit.org/show_bug.cgi?id=172824
2306
2307         Unreviewed, reland patch with unused set_state code removed.
2308
2309         * TestWebKitAPI/Tests/WTF/ThreadMessages.cpp:
2310         (runThreadMessageTest):
2311         (TEST):
2312
2313 2017-06-01  Jonathan Bedard  <jbedard@apple.com>
2314
2315         webkitpy: Do not send 0 or -1 as a pid to kill_process
2316         https://bugs.webkit.org/show_bug.cgi?id=172818
2317
2318         Reviewed by Darin Adler.
2319
2320         Sending a signal to process 0 will result in all processes in the group receiving 
2321         the signal. Sending a signal to process -1 will result in all non-system processes
2322         receiving the signal. Both Executive.kill_process and Executive.check_running_pid
2323         should consider these cases
2324
2325         * Scripts/webkitpy/common/system/executive.py:
2326         (Executive.kill_process): Throw exception if pid is undefined, 0 or negative.
2327         (Executive.check_running_pid): An undefined pid, pid 0 or a negative pid will
2328         never be running, although os.kill may succeed.
2329         * Scripts/webkitpy/port/simulator_process.py:
2330         (SimulatorProcess.stop): Do not kill process if it is undefined.
2331
2332 2017-05-31  Alexey Proskuryakov  <ap@apple.com>
2333
2334         JSC EWS bot does not run on WTF only patches
2335         https://bugs.webkit.org/show_bug.cgi?id=172777
2336         rdar://problem/32495975
2337
2338         Reviewed by Aakash Jain.
2339
2340         * Scripts/webkitpy/tool/steps/checkpatchrelevance.py:
2341         (CheckPatchRelevance): Add a missing comma.
2342
2343 2017-05-31  Commit Queue  <commit-queue@webkit.org>
2344
2345         Unreviewed, rolling out r217611 and r217631.
2346         https://bugs.webkit.org/show_bug.cgi?id=172785
2347
2348         "caused wasm-hashset-many.html to become flaky." (Requested by
2349         keith_miller on #webkit).
2350
2351         Reverted changesets:
2352
2353         "Reland r216808, underlying lldb bug has been fixed."
2354         https://bugs.webkit.org/show_bug.cgi?id=172759
2355         http://trac.webkit.org/changeset/217611
2356
2357         "Use dispatch queues for mach exceptions"
2358         https://bugs.webkit.org/show_bug.cgi?id=172775
2359         http://trac.webkit.org/changeset/217631
2360
2361 2017-05-31  Ryan Haddad  <ryanhaddad@apple.com>
2362
2363         EWS bots should reboot themselves more frequently
2364         https://bugs.webkit.org/show_bug.cgi?id=172402
2365
2366         Reviewed by Alexey Proskuryakov.
2367
2368         Instead of rebooting once a day, EWS bots will reboot after running 10 iterations.
2369
2370         * EWSTools/start-queue-mac.sh: Remove the restriction placed on the time that the bot will perform a reboot.
2371
2372 2017-05-31  Ryan Haddad  <ryanhaddad@apple.com>
2373
2374         Reallocate hardware for iOS bots.
2375         https://bugs.webkit.org/show_bug.cgi?id=172657
2376
2377         Reviewed by Alexey Proskuryakov.
2378
2379         * BuildSlaveSupport/build.webkit.org-config/config.json:
2380
2381 2017-05-31  Andy Estes  <aestes@apple.com>
2382
2383         Rename ENABLE_APPLE_PAY_DELEGATE to ENABLE_APPLE_PAY_SESSION_V3 and bump the supported version number
2384         https://bugs.webkit.org/show_bug.cgi?id=172366
2385
2386         Reviewed by Daniel Bates.
2387
2388         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
2389
2390 2017-05-31  Jiewen Tan  <jiewen_tan@apple.com>
2391
2392         Unreviewed, add Jiewen Tan as a reviewer
2393
2394         * Scripts/webkitpy/common/config/contributors.json:
2395
2396 2017-05-31  Adrian Perez de Castro  <aperez@igalia.com>
2397
2398         [GTK] MiniBrowser's browser_window_get_or_create_web_view_for_automation never creates new windows
2399         https://bugs.webkit.org/show_bug.cgi?id=172770
2400
2401         Reviewed by Michael Catanzaro.
2402
2403         * MiniBrowser/gtk/BrowserWindow.c:
2404         (browser_window_get_or_create_web_view_for_automation): Removed stray semicolon
2405         which caused the body of the if-clause to be accidentally empty.
2406
2407 2017-05-31  Keith Miller  <keith_miller@apple.com>
2408
2409         Reland r216808, underlying lldb bug has been fixed.
2410         https://bugs.webkit.org/show_bug.cgi?id=172759
2411
2412         Unreviewed, relanding old patch. See: rdar://problem/31183352
2413
2414         * TestWebKitAPI/Tests/WTF/ThreadMessages.cpp:
2415         (runThreadMessageTest):
2416         (TEST):
2417
2418 2017-05-31  Matt Lewis  <jlewis3@apple.com>
2419
2420         Unreviewed, rolling out r217603.
2421
2422         This patch broke the internal builds.
2423
2424         Reverted changeset:
2425
2426         "Get <chrono> out of StdLibExtras.h"
2427         https://bugs.webkit.org/show_bug.cgi?id=172744
2428         http://trac.webkit.org/changeset/217603
2429
2430 2017-05-31  Brent Fulgham  <bfulgham@apple.com>
2431
2432         Make ResourceLoadStatistics testing more reliable
2433         https://bugs.webkit.org/show_bug.cgi?id=172730
2434         <rdar://problem/32028373>
2435
2436         Reviewed by Andy Estes.
2437
2438         When we tell the UIProcess (WebKitTestRunner) to notify the system about statistics update notifications,
2439         we also need to tell the WebProcess to do so, too, or else the test system doesn't get messages.
2440
2441         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
2442         (WTR::TestRunner::setStatisticsNotifyPagesWhenDataRecordsWereScanned):
2443
2444 2017-05-31  Carlos Alberto Lopez Perez  <clopez@igalia.com>
2445
2446         [GTK][WPE] run-javascriptcore-tests should use the jhbuild
2447         https://bugs.webkit.org/show_bug.cgi?id=172757
2448
2449         Reviewed by Xabier Rodriguez-Calvar.
2450
2451         When needed, add the jhbuild wrapper at the beginning of the array
2452         that will be invoked to execute the run-jsc-stress-test or testapi
2453         commands.
2454
2455         * Scripts/run-javascriptcore-tests:
2456         (runJSCStressTests):
2457         * Scripts/webkitdirs.pm:
2458         (shouldUseJhbuild):
2459
2460 2017-05-31  Simon Fraser  <simon.fraser@apple.com>
2461
2462         Get <chrono> out of StdLibExtras.h
2463         https://bugs.webkit.org/show_bug.cgi?id=172744
2464
2465         Reviewed by Saam Barati.
2466
2467         * TestWebKitAPI/Tests/WTF/WorkQueue.cpp:
2468
2469 2017-05-30  Tim Horton  <timothy_horton@apple.com>
2470
2471         Keyboard autocorrections do not apply with an active selection (but keyboard acts like they did)
2472         https://bugs.webkit.org/show_bug.cgi?id=172735
2473         <rdar://problem/32015977>
2474
2475         Reviewed by Enrica Casucci.
2476
2477         * DumpRenderTree/ios/UIScriptControllerIOS.mm:
2478         (WTR::UIScriptController::applyAutocorrection):
2479         * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
2480         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
2481         (WTR::UIScriptController::applyAutocorrection):
2482         * TestRunnerShared/UIScriptContext/UIScriptController.h:
2483         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
2484         (WTR::UIScriptController::applyAutocorrection):
2485         Expose applyAutocorrection to UIScriptController. Use a WKTesting method
2486         because I don't know how to tap the button in the autocorrection bar from a test.
2487
2488 2017-05-30  Daniel Bates  <dabates@apple.com>
2489
2490         Add unit test for WebKit2 C SPI runBeforeUnloadConfirmPanel()
2491         https://bugs.webkit.org/show_bug.cgi?id=172671
2492
2493         Reviewed by Alex Christensen.
2494
2495         We should add a unit test to ensure we do not regress the WKPageUIClient runBeforeUnloadConfirmPanel() callback.
2496         For completeness, the callback runBeforeUnloadConfirmPanel() existed since inception of WKPageUIClient (WKPageUIClientV0).
2497
2498         * TestWebKitAPI/Tests/WebKit2/ModalAlertsSPI.cpp:
2499         (TestWebKitAPI::analyzeDialogArguments): Test the runBeforeUnloadConfirmPanel() callback last as we need
2500         to trigger a navigation to test it.
2501         (TestWebKitAPI::runBeforeUnloadConfirmPanel): Added.
2502         (TestWebKitAPI::createNewPage): Wire up the runBeforeUnloadConfirmPanel callback.
2503
2504 2017-05-30  Jonathan Bedard  <jbedard@apple.com>
2505
2506         webkitpy: Start servers before setting-up for testing
2507         https://bugs.webkit.org/show_bug.cgi?id=172176
2508         <rdar://problem/32225538>
2509
2510         Reviewed by Alexey Proskuryakov.
2511
2512         On-device testing requires that servers are started before ports set-up their
2513         test environments.
2514
2515         * Scripts/webkitpy/layout_tests/controllers/layout_test_runner.py:
2516         (LayoutTestRunner.__init__): Start servers when initializing LayoutTestRunner.
2517         Servers are unconditionally stopped on exit.
2518         (LayoutTestRunner.run_tests): Move the starting of servers to the initializer. The
2519         Manager now stops servers.
2520         (LayoutTestRunner.start_servers): Set flag to indicate servers are running.
2521         (LayoutTestRunner.stop_servers): Check flag, only shutdown servers if they are shutdown.
2522         * Scripts/webkitpy/layout_tests/controllers/manager.py:
2523         (Manager.__init__): Delay construction of the test runner until we can determine
2524         if servers need to be started.
2525         (Manager.run): Determine if servers need to be started and construct the test runner.
2526         Shut servers down when the test run is finished.
2527         (Manager._run_tests): Move the determination of servers to run into Manager.run.
2528         * Scripts/webkitpy/layout_tests/servers/web_platform_test_server.py:
2529         (is_wpt_server_running): Server is not running if no config is found.
2530         * Scripts/webkitpy/layout_tests/servers/websocket_server.py:
2531         (PyWebSocket.is_running): Check if this WebSocket server is running.
2532         * Scripts/webkitpy/port/base.py:
2533         (Port.__init__): Define secure WebSocket server.
2534         (Port.to.is_websocket_server_running): Check if WebSocket servers are defined.
2535
2536 2017-05-30  Daniel Bates  <dabates@apple.com>
2537
2538         [WK2] Add runBeforeUnloadConfirmPanel WKUIDelegate SPI; support onbeforeunload confirm panel in MiniBrowser
2539         https://bugs.webkit.org/show_bug.cgi?id=172603
2540         <rdar://problem/32471306>
2541
2542         Reviewed by Brady Eidson.
2543
2544         Implement the -_webView:runBeforeUnloadConfirmPanelWithMessage:initiatedByFrame:completionHandler: delegate
2545         method in MiniBrowser to show a confirm panel as to whether to allow the unloading of the page when
2546         unloading is initiated for a page that registered a onbeforeunload handler.
2547
2548         Modify TestWebKitAPI/Tests/WebKit2Cocoa/ModalAlerts.mm to test that the -_webView:runBeforeUnloadConfirmPanelWithMessage:initiatedByFrame:completionHandler:
2549         is called. Also fix style nit; pass YES instead of true to avoid implicit conversion from bool to BOOL
2550         when invoking the completion handler in -_webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:.
2551
2552         Until we fix <https://bugs.webkit.org/show_bug.cgi?id=172614> the unit test in TestWebKitAPI/Tests/WebKit2Cocoa/ModalAlerts.mm
2553         for -_webView:runBeforeUnloadConfirmPanelWithMessage:initiatedByFrame:completionHandler: is only run on Mac
2554         as we do not have the infrastructure to simulate a click/tap on iOS and a click/tap on the page that
2555         registered an onbeforeunload handler is required to show a confirm panel when the page will be unloaded.
2556
2557         * MiniBrowser/mac/WK2BrowserWindowController.m:
2558         (-[WK2BrowserWindowController _webView:runBeforeUnloadConfirmPanelWithMessage:initiatedByFrame:completionHandler:]):
2559         * TestWebKitAPI/Tests/WebKit2/modal-alerts-in-new-about-blank-window.html:
2560         * TestWebKitAPI/Tests/WebKit2Cocoa/ModalAlerts.mm:
2561         (sawDialog):
2562         (-[ModalAlertsUIDelegate webView:createWebViewWithConfiguration:forNavigationAction:windowFeatures:]):
2563         (-[ModalAlertsUIDelegate webView:runJavaScriptConfirmPanelWithMessage:initiatedByFrame:completionHandler:]):
2564         (-[ModalAlertsUIDelegate _webView:runBeforeUnloadConfirmPanelWithMessage:initiatedByFrame:completionHandler:]):
2565
2566 2017-05-30  Alex Christensen  <achristensen@webkit.org>
2567
2568         Update libwebrtc configuration
2569         https://bugs.webkit.org/show_bug.cgi?id=172727
2570
2571         Reviewed by Geoffrey Garen.
2572
2573         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
2574
2575 2017-05-30  Fujii Hironori  <Hironori.Fujii@sony.com>
2576
2577         [WinCairo] TestWebKitAPI: ASSERTION FAILED: m_eglDisplay == EGL_NO_DISPLAY
2578         https://bugs.webkit.org/show_bug.cgi?id=172702
2579
2580         Reviewed by Alex Christensen.
2581
2582         EGL PlatformDisplay needs to be shut down before existing a
2583         program on Windows.
2584
2585         * TestWebKitAPI/Tests/WebKit/win/ScaleWebView.cpp:
2586         (TestWebKitAPI::ScaleWebView::TearDown): Call shutDownWebKit().
2587         * TestWebKitAPI/Tests/WebKit/win/WebViewDestruction.cpp:
2588         (TestWebKitAPI::WebViewDestruction::TearDown): Ditto.
2589
2590 2017-05-30  Per Arne Vollan  <pvollan@apple.com>
2591
2592         [Win] fast/shadow-dom/fullscreen-in-slot-fullscreenElement.html is flaky.
2593         https://bugs.webkit.org/show_bug.cgi?id=172709
2594
2595         Reviewed by Brent Fulgham.
2596
2597         Exit fullscreen mode after a fullscreen test.
2598
2599         * DumpRenderTree/win/DumpRenderTree.cpp:
2600         (resetWebViewToConsistentStateBeforeTesting):
2601
2602 2017-05-30  Antti Koivisto  <antti@apple.com>
2603
2604         ASSERTION FAILED: !needsLayout() in com.apple.WebCore: WebCore::FrameView::paintContents in fast/events/tabindex-focus-blur-all.html on WK1
2605         https://bugs.webkit.org/show_bug.cgi?id=172713
2606
2607         Reviewed by Zalan Bujtas.
2608
2609         * DumpRenderTree/mac/ResourceLoadDelegate.mm:
2610         (-[ResourceLoadDelegate webView:plugInFailedWithError:dataSource:]):
2611
2612             Remove forced display from plugin resource load delegate. It is testing some long-obsolete
2613             Safari WK1 behavior. Forcing display from this resource load delegate will hit the assertion
2614             because on Mac WK1 it may get invoked from middle of a layout.
2615
2616             Painting code skips out after the assert so it doesn't indicate unsafe access of any sort.
2617
2618 2017-05-30  Carlos Alberto Lopez Perez  <clopez@igalia.com>
2619
2620         Add a WPE EWS queue
2621         https://bugs.webkit.org/show_bug.cgi?id=172693
2622
2623         Reviewed by Carlos Garcia Campos.
2624
2625         * QueueStatusServer/config/queues.py:
2626         * QueueStatusServer/model/queues.py: Capitalize the name of the
2627         port on the tooltip of the bubbles. Do the same for the GTK port.
2628         (Queue.display_name):
2629         * Scripts/webkitpy/common/config/ews.json: Update the watcher mail
2630         for the GTK+ EWS also. Set for both ports as watcher the alias
2631         bugs-noreply@webkitgtk.org that maintainers of both ports follow.
2632         * Scripts/webkitpy/common/config/ports.py:
2633         (DeprecatedPort.port):
2634         (WpePort):
2635         (WpePort.build_webkit_command):
2636         (WpePort.run_webkit_tests_command):
2637         * Scripts/webkitpy/common/config/ports_unittest.py:
2638         (DeprecatedPortTest):
2639         (DeprecatedPortTest.test_wpe_port):
2640         * Scripts/webkitpy/tool/commands/earlywarningsystem_unittest.py:
2641         (test_ews_name):
2642
2643 2017-05-29  Zan Dobersek  <zdobersek@igalia.com>
2644
2645         Unreviewed. Bumping the WPEBackend-mesa dependency version.
2646
2647         * wpe/jhbuild.modules: Use the latest version that uses proper GLib
2648         priorities for IPC communication.
2649
2650 2017-05-27  Yusuke Suzuki  <utatane.tea@gmail.com>
2651
2652         [JSC] Map and Set constructors should have fast path for cloning
2653         https://bugs.webkit.org/show_bug.cgi?id=172413
2654
2655         Reviewed by Saam Barati.
2656
2657         * TestWebKitAPI/Tests/WTF/MathExtras.cpp:
2658         (TestWebKitAPI::TEST):
2659
2660 2017-05-27  Zalan Bujtas  <zalan@apple.com>
2661
2662         enclosingIntRect returns a rect with -1 width/height when the input FloatRect overflows integer.
2663         https://bugs.webkit.org/show_bug.cgi?id=172676
2664
2665         Reviewed by Simon Fraser.
2666
2667         * TestWebKitAPI/Tests/WebCore/FloatRect.cpp:
2668         (TestWebKitAPI::TEST):
2669
2670 2017-05-26  Zalan Bujtas  <zalan@apple.com>
2671
2672         TestWebKitAPI: EnclosingIntRect and RoundedIntRect should use EXPECT_EQ.
2673         https://bugs.webkit.org/show_bug.cgi?id=172674
2674
2675         Reviewed by Simon Fraser.
2676
2677         * TestWebKitAPI/Tests/WebCore/FloatRect.cpp:
2678         (TestWebKitAPI::TEST):
2679
2680 2017-05-26  Wenson Hsieh  <wenson_hsieh@apple.com>
2681
2682         Add test resources back into TestWebKitAPI Copy Resources phase
2683
2684         Rubber-stamped by Beth Dakin.
2685
2686         Add two files back into the Copy Resources phase after they were unintentionally
2687         removed in r217447 and r217496.
2688
2689         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2690
2691 2017-05-26  Beth Dakin  <bdakin@apple.com>
2692
2693         Media documents inside iframes should not get controls in the TouchBar unless the 
2694         video is playing
2695         https://bugs.webkit.org/show_bug.cgi?id=172620
2696         -and corresponding-
2697         rdar://problem/32165477
2698
2699         Reviewed by Jon Lee.
2700
2701         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2702         * TestWebKitAPI/Tests/WebKit2Cocoa/VideoControlsManager.mm:
2703         (TestWebKitAPI::TEST):
2704         * TestWebKitAPI/Tests/WebKit2Cocoa/offscreen-iframe-of-media-document.html: Added.
2705
2706 2017-05-25  Joseph Pecoraro  <pecoraro@apple.com>
2707
2708         _WKUserStyleSheet and WKUserScript leak string data
2709         https://bugs.webkit.org/show_bug.cgi?id=172583
2710         <rdar://problem/32395209>
2711
2712         Reviewed by Sam Weinig.
2713
2714         * TestWebKitAPI/Tests/WebKit2Cocoa/UserContentController.mm:
2715         We should not have been adopting an autoreleased object.
2716
2717 2017-05-25  Myles C. Maxfield  <mmaxfield@apple.com>
2718
2719         [WK1] iframes in layer-backed NSViews are not cleared between successive draws
2720         https://bugs.webkit.org/show_bug.cgi?id=172554
2721         <rdar://problem/31247133>
2722
2723         Reviewed by Simon Fraser.
2724
2725         Previously, there was no way to make DumpRenderTree's views layer-backed. Unfortunately,
2726         simply setting [WebView setWantsLayer:] is insufficient; turning it on and then off again
2727         leaves some state around inside the NSWindow which isn't easily cleaned up. Instead,
2728         we should just tear down and rebuild the window whenever we need a layer-backed WebView.
2729         We can also use the "webkit-test-runner" header comment to trigger this new layer-backed
2730         codepath.
2731
2732         * DumpRenderTree/TestOptions.h:
2733         * DumpRenderTree/TestOptions.mm:
2734         (TestOptions::TestOptions):
2735         (TestOptions::webViewIsCompatibleWithOptions):
2736         * DumpRenderTree/mac/DumpRenderTree.mm:
2737         (shouldIgnoreWebCoreNodeLeaks):
2738         (allowedFontFamilySet):
2739         (-[DRTMockScroller rectForPart:]):
2740         (-[DRTMockScroller drawKnob]):
2741         (-[DRTMockScroller drawRect:]):
2742         (createWebViewAndOffscreenWindow):
2743         (initializeGlobalsFromCommandLineOptions):
2744         (prepareConsistentTestingEnvironment):
2745         (dumpRenderTree):
2746         (dumpAudio):
2747         (dumpHistoryItem):
2748         (dumpBackForwardListForWebView):
2749         (resetWebViewToConsistentStateBeforeTesting):
2750         (WebThreadLockAfterDelegateCallbacksHaveCompleted):
2751         (runTest):
2752
2753 2017-05-25  Sam Weinig  <sam@webkit.org>
2754
2755         [WebIDL] Use the term 'operation' more consistently
2756         https://bugs.webkit.org/show_bug.cgi?id=172601
2757
2758         Reviewed by Chris Dumez.
2759
2760         We were using the term 'operation', a WebIDL term for function-like
2761         constructs, inconsistently in the code generator. Now, when we use
2762         'operation' when referring to the IDL concept (usually the object the
2763         parser produces) and 'function' when referring to code being generated.
2764
2765         * DumpRenderTree/Bindings/CodeGeneratorDumpRenderTree.pm:
2766         * WebKitTestRunner/InjectedBundle/Bindings/CodeGeneratorTestRunner.pm:
2767
2768 2017-05-25  Jer Noble  <jer.noble@apple.com>
2769
2770         Unreviewed build fix after r217447; only run test where JSC's ObjC API is available.
2771
2772         * TestWebKitAPI/Tests/mac/MediaPlaybackSleepAssertion.mm:
2773
2774 2017-05-25  Jer Noble  <jer.noble@apple.com>
2775
2776         System sleeps while playing to wireless target, ending stream.
2777         https://bugs.webkit.org/show_bug.cgi?id=172541
2778
2779         Reviewed by Eric Carlson.
2780
2781         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2782         * TestWebKitAPI/Tests/mac/MediaPlaybackSleepAssertion.html: Added.
2783         * TestWebKitAPI/Tests/mac/MediaPlaybackSleepAssertion.mm: Added.
2784         (-[MediaPlaybackSleepAssertionLoadDelegate webView:didCreateJavaScriptContext:forFrame:]):
2785         (-[MediaPlaybackSleepAssertionPolicyDelegate webView:decidePolicyForNavigationAction:request:frame:decisionListener:]):
2786         (TestWebKitAPI::simulateKeyDown):
2787         (TestWebKitAPI::hasAssertionType):
2788         (TestWebKitAPI::TEST):
2789
2790 2017-05-25  Commit Queue  <commit-queue@webkit.org>
2791
2792         Unreviewed, rolling out r217423 and r217424.
2793         https://bugs.webkit.org/show_bug.cgi?id=172607
2794
2795         These caused an api failure on all testers. (Requested by
2796         mlewis13 on #webkit).
2797
2798         Reverted changesets:
2799
2800         "REGRESSION (r216977): 4 leaks introduced in new
2801         WebKit2_WKHTTPCookieStoreWithoutProcessPool_Test"
2802         https://bugs.webkit.org/show_bug.cgi?id=172558
2803         http://trac.webkit.org/changeset/217423
2804
2805         "REGRESSION (r217423): Fix last-second typo in 'auto'"
2806         http://trac.webkit.org/changeset/217424
2807
2808 2017-05-25  Joanmarie Diggs  <jdiggs@igalia.com>
2809
2810         [ATK] Expose doc-footnote ARIA role with ATK_ROLE_FOOTNOTE
2811         https://bugs.webkit.org/show_bug.cgi?id=172355
2812
2813         Reviewed by Chris Fleizach.
2814
2815         Add map ATK_ROLE_FOOTNOTE to "AXFootnote" and bump jhbuild minimum
2816         versions of atk, at-spi2-core, and at-spi2-atk to 2.25.2 (the earliest
2817         releases which support the new platform footnote accessibility role.
2818
2819         * WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
2820         * gtk/jhbuild.modules:
2821
2822 2017-05-25  David Kilzer  <ddkilzer@apple.com>
2823
2824         REGRESSION (r217423): Fix last-second typo in 'auto'
2825
2826         * TestWebKitAPI/Tests/WebKit2Cocoa/WKHTTPCookieStore.mm:
2827         (WebKit2_WKHTTPCookieStoreWithoutProcessPool_Test): Fix typo.
2828
2829 2017-05-24  David Kilzer  <ddkilzer@apple.com>
2830
2831         REGRESSION (r216977): 4 leaks introduced in new WebKit2_WKHTTPCookieStoreWithoutProcessPool_Test
2832         <https://webkit.org/b/172558>
2833
2834         Reviewed by Sam Weinig.
2835
2836         * TestWebKitAPI/Tests/WebKit2Cocoa/WKHTTPCookieStore.mm:
2837         (WebKit2_WKHTTPCookieStoreWithoutProcessPool_Test): Fix the leaks.
2838
2839 2017-05-24  Don Olmstead  <don.olmstead@am.sony.com>
2840
2841         [CMake] Consolidate CMake code related to Cairo
2842         https://bugs.webkit.org/show_bug.cgi?id=172568
2843
2844         Reviewed by Alex Christensen.
2845
2846         * DumpRenderTree/config.h:
2847         * TestWebKitAPI/config.h:
2848
2849 2017-05-24  Wenson Hsieh  <wenson_hsieh@apple.com>
2850
2851         Plumb additional image metadata to item providers when beginning data interaction on an image
2852         https://bugs.webkit.org/show_bug.cgi?id=172536
2853         <rdar://problem/32371300>
2854
2855         Reviewed by Beth Dakin.
2856
2857         Tweak existing image data interaction tests to check for suggested name and estimated size on the generated
2858         source item providers.
2859
2860         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
2861         (checkSuggestedNameAndEstimatedSize):
2862         (TestWebKitAPI::TEST):
2863
2864 2017-05-24  Per Arne Vollan  <pvollan@apple.com>
2865
2866         [Win] Create unique network storage session for each DRT.
2867         https://bugs.webkit.org/show_bug.cgi?id=172540
2868
2869         Reviewed by Brent Fulgham.
2870
2871         During layout testing, each DRT instance should have its own network storage session.
2872
2873         * DumpRenderTree/win/DumpRenderTree.cpp:
2874         (prepareConsistentTestingEnvironment):
2875
2876 2017-05-24  Wenson Hsieh  <wenson_hsieh@apple.com>
2877
2878         Respect image UTIs when writing to item providers when beginning data interaction on an image
2879         https://bugs.webkit.org/show_bug.cgi?id=172436
2880         <rdar://problem/31786569>
2881
2882         Reviewed by Beth Dakin.
2883
2884         Tweaks existing unit tests and adds a new test for image data interaction. See WebCore ChangeLog for more
2885         details.
2886
2887         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2888         * TestWebKitAPI/Tests/WebKit2Cocoa/apple.gif: Added.
2889         * TestWebKitAPI/Tests/WebKit2Cocoa/gif-and-file-input.html: Added.
2890
2891         Create a new test page containing a GIF and a file input.
2892
2893         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
2894         (checkTypeIdentifierIsRegisteredAtIndex):
2895         (TestWebKitAPI::TEST):
2896
2897 2017-05-23  Per Arne Vollan  <pvollan@apple.com>
2898
2899         [Win] Increase test timeout for slow tests.
2900         https://bugs.webkit.org/show_bug.cgi?id=172449
2901
2902         Reviewed by Alexey Proskuryakov.
2903
2904         Instead of using a fixed timeout of 30 seconds for all tests, we should use the
2905         timeout member in the TestRunner class.
2906
2907         * DumpRenderTree/win/TestRunnerWin.cpp:
2908         (TestRunner::setWaitToDump):
2909
2910 2017-05-15  Matt Rajca  <mrajca@apple.com>
2911
2912         Replace autoplay events that fire at navigation with a DidAutoplayMediaPastThreshold event.
2913         https://bugs.webkit.org/show_bug.cgi?id=172138
2914
2915         Reviewed by Alex Christensen.
2916
2917         Added API tests.
2918
2919         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2920         * TestWebKitAPI/Tests/WebKit2/js-autoplay-audio.html: Added.
2921         * TestWebKitAPI/Tests/WebKit2Cocoa/WebsitePolicies.mm:
2922         (TEST):
2923         * TestWebKitAPI/Tests/WebKit2Cocoa/silence-long.m4a: Added.
2924
2925 2017-05-23  Simon Fraser  <simon.fraser@apple.com>
2926
2927         Stop consulting -viewsNeedDisplay when doing layer flushing in WebKit1
2928         https://bugs.webkit.org/show_bug.cgi?id=172522
2929         rdar://problem/31071812
2930
2931         Reviewed by Sam Weinig.
2932
2933         Remove NSWindowStyleMaskFullSizeContentView which is no longer referenced in code.
2934         We set this in the .xib file now.
2935
2936         * MiniBrowser/mac/MiniBrowser_Prefix.pch:
2937
2938 2017-05-22  Simon Fraser  <simon.fraser@apple.com>
2939
2940         Snapshotting via -renderInContext: should do synchronous image decodes
2941         https://bugs.webkit.org/show_bug.cgi?id=172485
2942         rdar://problem/32276146
2943
2944         Reviewed by Tim Horton.
2945
2946         New API test.
2947
2948         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2949         * TestWebKitAPI/Tests/WebKit/ios/SnapshotViaRenderInContext.mm: Added.
2950         (-[RenderInContextWebViewDelegate webViewDidFinishLoad:]):
2951         (-[RenderInContextWebViewDelegate webView:didFailLoadWithError:]):
2952         (TestWebKitAPI::getPixelIndex):
2953         (TestWebKitAPI::TEST):
2954
2955 2017-05-23  Myles C. Maxfield  <mmaxfield@apple.com>
2956
2957         Remove dead ENABLE(FONT_LOAD_EVENTS) code
2958         https://bugs.webkit.org/show_bug.cgi?id=172517
2959
2960         Rubber-stamped by Simon Fraser.
2961
2962         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
2963
2964 2017-05-23  Wenson Hsieh  <wenson_hsieh@apple.com>
2965
2966         Multiple links should be inserted separately when performing data interaction
2967         https://bugs.webkit.org/show_bug.cgi?id=172489
2968         <rdar://problem/31510832>
2969
2970         Reviewed by Dan Bernstein.
2971
2972         Adds a new test that performs data interaction in a contenteditable with multiple items containing URLs.
2973
2974         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
2975         (TestWebKitAPI::TEST):
2976
2977 2017-05-23  Tim Horton  <timothy_horton@apple.com>
2978
2979         REGRESSION: API test WebKit2.WKObject is failing
2980         https://bugs.webkit.org/show_bug.cgi?id=172497
2981         <rdar://problem/31694641>
2982
2983         Reviewed by Geoff Garen.
2984
2985         * TestWebKitAPI/Tests/WebKit2Cocoa/WKObject.mm:
2986         (TestWebKitAPI::TEST):
2987         Add a test that ensures that we pretend to at least be *some* kind of
2988         NSString, which my first fix would not have passed.
2989
2990 2017-05-23  youenn fablet  <youenn@apple.com>
2991
2992         There should be an easy way to run HTTP/WPT served tests on a browser
2993         https://bugs.webkit.org/show_bug.cgi?id=172068
2994
2995         Reviewed by Sam Weinig.
2996
2997         Adding a new script open-layout-test to open a layout-test in a
2998         browser and making sure it is served as done through run-webkit-tests.
2999         In case tests should be run using a server, detecting whether the
3000         server are running. If not, calling run-webkit-httpd to run the
3001         servers and open the URL in a browser.
3002         Otherwise, open directly the URL.
3003
3004         Adding an option in run-webkit-httpd to open an URL after having
3005         started the servers.
3006
3007         Adding the --no-http-servers option in run-webkit-tests to not start any HTTP server.
3008         This allows running run-webkit-httpd once and not having to restart
3009         servers everytime a test should be served.
3010
3011         Moving most of run-webkit-httpd logic in its own python file to reuse
3012         it in open-layout-test script.
3013
3014         Adding routines to check whether HTTP and WPT servers are running.
3015
3016         * Scripts/open-layout-test: Added.
3017         (parse_args):
3018         (main):
3019         * Scripts/run-webkit-httpd:
3020         (main):
3021         * Scripts/webkitpy/layout_tests/controllers/layout_test_finder.py:
3022         (LayoutTestFinder.find_tests):
3023         * Scripts/webkitpy/layout_tests/controllers/layout_test_runner.py:
3024         (LayoutTestRunner.run_tests):
3025         * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
3026         (parse_args):
3027         * Scripts/webkitpy/layout_tests/servers/http_server_base.py:
3028         (HttpServerBase._is_server_running_on_all_ports):
3029         (HttpServerBase):
3030         (HttpServerBase._is_running_on_port):
3031         (HttpServerBase._check_that_all_ports_are_available):
3032         (is_http_server_running):
3033         * Scripts/webkitpy/layout_tests/servers/run_webkit_httpd.py: Copied from Tools/Scripts/run-webkit-httpd.
3034         (parse_args):
3035         (main):
3036         (run_server):
3037         * Scripts/webkitpy/layout_tests/servers/web_platform_test_server.py:
3038         (is_wpt_server_running):
3039         * Scripts/webkitpy/port/base.py:
3040         (Port.to.is_http_server_running):
3041         (Port.to):
3042         (Port.to.is_wpt_server_running):
3043         (Port.to.start_web_platform_test_server):
3044         * Scripts/webkitpy/port/driver.py:
3045         (DriverProxy.is_web_platform_test):
3046         (DriverProxy):
3047         (DriverProxy.is_webkit_specific_web_platform_test):
3048
3049 2017-05-23  Emilio Cobos Álvarez  <ecobos@igalia.com>
3050
3051         Add a RuntimeEnabledFeature for display: contents, defaulted to false.
3052         https://bugs.webkit.org/show_bug.cgi?id=171984
3053
3054         Reviewed by Antti Koivisto.
3055
3056         * DumpRenderTree/mac/DumpRenderTree.mm:
3057         (enableExperimentalFeatures):
3058         * WebKitTestRunner/TestController.cpp:
3059         (WTR::TestController::resetPreferencesToConsistentValues):
3060
3061 2017-05-20  Alex Christensen  <achristensen@webkit.org>
3062
3063         REGRESSION(r215686): O(n^2) algorithm in CachedRawResource::addDataBuffer
3064         https://bugs.webkit.org/show_bug.cgi?id=172406
3065         <rdar://32109532>
3066
3067         Reviewed by Brady Eidson.
3068
3069         * TestWebKitAPI/Tests/WebCore/SharedBuffer.cpp:
3070         (TestWebKitAPI::checkBuffer):
3071         (TestWebKitAPI::TEST_F):
3072
3073 2017-05-22  Jason Marcell  <jmarcell@apple.com>
3074
3075         Do not enter Subversion-specific logic when parsing Git-based Trac data.
3076         https://bugs.webkit.org/show_bug.cgi?id=172433
3077         <rdar://problem/32234188>
3078
3079         Reviewed by Alexey Proskuryakov.
3080
3081         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Trac.js:
3082         (Trac.prototype._convertCommitInfoElementToObject):
3083
3084 2017-05-22  Tim Horton  <timothy_horton@apple.com>
3085
3086         ExplicitSnapshotsChangeUponNavigation API test often fails
3087         https://bugs.webkit.org/show_bug.cgi?id=172475
3088         <rdar://problem/31688322>
3089
3090         Reviewed by Simon Fraser.
3091
3092         * TestWebKitAPI/cocoa/TestWKWebView.mm:
3093         (-[TestWKWebView _setUpTestWindow:]):
3094         Make TestWKWebView's window layer-backed. This is now the default,
3095         and it's also easy to accidentally write a test that depends on it
3096         (for example, ExplicitSnapshotsChangeUponNavigation adds an NSBox,
3097         which becomes layer backed, just like the WKWebView, but with no
3098         common layer-backed ancestor).
3099
3100 2017-05-22  youenn fablet  <youenn@apple.com>
3101
3102         Resync web-platform-tests up to 8df7c9c215678328212f232ce0b5270c505a8563
3103         https://bugs.webkit.org/show_bug.cgi?id=172426
3104
3105         Reviewed by Chris Dumez.
3106
3107         * Scripts/webkitpy/w3c/test_importer.py:
3108         (TestImporter.remove_deleted_files): Outputting warning when trying to delete a file that no longer exists.
3109
3110 2017-05-22  Konstantin Tokarev  <annulen@yandex.ru>
3111
3112         Unreviewed, change my status to reviewer and fill "expertise" field
3113
3114         * Scripts/webkitpy/common/config/contributors.json:
3115
3116 2017-05-22  Tomas Popela  <tpopela@redhat.com>
3117
3118         Remove some of the EFL port leftovers
3119         https://bugs.webkit.org/show_bug.cgi?id=172440
3120
3121         Reviewed by Carlos Garcia Campos.
3122
3123         * BuildSlaveSupport/built-product-archive:
3124         (archiveBuiltProduct):
3125         (extractBuiltProduct):
3126         * BuildSlaveSupport/test-result-archive:
3127         (archiveTestResults):
3128         * ImageDiff/PlatformEfl.cmake: Removed.
3129         * Scripts/run-efl-tests: Removed.
3130         * Scripts/webkit-build-directory:
3131         * Scripts/webkitpy/common/config/contributionareas.py:
3132         * Scripts/webkitpy/common/config/watchlist:
3133         * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
3134         (parse_args):
3135         (_set_up_derived_options):
3136         * Scripts/webkitpy/performance_tests/perftestsrunner.py:
3137         (PerfTestsRunner.__init__):
3138         * Scripts/webkitpy/style/checker.py:
3139         * Scripts/webkitpy/style/checker_unittest.py:
3140         (GlobalVariablesTest.test_path_rules_specifier):
3141         * gtk/manifest.txt.in:
3142         * jhbuild/jhbuild-wrapper:
3143
3144 2017-05-22  Carlos Garcia Campos  <cgarcia@igalia.com>
3145
3146         Unreviewed. Do not include WPE files in GTK+ tarballs.
3147
3148         * gtk/manifest.txt.in:
3149
3150 2017-05-22  Carlos Garcia Campos  <cgarcia@igalia.com>
3151
3152         [GTK] Add webkit_context_menu_item_new_from_gaction
3153         https://bugs.webkit.org/show_bug.cgi?id=159631
3154
3155         Reviewed by Michael Catanzaro.
3156
3157         Update context menu tests to check the new GAction API.
3158
3159         * TestWebKitAPI/Tests/WebKit2Gtk/TestContextMenu.cpp:
3160         (testContextMenuPopulateMenu):
3161
3162 2017-05-21  Michael Catanzaro  <mcatanzaro@igalia.com>
3163
3164         [GTK] Remove Firefox user agent quirk for Google domains
3165         https://bugs.webkit.org/show_bug.cgi?id=171941
3166
3167         Reviewed by Carlos Garcia Campos.
3168
3169         * TestWebKitAPI/Tests/WebCore/UserAgentQuirks.cpp:
3170         (TestWebKitAPI::TEST):
3171         (TestWebKitAPI::assertUserAgentForURLHasFirefoxBrowserQuirk): Deleted.
3172
3173 2017-05-20  Ting-Wei Lan  <lantw44@gmail.com>
3174
3175         [GTK] gtkdoc-fixxref needs --module argument to work
3176         https://bugs.webkit.org/show_bug.cgi?id=172415
3177
3178         Reviewed by Michael Catanzaro.
3179
3180         * gtk/gtkdoc.py:
3181         (GTKDoc._run_gtkdoc_fixxref):
3182
3183 2017-05-20  Alexey Proskuryakov  <ap@apple.com>
3184
3185         make-new-script-test should create tests that use js-test.js, not js-test-pre.js
3186         https://bugs.webkit.org/show_bug.cgi?id=172416
3187
3188         Reviewed by Daniel Bates.
3189
3190         * Scripts/make-new-script-test:
3191
3192 2017-05-19  Fujii Hironori  <Hironori.Fujii@sony.com>
3193
3194         [Win] error LNK2005: WebCore::JSNode::checkSubClassPatchpoint() already defined in WebKit.lib
3195         https://bugs.webkit.org/show_bug.cgi?id=172267
3196
3197         Reviewed by Per Arne Vollan.
3198
3199         TestWebCoreLib and TestWebKitLib have linked both WebCore and WebKit.
3200         TestWebCoreLib should link only with WebCore. And, TestWebKitLib
3201         should link only with WebKit.
3202
3203         Unfortunately, there is a layer violation at the moment.
3204         WebCore::Image::loadPlatformResource needs loadResourceIntoBuffer
3205         in WebKit. This change contains a stub of loadResourceIntoBuffer
3206         in TestWebCoreLib for the workaround.
3207
3208         * TestWebKitAPI/PlatformWin.cmake: Do not link WebKit to
3209         TestWebCoreLib. Do not link WebCore to TestWebKitLib.
3210         * TestWebKitAPI/win/TestWebCoreStubs.cpp: Added.
3211         (loadResourceIntoBuffer): Added a stub.
3212
3213 2017-05-19  Simon Fraser  <simon.fraser@apple.com>
3214
3215         Fix dump-class-layout to handle different file architectures
3216         https://bugs.webkit.org/show_bug.cgi?id=172392
3217
3218         Reviewed by Zalan Bujtas.
3219
3220         Instead of using lldb.LLDB_ARCH_DEFAULT by default, run 'file' on the binary
3221         and use the first architecture reported. Also add a "--architecture" argument
3222         to allow the user to specify an architecture.
3223
3224         * Scripts/dump-class-layout:
3225         (import_lldb):
3226         (verify_type_recursive):
3227         (get_first_file_architecture):
3228         (dump_class):
3229         (main):
3230         (find_build_directory): Deleted.
3231
3232 2017-05-19  Jonathan Bedard  <jbedard@apple.com>
3233
3234         Unreviewed infrastructure fix.
3235
3236         * Scripts/webkitpy/port/ios_simulator.py:
3237         (IOSSimulatorPort._create_devices): Ignore failure to open Simulator.app.
3238
3239 2017-05-19  Jonathan Bedard  <jbedard@apple.com>
3240
3241         webkitpy: Use simctl boot to run multiple simulators at once
3242         https://bugs.webkit.org/show_bug.cgi?id=172374
3243
3244         Reviewed by Alexey Proskuryakov.
3245
3246         * Scripts/webkitpy/common/system/platforminfo.py:
3247         (PlatformInfo.xcode_version): Return the current version of Xcode.
3248         * Scripts/webkitpy/common/system/platforminfo_mock.py:
3249         (MockPlatformInfo.xcode_version): Return version 8.0 for testing.
3250         * Scripts/webkitpy/port/ios_simulator.py:
3251         (IOSSimulatorPort.use_multiple_simulator_apps): Return true if we need to
3252         run multiple Simulator.app instances.
3253         (IOSSimulatorPort._create_simulators): Only copy the simulator app for older
3254         versions of Xcode.
3255         (IOSSimulatorPort._create_devices): Use 'simctl boot' directly unless using
3256         an older version of Xcode.
3257
3258 2017-05-19  Wenson Hsieh  <wenson_hsieh@apple.com>
3259
3260         Unreviewed, fix the build on the latest internal SDK.
3261
3262         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
3263         (TestWebKitAPI::TEST):
3264
3265 2017-05-19  Filip Pizlo  <fpizlo@apple.com>
3266
3267         arrayProtoPrivateFuncConcatMemcpy needs to be down with firstArray being undecided
3268         https://bugs.webkit.org/show_bug.cgi?id=172369
3269
3270         Reviewed by Mark Lam.
3271         
3272         Because I wrote a test that relies on the NoCJIT config scribbling free cells, I thought it
3273         would be a good idea to write this down.
3274
3275         * Scripts/run-jsc-stress-tests:
3276
3277 2017-05-19  Jonathan Bedard  <jbedard@apple.com>
3278
3279         webkitpy: Layout tests which have no output will succeed
3280         https://bugs.webkit.org/show_bug.cgi?id=172322
3281         <rdar://problem/32258350>
3282
3283         Reviewed by David Kilzer.
3284
3285         * Scripts/webkitpy/layout_tests/controllers/single_test_runner.py:
3286         (SingleTestRunner._compare_text): Add FailreNotTested to failures if test has no output.
3287         * Scripts/webkitpy/layout_tests/models/test_failures.py:
3288         (determine_result_type): FailureNotTested means that the test could not be loaded. This
3289         is classified as a MISSING failure.
3290         (FailureNotTested): Added.
3291         (FailureNotTested.message):
3292
3293 2017-05-19  Yusuke Suzuki  <utatane.tea@gmail.com>
3294
3295         Add SixSpeed benchmark to PerformanceTests
3296         https://bugs.webkit.org/show_bug.cgi?id=172326
3297
3298         Reviewed by Sam Weinig.
3299
3300         * Scripts/run-jsc-benchmarks:
3301
3302 2017-05-19  Wenson Hsieh  <wenson_hsieh@apple.com>
3303
3304         [WK1] MiniBrowser should navigate when handling a dropped URL
3305         https://bugs.webkit.org/show_bug.cgi?id=172350
3306
3307         Reviewed by Tim Horton.
3308
3309         Allow all drop actions, including URL navigation, for WebKit1 MiniBrowser.
3310
3311         * MiniBrowser/mac/WK1BrowserWindowController.m:
3312         (-[WK1BrowserWindowController webView:dragDestinationActionMaskForDraggingInfo:]):
3313
3314 2017-05-18  Ryosuke Niwa  <rniwa@webkit.org>
3315
3316         REGRESSION (r216694 - 216712): Performance test Speedometer/Full.html is failing
3317         https://bugs.webkit.org/show_bug.cgi?id=172077
3318
3319         Reviewed by Chris Dumez.
3320
3321         Fixed perftest.py by updating the lines to ignore in Speedometer.
3322
3323         Also start report the results as "Speedometer" instead of "DoYouEvenBench/Full.html" to perf.webkit.org.
3324
3325         * Scripts/webkitpy/performance_tests/perftest.py:
3326         (PerfTest._lines_to_ignore_in_parser_result): Updated for Speedometer 2.0.
3327         * Scripts/webkitpy/performance_tests/perftestsrunner.py:
3328         (PerfTestsRunner._collect_tests): Use "Speedometer" instead of "Speedometer/index.html" as the test name.
3329         (_generate_results_dict): Removed the workaround to keep reporting Speedometer as DoYouEvenBench.
3330         * Scripts/webkitpy/performance_tests/perftestsrunner_unittest.py:
3331         (MainTest.test_collect_tests_with_index_html_and_resources): Added.
3332
3333 2017-05-18  Andy Estes  <aestes@apple.com>
3334
3335         ENABLE(APPLE_PAY_DELEGATE) should be NO on macOS Sierra and earlier
3336         https://bugs.webkit.org/show_bug.cgi?id=172305
3337
3338         Reviewed by Anders Carlsson.
3339
3340         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
3341
3342 2017-05-18  Wenson Hsieh  <wenson_hsieh@apple.com>
3343
3344         Selection around attachment elements should not persist when beginning a drag
3345         https://bugs.webkit.org/show_bug.cgi?id=172319
3346         <rdar://problem/32283008>
3347
3348         Reviewed by Tim Horton.
3349
3350         Tests that temporary selection around an attachment does not persist longer than it needs to.
3351
3352         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
3353         (TestWebKitAPI::TEST):
3354
3355 2017-05-18  John Wilander  <wilander@apple.com>
3356
3357         Resource Load Statistics: Grandfather domains for existing data records
3358         https://bugs.webkit.org/show_bug.cgi?id=172155
3359         <rdar://problem/24913532>
3360
3361         Reviewed by Alex Christensen.
3362
3363         Adds test infrastructure needed for the added functionality.
3364
3365         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
3366         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
3367         (WTR::InjectedBundle::didReceiveMessageToPage):
3368         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
3369         (WTR::TestRunner::setStatisticsGrandfathered):
3370         (WTR::TestRunner::isStatisticsGrandfathered):
3371         (WTR::TestRunner::installStatisticsDidScanDataRecordsCallback):
3372         (WTR::TestRunner::statisticsDidScanDataRecordsCallback):
3373         (WTR::TestRunner::setStatisticsGrandfatheringTime):
3374         * WebKitTestRunner/InjectedBundle/TestRunner.h:
3375         * WebKitTestRunner/TestController.cpp:
3376         (WTR::TestController::setStatisticsGrandfathered):
3377         (WTR::TestController::isStatisticsGrandfathered):
3378         (WTR::TestController::setStatisticsGrandfatheringTime):
3379         * WebKitTestRunner/TestController.h:
3380         * WebKitTestRunner/TestInvocation.cpp:
3381         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
3382
3383 2017-05-18  Saam Barati  <sbarati@apple.com>
3384
3385         WebAssembly: perform stack checks
3386         https://bugs.webkit.org/show_bug.cgi?id=165546
3387         <rdar://problem/29760307>
3388
3389         Reviewed by Filip Pizlo.
3390
3391         Add some new testing modes for using and not using fast TLS wasm contexts.
3392
3393         * Scripts/run-jsc-stress-tests:
3394
3395 2017-05-18  Daniel Bates  <dabates@apple.com>
3396
3397         REGRESSION (r209608): Cross-origin plugin document opened in child window blocked by parent
3398         window CSP when object-src 'none' is set
3399         https://bugs.webkit.org/show_bug.cgi?id=172038
3400         <rdar://problem/32258262>
3401
3402         Reviewed by Andy Estes.
3403
3404         Teach the test Netscape plugin to look for a URL that contains plugin-document-alert-and-notify-done.pl.
3405         When it sees this URL it will show a JavaScript alert and call testRunner.notifyDone().
3406
3407         * DumpRenderTree/TestNetscapePlugIn/main.cpp:
3408         (NPP_New):
3409
3410 2017-05-18  Per Arne Vollan  <pvollan@apple.com>
3411
3412         [Win] Many layout tests are failing.
3413         https://bugs.webkit.org/show_bug.cgi?id=172286
3414
3415         Reviewed by Brent Fulgham.
3416
3417         Add a FIXME comment about unimplemented functions, instead of writing this to the test result file.
3418  
3419         * DumpRenderTree/win/TestRunnerWin.cpp:
3420         (TestRunner::grantWebNotificationPermission):
3421         (TestRunner::denyWebNotificationPermission):
3422         (TestRunner::removeAllWebNotificationPermissions):
3423         (TestRunner::simulateWebNotificationClick):
3424
3425 2017-05-18  Don Olmstead  <don.olmstead@am.sony.com>
3426
3427         [Win] Remove usage of _snprintf
3428         https://bugs.webkit.org/show_bug.cgi?id=172251
3429
3430         Reviewed by Per Arne Vollan.
3431
3432         * DumpRenderTree/TestNetscapePlugIn/PluginTest.h:
3433         * MiniBrowser/win/PageLoadTestClient.cpp:
3434         (PageLoadTestClient::dumpRunStatistics):
3435
3436 2017-05-17  Ryan Haddad  <ryanhaddad@apple.com>
3437
3438         Unreviewed, rolling out r217014.
3439
3440         This change caused mac-wk2 LayoutTests to exit early due to
3441         crashes.
3442
3443         Reverted changeset:
3444
3445         "Resource Load Statistics: Grandfather domains for existing
3446         data records"
3447         https://bugs.webkit.org/show_bug.cgi?id=172155
3448         http://trac.webkit.org/changeset/217014
3449
3450 2017-05-17  John Wilander  <wilander@apple.com>
3451
3452         Resource Load Statistics: Grandfather domains for existing data records
3453         https://bugs.webkit.org/show_bug.cgi?id=172155
3454         <rdar://problem/24913532>
3455
3456         Reviewed by Alex Christensen.
3457
3458         Adds test infrastructure needed for the added functionality.
3459
3460         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
3461         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
3462         (WTR::InjectedBundle::didReceiveMessageToPage):
3463         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
3464         (WTR::TestRunner::setStatisticsGrandfathered):
3465         (WTR::TestRunner::isStatisticsGrandfathered):
3466         (WTR::TestRunner::installStatisticsDidScanDataRecordsCallback):
3467         (WTR::TestRunner::statisticsDidScanDataRecordsCallback):
3468         (WTR::TestRunner::setStatisticsGrandfatheringTime):
3469         * WebKitTestRunner/InjectedBundle/TestRunner.h:
3470         * WebKitTestRunner/TestController.cpp:
3471         (WTR::TestController::setStatisticsGrandfathered):
3472         (WTR::TestController::isStatisticsGrandfathered):
3473         (WTR::TestController::setStatisticsGrandfatheringTime):
3474         * WebKitTestRunner/TestController.h:
3475         * WebKitTestRunner/TestInvocation.cpp:
3476         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
3477
3478 2017-05-17  Alex Christensen  <achristensen@webkit.org>
3479
3480         Fix ios-simulator API test after r216977
3481         https://bugs.webkit.org/show_bug.cgi?id=171987
3482
3483         * TestWebKitAPI/Tests/WebKit2Cocoa/WKHTTPCookieStore.mm:
3484         (TEST):
3485         <rdar://problem/32260156> covers the investigation of this, but fixing it is 
3486         not as urgent as having the rest of this working. Notably the ephemeral part of the
3487         test works, so something is just wrong with the persistent part.
3488
3489 2017-05-17  Ryan Haddad  <ryanhaddad@apple.com>
3490
3491         Unreviewed, rolling out r216955.
3492
3493         This change caused strange behavior with web-platform-tests
3494         locally and on EWS.
3495
3496         Reverted changeset:
3497
3498         "webkitpy: Start servers before setting-up for testing"
3499         https://bugs.webkit.org/show_bug.cgi?id=172176
3500         http://trac.webkit.org/changeset/216955
3501
3502 2017-05-17  Wenson Hsieh  <wenson_hsieh@apple.com>
3503
3504         A URL type is vended for a non-URL plain text string when starting data interaction
3505         https://bugs.webkit.org/show_bug.cgi?id=172228
3506         <rdar://problem/32166729>
3507
3508         Reviewed by Andy Estes.
3509
3510         Adds two new data interaction tests, SinglePlainTextWordTypeIdentifiers and SinglePlainTextURLTypeIdentifiers,
3511         to verify that a URL UTI is not vended when beginning a data interaction on a single word, but that a URL is
3512         still vended when beginning data interaction on something that resembles a link.
3513
3514         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
3515
3516 2017-05-17  David Kilzer  <ddkilzer@apple.com>
3517
3518         BlobDataFileReference::generateReplacementFile() should use mkstemp()
3519         <https://webkit.org/b/172192>
3520
3521         Reviewed by Brent Fulgham.
3522
3523         * Scripts/webkitpy/style/checkers/cpp.py:
3524         (check_language): Add check for mktemp.
3525         (CppChecker): Add 'security/temp_file' category.
3526         * Scripts/webkitpy/style/checkers/cpp_unittest.py:
3527         (CppStyleTest.test_insecure_temp_file): Add test.
3528
3529 2017-05-17  Devin Rousso  <drousso@apple.com>
3530
3531         Unreviewed, change my email.
3532
3533         * Scripts/webkitpy/common/config/contributors.json:
3534
3535 2017-05-17  Matt Lewis  <jlewis3@apple.com>
3536
3537         Unreviewed, rolling out r216974.
3538
3539         Revision caused consistent timeouts on all platforms.
3540
3541         Reverted changeset:
3542
3543         "Add a RuntimeEnabledFeature for display: contents, defaulted
3544         to false."
3545         https://bugs.webkit.org/show_bug.cgi?id=171984
3546         http://trac.webkit.org/changeset/216974
3547
3548 2017-05-17  Alex Christensen  <achristensen@webkit.org>
3549
3550         Interacting with WKHTTPCookieStores before creating WKWebViews and WKProcessPools should affect cookies used
3551         https://bugs.webkit.org/show_bug.cgi?id=171987
3552
3553         Reviewed by Brady Eidson.
3554
3555         * TestWebKitAPI/Tests/WebKit2Cocoa/WKHTTPCookieStore.mm:
3556         (-[CookieUIDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
3557         (TEST):
3558
3559 2017-05-17  Emilio Cobos Álvarez  <ecobos@igalia.com>
3560
3561         Add a RuntimeEnabledFeature for display: contents, defaulted to false.
3562         https://bugs.webkit.org/show_bug.cgi?id=171984
3563
3564         Reviewed by Antti Koivisto.
3565
3566         * DumpRenderTree/mac/DumpRenderTree.mm:
3567         (enableExperimentalFeatures):
3568         * WebKitTestRunner/TestController.cpp:
3569         (WTR::TestController::resetPreferencesToConsistentValues):
3570
3571 2017-05-16  Timothy Horton  <timothy_horton@apple.com>
3572
3573         Fix the build
3574
3575         * TestWebKitAPI/Tests/mac/PageVisibilityStateWithWindowChanges.mm:
3576         (TestWebKitAPI::PageVisibilityStateWithWindowChanges::runTest):
3577
3578 2017-05-16  Tim Horton  <timothy_horton@apple.com>
3579
3580         PageVisibilityStateWithWindowChanges tests sometimes time out
3581         https://bugs.webkit.org/show_bug.cgi?id=172202
3582         <rdar://problem/29653266>
3583
3584         Reviewed by Dean Jackson.
3585
3586         * TestWebKitAPI/Tests/mac/PageVisibilityStateWithWindowChanges.mm:
3587         (TestWebKitAPI::PageVisibilityStateWithWindowChanges::runTest):
3588         Make sure the window is miniaturizable, otherwise, in some cases, miniaturize: will not work.
3589
3590 2017-05-16  Jonathan Bedard  <jbedard@apple.com>
3591
3592         webkitpy: Start servers before setting-up for testing
3593         https://bugs.webkit.org/show_bug.cgi?id=172176
3594         <rdar://problem/32225538>
3595
3596         Reviewed by Alexey Proskuryakov.
3597
3598         On-device testing requires that servers are started before ports set-up their
3599         test environments.
3600
3601         * Scripts/webkitpy/layout_tests/controllers/layout_test_runner.py:
3602         (LayoutTestRunner.__init__): Start servers when initializing LayoutTestRunner.
3603         (LayoutTestRunner.run_tests): Move the starting of servers to the initializer.
3604         * Scripts/webkitpy/layout_tests/controllers/manager.py:
3605         (Manager.__init__): Delay construction of the test runner until we can determine
3606         if servers need to be started.
3607         (Manager.run): Determine if servers need to be started and construct the test runner.
3608         (Manager._run_tests): Move the determination of servers to run into Manager.run.
3609
3610 2017-05-16  Adrian Perez de Castro  <aperez@igalia.com>
3611
3612         Unreviewed, adding myself to contributors.json
3613
3614         * Scripts/webkitpy/common/config/contributors.json:
3615
3616 2017-05-16  Claudio Saavedra  <csaavedra@igalia.com>
3617
3618         [GTK] Tests that always pass when run alone, but fail in the bots
3619         https://bugs.webkit.org/show_bug.cgi?id=168572
3620
3621         Reviewed by Michael Catanzaro.
3622
3623         PlatformWebView::viewSupportsOptions() is basically a comparison
3624         that checks that the passed options are the ones supported by the
3625         web view. There is no reason for them to be implemented for each
3626         platform differently. In fact doing so causes issues each time a
3627         new option is added, if the corresponding platform implementation
3628         is not updated accordingly.
3629
3630         A consequence of not updating the viewSupportOptions()
3631         implementations when new options are added is that tests that need
3632         these options might fail if they are executed after a test that
3633         didn't need the option, as the webview will be reused even if the
3634         option is not supported. This cannot be spotted when running the
3635         tests individually. See bug #165133 for other example of the same
3636         problem.
3637
3638         Remove the platform implementations and make the comparison a
3639         method of the TestOptions structure, so that the check is in one
3640         place. For the time being, only include in the comparison the
3641         options that were checked in the mac platform, which seem to be
3642         the only ones relevant this far (unless newer ones have also been
3643         forgotten).
3644
3645         * WebKitTestRunner/PlatformWebView.h:
3646         (WTR::PlatformWebView::viewSupportsOptions): Use the method
3647         defined below.
3648         * WebKitTestRunner/TestOptions.h:
3649         (WTR::TestOptions::hasSameInitializationOptions): Added.
3650         * WebKitTestRunner/gtk/PlatformWebViewGtk.cpp:
3651         (WTR::PlatformWebView::viewSupportsOptions): Deleted.
3652         * WebKitTestRunner/ios/PlatformWebViewIOS.mm:
3653         (WTR::PlatformWebView::viewSupportsOptions): Deleted.
3654         * WebKitTestRunner/mac/PlatformWebViewMac.mm:
3655         (WTR::PlatformWebView::viewSupportsOptions): Deleted.
3656         * WebKitTestRunner/wpe/PlatformWebViewWPE.cpp:
3657         (WTR::PlatformWebView::viewSupportsOptions): Deleted.
3658
3659 2017-05-15  Yusuke Suzuki  <utatane.tea@gmail.com>
3660
3661         [JSC] Build testapi in non Apple ports
3662         https://bugs.webkit.org/show_bug.cgi?id=172103
3663
3664         Reviewed by Filip Pizlo.
3665
3666         Now testapi is drived in JSCOnly, GTK and WPE ports too.
3667
3668         * Scripts/build-jsc:
3669         * Scripts/run-javascriptcore-tests:
3670
3671 2017-05-15  Youenn Fablet  <youenn@apple.com>
3672
3673         WPT test importer should not account for slow manual tests
3674         https://bugs.webkit.org/show_bug.cgi?id=172127
3675
3676         Reviewed by Ryosuke Niwa.
3677
3678         Making sure manual tests are not triggering updating tests-options.json file.
3679
3680         * Scripts/webkitpy/w3c/test_importer.py:
3681         (TestImporter.find_importable_tests):
3682         (TestImporter._already_identified_as_resource_file):
3683         (TestImporter.update_tests_options):
3684         * Scripts/webkitpy/w3c/test_importer_unittest.py:
3685         (test_manual_slow_test):
3686
3687 2017-05-15  Jonathan Bedard  <jbedard@apple.com>
3688
3689         webkitpy: Some versions of simctl do not place parenthesis around runtime identifiers
3690         https://bugs.webkit.org/show_bug.cgi?id=172142
3691
3692         Reviewed by Tim Horton.
3693
3694         * Scripts/webkitpy/xcode/simulator.py:
3695         (Simulator._parse_runtimes): Newer versions of simctl output do not put parenthesis
3696         around runtime identifiers.
3697         * Scripts/webkitpy/xcode/simulator_unittest.py: Add tests for new simctl output.
3698
3699 2017-05-15  Ryosuke Niwa  <rniwa@webkit.org>
3700
3701         Update ARES-6 plan file to use the latest version
3702         https://bugs.webkit.org/show_bug.cgi?id=172139
3703
3704         Reviewed by Keith Miller.
3705
3706         Include r216538.
3707
3708         * Scripts/webkitpy/benchmark_runner/data/plans/ares6.plan:
3709
3710 2017-05-15  Jeremy Jones  <jeremyj@apple.com>
3711
3712         Disable Picture In Picture API tests on unsupported platforms.
3713         https://bugs.webkit.org/show_bug.cgi?id=172125
3714         rdar://problem/32199477
3715
3716         Reviewed by Simon Fraser.
3717
3718         The callbacks and allowing picture-in-picture require new SPI.
3719
3720         * TestWebKitAPI/Tests/WebKit2Cocoa/PictureInPictureDelegate.mm:
3721
3722 2017-05-15  Brady Eidson  <beidson@apple.com>
3723
3724         [ios-simulator] API test WKWebView.ClearAppCache is failing.
3725         https://bugs.webkit.org/show_bug.cgi?id=172120
3726
3727         Unreviewed test gardening.
3728
3729         * TestWebKitAPI/Tests/WebKit2Cocoa/LocalStorageClear.mm:
3730         (TEST): ios-sim needs explicit deleting of the app cache paths that I'd removed in 216805.
3731           Restoring that code fixes this.
3732
3733 2017-05-15  Timothy Horton  <timothy_horton@apple.com>
3734
3735         Null deref under WebContentReader::readURL when interacting with a file URL
3736         https://bugs.webkit.org/show_bug.cgi?id=172045
3737         <rdar://problem/25880647>
3738
3739         Reviewed by Wenson Hsieh.
3740
3741         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
3742         (TestWebKitAPI::TEST):
3743         The text of the file URL is pasted because a textual version of it gets
3744         onto the pasteboard. However, this test would have crashed before. Also
3745         tests that we don't make an <a>.
3746
3747 2017-05-14  Per Arne Vollan  <pvollan@apple.com>
3748
3749         [Win] fast/cookies/local-file-can-set-cookies.html is flaky.
3750         https://bugs.webkit.org/show_bug.cgi?id=172071
3751
3752         Reviewed by Alexey Proskuryakov.
3753
3754         * DumpRenderTree/win/DumpRenderTree.cpp:
3755         (resetWebPreferencesToConsistentValues):
3756
3757 2017-05-14  Chris Dumez  <cdumez@apple.com>
3758
3759         Drop PassRefPtr class from WTF
3760         https://bugs.webkit.org/show_bug.cgi?id=172091
3761
3762         Reviewed by Alex Christensen.
3763
3764         Drop API test coverage.
3765
3766         * TestWebKitAPI/Tests/WTF/Ref.cpp:
3767         (TestWebKitAPI::TEST):
3768         (TestWebKitAPI::passWithPassRefPtr): Deleted.
3769
3770 2017-05-13  Eric Carlson  <eric.carlson@apple.com>
3771
3772         [MediaStream] deviceId constraint doesn't work with getUserMedia
3773         https://bugs.webkit.org/show_bug.cgi?id=171877
3774         <rdar://problem/31899730>
3775
3776         Reviewed by Jer Noble.
3777
3778         The device ID hash salt is now required for getUserMedia to check deviceId constraint, so
3779         implement the "checkUserMediaPermission" callback.
3780         * TestWebKitAPI/Tests/WebKit2/UserMedia.cpp:
3781         (TestWebKitAPI::decidePolicyForUserMediaPermissionRequestCallBack):
3782         (TestWebKitAPI::checkUserMediaPermissionCallback):
3783         (TestWebKitAPI::TEST):
3784
3785         * TestWebKitAPI/Tests/WebKit2Cocoa/UserMediaDisabled.mm:
3786         (-[UserMediaUIDelegate _webView:checkUserMediaPermissionForURL:mainFrameURL:frameIdentifier:decisionHandler:]):
3787
3788 2017-05-13  Chris Dumez  <cdumez@apple.com>
3789
3790         Stop using RefPtr::release()
3791         https://bugs.webkit.org/show_bug.cgi?id=172074
3792
3793         Reviewed by Geoffrey Garen.
3794
3795         * TestWebKitAPI/Tests/WTF/RefPtr.cpp:
3796         (TestWebKitAPI::TEST):
3797
3798 2017-05-13  Commit Queue  <commit-queue@webkit.org>
3799
3800         Unreviewed, rolling out r216808.
3801         https://bugs.webkit.org/show_bug.cgi?id=172075
3802
3803         caused lldb to hang when debugging (Requested by smfr on
3804         #webkit).
3805
3806         Reverted changeset:
3807
3808         "Use Mach exceptions instead of signals where possible"
3809         https://bugs.webkit.org/show_bug.cgi?id=171865
3810         http://trac.webkit.org/changeset/216808
3811
3812 2017-05-12  Alex Christensen  <achristensen@webkit.org>
3813
3814         Rename WKContentExtension to WKContentRuleList
3815         https://bugs.webkit.org/show_bug.cgi?id=172053
3816         <rdar://problem/32141005>
3817
3818         Reviewed by Geoffrey Garen.
3819
3820         * TestWebKitAPI/Tests/WebKit2Cocoa/WKContentExtensionStore.mm:
3821         (WKContentRuleListStoreTest::SetUp):
3822         (TEST_F):
3823         (-[ContentRuleListDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
3824         (WKContentExtensionStoreTest::SetUp): Deleted.
3825         (-[ContentExtensionDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]): Deleted.
3826
3827 2017-05-12  Keith Miller  <keith_miller@apple.com>
3828
3829         Use Mach exceptions instead of signals where possible
3830         https://bugs.webkit.org/show_bug.cgi?id=171865
3831
3832         Reviewed by Mark Lam.
3833
3834         * TestWebKitAPI/Tests/WTF/ThreadMessages.cpp:
3835         (runThreadMessageTest):
3836         (TEST):
3837
3838 2017-05-12  Jeremy Jones  <jeremyj@apple.com>
3839
3840         Add objc version of WK2 UIPageClient setHasVideoInPictureInPicture and rename it to hasVideoInPictureInPictureDidChange.
3841         https://bugs.webkit.org/show_bug.cgi?id=172048
3842         rdar://problem/32163054
3843
3844         Reviewed by Simon Fraser.
3845
3846         Add a WKWebView test for hasVideoInPictureInPictureDidChange UIDelegate callback.
3847
3848         * TestWebKitAPI/Tests/WebKit2Cocoa/PictureInPictureDelegate.html:
3849         * TestWebKitAPI/Tests/WebKit2Cocoa/PictureInPictureDelegate.mm:
3850         (hasVideoInPictureInPictureDidChange):
3851         (-[PictureInPictureUIDelegate _webView:hasVideoInPictureInPictureDidChange:]):
3852         (-[PictureInPictureUIDelegate userContentController:didReceiveScriptMessage:]):
3853         (TestWebKitAPI::TEST):
3854
3855 2017-05-12  Brady Eidson  <beidson@apple.com>
3856
3857         REGRESSION (r216711): API test WKWebView.ClearAppCache is failing.
3858         https://bugs.webkit.org/show_bug.cgi?id=172030
3859
3860         Unreviewed - Test gardening
3861
3862         Try to resolve this once and for all by using the WebsiteDataStore API to nuke everything
3863         before the test starts.
3864
3865         * TestWebKitAPI/Tests/WebKit2Cocoa/LocalStorageClear.mm:
3866         (defaultWebsiteCacheDirectory):
3867         (defaultApplicationCacheDirectory):
3868         (TEST):
3869         (defaultWebsiteDataDirectory): Deleted.
3870
3871 2017-05-12  David Quesada  <david_quesada@apple.com>
3872
3873         Add SPI for overriding WKWebView's clipping behavior for _visibleContentRect
3874         https://bugs.webkit.org/show_bug.cgi?id=172000
3875         rdar://problem/32144756
3876
3877         Reviewed by Simon Fraser.
3878
3879         Added API tests to verify that WKWebView provides the expected value for
3880         _visibleContentRect in various configurations. (i.e. not inside a scrollview,
3881         inside a scrollview but not clipped, clipped by an ancestor scrollview,
3882         clipped by the webview's _enclosingViewForExposedRectComputation)
3883
3884         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3885         * TestWebKitAPI/Tests/WebKit2Cocoa/VisibleContentRect.mm: Added.
3886         (-[TestWKWebViewWithEnclosingView _enclosingViewForExposedRectComputation]):
3887         (TestWebKitAPI::TEST):
3888
3889 2017-05-12  Brady Eidson  <beidson@apple.com>
3890
3891         REGRESSION (r216711): API test WKWebView.ClearAppCache is failing.
3892         https://bugs.webkit.org/show_bug.cgi?id=172030
3893
3894         Unreviewed - Test gardening, in effect...
3895
3896         More exploration as to why this continues to fail on the bots.
3897         
3898         This change should give us a smoking gun.
3899         
3900         * TestWebKitAPI/Tests/WebKit2Cocoa/LocalStorageClear.mm:
3901         (TEST):
3902
3903 2017-05-12  Hyungwook Lee  <hyungwook.lee@navercorp.com>
3904
3905         [GTK] Fix compile warnings in PlatformImageCairo.cpp
3906         https://bugs.webkit.org/show_bug.cgi?id=171850
3907
3908         Reviewed by Michael Catanzaro.
3909
3910         * ImageDiff/cairo/PlatformImageCairo.cpp:
3911         (ImageDiff::PlatformImage::createFromStdin):
3912         (ImageDiff::PlatformImage::writeAsPNGToStdout):
3913
3914 2017-05-12  Jeremy Jones  <jeremyj@apple.com>
3915
3916         Add UIClient callback for when picture-in-picture is activated.
3917         https://bugs.webkit.org/show_bug.cgi?id=172023
3918
3919         Reviewed by Simon Fraser.
3920
3921         Added a test for WKPageUIClientV10 setHasVideoInPictureInPicture.
3922
3923         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3924         * TestWebKitAPI/Tests/WebKit2Cocoa/PictureInPictureDelegate.html: Added.
3925         * TestWebKitAPI/Tests/WebKit2Cocoa/PictureInPictureDelegate.mm: Added.
3926         (onLoadedCompletedCallback):
3927         (waitUntilOnLoadIsCompleted):
3928         (didFinishLoadForFrame):
3929         (setHasVideoInPictureInPicture):
3930         (TestWebKitAPI::TEST):
3931
3932 2017-05-12  Jonathan Bedard  <jbedard@apple.com>
3933
3934         Unreviewed follow-up to r216776.
3935
3936         * Scripts/webkitpy/port/base.py:
3937         (Port.path_to_crash_logs): Raise not implemented.
3938         * Scripts/webkitpy/port/test.py:
3939         (TestPort.path_to_crash_logs): Return results directory as the location of crash logs.
3940         * Scripts/webkitpy/port/win.py:
3941         (WinPort.path_to_crash_logs): Ditto.
3942
3943 2017-05-12  Alexey Proskuryakov  <ap@apple.com>
3944
3945         Bot watcher's dashboard shows results links twice sometimes
3946         https://bugs.webkit.org/show_bug.cgi?id=172043
3947
3948         Reviewed by Tim Horton.
3949
3950         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotTesterQueueView.js:
3951         (BuildbotTesterQueueView.prototype._presentPopoverForGenericTestFailures):
3952
3953 2017-05-12  Brady Eidson  <beidson@apple.com>
3954
3955         REGRESSION (r216711): API test WKWebView.ClearAppCache is failing.
3956         https://bugs.webkit.org/show_bug.cgi?id=172030
3957
3958         Unreviewed - Test gardening, in effect...
3959
3960         This failure is only being seen by the bots.
3961         
3962         I believe this test is utterly broken in the first place; when it checks the .wal file's
3963         size that is not actually an indicator that the records were deleted.
3964         
3965         But that isn't what's coming up as failure on the bots.
3966         
3967         This patch is an attempt to:
3968         1 - More forcefully clear the Website data directory of leftovers before the test starts.
3969         2 - Give an earlier indication of the failure that the bots are seeing, to possibly reveal more.
3970
3971         * TestWebKitAPI/Tests/WebKit2Cocoa/LocalStorageClear.mm:
3972         (defaultWebsiteDataDirectory):
3973         (defaultApplicationCacheDirectory):
3974         (TEST):
3975
3976 2017-05-12  Jonathan Bedard  <jbedard@apple.com>
3977
3978         webkitpy: Pass directory with crash logs into CrashLogs
3979         https://bugs.webkit.org/show_bug.cgi?id=172033
3980         <rdar://problem/32157616>
3981
3982         Reviewed by Daniel Bates.
3983
3984         Refactor CrashLogs and the callers of CrashLogs so that the port object owns
3985         the location of crash logs.
3986
3987         * Scripts/webkitpy/common/system/crashlogs.py:
3988         (CrashLogs.__init__): Pass mandatory crash_log_directory when constructing.
3989         (CrashLogs._find_newest_log_darwin): Use self._crash_log_directory instead of
3990         generating one.
3991         (CrashLogs._find_newest_log_win): Use self._crash_log_directory instead of
3992         self._results_directory.
3993         (CrashLogs._find_all_logs_darwin): Use self._crash_log_directory instead of
3994         generating one.
3995         (CrashLogs._log_directory_darwin): Moved to port.
3996         * Scripts/webkitpy/common/system/crashlogs_unittest.py: Update tests since the path
3997         to the crash log is no longer owned by CrashLogs.
3998         * Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py: Use the general
3999         directory for uploading crash logs. Note that crash logs are only supported on Mac
4000         and Windows.
4001         * Scripts/webkitpy/port/apple.py: Remove unneeded CrashLogs import.
4002         * Scripts/webkitpy/port/base.py:
4003         (Port.path_to_crash_logs): Unless ports declare otherwise, crash logs are assumed
4004         to be in the results directory.
4005         * Scripts/webkitpy/port/darwin.py:
4006         (DarwinPort.path_to_crash_logs): Moved from CrashLogs._log_directory_darwin.
4007         (DarwinPort._look_for_all_crash_logs_in_log_dir): Use port specific crash log path.
4008         (DarwinPort._get_crash_log): Ditto.
4009         * Scripts/webkitpy/port/darwin_testcase.py:
4010         (DarwinTest.test_crashlog_path): Test that the Darwin ports are correctly calculating
4011         the path to crash logs.
4012         * Scripts/webkitpy/port/ios_device.py:
4013         (IOSDevicePort.path_to_crash_logs): Currently, crash log retrieval is undefined for iOS.
4014         * Scripts/webkitpy/port/ios_device_unittest.py:
4015         (IOSDeviceTest.test_crashlog_path): Currently, crash log retrieval is undefined for iOS.
4016         * Scripts/webkitpy/port/ios_simulator.py: Remove unneeded CrashLogs import.
4017         * Scripts/webkitpy/port/mac.py: Ditto.
4018         * Scripts/webkitpy/port/test.py:
4019         (TestDriver.run_test): Use port specific crash log path when retrieving crash logs.
4020         * Scripts/webkitpy/port/win.py:
4021         (WinPort._get_crash_log): Ditto.
4022         * Scripts/webkitpy/tool/commands/queries.py:
4023         (execute): Construct a port object since this is the object which owns the path to crash logs.
4024
4025 2017-05-12  Carlos Garcia Campos  <cgarcia@igalia.com>
4026
4027         Unreviewed. Fix GTK+ test /webkit2/WebKitWebView/create-navigation-data after r216615.
4028
4029         In r216615 the custom code for window.open() was removed. The generated code now correctly handles the optional
4030         URL parameter using the default value "about:blank" when not provided.
4031
4032         * TestWebKitAPI/Tests/WebKit2Gtk/TestUIClient.cpp:
4033         (testWebViewCreateNavigationData):
4034
4035 2017-05-11  Youenn Fablet  <youenn@apple.com>
4036
4037         Allow WPT server to serve specific WebKit test
4038         https://bugs.webkit.org/show_bug.cgi?id=171479
4039
4040         Reviewed by Ryosuke Niwa.
4041
4042         Adding a new mount point to WPT server.
4043         It points to LayoutTests/http/wpt folder and is triggered on "/WebKit" urls.
4044
4045         Updating the webkitpy infrastructure to launch WPT server and do test url mapping for LayoutTests/wpt tests.
4046
4047         * Scripts/webkitpy/layout_tests/controllers/manager.py:
4048         (Manager.__init__):
4049         (Manager._is_http_test):
4050         (Manager._needs_web_platform_test):
4051         (Manager._run_tests):
4052         (Manager._is_web_platform_test): Deleted.
4053         * Scripts/webkitpy/layout_tests/servers/web_platform_test_launcher.py:
4054         (build_routes):
4055         (main):
4056         * Scripts/webkitpy/port/driver.py:
4057         (Driver):
4058         (Driver.is_webkit_specific_web_platform_test):
4059         (Driver.test_to_uri):
4060         (Driver._command_from_driver_input):
4061
4062 2017-05-11  Brady Eidson  <beidson@apple.com>
4063
4064         [WKWebsiteDataStore removeDataOfTypes:...] doesn't work for IndexedDB if the data store has a custom IDB path.
4065         <rdar://problem/30612463> and https://bugs.webkit.org/show_bug.cgi?id=171994
4066
4067         Reviewed by Andy Estes.
4068         Informal review by Maureen Daum.
4069
4070         * TestWebKitAPI/Tests/WebKit2Cocoa/WebsiteDataStoreCustomPaths.mm:
4071         (TEST):
4072
4073 2017-05-11  Joseph Pecoraro  <pecoraro@apple.com>
4074
4075         REGRESSION(r216217): lldb_webkit.py no longer prints out a WTFString, StringImpl needs to handle StringImplShape change
4076         https://bugs.webkit.org/show_bug.cgi?id=171989
4077
4078         Reviewed by Brian Burg.
4079
4080         * lldb/lldb_webkit.py:
4081         (WTFStringImplProvider.get_data8):
4082         (WTFStringImplProvider.get_data16):
4083         m_data8 and m_data16 are now part of the superclass StringImplShape
4084         instead of directly in StringImpl. So first get the shape by getting
4085         index 0, and the data properties are the same offset within that.
4086
4087 2017-05-11  Joseph Pecoraro  <pecoraro@apple.com>
4088
4089         Remove Vibration API
4090         https://bugs.webkit.org/show_bug.cgi?id=171766
4091
4092         Rubber-stamped by Alexey Proskuryakov.
4093
4094         * Scripts/webkitperl/FeatureList.pm:
4095
4096 2017-05-11  Carlos Alberto Lopez Perez  <clopez@igalia.com>
4097
4098         Add WPE release bots
4099         https://bugs.webkit.org/show_bug.cgi?id=171973
4100
4101         Reviewed by Žan Doberšek.
4102
4103         This adds a WPE Release Build bot (64-bit) and a WPE Release Test bot.
4104         It also adds a new WPE buildbot category.
4105
4106         * BuildSlaveSupport/build.webkit.org-config/config.json:
4107         * BuildSlaveSupport/build.webkit.org-config/master.cfg:
4108         (InstallWpeDependencies):
4109         (appendCustomBuildFlags):
4110         (Factory.__init__):
4111         (loadBuilderConfig):
4112         * BuildSlaveSupport/build.webkit.org-config/mastercfg_unittest.py:
4113         * BuildSlaveSupport/build.webkit.org-config/templates/root.html:
4114
4115 2017-05-09  Sam Weinig  <sam@webkit.org>
4116
4117         Remove support for legacy Notifications
4118         https://bugs.webkit.org/show_bug.cgi?id=171487
4119
4120         Reviewed by Jon Lee.
4121
4122         * DumpRenderTree/win/DRTDesktopNotificationPresenter.cpp:
4123         (DRTDesktopNotificationPresenter::checkNotificationPermission):
4124         * Scripts/webkitperl/FeatureList.pm:
4125         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
4126         Remove use and definition of ENABLE_LEGACY_NOTIFICATIONS.
4127
4128 2017-05-10  Michael Catanzaro  <mcatanzaro@igalia.com>
4129
4130         Remove user agent quirk for Slack
4131         https://bugs.webkit.org/show_bug.cgi?id=171869
4132
4133         Reviewed by Carlos Garcia Campos.
4134
4135         Remove the corresponding test.
4136
4137         * TestWebKitAPI/Tests/WebCore/UserAgentQuirks.cpp:
4138         (TestWebKitAPI::TEST):
4139
4140 2017-05-10  Commit Queue  <commit-queue@webkit.org>
4141
4142         Unreviewed, rolling out r216578.
4143         https://bugs.webkit.org/show_bug.cgi?id=171920
4144
4145         Broke the GTK+ build with Wayland enabled (Requested by KaL on
4146         #webkit).
4147
4148         Reverted changeset:
4149
4150         "[GTK] Bump GTK+ and its dependencies in jhbuild"
4151         https://bugs.webkit.org/show_bug.cgi?id=171918
4152         http://trac.webkit.org/changeset/216578
4153
4154 2017-05-10  Carlos Garcia Campos  <cgarcia@igalia.com>
4155
4156         [GTK] Bump GTK+ and its dependencies in jhbuild
4157         https://bugs.webkit.org/show_bug.cgi?id=171918
4158
4159         Reviewed by Carlos Alberto Lopez Perez.
4160
4161         * WebKitTestRunner/InjectedBundle/gtk/ActivateFontsGtk.cpp:
4162         (WTR::initializeGtkSettings):
4163         * gtk/jhbuild.modules:
4164         * gtk/patches/gtk+-configure-fix-detecting-CUPS-2.x.patch: Removed.
4165         * gtk/patches/librsvg-2.36.1-bump-up-config.guess-to-support-aarch64.patch: Removed.
4166
4167 2017-05-10  Don Olmstead  <don.olmstead@am.sony.com>
4168
4169         [Win] Set CMake args in build-webkit
4170         https://bugs.webkit.org/show_bug.cgi?id=171436
4171
4172         Reviewed by Per Arne Vollan.
4173
4174         * Scripts/build-webkit:
4175
4176 2017-05-10  Carlos Garcia Campos  <cgarcia@igalia.com>
4177
4178         ImageDiff: Add CG implementation for new ImageDiff
4179         https://bugs.webkit.org/show_bug.cgi?id=170608
4180
4181         Reviewed Alex Christensen.
4182
4183         * DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
4184         * DumpRenderTree/win/ImageDiffCairo.cpp: Removed.
4185         * DumpRenderTree/win/ImageDiffWin.cpp: Removed.
4186         * ImageDiff/CMakeLists.txt:
4187         * ImageDiff/Cairo.cmake:
4188         * ImageDiff/ImageDiff.cpp:
4189         (main):
4190         * ImageDiff/ImageDiff.xcodeproj/project.pbxproj:
4191         * ImageDiff/PlatformImage.cpp:
4192         * ImageDiff/PlatformImage.h:
4193         * ImageDiff/cairo/PlatformImageCairo.cpp:
4194         * ImageDiff/cg/ImageDiff.cpp: Removed.
4195         * ImageDiff/cg/PlatformImageCG.cpp: Added.
4196         (ImageDiff::PlatformImage::createFromStdin):
4197         (ImageDiff::PlatformImage::createFromDiffData):
4198         (ImageDiff::PlatformImage::PlatformImage):
4199         (ImageDiff::PlatformImage::~PlatformImage):
4200         (ImageDiff::PlatformImage::width):
4201         (ImageDiff::PlatformImage::height):
4202         (ImageDiff::PlatformImage::rowBytes):
4203         (ImageDiff::PlatformImage::hasAlpha):
4204         (ImageDiff::PlatformImage::pixels):
4205         (ImageDiff::PlatformImage::writeAsPNGToStdout):
4206
4207 2017-05-10  Zan Dobersek  <zdobersek@igalia.com>
4208
4209         Enable FTL JIT by default on AArch64
4210         https://bugs.webkit.org/show_bug.cgi?id=144039
4211
4212         Reviewed by Yusuke Suzuki.
4213
4214         * Scripts/build-jsc: Enable the FTL JIT option by default on ARM64.
4215         * Scripts/run-jsc-stress-tests: Unmark the ARM64 and Linux combination
4216         as an unsupported FTL platform.
4217         * Scripts/webkitdirs.pm:
4218         (isARM64): Returns 1 if the determined architecture is 'arm64'.
4219         * Scripts/webkitperl/FeatureList.pm: Enable FTL_JIT and WEBASSEMBLY on ARM64.
4220
4221 2017-05-09  Jonathan Bedard  <jbedard@apple.com>
4222
4223         webkitpy: Remove unneeded crash log retrieval, refactor Darwin crash retrieval
4224         https://bugs.webkit.org/show_bug.cgi?id=170857
4225         <rdar://problem/31635373>
4226
4227         Reviewed by Aakash Jain.
4228
4229         Since LayoutTestRelay has been removed, iOS Simulators and Macs can use the same
4230         code to search for crash logs.
4231
4232         * Scripts/webkitpy/port/darwin.py:
4233         (DarwinPort._get_crash_log): Moved from MacPort.
4234         * Scripts/webkitpy/port/darwin_testcase.py:
4235         (DarwinTest.test_get_crash_log): Moved from MacTest.
4236         * Scripts/webkitpy/port/ios_device.py:
4237         (IOSDevicePort._get_crash_log): Implement pass-through for iOS device, since iOS
4238         devices must search for crash-logs remotely.
4239         * Scripts/webkitpy/port/ios_simulator.py:
4240         (IOSSimulatorPort._get_crash_log): Deleted.
4241         * Scripts/webkitpy/port/ios_simulator_unittest.py:
4242         (IOSSimulatorTest.test_get_crash_log): Deleted.
4243         * Scripts/webkitpy/port/mac.py:
4244         (MacPort._get_crash_log): Moved to DarwinPort
4245         * Scripts/webkitpy/port/mac_unittest.py:
4246         (MacTest.test_get_crash_log): Moved to DarwinTest.
4247
4248 2017-05-09  Jonathan Bedard  <jbedard@apple.com>
4249
4250         build ImageDiff with host SDK from Make
4251         https://bugs.webkit.org/show_bug.cgi?id=171835
4252
4253         Reviewed by Alexey Proskuryakov.
4254
4255         ImageDiff should be built for the default SDK and default architecture when
4256         the SDKROOT is set to either iOS device or iOS simulator. Check the
4257         DO_NOT_BUILD_IMAGE_DIFF flag to skip the ImageDiff build.
4258
4259         * ImageDiff/Makefile: Use Mac SDK when building for iOS Simulator or iOS device.
4260         * Makefile: Do not build ImageDiff if the DO_NOT_BUILD_IMAGE_DIFF flag is set.
4261
4262 2017-05-09  Matt Lewis  <jlewis3@apple.com>
4263
4264         Unreviewed, adding myself to contributors.json
4265
4266         * Scripts/webkitpy/common/config/contributors.json: