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