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