ca71e7aeb004f7cff58d4125fa9339288928ba1a
[WebKit-https.git] / Tools / ChangeLog
1 2017-05-04  Ryan Haddad  <ryanhaddad@apple.com>
2
3         Disable failing API test WebKit2.ResizeWithHiddenContentDoesNotHang.
4         https://bugs.webkit.org/show_bug.cgi?id=170195
5
6         Unreviewed test gardening.
7
8         * TestWebKitAPI/Tests/WebKit2Cocoa/AnimatedResize.mm:
9         (TEST):
10
11 2017-05-04  Don Olmstead  <don.olmstead@am.sony.com>
12
13         [Win] Remove redundant macros that are set in the CMake config
14         https://bugs.webkit.org/show_bug.cgi?id=171571
15
16         Reviewed by Brent Fulgham.
17
18         * DumpRenderTree/config.h:
19         * MiniBrowser/win/stdafx.h:
20         * TestWebKitAPI/config.h:
21
22 2017-05-04  Said Abou-Hallawa  <sabouhallawa@apple.com>
23
24         Add testRunner.display() to force displaying the web page for testing
25         https://bugs.webkit.org/show_bug.cgi?id=171694
26
27         Reviewed by Simon Fraser.
28
29         Unlike testRunner.displayAndTrackRepaints(), this new function forces 
30         drawing the web page but without track repaints.
31
32         * DumpRenderTree/TestRunner.cpp:
33         (displayCallback):
34         (TestRunner::staticFunctions):
35         * DumpRenderTree/TestRunner.h:
36         * DumpRenderTree/mac/TestRunnerMac.mm:
37         (TestRunner::display):
38         * DumpRenderTree/win/TestRunnerWin.cpp:
39         (TestRunner::display):
40         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
41         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
42         (WTR::TestRunner::display):
43         * WebKitTestRunner/InjectedBundle/TestRunner.h:
44
45 2017-05-04  Mark Lam  <mark.lam@apple.com>
46
47         NeverDestroyed<String>(ASCIILiteral(...)) is not thread safe.
48         https://bugs.webkit.org/show_bug.cgi?id=171586
49         <rdar://problem/31873190>
50
51         Reviewed by Yusuke Suzuki.
52
53         API test for exercising StaticStringImpl and the MAKE_STATIC_STRING_IMPL macro.
54
55         * TestWebKitAPI/Tests/WTF/StringImpl.cpp:
56         (TestWebKitAPI::neverDestroyedString):
57         (TestWebKitAPI::getNeverDestroyedStringAtStackDepth):
58         (TestWebKitAPI::TEST):
59
60 2017-05-04  Wenson Hsieh  <wenson_hsieh@apple.com>
61
62         [WK2] Add support for keeping the selection in a focused editable element when dragging begins
63         https://bugs.webkit.org/show_bug.cgi?id=171585
64         <rdar://problem/31544320>
65
66         Reviewed by Beth Dakin and Zalan Bujtas.
67
68         Adds 1 new unit test and tweaks existing tests to check that when first responder status is lost after beginning
69         a drag while editing, content is still moved (and not copied) when performing data interaction on a different
70         element. ContentEditableMoveParagraphs checks that content can be shifted within a single element via a move
71         operation rather than a copy.
72
73         See WebCore ChangeLog for more details.
74
75         Tests:  DataInteractionSimulator.ContentEditableToContentEditable
76                 DataInteractionSimulator.ContentEditableToTextarea
77                 DataInteractionSimulator.ContentEditableMoveParagraphs
78                 DataInteractionSimulator.TextAreaToInput
79
80         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
81         * TestWebKitAPI/Tests/WebKit2Cocoa/two-paragraph-contenteditable.html: Added.
82         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
83         (TestWebKitAPI::TEST):
84         * TestWebKitAPI/ios/DataInteractionSimulator.h:
85         * TestWebKitAPI/ios/DataInteractionSimulator.mm:
86         (-[DataInteractionSimulator initWithWebView:]):
87         (-[DataInteractionSimulator dealloc]):
88         (-[DataInteractionSimulator _advanceProgress]):
89         (-[DataInteractionSimulator waitForInputSession]):
90         (-[DataInteractionSimulator _webView:focusShouldStartInputSession:]):
91         (-[DataInteractionSimulator _webView:didStartInputSession:]):
92
93 2017-05-04  Said Abou-Hallawa  <sabouhallawa@apple.com>
94
95         Rename TestRunner.display() to TestRunner::displayAndTrackRepaints()
96         https://bugs.webkit.org/show_bug.cgi?id=171641
97
98         Reviewed by Simon Fraser.
99
100         The plan is to add back the TestRunner.display() which does the display
101         only without track repaints.
102
103         * DumpRenderTree/DumpRenderTree.h:
104         * DumpRenderTree/TestRunner.cpp:
105         (displayAndTrackRepaintsCallback):
106         (TestRunner::staticFunctions):
107         (displayCallback): Deleted.
108         (displayInvalidatedRegionCallback): Deleted.
109         * DumpRenderTree/TestRunner.h:
110         * DumpRenderTree/mac/DumpRenderTree.mm:
111         (displayWebView):
112         (displayAndTrackRepaintsWebView):
113         * DumpRenderTree/mac/TestRunnerMac.mm:
114         (TestRunner::displayAndTrackRepaints):
115         (TestRunner::display): Deleted.
116         * DumpRenderTree/win/TestRunnerWin.cpp:
117         (TestRunner::displayAndTrackRepaints):
118         (TestRunner::display): Deleted.
119         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
120         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
121         (WTR::TestRunner::displayAndTrackRepaints):
122         (WTR::TestRunner::display): Deleted.
123         * WebKitTestRunner/InjectedBundle/TestRunner.h:
124
125 2017-05-04  Brady Eidson  <beidson@apple.com>
126
127         [ios-simulator] API test WebKit2.WebsiteDataStoreCustomPaths is failing.
128         https://bugs.webkit.org/show_bug.cgi?id=171513
129
130         Unreviewed gardening.
131
132         * TestWebKitAPI/Tests/WebKit2Cocoa/WebsiteDataStoreCustomPaths.mm:
133         (TEST): Skip the failing parts of the test on iOS for now.
134
135 2017-05-03  Jonathan Bedard  <jbedard@apple.com>
136
137         Make ImageDiff stand-alone
138         https://bugs.webkit.org/show_bug.cgi?id=168939
139
140         Reviewed by David Kilzer.
141
142         Create ImageDiff without dependencies on bmalloc and WTF so that it exists as a
143         stand-alone project. Note that this change does not eliminate the ImageDiff inside
144         the DumpRenderTree project.
145
146         * ImageDiff/ImageDiff.xcodeproj: Added.
147         * ImageDiff/ImageDiff.xcodeproj/project.pbxproj: Added.
148         * ImageDiff/Makefile: Use ImageDiff project.
149         * ImageDiff/PlatformMac.cmake: Added.
150         * ImageDiff/PlatformWin.cmake: Added.
151         * ImageDiff/cg: Added.
152         * ImageDiff/cg/Configurations: Added.
153         * ImageDiff/cg/Configurations/Base.xcconfig: Copied from Tools/DumpRenderTree/mac/Configurations/Base.xcconfig.
154         * ImageDiff/cg/Configurations/DebugRelease.xcconfig: Copied from Tools/DumpRenderTree/mac/Configurations/DebugRelease.xcconfig.
155         * ImageDiff/cg/Configurations/ImageDiff.xcconfig: Copied from Tools/DumpRenderTree/mac/Configurations/ImageDiff.xcconfig.
156         * ImageDiff/cg/ImageDiff.cpp: Copied from Tools/DumpRenderTree/cg/ImageDiffCG.cpp.
157         (createImageFromStdin): Stop using RetainPtr.
158         (createDifferenceImage): Ditto.
159         (main): Ditto.
160         * Scripts/build-imagediff: Stop building WTF and bmalloc.
161
162 2017-05-04  Sam Weinig  <sam@webkit.org>
163
164         Remove support for legacy Notifications
165         https://bugs.webkit.org/show_bug.cgi?id=171487
166
167         Reviewed by Jon Lee.
168
169         * DumpRenderTree/win/DRTDesktopNotificationPresenter.cpp:
170         (DRTDesktopNotificationPresenter::checkNotificationPermission):
171         * Scripts/webkitperl/FeatureList.pm:
172         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
173         Remove use and definition of ENABLE_LEGACY_NOTIFICATIONS.
174
175 2017-05-04  Andy Estes  <aestes@apple.com>
176
177         Give +testwebkitapi_configurationWithTestPlugInClassName: a shorter name
178         https://bugs.webkit.org/show_bug.cgi?id=171673
179
180         Reviewed by Dan Bernstein.
181
182         * TestWebKitAPI/Tests/WebKit2Cocoa/AdditionalReadAccessAllowedURLs.mm:
183         (TEST):
184         * TestWebKitAPI/Tests/WebKit2Cocoa/BundleEditingDelegate.mm:
185         (TEST):
186         * TestWebKitAPI/Tests/WebKit2Cocoa/BundleParameters.mm:
187         (TEST):
188         * TestWebKitAPI/Tests/WebKit2Cocoa/BundleRangeHandle.mm:
189         (TEST):
190         * TestWebKitAPI/Tests/WebKit2Cocoa/CancelFontSubresource.mm:
191         (TEST):
192         * TestWebKitAPI/Tests/WebKit2Cocoa/ContentFiltering.mm:
193         (configurationWithContentFilterSettings):
194         (-[LazilyLoadPlatformFrameworksController init]):
195         * TestWebKitAPI/Tests/WebKit2Cocoa/RemoteObjectRegistry.mm:
196         (TEST):
197         * TestWebKitAPI/Tests/WebKit2Cocoa/RenderedImageWithOptions.mm:
198         (runTestWithWidth):
199         * TestWebKitAPI/Tests/WebKit2Cocoa/UserContentWorld.mm:
200         (TEST):
201         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
202         (TestWebKitAPI::TEST):
203         * TestWebKitAPI/WKWebViewConfigurationExtras.h:
204         * TestWebKitAPI/WKWebViewConfigurationExtras.mm:
205         (+[WKWebViewConfiguration _test_configurationWithTestPlugInClassName:]):
206         (+[WKWebViewConfiguration testwebkitapi_configurationWithTestPlugInClassName:]): Renamed to
207         +_test_configurationWithTestPlugInClassName:
208
209 2017-05-04  Eric Carlson  <eric.carlson@apple.com>
210
211         [MediaStream] Allow host application to enable/disable media capture
212         https://bugs.webkit.org/show_bug.cgi?id=171292
213         <rdar://problem/31821492>
214
215         Reviewed by Jer Noble.
216
217         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
218         * TestWebKitAPI/Tests/WebKit2Cocoa/UserMediaDisabled.mm: Added.
219         (-[UserMediaMessageHandler userContentController:didReceiveScriptMessage:]):
220         (-[UserMediaUIDelegate _webView:requestUserMediaAuthorizationForDevices:url:mainFrameURL:decisionHandler:]):
221         (-[UserMediaUIDelegate _webView:checkUserMediaPermissionForURL:mainFrameURL:frameIdentifier:decisionHandler:]):
222         (MediaCaptureDisabledTest::SetUp):
223         (MediaCaptureDisabledTest::loadTestAndWaitForMessage):
224         (TEST_F):
225         * TestWebKitAPI/Tests/WebKit2Cocoa/disableGetUserMedia.html: Added.
226
227 2017-05-04  Caio Lima  <ticaiolima@gmail.com>
228
229         Unreviewed, Adding self to contributors.json
230
231         * Scripts/webkitpy/common/config/contributors.json: Added name.
232
233 2017-05-04  Konstantin Tokarev  <annulen@yandex.ru>
234
235         Fix compilation with ICU 59.1
236         https://bugs.webkit.org/show_bug.cgi?id=171612
237
238         Reviewed by Mark Lam.
239
240         ICU 59.1 has broken source compatibility. Now it defines UChar as
241         char16_t, which does not allow automatic type conversion from unsigned
242         short in C++ code.
243
244         * TestRunnerShared/UIScriptContext/UIScriptContext.cpp:
245         (UIScriptContext::tryToCompleteUIScriptForCurrentParentCallback):
246
247 2017-05-04  Andy Estes  <aestes@apple.com>
248
249         [Cocoa] Add an optional width parameter to -[WKWebProcessPlugInNodeHandle renderedImageWithOptions:]
250         https://bugs.webkit.org/show_bug.cgi?id=171646
251         <rdar://problem/30306321>
252
253         Reviewed by Tim Horton.
254
255         * TestWebKitAPI/Tests/WebKit2Cocoa/RenderedImageWithOptions.mm:
256         (runTestWithWidth):
257         (TEST):
258         (-[RenderedImageWithOptionsObject didRenderImageWithSize:]): Deleted.
259         * TestWebKitAPI/Tests/WebKit2Cocoa/RenderedImageWithOptionsPlugIn.mm:
260         (-[RenderedImageWithOptionsPlugIn webProcessPlugIn:didCreateBrowserContextController:]):
261         (-[RenderedImageWithOptionsPlugIn webProcessPlugInBrowserContextController:didFinishLoadForFrame:]):
262         (-[RenderedImageWithOptionsPlugIn renderImageWithWidth:completionHandler:]):
263         * TestWebKitAPI/Tests/WebKit2Cocoa/RenderedImageWithOptionsProtocol.h:
264
265 2017-05-04  Adrian Perez de Castro  <aperez@igalia.com>
266
267         [GTK] Fontconfig 2.11.2 in JHBuild does not build with glibc 2.25+ or gperf 3.1+
268         https://bugs.webkit.org/show_bug.cgi?id=171649
269
270         Reviewed by Carlos Garcia Campos.
271
272         Add two patches picked from the upstream repository to fix building of
273         the Fontconfig module in JHBuild. Additionally, this needed a patch to
274         add "autogen.sh" as it is not included in release tarballs. Also:
275         building the module with srcdir!=builddir prevents "fcobjshash.gperf"
276         being regenerated (which is needed) so this is disabled for the
277         Fontconfig module.
278
279         * gtk/jhbuild.modules:
280         * gtk/patches/fontconfig-2.11.1-add-autogen.patch: Added.
281         * gtk/patches/fontconfig-Avoid-conflicts-with-integer-width-macros-from-TS-18661-1-2014.patch: Added.
282         * gtk/patches/fontconfig-Fix-the-build-issue-with-gperf-3.1.patch: Added.
283
284 2017-05-04  Commit Queue  <commit-queue@webkit.org>
285
286         Unreviewed, rolling out r216172.
287         https://bugs.webkit.org/show_bug.cgi?id=171654
288
289         FTBFS for iOS due to missing WebPageProxy::stopMediaCapture()
290         implementation. (Requested by ddkilzer on #webkit).
291
292         Reverted changeset:
293
294         "[MediaStream] Allow host application to enable/disable media
295         capture"
296         https://bugs.webkit.org/show_bug.cgi?id=171292
297         http://trac.webkit.org/changeset/216172
298
299 2017-05-04  Carlos Garcia Campos  <cgarcia@igalia.com>
300
301         [GTK] Bump GStreamer version to 1.10.4 in jhbuild
302         https://bugs.webkit.org/show_bug.cgi?id=171595
303
304         Reviewed by Xabier Rodriguez-Calvar.
305
306         * gtk/jhbuild.modules:
307         * gtk/patches/gst-plugins-bad-0001-dtls-port-to-OpenSSL-1.1.0.patch: Removed.
308         * gtk/patches/gst-plugins-bad-0002-dtlscertificate-Fix-error-checking-in-RSA_generate_k.patch: Removed.
309         * gtk/patches/gst-plugins-good-0001-rtpbin-pipeline-gets-an-EOS-when-any-rtpsources-byes.patch: Removed.
310         * gtk/patches/gst-plugins-good-0002-rtpbin-avoid-generating-errors-when-rtcp-messages-ar.patch: Removed.
311         * gtk/patches/gst-plugins-good-0004-qtdemux-add-context-for-a-preferred-protection.patch:
312         * gtk/patches/gst-plugins-good-Revert-qtdemux-expose-streams-with-first-moof-for-fr.patch: Removed.
313         * gtk/patches/gst-plugins-good-use-the-tfdt-decode-time.patch: Removed.
314
315 2017-05-03  Saam Barati  <sbarati@apple.com>
316
317         How we build polymorphic cases is wrong when making a call from Wasm
318         https://bugs.webkit.org/show_bug.cgi?id=171527
319
320         Reviewed by JF Bastien.
321
322         * Scripts/run-jsc-stress-tests:
323
324 2017-05-03  Eric Carlson  <eric.carlson@apple.com>
325
326         [MediaStream] Allow host application to enable/disable media capture
327         https://bugs.webkit.org/show_bug.cgi?id=171292
328         <rdar://problem/31821492>
329
330         Reviewed by Jer Noble.
331
332         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
333         * TestWebKitAPI/Tests/WebKit2Cocoa/UserMediaDisabled.mm: Added.
334         (-[UserMediaMessageHandler userContentController:didReceiveScriptMessage:]):
335         (-[UserMediaUIDelegate _webView:requestUserMediaAuthorizationForDevices:url:mainFrameURL:decisionHandler:]):
336         (-[UserMediaUIDelegate _webView:checkUserMediaPermissionForURL:mainFrameURL:frameIdentifier:decisionHandler:]):
337         (MediaCaptureDisabledTest::SetUp):
338         (MediaCaptureDisabledTest::loadTestAndWaitForMessage):
339         (TEST_F):
340         * TestWebKitAPI/Tests/WebKit2Cocoa/disableGetUserMedia.html: Added.
341
342 2017-05-03  John Wilander  <wilander@apple.com>
343
344         Resource Load Statistics: Remove all statistics for modifiedSince website data removals
345         https://bugs.webkit.org/show_bug.cgi?id=171584
346         <rdar://problem/24702576>
347
348         Reviewed by Brent Fulgham.
349
350         New function to call the clear function that takes a modifiedSince parameter.
351
352         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
353         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
354         (WTR::TestRunner::statisticsClearInMemoryAndPersistentStoreModifiedSinceHours):
355         * WebKitTestRunner/InjectedBundle/TestRunner.h:
356         * WebKitTestRunner/TestController.cpp:
357         (WTR::TestController::statisticsClearInMemoryAndPersistentStoreModifiedSinceHours):
358         * WebKitTestRunner/TestController.h:
359         * WebKitTestRunner/TestInvocation.cpp:
360         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
361
362 2017-05-03  Commit Queue  <commit-queue@webkit.org>
363
364         Unreviewed, rolling out r216160 and r216161.
365         https://bugs.webkit.org/show_bug.cgi?id=171640
366
367         These changes broke the iOS build. (Requested by mlewis13 on
368         #webkit).
369
370         Reverted changesets:
371
372         "[MediaStream] Allow host application to enable/disable media
373         capture"
374         https://bugs.webkit.org/show_bug.cgi?id=171292
375         http://trac.webkit.org/changeset/216160
376
377         "[MediaStream] Allow host application to enable/disable media
378         capture"
379         https://bugs.webkit.org/show_bug.cgi?id=171292
380         http://trac.webkit.org/changeset/216161
381
382 2017-05-03  Eric Carlson  <eric.carlson@apple.com>
383
384         [MediaStream] Allow host application to enable/disable media capture
385         https://bugs.webkit.org/show_bug.cgi?id=171292
386         <rdar://problem/31821492>
387
388         Reviewed by Jer Noble.
389
390         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
391         * TestWebKitAPI/Tests/WebKit2Cocoa/UserMediaDisabled.mm: Added.
392         (-[UserMediaMessageHandler userContentController:didReceiveScriptMessage:]):
393         (-[UserMediaUIDelegate _webView:requestUserMediaAuthorizationForDevices:url:mainFrameURL:decisionHandler:]):
394         (-[UserMediaUIDelegate _webView:checkUserMediaPermissionForURL:mainFrameURL:frameIdentifier:decisionHandler:]):
395         (MediaCaptureDisabledTest::SetUp):
396         (MediaCaptureDisabledTest::loadTestAndWaitForMessage):
397         (TEST_F):
398         * TestWebKitAPI/Tests/WebKit2Cocoa/disableGetUserMedia.html: Added.
399
400 2017-04-26  Jiewen Tan  <jiewen_tan@apple.com>
401
402         [WebCrypto] Add an api test for testing wrapping/unwrapping serialized crypto keys
403         https://bugs.webkit.org/show_bug.cgi?id=171350
404         <rdar://problem/28600836>
405
406         Patched by Brady Eidson.
407
408         Reviewed by Brent Fulgham.
409
410         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
411         * TestWebKitAPI/Tests/WebKit2/NavigationClientDefaultCrypto.cpp: Added.
412         (TestWebKitAPI::runJavaScriptAlert):
413         (TestWebKitAPI::decidePolicyForNavigationAction):
414         (TestWebKitAPI::decidePolicyForNavigationResponse):
415         (TestWebKitAPI::TEST):
416         * TestWebKitAPI/Tests/WebKit2/navigation-client-default-crypto.html: Added.
417
418 2017-05-03  Simon Fraser  <simon.fraser@apple.com>
419
420         Have WKWebView call _updateVisibleContentRects for the current transaction if possible, rather than always delaying
421         https://bugs.webkit.org/show_bug.cgi?id=171619
422         https://bugs.webkit.org/show_bug.cgi?id=170195
423
424         Reviewed by Tim Horton.
425
426         Re-enable WebKit2.ResizeWithHiddenContentDoesNotHang.
427
428         * TestWebKitAPI/Tests/WebKit2Cocoa/AnimatedResize.mm:
429         (TEST):
430
431 2017-05-03  Michael Catanzaro  <mcatanzaro@igalia.com>
432
433         YouTube user agent quirk breaks new YouTube
434         https://bugs.webkit.org/show_bug.cgi?id=171603
435
436         Reviewed by Carlos Garcia Campos.
437
438         Remove the YouTube quirk test.
439
440         * TestWebKitAPI/Tests/WebCore/UserAgentQuirks.cpp:
441         (TestWebKitAPI::TEST):
442
443 2017-05-03  Said Abou-Hallawa  <sabouhallawa@apple.com>
444
445         Async image decoding should be disabled for snapshots, printing and preview
446         https://bugs.webkit.org/show_bug.cgi?id=171467
447
448         Reviewed by Simon Fraser.
449
450         Add a API test for snapshotting with large images. Ensure the images are
451         drawn correctly which implies they should have been synchronously decoded.
452
453         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
454         * TestWebKitAPI/Tests/WebKit2/large-red-square-image.html: Added.
455         * TestWebKitAPI/Tests/WebKit2Cocoa/WKWebViewSnapshot.mm:
456         (TEST):
457
458 2017-05-03  Chris Dumez  <cdumez@apple.com>
459
460         [WK2] Extend processDidCrash delegate to let the client know the reason for the crash
461         https://bugs.webkit.org/show_bug.cgi?id=171565
462         <rdar://problem/31204417>
463
464         Reviewed by Sam Weinig.
465
466         Add API test coverage.
467
468         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
469         * TestWebKitAPI/Tests/WebKit2/ProcessDidCrashWithReason.cpp: Added.
470         (TestWebKitAPI::didFinishNavigation):
471         (TestWebKitAPI::didCrashWithReason):
472         (TestWebKitAPI::TEST):
473
474 2017-05-02  David Kilzer  <ddkilzer@apple.com>
475
476         check-webkit-style should also keep js-test-post[-async].js in sync
477         <https://webkit.org/b/171568>
478
479         Reviewed by Joseph Pecoraro.
480
481         * Scripts/webkitpy/style/checker.py:
482         (_NEVER_SKIPPED_JS_FILES): Add new list that just contains
483         JavaScript files not to be skipped.
484         (_NEVER_SKIPPED_FILES): Update to use _NEVER_SKIPPED_JS_FILES.
485         (CheckerDispatcher._create_checker): Update to use
486         _NEVER_SKIPPED_JS_FILES.
487
488         * Scripts/webkitpy/style/checkers/jstest.py:
489         (ALL_JS_TEST_FUNCTION_FILES): Rename from ALL_JS_TEST_FILES.
490         This is the list of files containing functions that need to be
491         kept in sync.
492         (KEEP_JS_TEST_FILES_IN_SYNC): Change to list-of-lists format so
493         we can keep more sets of files in sync between
494         LayoutTests/resources and LayoutTests/http/tests/resources.
495         (JSTestChecker.check): Update to use KEEP_JS_TEST_FILES_IN_SYNC
496         as list of lists.  Update for ALL_JS_TEST_FUNCTION_FILES rename.
497         (JSTestChecker.check_js_test_files): Add 'file_group' argument
498         for list of files to check instead of using
499         KEEP_JS_TEST_FILES_IN_SYNC.
500         (JSTestChecker.check_js_test_functions): Update for
501         ALL_JS_TEST_FUNCTION_FILES rename.
502
503         * Scripts/webkitpy/style/checkers/jstest_unittest.py:
504         (JSTestCheckerTestCase):
505         (JSTestCheckerTestCase.test_map_functions_to_dict):
506         - Add test case for map_functions_to_dict() in jstest.py.
507
508 2017-05-02  Aakash Jain  <aakash_jain@apple.com>
509
510         ews should indicate in logs when it fails to fetch the attachment
511         https://bugs.webkit.org/show_bug.cgi?id=171583
512
513         Reviewed by Alexey Proskuryakov.
514
515         * Scripts/webkitpy/common/net/bugzilla/bugzilla.py:
516         (Bugzilla.fetch_attachment): Added log statement.
517
518 2017-05-02  David Kilzer  <ddkilzer@apple.com>
519
520         Rolling out jstest_unittest.py so it can be reviewed
521
522         Follow-up fix for:
523         check-webkit-style should keep JavaScript test functions in sync
524         <https://webkit.org/b/171424>
525
526         * Scripts/webkitpy/style/checkers/jstest_unittest.py: Remove.
527
528 2017-05-02  David Kilzer  <ddkilzer@apple.com>
529
530         check-webkit-style should keep JavaScript test functions in sync
531         <https://webkit.org/b/171424>
532
533         Reviewed by Joseph Pecoraro.
534
535         Add a new JSTestChecker for check-webkit-style that keeps these
536         two files in sync:
537
538             LayoutTests/http/tests/resources/js-test-pre.js
539             LayoutTests/resources/js-test-pre.js
540
541         And keeps implementations of shouldBe(), shouldNotBe(),
542         shouldNotThrow(), and shouldThrow() in sync across multiple
543         files (with the ability to add more functions later):
544
545             JSTests/stress/resources/standalone-pre.js
546             LayoutTests/http/tests/resources/js-test-pre.js
547             LayoutTests/resources/js-test-pre.js
548             LayoutTests/resources/js-test.js
549             LayoutTests/resources/standalone-pre.js
550
551         * Scripts/webkitpy/style/checker.py: Remove unused import.  Add
552         import for JSTestChecker.
553         (_NEVER_SKIPPED_FILES): Add array of file names that are never
554         skipped regardless of other rules.
555         (_all_categories): Add JSTestChecker categories.
556         (CheckerDispatcher.should_skip_without_warning): Use
557         _NEVER_SKIPPED_FILES.
558         (CheckerDispatcher._create_checker): Return JSTestChecker for
559         the files to check.
560
561         * Scripts/webkitpy/style/checkers/jstest.py: Add.
562         (map_functions_to_dict): Parse JavaScript source by splitting on
563         /^function\s+/ regex.  This is good enough for the sanity checks
564         to keep function implementations in sync.
565         (strip_blank_lines_and_comments): Strips blank lines and lines
566         with comments from the end of a chunk of text representing a
567         function.
568         (JSTestChecker): New checker.
569         (JSTestChecker.__init__):
570         (JSTestChecker.check):
571         (JSTestChecker.check_js_test_files): Keeps whole files in sync.
572         (JSTestChecker.check_js_test_functions): Keeps individual
573         functions in sync.
574
575         * Scripts/webkitpy/style/checkers/jstest_unittest.py: Add test
576         case.
577         (JSTestTestCase):
578         (JSTestTestCase.test_map_functions_to_dict):
579
580 2017-05-02  Joanmarie Diggs  <jdiggs@igalia.com>
581
582         AX: Update implementation of aria-orientation
583         https://bugs.webkit.org/show_bug.cgi?id=171166
584
585         Reviewed by Chris Fleizach.
586
587         Return "AXUnknownOrientation" when ATK_STATE_VERTICAL and ATK_STATE_HORIZONTAL
588         are both absent from the state set. Before we were returning an empty string
589         which was not consistent with what the Mac port does, thus making shared tests
590         harder.
591
592         * WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
593         (WTR::AccessibilityUIElement::orientation):
594
595 2017-05-01  David Kilzer  <ddkilzer@apple.com>
596
597         Stop using sprintf() in JavaScriptCore debugger
598         <https://webkit.org/b/171512>
599
600         Reviewed by Keith Miller.
601
602         * Scripts/webkitpy/style/checker.py:
603         (_PATH_RULES_SPECIFIER): Ignore some formatting checkers since
604         Source/JavaScriptCore/disassembler/udis86/ is generated code.
605
606 2017-05-01  Timothy Horton  <timothy_horton@apple.com>
607
608         Expose viewport-fit instead of clip-to-safe-area
609         https://bugs.webkit.org/show_bug.cgi?id=171503
610         <rdar://problem/31918249>
611
612         Reviewed by Simon Fraser.
613
614         * DumpRenderTree/ios/UIScriptControllerIOS.mm:
615         (WTR::UIScriptController::setSafeAreaInsets):
616         (WTR::UIScriptController::setObscuredInsets): Deleted.
617         * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
618         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
619         (WTR::UIScriptController::setSafeAreaInsets):
620         (WTR::UIScriptController::setObscuredInsets): Deleted.
621         * TestRunnerShared/UIScriptContext/UIScriptController.h:
622         * WebKitTestRunner/cocoa/TestRunnerWKWebView.h:
623         * WebKitTestRunner/cocoa/TestRunnerWKWebView.mm:
624         (-[TestRunnerWKWebView setOverrideSafeAreaInsets:]):
625         (-[TestRunnerWKWebView _safeAreaInsetsForFrame:inSuperview:]):
626         * WebKitTestRunner/ios/TestControllerIOS.mm:
627         (WTR::TestController::platformResetStateToConsistentValues):
628         * WebKitTestRunner/ios/UIKitSPI.h:
629         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
630         (WTR::UIScriptController::setSafeAreaInsets):
631         (WTR::UIScriptController::setObscuredInsets): Deleted.
632         Expose a safe area inset setter instead of obscured insets.
633
634 2017-05-01  Wenson Hsieh  <wenson_hsieh@apple.com>
635
636         Unreviewed, fix the build on a new internal SDK
637
638         Replace usages of NSItemProviderRepresentationVisibilityAll with
639         UIItemProviderRepresentationOptionsVisibilityAll.
640
641         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
642         (-[UIItemProvider registerDataRepresentationForTypeIdentifier:withData:]):
643         (TestWebKitAPI::TEST):
644
645 2017-05-01  David Kilzer  <ddkilzer@apple.com>
646
647         [Cocoa] Replace uses of [get…Class() alloc] in TestWebKitAPI
648         <https://webkit.org/b/171493>
649
650         Reviewed by Dan Bernstein.
651
652         * TestWebKitAPI/Tests/WebKit/ios/AudioSessionCategoryIOS.mm:
653         Remove UIKit soft-link since TestWebKitAPI links to
654         UIKit.framework.
655         (TestWebKitAPI::WebKit1_AudioSessionCategoryIOS_Test): Use
656         UIWindow and UIWebView classes directly.
657         * TestWebKitAPI/Tests/WebKit2Cocoa/RequiresUserActionForPlayback.mm:
658         Remove UIKit soft-link since TestWebKitAPI links to
659         UIKit.framework.
660         (RequiresUserActionForPlaybackTest::createWebView): Use UIWindow
661         class directly.
662
663 2017-05-01  Brady Eidson  <beidson@apple.com>
664
665         Update names in WKURLSchemeHandler/WKURLSchemeHandlerTask APIs.
666         <rdar://problem/31824838> and https://bugs.webkit.org/show_bug.cgi?id=171508
667
668         Reviewed by Andy Estes.
669
670         * TestWebKitAPI/Tests/WebKit2Cocoa/WKURLSchemeHandler-1.mm:
671         (-[SchemeHandler webView:startURLSchemeTask:]):
672         (-[SchemeHandler webView:stopURLSchemeTask:]):
673         (-[SchemeHandler webView:startTask:]): Deleted.
674         (-[SchemeHandler webView:stopTask:]): Deleted.
675
676 2017-05-01  Jason Marcell  <jmarcell@apple.com>
677
678         Add a new function for getting the Git hash for a pure git directory.
679         https://bugs.webkit.org/show_bug.cgi?id=171450
680
681         Reviewed by David Kilzer.
682
683         * Scripts/VCSUtils.pm:
684         (gitHashForDirectory):
685
686 2017-05-01  Joanmarie Diggs  <jdiggs@igalia.com>
687
688         [ATK] Expose values of aria-rowcount, aria-colcount, aria-rowindex, aria-colindex, aria-rowspan, and aria-colspan as object attributes
689         https://bugs.webkit.org/show_bug.cgi?id=171496
690
691         Reviewed by Chris Fleizach.
692
693         Add new attribute names so that the values of the object attributes can be tested.
694
695         * WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
696         (WTR::AccessibilityUIElement::numberAttributeValue):
697
698 2017-05-01  Beth Dakin  <bdakin@apple.com>
699
700         On-screen panel for candidate bar is in the wrong place when the caret is at the 
701         start of a paragraph
702         https://bugs.webkit.org/show_bug.cgi?id=171453
703         -and corresponding-
704         rdar://problem/29779764
705
706         Reviewed by Tim Horton.
707
708         This test hard-codes the y-coordinate for the expected candidateRect. 
709         * TestWebKitAPI/Tests/WebKit2Cocoa/WKWebViewCandidateTests.mm:
710         (TEST):
711
712 2017-05-01  David Kilzer  <ddkilzer@apple.com>
713
714         check-webkit-style: Enable sprintf(), strcat(), strcpy() and printf() format checks
715         <https://webkit.org/b/171494>
716
717         Reviewed by Brent Fulgham.
718
719         * Scripts/webkitpy/style/checkers/cpp.py:
720         (check_language): Change categories for certain checkers from
721         'runtime/printf' to 'security/printf' so they are no longer
722         filtered.
723         (CppChecker.categories): Add 'security/printf'.
724         * Scripts/webkitpy/style/checkers/cpp_unittest.py:
725         (CppStyleTest.test_insecure_string_operations): Add new test for
726         sprintf(), strcat() and strcpy().
727         (CppStyleTest.test_format_strings): Update test results for new
728         'security/printf' category use.
729
730 2017-05-01  Joanmarie Diggs  <jdiggs@igalia.com>
731
732         AX: [GTK] Add support to query for aria-current
733         https://bugs.webkit.org/show_bug.cgi?id=149016
734
735         Reviewed by Chris Fleizach.
736
737         Implement support for "AXARIACurrent" string attribute value.
738
739         * WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
740
741 2017-05-01  David Kilzer  <ddkilzer@apple.com>
742
743         REGRESSION (r216000): test-webkitpy fails after adding new soft-linked class checker
744
745         Unreviewed.
746
747         Follow-up fix for:
748         [Cocoa] Have check-webkit-style advise against use of [get…Class() alloc]
749         https://bugs.webkit.org/show_bug.cgi?id=171486
750
751         * Scripts/webkitpy/style/checkers/cpp.py:
752         (check_soft_link_class_alloc): Use (\w+) instead of ([^\s]+) to
753         match and capture the function name.  The latter also mistakenly
754         matches C-preprocessor directives.
755         (CppChecker.categories): Add 'runtime/soft-linked-alloc', which
756         is a requirement for the CppChecker class.
757
758 2017-05-01  Carlos Garcia Campos  <cgarcia@igalia.com>
759
760         [GTK] Add automation session API
761         https://bugs.webkit.org/show_bug.cgi?id=171428
762
763         Reviewed by Carlos Alberto Lopez Perez.
764
765         Add an automation mode to MiniBrowser using the new API and add a unit test too.
766
767         * MiniBrowser/gtk/BrowserWindow.c:
768         (webViewTitleChanged):
769         (webViewDecidePolicy):
770         (newTabCallback):
771         (openPrivateWindow):
772         (browserWindowFinalize):
773         (browser_window_init):
774         (browser_window_get_or_create_web_view_for_automation):
775         * MiniBrowser/gtk/BrowserWindow.h:
776         * MiniBrowser/gtk/main.c:
777         (createBrowserTab):
778         (createWebViewForAutomationCallback):
779         (automationStartedCallback):
780         (main):
781         * TestWebKitAPI/Tests/WebKit2Gtk/CMakeLists.txt:
782         * TestWebKitAPI/Tests/WebKit2Gtk/TestAutomationSession.cpp: Added.
783         (testAutomationSessionRequestSession):
784         (beforeAll):
785         (afterAll):
786
787 2017-04-30  Dan Bernstein  <mitz@apple.com>
788
789         [Cocoa] Have check-webkit-style advise against use of [get…Class() alloc]
790         https://bugs.webkit.org/show_bug.cgi?id=171486
791
792         Reviewed by Sam Weinig.
793
794         * Scripts/webkitpy/style/checkers/cpp.py:
795         (check_soft_link_class_alloc): Added. Looks for [get…Class() alloc] and suggests
796           alloc…Instance() instead.
797         (check_style): Invoke new check.
798
799 2017-04-30  Brady Eidson  <beidson@apple.com>
800
801         More fixing after r215991
802         https://bugs.webkit.org/show_bug.cgi?id=171483
803
804         * TestWebKitAPI/Tests/WebKit2Cocoa/WebsiteDataStoreCustomPaths.mm:
805         (TEST):
806
807 2017-04-30  Brady Eidson  <beidson@apple.com>
808
809         Updates to _WKWebsiteDataStoreConfiguration cookie storage location SPI.
810         <rdar://problem/31906397> and https://bugs.webkit.org/show_bug.cgi?id=171483
811
812         Reviewed by Geoff Garen (and kind of Andy Estes).
813
814         * TestWebKitAPI/Tests/WebKit2Cocoa/WebsiteDataStoreCustomPaths.mm:
815         (TEST):
816
817 2017-04-30  Joanmarie Diggs  <jdiggs@igalia.com>
818
819         [ATK] Implement support for aria-autocomplete
820         https://bugs.webkit.org/show_bug.cgi?id=171167
821
822         Reviewed by Chris Fleizach.
823
824         Add "AXSupportsAutoCompletion" attribute so the presence of
825         ATK_STATE_SUPPORTS_AUTOCOMPLETION can be tested.
826
827         * WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
828         (WTR::AccessibilityUIElement::boolAttributeValue):
829
830 2017-04-30  Joanmarie Diggs  <jdiggs@igalia.com>
831
832         [ATK] ARIA treegrid role should be exposed as ATK_ROLE_TREE_TABLE; not ATK_ROLE_TABLE
833         https://bugs.webkit.org/show_bug.cgi?id=171170
834
835         Reviewed by Chris Fleizach.
836
837         Add "AXInterfaceTable" attribute to test which elements implement AtkTable.
838
839         * WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
840         (WTR::AccessibilityUIElement::boolAttributeValue):
841
842 2017-04-30  Joanmarie Diggs  <jdiggs@igalia.com>
843
844         [ATK] Emit object:state-changed:busy event when aria-busy value changes
845         https://bugs.webkit.org/show_bug.cgi?id=171181
846
847         Reviewed by Chris Fleizach.
848
849         Add handler for AXElementBusyChanged notifications.
850
851         * WebKitTestRunner/InjectedBundle/atk/AccessibilityNotificationHandlerAtk.cpp:
852
853 2017-04-29  Aakash Jain  <aakash_jain@apple.com>
854
855         Use PEP8 style guide for raising exceptions in webkitpy.
856         https://bugs.webkit.org/show_bug.cgi?id=171439
857
858         Reviewed by Daniel Bates.
859
860         As per https://www.python.org/dev/peps/pep-0008/
861         "When raising an exception in Python 2, use raise ValueError('message') 
862         instead of the older form raise ValueError, 'message'"
863
864         * Scripts/webkitpy/common/net/irc/ircbot.py: Using new style for raising exceptions.
865         * Scripts/webkitpy/common/thread/messagepump.py: Same.
866         * Scripts/webkitpy/tool/bot/queueengine.py: Same.
867         * Scripts/webkitpy/tool/commands/queues.py: Same.
868         * Scripts/webkitpy/tool/commands/stepsequence.py: Same.
869         * Scripts/webkitpy/tool/multicommandtool.py: Same.
870         * Scripts/webkitpy/tool/steps/abstractstep.py: Same.
871
872 2017-04-28  Simon Fraser  <simon.fraser@apple.com>
873
874         Add system trace points for Document::updateTouchEventRegions()
875         https://bugs.webkit.org/show_bug.cgi?id=171470
876         rdar://problem/31901239
877
878         Reviewed by Tim Horton.
879
880         Add trace markers for updateTouchEventRegions.
881
882         * Tracing/SystemTracePoints.plist:
883
884 2017-04-28  Jonathan Bedard  <jbedard@apple.com>
885
886         webkitpy: Add apple_additions to webkitpy to insert Internal tools
887         https://bugs.webkit.org/show_bug.cgi?id=170461
888         <rdar://problem/31433077>
889
890         Reviewed by Daniel Bates.
891
892         Allow a package to be pulled in by run-webkit-tests which provides an interface to
893         run layout tests on an iOS device.  If this package is not available, throw an
894         exception when attempting to run layout tests on an iOS device.
895
896         * Scripts/webkitpy/port/config.py:
897         (apple_additions): Import apple_additions package.
898         * Scripts/webkitpy/port/device.py:
899         (Device.install_dylibs): Pass a directory with all the frameworks and dylibs to be
900         installed on a device.
901         (Device.prepare_for_testing): Pass a list of ports to forward from the device to the
902         host, the bundle id of the app to be used for testing and a path to the layout test
903         directory to be mounted on the device.
904         (Device.finished_testing):
905         * Scripts/webkitpy/port/factory.py:
906         (platform_options): Add apple_additions platform options if apple_additions exists.
907         * Scripts/webkitpy/port/ios.py:
908         (IOSPort.setup_test_run): Install dylibs and frameworks on the device, pass ports
909         to forward, the bundle ID of the testing app and the layout tests directory to
910         each device.
911         * Scripts/webkitpy/port/ios_device.py:
912         (IOSDevicePort):
913         (IOSDevicePort.default_child_processes): Query apple_additions for the number of child
914         processes to be run.
915         (IOSDevicePort.using_multiple_devices): Always assume multiple devices are used. When
916         a single device is used, it is still accessed through an array.
917         (IOSDevicePort._device_for_worker_number_map): Query apple_additions for the device
918         for worker number map.
919         (IOSDevicePort._driver_class): Query apple_additions for the test driver.
920         (IOSDevicePort.determine_full_port_name): Use class variable over hard-coded string.
921         (IOSDevicePort.check_for_leaks): No implementation for iOSDevicePort.
922         (IOSDevicePort.look_for_new_crash_logs): Ditto.
923         (IOSDevicePort.look_for_new_samples): Ditto.
924         (IOSDevicePort.sample_process): Ditto.
925         (IOSDevicePort._build_driver_flags): Use class variable over hard-coded string.
926         (IOSDevicePort._create_devices): Check that devices are available for testing and check
927         that we have enough devices for each child process.
928         (IOSDevicePort.clean_up_test_run): Have apple_additions preform any needed clean up.
929         * Scripts/webkitpy/port/ios_device_unittest.py:
930         (IOSDeviceTest.test_operating_system):
931         (IOSDeviceTest.test_spindump): Override method from DarwinTest.
932         (IOSDeviceTest.test_sample_process): Ditto.
933         (IOSDeviceTest.test_sample_process_exception): Ditto.
934
935 2017-04-28  Wenson Hsieh  <wenson_hsieh@apple.com>
936
937         Fix and re-enable data interaction unit tests
938         https://bugs.webkit.org/show_bug.cgi?id=171446
939         <rdar://problem/31820646>
940
941         Reviewed by Tim Horton.
942
943         Enables all DataInteractionTests, and adjusts file upload tests to no longer write to a temporary file before
944         registering with the UIItemProvider, and instead just register data directly via
945         -registerDataRepresentationForTypeIdentifier:visibility:loadHandler:.
946
947         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
948         (TestWebKitAPI::TEST):
949         (temporaryURLForDataInteractionFileLoad): Deleted.
950         (cleanUpDataInteractionTemporaryPath): Deleted.
951         (-[UIItemProvider registerFileRepresentationForTypeIdentifier:withData:filename:]): Deleted.
952         * TestWebKitAPI/ios/DataInteractionSimulator.h:
953         * TestWebKitAPI/ios/DataInteractionSimulator.mm:
954
955 2017-04-28  Brady Eidson  <beidson@apple.com>
956
957         Teach the DatabaseProcess to be fully SessionID aware
958         https://bugs.webkit.org/show_bug.cgi?id=171451
959
960         Reviewed by Geoffrey Garen.
961
962         * TestWebKitAPI/Tests/WebKit2Cocoa/WebsiteDataStoreCustomPaths.mm:
963
964 2017-04-28  Jonathan Bedard  <jbedard@apple.com>
965
966         Unreviewed follow-up to r214705.
967
968         shut.copytree will fail if given a file as an argument instead of a directory.
969
970         * Scripts/webkitpy/common/system/filesystem.py:
971         (FileSystem.copy_to_base_host): Use copytree when source is a directory and copyfile
972         when source is a file.
973         (FileSystem.copy_from_base_host): Ditto.
974
975 2017-04-28  Chris Dumez  <cdumez@apple.com>
976
977         Update DOMTokenList.replace() to match the latest DOM specification
978         https://bugs.webkit.org/show_bug.cgi?id=171388
979
980         Reviewed by Alex Christensen.
981
982         Add API test coverage for new Vector API.
983
984         * TestWebKitAPI/Tests/WTF/Vector.cpp:
985         (TestWebKitAPI::TEST):
986
987 2017-04-28  Jonathan Bedard  <jbedard@apple.com>
988
989         WebKitTestRunner/DumpRenderTree prevent device from sleeping
990         https://bugs.webkit.org/show_bug.cgi?id=170731
991
992         Reviewed by Alex Christensen.
993
994         While running layout tests on a device, the device should not be put asleep.
995
996         * DumpRenderTree/mac/DumpRenderTree.mm:
997         (dumpRenderTree): Disable idle timer.
998         * WebKitTestRunner/ios/TestControllerIOS.mm:
999         (WTR::TestController::platformInitialize): Ditto.
1000
1001 2017-04-28  Brady Eidson  <beidson@apple.com>
1002
1003         Start of support for multiple WebsiteDataStore/SessionIDs per process
1004         https://bugs.webkit.org/show_bug.cgi?id=171422
1005
1006         Reviewed by Geoffrey Garen.
1007
1008         * TestWebKitAPI/Tests/WebKit2Cocoa/WebsiteDataStoreCustomPaths.mm:
1009         (TEST):
1010
1011 2017-04-28  Youenn Fablet  <youenn@apple.com>
1012
1013         Adding a runtime flag specific to MediaDevices
1014         https://bugs.webkit.org/show_bug.cgi?id=171433
1015
1016         Reviewed by Geoffrey Garen.
1017
1018         Updating WTR and DRT as peer connection and media stream runtime flags are enabled by default.
1019         Setting media devices runtime flag to true for WTR and DRT.
1020
1021         * DumpRenderTree/mac/DumpRenderTree.mm:
1022         (enableExperimentalFeatures):
1023         (resetWebPreferencesToConsistentValues):
1024         * TestWebKitAPI/Tests/WebKit2/EnumerateMediaDevices.cpp:
1025         (TestWebKitAPI::TEST):
1026         * TestWebKitAPI/Tests/WebKit2/UserMedia.cpp:
1027         (TestWebKitAPI::TEST):
1028         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
1029         (WTR::InjectedBundle::beginTesting):
1030         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
1031         (WTR::TestRunner::setMediaDevicesEnabled):
1032         (WTR::TestRunner::setMediaStreamEnabled): Deleted.
1033         (WTR::TestRunner::setPeerConnectionEnabled): Deleted.
1034         * WebKitTestRunner/InjectedBundle/TestRunner.h:
1035         * WebKitTestRunner/TestController.cpp:
1036         (WTR::TestController::resetPreferencesToConsistentValues):
1037
1038 2017-04-28  Dean Jackson  <dino@apple.com>
1039
1040         [WebGPU] Label MTLCommandQueues with a prefix for internal telemetry
1041         https://bugs.webkit.org/show_bug.cgi?id=171441
1042         <rdar://problem/31826915>
1043
1044         Reviewed by Tim Horton.
1045
1046         Add an API test for GPUCommandQueue, exercising creation
1047         and setting the label.
1048
1049         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1050         * TestWebKitAPI/Tests/WebCore/mac/GPUCommandQueue.mm: Added.
1051         (TestWebKitAPI::TEST_F):
1052
1053 2017-04-28  Joanmarie Diggs  <jdiggs@igalia.com>
1054
1055         [ATK] aria-modal="true" should be exposed via ATK_STATE_MODAL
1056         https://bugs.webkit.org/show_bug.cgi?id=171188
1057
1058         Reviewed by Chris Fleizach.
1059
1060         Add "AXModal" attribute string so that we can test the state's exposure.
1061
1062         * WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
1063         (WTR::AccessibilityUIElement::boolAttributeValue):
1064
1065 2017-04-28  Joanmarie Diggs  <jdiggs@igalia.com>
1066
1067         [ATK] GridCellRole should implement AtkTableCell (regression?)
1068         https://bugs.webkit.org/show_bug.cgi?id=171179
1069
1070         Reviewed by Chris Fleizach.
1071
1072         Add new "AXInterfaceTableCell" attribute so that we can test whether or
1073         not there is an implementation of AtkTableCell (i.e. without risking false
1074         negatives from bugs in the interface's implementation).
1075
1076         * WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
1077         (WTR::AccessibilityUIElement::boolAttributeValue):
1078
1079 2017-04-27  Carlos Garcia Campos  <cgarcia@igalia.com>
1080
1081         Move UUID from WebCore/platform to WTF
1082         https://bugs.webkit.org/show_bug.cgi?id=171372
1083
1084         Reviewed by Michael Catanzaro.
1085
1086         * WebKitTestRunner/TestController.cpp:
1087
1088 2017-04-27  Alex Christensen  <achristensen@webkit.org>
1089
1090         Add stub SPI for setting cookie storage path on _WKWebsiteDataStoreConfiguration
1091         https://bugs.webkit.org/show_bug.cgi?id=171399
1092
1093         Reviewed by Brady Eidson.
1094
1095         * TestWebKitAPI/Tests/WebKit2Cocoa/WebsiteDataStoreCustomPaths.html:
1096         * TestWebKitAPI/Tests/WebKit2Cocoa/WebsiteDataStoreCustomPaths.mm:
1097         (TEST):
1098
1099 2017-04-27  Ryan Haddad  <ryanhaddad@apple.com>
1100
1101         Disable flaky API test WKWebView.SetOverrideContentSecurityPolicyWithEmptyStringForPageWithCSP.
1102         https://bugs.webkit.org/show_bug.cgi?id=167914
1103
1104         Unreviewed test gardening.
1105
1106         * TestWebKitAPI/Tests/WebKit2Cocoa/OverrideContentSecurityPolicy.mm:
1107         (TEST):
1108
1109 2017-04-26  Saam Barati  <sbarati@apple.com>
1110
1111         Add some more testing modes for Wasm tests now that we have tier up
1112         https://bugs.webkit.org/show_bug.cgi?id=171360
1113
1114         Reviewed by Keith Miller.
1115
1116         Lets enable the FTL on all Wasm tests. Let's also run each
1117         test with and without CJIT.
1118
1119         * Scripts/run-jsc-stress-tests:
1120
1121 2017-04-26  Aakash Jain  <aakash_jain@apple.com>
1122
1123         JSC EWS Patch Relevance skips few JSC scripts
1124         https://bugs.webkit.org/show_bug.cgi?id=171351
1125
1126         Reviewed by Alexey Proskuryakov.
1127
1128         * Scripts/webkitpy/tool/steps/checkpatchrelevance.py:
1129         (CheckPatchRelevance): Added few jsc related scripts.
1130
1131 2017-04-26  Youenn Fablet  <youenn@apple.com>
1132
1133         Test importer should delete obsolete files based on w3c-import.log
1134         https://bugs.webkit.org/show_bug.cgi?id=171348
1135
1136         Reviewed by Chris Dumez.
1137
1138         * Scripts/webkitpy/w3c/test_importer.py:
1139         (TestImporter.do_import): Removing dangling -expected.txt files in regular import mode.
1140         (TestImporter.remove_deleted_files): Fixing according w3c-import.log current format.
1141         * Scripts/webkitpy/w3c/test_importer_unittest.py:
1142         (test_remove_obsolete_content):
1143
1144 2017-04-26  Jonathan Bedard  <jbedard@apple.com>
1145
1146         REGRESSION (r213926): We're sometimes trying to start WebKitTestRunner without proper DYLD variables
1147         <rdar://problem/31816459>
1148
1149         Unreviewed infrastructure fix.
1150
1151         Some of our iOS Simulator bots are slow and will register crashes due to an incorrect
1152         DYLD_FRAMEWORK_PATH when installing an app.
1153
1154         * Scripts/webkitpy/port/ios.py:
1155         (IOSPort.setup_test_run): Pass DYLD_FRAMEWORK_PATH to app on install.
1156
1157 2017-04-26  Joanmarie Diggs  <jdiggs@igalia.com>
1158
1159         [ATK] Elements with a defined, non-false value for aria-current should expose ATK_STATE_ACTIVE
1160         https://bugs.webkit.org/show_bug.cgi?id=171163
1161
1162         Reviewed by Chris Fleizach.
1163
1164         Add support for state-change notifications for ATK_STATE_ACTIVE.
1165
1166         * WebKitTestRunner/InjectedBundle/atk/AccessibilityNotificationHandlerAtk.cpp:
1167
1168 2017-04-26  Jonathan Bedard  <jbedard@apple.com>
1169
1170         webkitpy: Teardown iOS Simulators on exit if managed Simulators are still running
1171         https://bugs.webkit.org/show_bug.cgi?id=171293
1172
1173         Reviewed by Aakash Jain.
1174
1175         We should make an effort to teardown simulators which we booted even when an exception is
1176         thrown while booting. Make some IOSSimulatorPort functions into static methods and register
1177         one of these functions to be run at exit to ensure any devices webkitpy is managing gets
1178         torn down.
1179
1180         * Scripts/webkitpy/layout_tests/controllers/manager.py:
1181         (Manager._set_up_run): Rely on exit handlers to teardown, not exceptions.
1182         * Scripts/webkitpy/port/ios_simulator.py:
1183         (IOSSimulatorPort._teardown_managed_simulators): Function run on exit which will kill all
1184         iOS simulators and teardown and managed devices.
1185         (IOSSimulatorPort._create_simulators): Register teardown function.
1186         (IOSSimulatorPort.clean_up_test_run): Move device teardown to _teardown_managed_simulators.
1187         (IOSSimulatorPort._remove_device): Deleted.
1188
1189 2017-04-26  Joanmarie Diggs  <jdiggs@igalia.com>
1190
1191         [ATK] Implement support for new ARIA 1.1 values of aria-haspopup
1192         https://bugs.webkit.org/show_bug.cgi?id=171164
1193
1194         Reviewed by Chris Fleizach.
1195
1196         hasPopup() should return whether or not ATK_STATE_HAS_POPUP is in the
1197         AtkStateSet; not what is found in the AtkObject's attributes.
1198
1199         * WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
1200         (WTR::AccessibilityUIElement::hasPopup):
1201
1202 2017-04-25  Alex Christensen  <achristensen@webkit.org>
1203
1204         Encoded filename should be decoded for WKContentExtension.identifier
1205         https://bugs.webkit.org/show_bug.cgi?id=171316
1206
1207         Reviewed by Andy Estes.
1208
1209         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1210         * TestWebKitAPI/Tests/WebKit2Cocoa/WKContentExtensionStore.mm: Copied from Tools/TestWebKitAPI/Tests/WebKit2Cocoa/WKUserContentExtensionStore.mm.
1211         (TEST_F):
1212         * TestWebKitAPI/Tests/WebKit2Cocoa/WKUserContentExtensionStore.mm: Removed.
1213
1214 2017-04-25  Alex Christensen  <achristensen@webkit.org>
1215
1216         REGRESSION(206450): WebKit2PlatformMouseEvent m_modifierFlags not set
1217         https://bugs.webkit.org/show_bug.cgi?id=171297
1218         <rdar://problem/31530719>
1219
1220         Reviewed by Geoffrey Garen.
1221
1222         * TestWebKitAPI/PlatformWebView.h:
1223         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1224         * TestWebKitAPI/Tests/WebKit2/EventModifiers.cpp: Added.
1225         (TestWebKitAPI::didFinishLoadForFrame):
1226         (TestWebKitAPI::mouseDidMoveOverElement):
1227         (TestWebKitAPI::setClients):
1228         (TestWebKitAPI::TEST):
1229         * TestWebKitAPI/mac/PlatformWebViewMac.mm:
1230         (TestWebKitAPI::PlatformWebView::simulateRightClick):
1231         (TestWebKitAPI::PlatformWebView::simulateMouseMove):
1232
1233 2017-04-25  Wenson Hsieh  <wenson_hsieh@apple.com>
1234
1235         Unreviewed, temporarily disable the data interaction unit tests.
1236
1237         The API around data interaction will change significantly in the near future, and
1238         these tests will begin to fail. These will be reenabled once the bots are on an SDK
1239         that supports the updated data interaction API.
1240
1241         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
1242         * TestWebKitAPI/ios/DataInteractionSimulator.h:
1243         * TestWebKitAPI/ios/DataInteractionSimulator.mm:
1244
1245 2017-04-25  Brent Fulgham  <bfulgham@apple.com>
1246
1247         Limit allowed size of document.title to avoid locking WebKit clients
1248         https://bugs.webkit.org/show_bug.cgi?id=165113
1249         <rdar://problem/28324389>
1250
1251         Reviewed by Darin Adler.
1252
1253         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj: Add new files.
1254         * TestWebKitAPI/Tests/WebKit2/LimitTitleSize.cpp: Added.
1255         * TestWebKitAPI/Tests/WebKit2/set-long-title.html: Added.
1256         * TestWebKitAPI/Tests/mac/LimitTitleSize.mm: Added.
1257
1258 2017-04-25  John Wilander  <wilander@apple.com>
1259
1260         Resource Load Statistics: Introduce shorter time-to-live for cookie partition whitelisting
1261         https://bugs.webkit.org/show_bug.cgi?id=171295
1262         <rdar://problem/31823818>
1263
1264         Reviewed by Brent Fulgham.
1265
1266         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
1267         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
1268         (WTR::TestRunner::setStatisticsTimeToLiveCookiePartitionFree):
1269         (WTR::TestRunner::statisticsFireShouldPartitionCookiesHandler):
1270         (WTR::TestRunner::statisticsFireShouldPartitionCookiesHandlerForOneDomain):
1271         * WebKitTestRunner/InjectedBundle/TestRunner.h:
1272         * WebKitTestRunner/TestController.cpp:
1273         (WTR::TestController::setStatisticsTimeToLiveCookiePartitionFree):
1274         (WTR::TestController::statisticsFireShouldPartitionCookiesHandler):
1275         (WTR::TestController::statisticsFireShouldPartitionCookiesHandlerForOneDomain):
1276         * WebKitTestRunner/TestController.h:
1277         * WebKitTestRunner/TestInvocation.cpp:
1278         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
1279
1280 2017-04-25  Tim Horton  <timothy_horton@apple.com>
1281
1282         Try to fix the WKTR build after r215758
1283
1284         * Scripts/build-webkittestrunner:
1285
1286 2017-04-25  Daniel Bates  <dabates@apple.com>
1287
1288         Remove more EFL code
1289         https://bugs.webkit.org/show_bug.cgi?id=171288
1290
1291         Rubber-stamped by Simon Fraser.
1292
1293         The EFL port is no longer in the WebKit OpenSource Project repository. Remove more code
1294         that was part of the EFL port.
1295
1296         * CMakeLists.txt:
1297         * DumpRenderTree/AccessibilityController.h:
1298         * DumpRenderTree/AccessibilityUIElement.cpp:
1299         (AccessibilityUIElement::getJSClass):
1300         * DumpRenderTree/AccessibilityUIElement.h:
1301         * DumpRenderTree/DumpRenderTree.h:
1302         * DumpRenderTree/cairo/PixelDumpSupportCairo.h:
1303         * ImageDiff/efl/ImageDiff.cpp: Removed.
1304         * MiniBrowser/efl/CMakeLists.txt: Removed.
1305         * MiniBrowser/efl/main.c: Removed.
1306         * Scripts/build-dumprendertree:
1307         * Scripts/build-jsc:
1308         * Scripts/build-webkit:
1309         * Scripts/build-webkittestrunner:
1310         * Scripts/run-minibrowser:
1311         * Scripts/update-webkit-libs-jhbuild:
1312         * Scripts/update-webkitefl-libs: Removed.
1313         * Scripts/webkitdirs.pm:
1314         (argumentsForConfiguration):
1315         (extractNonMacOSHostConfiguration):
1316         (executableProductDir):
1317         (builtDylibPathForName):
1318         (determinePortName):
1319         (launcherPath):
1320         (launcherName):
1321         (getJhbuildPath):
1322         (wrapperPrefixIfNeeded):
1323         (generateBuildSystemFromCMakeProject):
1324         (buildCMakeProjectOrExit):
1325         (isEfl): Deleted.
1326         * Scripts/webkitperl/FeatureList.pm:
1327         * Scripts/webkitperl/webkitdirs_unittest/extractNonMacOSHostConfiguration.pl:
1328         * Scripts/webkitpy/common/config/ports.py:
1329         (DeprecatedPort.port):
1330         (GtkWK2Port.run_webkit_tests_command):
1331         (EflWK2Port): Deleted.
1332         (EflWK2Port.build_webkit_command): Deleted.
1333         * Scripts/webkitpy/port/builders.py:
1334         * Scripts/webkitpy/port/efl.py: Removed.
1335         * Scripts/webkitpy/port/efl_unittest.py: Removed.
1336         * Scripts/webkitpy/port/factory.py:
1337         (platform_options):
1338         (PortFactory):
1339         * Scripts/webkitpy/style/checkers/test_expectations_unittest.py:
1340         (TestExpectationsTestCase.test_determine_port_from_expectations_path):
1341         * Scripts/webkitpy/tool/commands/rebaseline_unittest.py:
1342         (TestRebaselineTest.test_baseline_directory):
1343         (TestRebaselineExpectations.test_rebaseline_expectations):
1344         * TestWebKitAPI/PlatformEfl.cmake: Removed.
1345         * TestWebKitAPI/PlatformWebView.h:
1346         * TestWebKitAPI/Tests/WebKit2/WKPreferences.cpp:
1347         (TestWebKitAPI::TEST):
1348         * TestWebKitAPI/Tests/WebKit2/efl/WKViewClientWebProcessCallbacks.cpp: Removed.
1349         * TestWebKitAPI/Tests/WebKit2/efl/WKViewClientWebProcessCallbacks_Bundle.cpp: Removed.
1350         * TestWebKitAPI/Tests/WebKit2/efl/WKViewScrollTo.cpp: Removed.
1351         * TestWebKitAPI/Tests/WebKit2/efl/scrollTo.html: Removed.
1352         * TestWebKitAPI/efl/InjectedBundleController.cpp: Removed.
1353         * TestWebKitAPI/efl/PlatformUtilities.cpp: Removed.
1354         * TestWebKitAPI/efl/PlatformWebView.cpp: Removed.
1355         * TestWebKitAPI/efl/main.cpp: Removed.
1356         * WebKitTestRunner/EventSenderProxy.h:
1357         * WebKitTestRunner/InjectedBundle/AccessibilityController.cpp:
1358         * WebKitTestRunner/InjectedBundle/AccessibilityController.h:
1359         * WebKitTestRunner/InjectedBundle/AccessibilityUIElement.cpp:
1360         * WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h:
1361         * WebKitTestRunner/InjectedBundle/EventSendingController.cpp:
1362         (WTR::EventSendingController::contextClick):
1363         * WebKitTestRunner/InjectedBundle/TestRunner.h:
1364         * WebKitTestRunner/InjectedBundle/atk/AccessibilityNotificationHandlerAtk.cpp:
1365         (WTR::AccessibilityNotificationHandler::setNotificationFunctionCallback):
1366         (WTR::AccessibilityNotificationHandler::removeAccessibilityNotificationHandler):
1367         * WebKitTestRunner/InjectedBundle/efl/ActivateFontsEfl.cpp: Removed.
1368         * WebKitTestRunner/InjectedBundle/efl/FontManagement.cpp: Removed.
1369         * WebKitTestRunner/InjectedBundle/efl/FontManagement.h: Removed.
1370         * WebKitTestRunner/InjectedBundle/efl/InjectedBundleEfl.cpp: Removed.
1371         * WebKitTestRunner/InjectedBundle/efl/TestRunnerEfl.cpp: Removed.
1372         * WebKitTestRunner/PlatformEfl.cmake: Removed.
1373         * WebKitTestRunner/PlatformWebView.h:
1374         * WebKitTestRunner/TestController.cpp:
1375         (WTR::TestController::resetStateToConsistentValues):
1376         * WebKitTestRunner/efl/EventSenderProxyEfl.cpp: Removed.
1377         * WebKitTestRunner/efl/PlatformWebViewEfl.cpp: Removed.
1378         * WebKitTestRunner/efl/TestControllerEfl.cpp: Removed.
1379         * WebKitTestRunner/efl/main.cpp: Removed.
1380         * efl/install-dependencies: Removed.
1381         * efl/jhbuild-optional.modules: Removed.
1382         * efl/jhbuild.modules: Removed.
1383         * efl/jhbuildrc: Removed.
1384         * efl/patches/evas-fix-build-with-giflib5.patch: Removed.
1385         * efl/patches/fontconfig-C-11-requires-a-space-between-literal-and-identifier.patch: Removed.
1386         * efl/patches/gst-libav.patch: Removed.
1387         * efl/patches/gst-plugins-base-rtp-rtcpbuffer-fix-typo-in-enum.patch: Removed.
1388         * efl/patches/gst-plugins-good-Revert-qtdemux-expose-streams-with-first-moof-for-fr.patch: Removed.
1389         * efl/patches/gst-plugins-good-use-the-tfdt-decode-time.patch: Removed.
1390         * efl/patches/openwebrtc-gst-plugins-clang-warning-fix.patch: Removed.
1391         * gtk/manifest.txt.in:
1392
1393 2017-04-25  Daniel Bates  <dabates@apple.com>
1394
1395         [Cocoa][Win] Enable of X-Content-Type-Options: nosniff header
1396         https://bugs.webkit.org/show_bug.cgi?id=136452
1397         <rdar://problem/23412620>
1398
1399         Reviewed by Brent Fulgham.
1400
1401         Enable X-Content-Type-Options: nosniff on Mac, iOS and Windows platforms.
1402
1403         * Scripts/webkitperl/FeatureList.pm: Also do not enable nosniff on EFL
1404         as the EFL port is no longer in the WebKit OpenSource repository.
1405         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
1406
1407 2017-04-25  Zan Dobersek  <zdobersek@igalia.com>
1408
1409         Unreviewed follow-up to r215739 and r215740.
1410
1411         * gtk/jhbuild.modules: List the libgcrypt patch that has to be applied.
1412         This (and r215740) was supposed to land in r215739, but I managed to
1413         specify the previous version of the patch.
1414
1415 2017-04-25  Zan Dobersek  <zdobersek@igalia.com>
1416
1417         Unreviewed follow-up to r215739.
1418
1419         * gtk/patches/libgcrypt-use-only-dev-urandom-for-testing.patch: Add the missing
1420         libgcrypt patch that enforces the use of /dev/urandom.
1421
1422 2017-04-25  Zan Dobersek  <zdobersek@igalia.com>
1423
1424         [GTK] Add libgpg-error, libgcrypt libraries to JHBuild
1425         https://bugs.webkit.org/show_bug.cgi?id=171270
1426
1427         Reviewed by Michael Catanzaro.
1428
1429         * gtk/jhbuild.modules: Add the latest stable versions of libgpg-error and libgcrypt
1430         libraries to the webkitgtk-testing-dependencies metamodule. This will help people
1431         that use systems that don't yet provide libgcrypt >= 1.7.0.
1432
1433 2017-04-25  Carlos Alberto Lopez Perez  <clopez@igalia.com>
1434
1435         [GTK] Improve an unit test for the JHBuild wrapper.
1436         https://bugs.webkit.org/show_bug.cgi?id=168036
1437
1438         Unreviewed follow-up patch after r215727
1439
1440         * Scripts/webkitpy/port/base_unittest.py:
1441         (test_jhbuild_wrapper): Improve the unit test by ensuring the directory
1442         wasn't there before calling MockFileSystem.maybe_make_directory(), and
1443         also that it exists after calling it.
1444
1445 2017-04-25  Carlos Alberto Lopez Perez  <clopez@igalia.com>
1446
1447         [GTK] ImageDiff should be run by jhbuild-wrapper in case of using jhbuild
1448         https://bugs.webkit.org/show_bug.cgi?id=168036
1449
1450         Reviewed by Michael Catanzaro.
1451
1452         Call ImageDiff with the JHBuild wrapper if we should use it.
1453         Also add some unit tests for the JHBuild wrapper feature.
1454
1455         * Scripts/webkitpy/port/base.py:
1456         (Port._should_use_jhbuild): Use self._filesystem instead of os.path to allow mock testing.
1457         * Scripts/webkitpy/port/base_unittest.py:
1458         (test_jhbuild_wrapper): Add a test for port._should_use_jhbuild()
1459         * Scripts/webkitpy/port/image_diff.py:
1460         (ImageDiffer._start): The actual fix, use the wrapper if we should.
1461         * Scripts/webkitpy/port/image_diff_unittest.py: Removed. This two tests are now integrated in port_testcase
1462         * Scripts/webkitpy/port/port_testcase.py:
1463         (PortTestCase):
1464         (PortTestCase.test_diff_image): Test the command with wrapper and without it.
1465         (PortTestCase.test_diff_image_passed): Moved from image_diff_unittest.py
1466         (PortTestCase.test_diff_image_failed): Moved from image_diff_unittest.py
1467
1468 2017-04-25  Wenson Hsieh  <wenson_hsieh@apple.com>
1469
1470         Support reading NSURL titles from the pasteboard when performing data interaction
1471         https://bugs.webkit.org/show_bug.cgi?id=171156
1472         <rdar://problem/31356937>
1473
1474         Reviewed by Tim Horton.
1475
1476         Adds a new unit test, DataInteractionTests.ExternalSourceTitledNSURL.
1477
1478         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
1479         (TestWebKitAPI::TEST):
1480
1481 2017-04-24  Wenson Hsieh  <wenson_hsieh@apple.com>
1482
1483         Respect fidelity order when reading web content from item providers
1484         https://bugs.webkit.org/show_bug.cgi?id=171155
1485         <rdar://problem/31356937>
1486
1487         Reviewed by Tim Horton.
1488
1489         Adds a new unit test (DataInteractionTests.RespectsExternalSourceFidelityRankings). See WebCore ChangeLog for
1490         more details.
1491
1492         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
1493         (TestWebKitAPI::TEST):
1494
1495 2017-04-24  Carlos Alberto Lopez Perez  <clopez@igalia.com>
1496
1497         SyntaxError fix after r215702.
1498         https://bugs.webkit.org/show_bug.cgi?id=168944
1499
1500         Unreviewed "build" fix.
1501
1502         * BuildSlaveSupport/built-product-archive:
1503         (archiveBuiltProduct):
1504
1505 2017-04-24  Jonathan Bedard  <jbedard@apple.com>
1506
1507         Package ImageDiff built with host SDK
1508         https://bugs.webkit.org/show_bug.cgi?id=168944
1509         <rdar://problem/30745642>
1510
1511         Reviewed by David Kilzer.
1512
1513         iOS Simulator and iOS device should archive the ImageDiff built for the host
1514         machine.
1515
1516         * BuildSlaveSupport/built-product-archive:
1517         (determineWebKitBuildDirectories): Add _hostBuildDirectory for iOS.
1518         (archiveBuiltProduct): Archive Mac products for iOS so that ImageDiff is included.
1519
1520 2017-04-24  Keith Miller  <keith_miller@apple.com>
1521
1522         ThreadMessage API tests failing on release bots
1523         https://bugs.webkit.org/show_bug.cgi?id=171246
1524
1525         Reviewed by Saam Barati.
1526
1527         Need to make sure that C++ doesn't optimize away our spin loop.
1528
1529         * TestWebKitAPI/Tests/WTF/ThreadMessages.cpp:
1530         (runThreadMessageTest):
1531         (TEST):
1532
1533 2017-04-24  Alex Christensen  <achristensen@webkit.org>
1534
1535         Reduce copies and allocations in SharedBuffer::append
1536         https://bugs.webkit.org/show_bug.cgi?id=170956
1537
1538         Reviewed by Andreas Kling.
1539
1540         * TestWebKitAPI/Tests/WebCore/cocoa/SharedBuffer.mm:
1541         (TestWebKitAPI::TEST_F):
1542
1543 2017-04-24  Carlos Garcia Campos  <cgarcia@igalia.com>
1544
1545         [GTK] Switch to use ENABLE_REMOTE_INSPECTOR instead of ENABLE_INSPECTOR_SERVER for the remote inspector
1546         https://bugs.webkit.org/show_bug.cgi?id=166680
1547
1548         Reviewed by Michael Catanzaro.
1549
1550         Update remote inspector unit tests.
1551
1552         * TestWebKitAPI/Tests/WebKit2Gtk/InspectorTestServer.cpp:
1553         (main):
1554         * TestWebKitAPI/Tests/WebKit2Gtk/TestInspectorServer.cpp:
1555         (connectToInspectorServer):
1556         (waitUntilInspectorServerIsReady):
1557         (startTestServer):
1558         (testInspectorServerPageList):
1559         (beforeAll):
1560
1561 2017-04-23  Youenn Fablet  <youenn@apple.com>
1562
1563         Add a tool to update expected.txt files from EWS bot results
1564         https://bugs.webkit.org/show_bug.cgi?id=169538
1565
1566         Reviewed by Ryosuke Niwa.
1567
1568         This script updates expected-txt files from bugzilla posted EWS results.
1569         It uses mac-wk2 as the generic baseline and adds platform-specific results if other ports
1570         have results different from the generic baseline.
1571
1572         * Scripts/update-test-expectations-from-bugzilla: Added.
1573         * Scripts/webkitpy/common/net/bugzilla/test_expectation_updater.py: Added.
1574         * Scripts/webkitpy/common/net/bugzilla/test_expectation_updater_unittest.py: Added.
1575         * Scripts/webkitpy/layout_tests/controllers/test_result_writer.py: Adding helper routines.
1576
1577 2017-04-22  Youenn Fablet  <youenn@apple.com>
1578
1579         Add an option to import tip-of-tree WPT tests
1580         https://bugs.webkit.org/show_bug.cgi?id=171152
1581
1582         Reviewed by Joseph Pecoraro.
1583
1584         Adding a '-t' option to import tip of tree WPT tests.
1585         Updating importer based on the fact that csswg-test is no longer a thing. 
1586
1587         * Scripts/webkitpy/w3c/test_downloader.py:
1588         (TestDownloader.download_tests):
1589         * Scripts/webkitpy/w3c/test_importer.py:
1590         (configure_logging):
1591         (TestImporter.do_import):
1592         (TestImporter.write_import_log):
1593
1594 2017-04-22  Wenson Hsieh  <wenson_hsieh@apple.com>
1595
1596         File inputs only accept UTI types that can be inserted into contenteditable areas when dropping
1597         https://bugs.webkit.org/show_bug.cgi?id=171177
1598         <rdar://problem/31765379>
1599
1600         Reviewed by Andy Estes.
1601
1602         Tests uploading a JSON file to a file input.
1603
1604         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
1605         (TestWebKitAPI::TEST):
1606
1607 2017-04-21  Wenson Hsieh  <wenson_hsieh@apple.com>
1608
1609         Support writing link titles to the pasteboard when beginning data interaction on a link
1610         https://bugs.webkit.org/show_bug.cgi?id=171154
1611         <rdar://problem/31356937>
1612
1613         Reviewed by Andy Estes.
1614
1615         Augments an existing unit test, DataInteractionTests.LinkToInput, to also check that the fetching the NSURL from
1616         the source UIItemProvider generated by performing data interaction results in an NSURL with the _title attribute
1617         matching the title of the link.
1618
1619         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
1620         (TestWebKitAPI::TEST):
1621
1622 2017-04-21  Michael Catanzaro  <mcatanzaro@igalia.com>
1623
1624         Unreviewed, rolling out r215608.
1625
1626         Hundreds of test failures on GTK bot
1627
1628         Reverted changeset:
1629
1630         "Reduce copies and allocations in SharedBuffer::append"
1631         https://bugs.webkit.org/show_bug.cgi?id=170956
1632         http://trac.webkit.org/changeset/215608
1633
1634 2017-04-21  Wenson Hsieh  <wenson_hsieh@apple.com>
1635
1636         [WK2] Add delegate hooks for overriding unhanded data interaction operations
1637         https://bugs.webkit.org/show_bug.cgi?id=171005
1638         <rdar://problem/31669646>
1639
1640         Reviewed by Tim Horton.
1641
1642         Adds a new API test checking that normal WebKit behavior when vending updated data interaction operations may
1643         be overridden, resulting in a data interaction operation being performed when it otherwise would not have. Also
1644         adjusts for some changes in WebKit2 (See WebKit2 ChangeLog for more details).
1645
1646         New API test:
1647         DataInteractionTests.OverrideDataInteractionOperation
1648
1649         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
1650         (-[UIItemProvider registerDataRepresentationForTypeIdentifier:withData:]):
1651         (TestWebKitAPI::TEST):
1652         * TestWebKitAPI/ios/DataInteractionSimulator.h:
1653         * TestWebKitAPI/ios/DataInteractionSimulator.mm:
1654         (-[DataInteractionSimulator initWithWebView:]):
1655         (-[DataInteractionSimulator dealloc]):
1656         (-[DataInteractionSimulator _webView:dataInteractionOperationWasHandled:forSession:itemProviders:]):
1657         (-[DataInteractionSimulator _webView:willUpdateDataInteractionOperationToOperation:forSession:]):
1658         (-[DataInteractionSimulator webViewDidPerformDataInteractionControllerOperation:]): Deleted.
1659
1660 2017-04-21  Ryan Haddad  <ryanhaddad@apple.com>
1661
1662         Temporarily disable two flaky API tests.
1663
1664         Unreviewed test gardening.
1665
1666         * TestWebKitAPI/Tests/WebKit2Cocoa/BundleRangeHandle.mm:
1667         (TEST):
1668         * TestWebKitAPI/Tests/WebKit2Cocoa/DataDetection.mm:
1669         (TEST):
1670
1671 2017-04-21  Keith Miller  <keith_miller@apple.com>
1672
1673         Unreviewed, rolling out r215634.
1674
1675         underlying build issues should have been fixed
1676
1677         Reverted changeset:
1678
1679         "Unreviewed, rolling out r215620 and r215623."
1680         https://bugs.webkit.org/show_bug.cgi?id=171139
1681         http://trac.webkit.org/changeset/215634
1682
1683 2017-04-21  Aakash Jain  <aakash_jain@apple.com>
1684
1685         Bubbles on dashboard doesn't turn red for test262 failures
1686         https://bugs.webkit.org/show_bug.cgi?id=171129
1687
1688         Reviewed by Alexey Proskuryakov.
1689
1690         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotIteration.js: Added test262-test.
1691
1692 2017-04-21  Commit Queue  <commit-queue@webkit.org>
1693
1694         Unreviewed, rolling out r215620 and r215623.
1695         https://bugs.webkit.org/show_bug.cgi?id=171139
1696
1697         broke arm64 build (Requested by keith_miller on #webkit).
1698
1699         Reverted changesets:
1700
1701         "Add signaling API"
1702         https://bugs.webkit.org/show_bug.cgi?id=170976
1703         http://trac.webkit.org/changeset/215620
1704
1705         "Unreviewed, fix Cloop build."
1706         http://trac.webkit.org/changeset/215623
1707
1708 2017-04-20  Keith Miller  <keith_miller@apple.com>
1709
1710         Add signaling API
1711         https://bugs.webkit.org/show_bug.cgi?id=170976
1712
1713         Reviewed by Filip Pizlo.
1714
1715         Add tests for ThreadMessages.
1716
1717         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1718         * TestWebKitAPI/Tests/WTF/ThreadMessages.cpp: Added.
1719         (runThreadMessageTest):
1720         (TEST):
1721
1722 2017-04-20  Conrad Shultz  <conrad_shultz@apple.com>
1723
1724         commit-log-editor should respect the git editor if one is set
1725         https://bugs.webkit.org/show_bug.cgi?id=171085
1726         <rdar://problem/31745506>
1727
1728         Reviewed by Daniel Bates.
1729
1730         * Scripts/commit-log-editor:
1731         If Git is available, consider GIT_LOG_EDITOR and any global Git editor preference when
1732         deciding which editor to present. We examine the global editor preference since that may be
1733         set automatically by installers or third-party tools.
1734
1735 2017-04-21  Alex Christensen  <achristensen@webkit.org>
1736
1737         Reduce copies and allocations in SharedBuffer::append
1738         https://bugs.webkit.org/show_bug.cgi?id=170956
1739
1740         Reviewed by Andreas Kling.
1741
1742         * TestWebKitAPI/Tests/WebCore/cocoa/SharedBuffer.mm:
1743         (TestWebKitAPI::TEST_F):
1744
1745 2017-04-20  Konstantin Tokarev  <annulen@yandex.ru>
1746
1747         [cmake] Define FORWARDING_HEADERS_DIR in WebKitFS and use it everywhere
1748         https://bugs.webkit.org/show_bug.cgi?id=171071
1749
1750         Reviewed by Michael Catanzaro.
1751
1752         "${DERIVED_SOURCES_DIR}/ForwardingHeaders" path occurs very often in the
1753         build system files. GTK-specifc FORWARDING_HEADERS_DIR variable should
1754         be available for all ports.
1755
1756         * DumpRenderTree/PlatformMac.cmake:
1757         * MiniBrowser/mac/CMakeLists.txt:
1758         * MiniBrowser/win/CMakeLists.txt:
1759         * TestWebKitAPI/PlatformJSCOnly.cmake:
1760         * TestWebKitAPI/PlatformMac.cmake:
1761         * TestWebKitAPI/PlatformWin.cmake:
1762         * WebKitTestRunner/PlatformMac.cmake:
1763
1764 2017-04-20  Joseph Pecoraro  <pecoraro@apple.com>
1765
1766         Test262 bot does not go red with failures
1767         https://bugs.webkit.org/show_bug.cgi?id=171044
1768
1769         Reviewed by Aakash Jain.
1770
1771         The piped output of run-jsc-stress-tests is different from
1772         its non-piped output. Switch to parsing the correct output.
1773
1774         * BuildSlaveSupport/build.webkit.org-config/master.cfg:
1775         (RunTest262Tests.countFailures):
1776         Just count the number of lines that start with "FAIL:".
1777
1778         * BuildSlaveSupport/build.webkit.org-config/mastercfg_unittest.py:
1779         (RunTest262TestsTest.test_no_regressions_output):
1780         (test_failure_output):
1781         (test_failures_output):
1782         Updated tests with new sample output produced partially from bots and
1783         locally. In cases of failure the return code of run-jsc-stress-tests
1784         is still 0 so update the expected return code in the tests.
1785
1786 2017-04-20  Brady Eidson  <beidson@apple.com>
1787
1788         WebContent process becomes unresponsive after returning nil from async version of -webView:createWebViewWithConfiguration:...
1789         <rdar://problem/31739023> and https://bugs.webkit.org/show_bug.cgi?id=171090
1790
1791         Reviewed by Andy Estes.
1792
1793         * TestWebKitAPI/Tests/WebKit2/open-and-close-window.html:
1794         * TestWebKitAPI/Tests/WebKit2Cocoa/OpenAndCloseWindow.mm:
1795         (resetToConsistentState):
1796         (-[OpenAndCloseWindowUIDelegate webViewDidClose:]):
1797         (-[OpenAndCloseWindowUIDelegate webView:createWebViewWithConfiguration:forNavigationAction:windowFeatures:]):
1798         (TEST):
1799         (-[OpenAndCloseWindowUIDelegateAsync _webView:createWebViewWithConfiguration:forNavigationAction:windowFeatures:completionHandler:]):
1800
1801 2017-04-20  Wenson Hsieh  <wenson_hsieh@apple.com>
1802
1803         [ios-simulator] PositionInformationTests API tests are timing out
1804         https://bugs.webkit.org/show_bug.cgi?id=171089
1805
1806         Rubber-stamped by Tim Horton.
1807
1808         Addresses failures observed in the new position information tests added in r215573 by only running them if the
1809         DATA_INTERACTION feature flag is enabled.
1810
1811         * TestWebKitAPI/Tests/ios/PositionInformationTests.mm:
1812
1813 2017-04-20  Brady Eidson  <beidson@apple.com>
1814
1815         Skip WebKit2.OpenAndCloseWindowAsyncCallbackException for now.
1816         https://bugs.webkit.org/show_bug.cgi?id=171083
1817
1818         Unreviewed.
1819
1820         * TestWebKitAPI/Tests/WebKit2Cocoa/OpenAndCloseWindow.mm:
1821
1822 2017-04-20  Brady Eidson  <beidson@apple.com>
1823
1824         Add CompletionHandlerCallChecker to SPI added in r215545.
1825         https://bugs.webkit.org/show_bug.cgi?id=171067
1826
1827         Reviewed by Dan Bernstein.
1828
1829         * TestWebKitAPI/Tests/WebKit2Cocoa/OpenAndCloseWindow.mm:
1830         (TEST):
1831         (-[OpenAndCloseWindowUIDelegateAsync _webView:createWebViewWithConfiguration:forNavigationAction:windowFeatures:completionHandler:]):
1832
1833 2017-04-20  Wenson Hsieh  <wenson_hsieh@apple.com>
1834
1835         [WK2] -[WKContentView doAfterPositionInformationUpdate:atPosition:] should be robust against synchronous reentrancy
1836         https://bugs.webkit.org/show_bug.cgi?id=170922
1837         <rdar://problem/31634990>
1838
1839         Reviewed by Tim Horton.
1840
1841         Adds six new unit tests for retrieving interaction information at a given position in the UI process. See
1842         WebKit2 ChangeLog for more details.
1843
1844         * TestWebKitAPI/Tests/ios/PositionInformationTests.mm:
1845         (-[_WKDraggableElementInfo expectToBeLink:image:atPoint:]):
1846         (TestWebKitAPI::TEST):
1847         (TestWebKitAPI::expectCGPointsToBeEqual): Deleted.
1848
1849 2017-04-20  Xan Lopez  <xlopez@igalia.com>
1850
1851         [GTK][jhbuild] Update glib and glib-networking to the latest stable versions
1852         https://bugs.webkit.org/show_bug.cgi?id=170942
1853
1854         Reviewed by Carlos Garcia Campos.
1855
1856         Update glib and glib-networking to the last stable releases. This
1857         is needed to get working TLS certificate verification at all at
1858         least in Fedora.
1859
1860         * gtk/install-dependencies: add libmount, needed for newer glib.
1861         * gtk/jhbuild.modules: update glib and glib-networking to last
1862         stable releases.
1863
1864 2017-04-20  Joanmarie Diggs  <jdiggs@igalia.com>
1865
1866         [ATK] Implement support for DPub ARIA roles
1867         https://bugs.webkit.org/show_bug.cgi?id=170679
1868
1869         Reviewed by Chris Fleizach.
1870
1871         Add DPub ARIA landmark roles to roleToString().
1872
1873         * WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
1874
1875 2017-04-19  Joseph Pecoraro  <pecoraro@apple.com>
1876
1877         Remove WebKitTestRunner code for enabling features that are already enabled by default
1878         https://bugs.webkit.org/show_bug.cgi?id=171033
1879
1880         Reviewed by Ryosuke Niwa.
1881
1882         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
1883         (WTR::InjectedBundle::beginTesting):
1884         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
1885         (WTR::TestRunner::setShadowDOMEnabled): Deleted.
1886         (WTR::TestRunner::setCustomElementsEnabled): Deleted.
1887         (WTR::TestRunner::setFetchAPIEnabled): Deleted.
1888         (WTR::TestRunner::setDownloadAttributeEnabled): Deleted.
1889         * WebKitTestRunner/InjectedBundle/TestRunner.h:
1890
1891 2017-04-19  Youenn Fablet  <youenn@apple.com>
1892
1893         [Mac] Allow customizing H264 encoder
1894         https://bugs.webkit.org/show_bug.cgi?id=170829
1895
1896         Reviewed by Alex Christensen.
1897
1898         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
1899
1900 2017-04-19  Brady Eidson  <beidson@apple.com>
1901
1902         Add asynchronous equivalent of -[<WKUIDelegate> webView:createWebViewWithConfiguration:...].
1903         <rdar://problem/30699851> and https://bugs.webkit.org/show_bug.cgi?id=171018
1904
1905         Reviewed by Tim Horton.
1906
1907         * TestWebKitAPI/Tests/WebKit2Cocoa/OpenAndCloseWindow.mm:
1908         (TEST):
1909         (-[OpenAndCloseWindowUIDelegateAsync webView:createWebViewWithConfiguration:forNavigationAction:windowFeatures:]):
1910         (-[OpenAndCloseWindowUIDelegateAsync _webView:createWebViewWithConfiguration:forNavigationAction:windowFeatures:completionHandler:]):
1911
1912 2017-04-19  Brady Eidson  <beidson@apple.com>
1913
1914         REGRESSION (r213168): An extra Web Content process is spun up on launch and is never closed.
1915         <rdar://problem/30774839> and https://bugs.webkit.org/show_bug.cgi?id=171002
1916
1917         Reviewed by Alex Christensen.
1918
1919         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1920         * TestWebKitAPI/Tests/WebKit2Cocoa/InitialWarmedProcessUsed.mm: Added.
1921
1922 2017-04-19  Brent Fulgham  <bfulgham@apple.com>
1923
1924         [WK2] Run tests with ResourceLoadStatistics enabled
1925         https://bugs.webkit.org/show_bug.cgi?id=170952
1926
1927         Reviewed by Andy Estes.
1928
1929         Excercise the load statistics code during tests.
1930
1931         * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
1932         (WTR::initializeWebViewConfiguration):
1933
1934 2017-04-19  Bill Ming  <mbbill@gmail.com>
1935
1936         close_fds should be set to False on Windows.
1937         https://bugs.webkit.org/show_bug.cgi?id=170838
1938
1939         Reviewed by Brent Fulgham.
1940
1941         * Scripts/webkitpy/common/system/executive.py:
1942         (Executive._should_close_fds):
1943
1944 2017-04-19  David Kilzer  <ddkilzer@apple.com>
1945
1946         Stop using strcpy() in WebKit::EnvironmentUtilities::stripValuesEndingWithString()
1947         <https://webkit.org/b/170994>
1948         <rdar://problem/29889932>
1949
1950         Reviewed by Brent Fulgham.
1951
1952         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1953         (EnvironmentUtilitiesTest.cpp): Add to TestWebKitAPILibrary
1954         target.
1955         * TestWebKitAPI/Tests/WebKit2/EnvironmentUtilitiesTest.cpp: Add.
1956         (TestWebKitAPI::strip): Helper method to set/get environment
1957         variable for testing.
1958         (TestWebKitAPI::WebKit2_StripValuesEndingWithString_Test): Add
1959         tests.
1960
1961 2017-04-19  JF Bastien  <jfbastien@apple.com>
1962
1963         WebAssembly: add script which can import GCC torture tests
1964         https://bugs.webkit.org/show_bug.cgi?id=170740
1965
1966         Reviewed by Saam Barati.
1967
1968         Add a script which can import the GCC torture tests and create a
1969         yaml file to run them as part of jsc's WebAssembly regression
1970         tests.
1971
1972         This patch doesn't commit the tests themselves because they're
1973         licensed differently.
1974
1975         * Scripts/run-jsc-stress-tests: learn how to run
1976         Emscripten-generated .js+.wasm files, and do a bit of cleanup on
1977         the options because WebAssembly is enabled by default.
1978         * Scripts/update-wasm-gcc-torture.py: Added.
1979         (parse_args):
1980         (update_lkgr):
1981         (untar_torture):
1982         (list_js_files):
1983         (waterfall_known_failures):
1984         (create_yaml):
1985         (main):
1986
1987 2017-04-19  Youenn Fablet  <youenn@apple.com>
1988
1989         Import web-platform-tests/tools
1990         https://bugs.webkit.org/show_bug.cgi?id=170718
1991
1992         Reviewed by Alex Christensen.
1993
1994         * Scripts/webkitpy/layout_tests/servers/web_platform_test_launcher.py:
1995         (main):
1996         * Scripts/webkitpy/layout_tests/servers/web_platform_test_server.py:
1997         (WebPlatformTestServer.ports_to_forward):
1998         (WebPlatformTestServer._prepare_config):
1999         (WebPlatformTestServer._install_modules): Deleted.
2000         * Scripts/webkitpy/w3c/test_importer.py:
2001         (TestImporter.write_html_files_for_templated_js_tests):
2002
2003 2017-04-18  Wenson Hsieh  <wenson_hsieh@apple.com>
2004
2005         [WK2] Add infrastructure and unit tests for file uploads using data interaction
2006         https://bugs.webkit.org/show_bug.cgi?id=170903
2007         <rdar://problem/31314689>
2008
2009         Reviewed by Tim Horton.
2010
2011         Adds 5 new unit tests covering different cases of uploading files through data interaction, as well as
2012         infrastructure for simulating UIItemProviders that load file data. Makes a few adjustments to the
2013         DataInteractionSimulator along the way, detailed in the per-method annotations below. See
2014         <https://bugs.webkit.org/show_bug.cgi?id=170880> for more details about the change this patch is testing.
2015
2016         New tests:
2017         DataInteractionTests.ExternalSourceImageToFileInput
2018         DataInteractionTests.ExternalSourceHTMLToUploadArea
2019         DataInteractionTests.ExternalSourceImageAndHTMLToSingleFileInput
2020         DataInteractionTests.ExternalSourceImageAndHTMLToMultipleFileInput
2021         DataInteractionTests.ExternalSourceImageAndHTMLToUploadArea
2022
2023         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
2024         (testIconImage):
2025         (temporaryURLForDataInteractionFileLoad):
2026         (cleanUpDataInteractionTemporaryPath):
2027
2028         Creates and tears down temporary file directories for testing data interaction.
2029
2030         (-[UIItemProvider registerFileRepresentationForTypeIdentifier:withData:filename:]):
2031         (TestWebKitAPI::TEST):
2032         * TestWebKitAPI/ios/DataInteractionSimulator.h:
2033         * TestWebKitAPI/ios/DataInteractionSimulator.mm:
2034
2035         Make necessary changes to be able to test what happens when data interaction ends over an element with no
2036         operation. Previously, we would always simulate performing a data interaction operation when ending the
2037         simulation, but this causes us to wait indefinitely for a data operation response to arrive in the UI process.
2038         Instead, we need to note whether or not the content view is allowing data interaction, and only perform an
2039         operation and wait for the -didPerform call if the operation was allowed. Otherwise, we immediately transition
2040         the phase to Cancelled and end the run.
2041
2042         (-[DataInteractionSimulator _resetSimulatedState]):
2043         (-[DataInteractionSimulator runFrom:to:]):
2044         (-[DataInteractionSimulator _concludeDataInteractionAndPerformOperationIfNecessary]):
2045         (-[DataInteractionSimulator _advanceProgress]):
2046         (-[DataInteractionSimulator externalItemProviders]):
2047         (-[DataInteractionSimulator setExternalItemProviders:]):
2048
2049         Previously, we hard-coded DataInteractionSimulator to only support a single external item provider. In order to
2050         test the scenario where multiple files are being "data interacted" into a file-type input, we generalize this to
2051         take multiple item providers.
2052
2053         (-[DataInteractionSimulator externalItemProvider]): Deleted.
2054         (-[DataInteractionSimulator setExternalItemProvider:]): Deleted.
2055
2056 2017-04-18  John Wilander  <wilander@apple.com>
2057
2058         Make WebCore::topPrivatelyControlledDomain() return "localhost" for localhost
2059         https://bugs.webkit.org/show_bug.cgi?id=170798
2060         <rdar://problem/31595108>
2061
2062         Reviewed by Alex Christensen.
2063
2064         * TestWebKitAPI/Tests/mac/PublicSuffix.mm:
2065         (TestWebKitAPI::TEST_F):
2066             Added two negative test cases for WebCore::isPublicSuffix().
2067             Added test cases with mixed case domains, localhost, and
2068             non-ASCII for WebCore::topPrivatelyControlledDomain().
2069
2070 2017-04-18  Jonathan Bedard  <jbedard@apple.com>
2071
2072         Unreviewed, rolling out r215346 and 215361.
2073
2074         The problem these changes were fixing was addressed in
2075         <https://trac.webkit.org/changeset/215416/webkit>.
2076
2077         Reverted changesets:
2078
2079         "webkitpy: Ignore previously launched pid when system is under
2080         stress"
2081         https://bugs.webkit.org/show_bug.cgi?id=170741
2082         http://trac.webkit.org/changeset/215346
2083         http://trac.webkit.org/changeset/215361
2084
2085 2017-04-17  Alex Christensen  <achristensen@webkit.org>
2086
2087         Allow Variants of RetainPtrs
2088         https://bugs.webkit.org/show_bug.cgi?id=170923
2089
2090         Reviewed by Tim Horton and Sam Weinig.
2091
2092         * TestWebKitAPI/Tests/WTF/Variant.cpp:
2093         (TestWebKitAPI::TEST):
2094         Add tests for RetainPtr and for another class with overloaded operator& to verify such classes can
2095         work in Variants.
2096
2097 2017-04-17  Brady Eidson  <beidson@apple.com>
2098
2099         Make WKHTTPCookieStore public.
2100         <rdar://problem/31024691> and https://bugs.webkit.org/show_bug.cgi?id=170920
2101
2102         Reviewed by Geoffrey Garen.
2103
2104         * TestWebKitAPI/Tests/WebKit2Cocoa/WKHTTPCookieStore.mm:
2105         (TEST):
2106
2107 2017-04-17  Youenn Fablet  <youenn@apple.com>
2108
2109         Disable outdated WritableStream API
2110         https://bugs.webkit.org/show_bug.cgi?id=170749
2111         <rdar://problem/31446233>
2112
2113         Reviewed by Alex Christensen.
2114
2115         Replacing READABLE_STREAM_API, READABLE_BYTE_STREAM_API and WRITABLE_STREAM_API compilation flag by:
2116         - A STREAMS_API compilation flag.
2117         - A ReadableByteStreamAPI and WritableStreamAPI runtime flags, turned off except for RWT and DRT.
2118
2119         * DumpRenderTree/mac/DumpRenderTree.mm:
2120         (enableExperimentalFeatures):
2121         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
2122         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
2123         (WTR::InjectedBundle::beginTesting):
2124         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
2125         (WTR::TestRunner::setFetchAPIEnabled):
2126         (WTR::TestRunner::setWritableStreamAPIEnabled):
2127         (WTR::TestRunner::setReadableByteStreamAPIEnabled):
2128         * WebKitTestRunner/InjectedBundle/TestRunner.h:
2129
2130 2017-04-17  Tim Horton  <timothy_horton@apple.com>
2131
2132         Provide a viewport parameter to disable clipping to the safe area
2133         https://bugs.webkit.org/show_bug.cgi?id=170766
2134         <rdar://problem/31564634>
2135
2136         Reviewed by Beth Dakin.
2137
2138         * DumpRenderTree/ios/UIScriptControllerIOS.mm:
2139         (WTR::UIScriptController::setObscuredInsets):
2140         * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
2141         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
2142         (WTR::UIScriptController::setObscuredInsets):
2143         * TestRunnerShared/UIScriptContext/UIScriptController.h:
2144         * WebKitTestRunner/ios/TestControllerIOS.mm:
2145         (WTR::TestController::platformResetStateToConsistentValues):
2146         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
2147         (WTR::UIScriptController::setObscuredInsets):
2148         Add a UIScriptController mechanism to install obscured insets
2149         on the web view.
2150
2151 2017-04-17  Dan Bernstein  <mitz@apple.com>
2152
2153         [Cocoa] Move isNullFunctionPointer down into WTF
2154         https://bugs.webkit.org/show_bug.cgi?id=170892
2155
2156         Reviewed by Sam Weinig.
2157
2158         * TestWebKitAPI/Configurations/TestWTF.xcconfig:
2159         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2160         * TestWebKitAPI/Tests/WTF/darwin/WeakLinking.cpp: Added.
2161         (TestWebKitAPI::TEST):
2162         * TestWebKitAPI/Tests/WTF/darwin/libTestWTFAlwaysMissing-iOS-v2.tbd: Added.
2163         * TestWebKitAPI/Tests/WTF/darwin/libTestWTFAlwaysMissing-iOS.tbd: Added.
2164         * TestWebKitAPI/Tests/WTF/darwin/libTestWTFAlwaysMissing-macOS-v2.tbd: Added.
2165         * TestWebKitAPI/Tests/WTF/darwin/libTestWTFAlwaysMissing-macOS.tbd: Added.
2166
2167 2017-04-17  Jonathan Bedard  <jbedard@apple.com>
2168
2169         webkitpy: Correct poll when killing ServerProcess
2170
2171         Unreviewed infrastructure fix.
2172
2173         * Scripts/webkitpy/port/server_process.py:
2174         (ServerProcess._kill): A polled process equaling 'None' means the process is running.
2175
2176 2017-04-17  Eric Carlson  <eric.carlson@apple.com>
2177
2178         [MediaStream] Enable getUserMedia API test
2179         https://bugs.webkit.org/show_bug.cgi?id=170901
2180         <rdar://problem/31656594>
2181
2182         Reviewed by Youenn Fablet.
2183
2184         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj: Add test.
2185
2186         * TestWebKitAPI/Tests/WebKit2/UserMedia.cpp:
2187         (TestWebKitAPI::decidePolicyForUserMediaPermissionRequestCallBack):
2188         (TestWebKitAPI::TEST): Enable capture with mock devices.
2189         * TestWebKitAPI/Tests/WebKit2/getUserMedia.html: Update to mediaDevices.getUserMedia
2190
2191 2017-04-17  Xan Lopez  <xan@igalia.com>
2192
2193         [GTK] Update the Fedora dependencies for WebKitGTK+
2194         https://bugs.webkit.org/show_bug.cgi?id=170590
2195
2196         Reviewed by Carlos Alberto Lopez Perez.
2197
2198         * gtk/install-dependencies: add a bunch of modules necessary to
2199         get a proper set of GStreamer codecs for WebRTC.
2200
2201 2017-04-16  Sam Weinig  <sam@webkit.org>
2202
2203         [WebIDL] Switch IDLAttributes.txt over to a more structured format so that more information can be added for each attribute
2204         https://bugs.webkit.org/show_bug.cgi?id=170843
2205
2206         Reviewed by Chris Dumez.
2207
2208         * DumpRenderTree/DerivedSources.make:
2209         * WebKitTestRunner/DerivedSources.make:
2210         * Scripts/webkitpy/bindings/main.py:
2211         (BindingsTests.generate_from_idl):
2212         Pass IDLAttributes.json, as it is now mandatory to have one.
2213
2214 2017-04-14  Mark Lam  <mark.lam@apple.com>
2215
2216         Update architectures in xcconfig files.
2217         https://bugs.webkit.org/show_bug.cgi?id=170867
2218         <rdar://problem/31628104>
2219
2220         Reviewed by Joseph Pecoraro.
2221
2222         * DumpRenderTree/mac/Configurations/Base.xcconfig:
2223         * MobileMiniBrowser/Configurations/Base.xcconfig:
2224         * TestWebKitAPI/Configurations/Base.xcconfig:
2225         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
2226         * WebKitTestRunner/Configurations/Base.xcconfig:
2227
2228 2017-04-14  Brady Eidson  <beidson@apple.com>
2229
2230         Fix basic WKURLSchemeHandler bugs.
2231         <rdar://problem/30647559> and https://bugs.webkit.org/show_bug.cgi?id=170862
2232
2233         Reviewed by Andy Estes.
2234
2235         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2236         * TestWebKitAPI/Tests/WebKit2Cocoa/WKURLSchemeHandler-1.mm: Added.
2237         (-[SchemeHandler initWithData:mimeType:]):
2238         (-[SchemeHandler dealloc]):
2239         (-[SchemeHandler webView:startTask:]):
2240         (-[SchemeHandler webView:stopTask:]):
2241         (TEST):
2242
2243 2017-04-14  Bill Ming  <mbbill@gmail.com>
2244
2245         webkit-patch failed to detect git repository
2246         https://bugs.webkit.org/show_bug.cgi?id=170859
2247
2248         Reviewed by Daniel Bates.
2249
2250         Windows cmd does not accept single quoted path. So, using
2251         double quotes here will provide better platform compatibility.
2252
2253         * Scripts/VCSUtils.pm:
2254         (isGitDirectory):
2255         (isGitSVNDirectory):
2256         (svnRevisionForDirectory):
2257         (svnInfoForPath):
2258
2259 2017-04-14  Ryan Haddad  <ryanhaddad@apple.com>
2260
2261         Unreviewed, rolling out r215374.
2262
2263         This change causes LayoutTests to exit early with crashes on
2264         Sierra.
2265
2266         Reverted changeset:
2267
2268         "webkitpy: Ignore previously launched pid when system is under
2269         stress"
2270         https://bugs.webkit.org/show_bug.cgi?id=170741
2271         http://trac.webkit.org/changeset/215374
2272
2273 2017-04-14  Dan Bernstein  <mitz@apple.com>
2274
2275         [ios-simulator] API test WebKit2.AdditionalReadAccessAllowedURLs is failing
2276         https://bugs.webkit.org/show_bug.cgi?id=170856
2277
2278         Disabled the newly-added test in the Simulator, which doesn’t enforce sandboxing.
2279
2280         * TestWebKitAPI/Tests/WebKit2Cocoa/AdditionalReadAccessAllowedURLs.mm:
2281
2282 2017-04-14  Jonathan Bedard  <jbedard@apple.com>
2283
2284         webkitpy: Ignore previously launched pid when system is under stress
2285         https://bugs.webkit.org/show_bug.cgi?id=170741
2286
2287         Unreviewed infrastructure fix.
2288
2289         Drivers are destroyed between failing layout tests, which is not necessary and
2290         prevents the work-around implemented in https://bugs.webkit.org/show_bug.cgi?id=170741.
2291
2292         * Scripts/webkitpy/layout_tests/controllers/layout_test_runner.py:
2293         (Worker._kill_driver): Do not destroy drivers when they are stopped.
2294         * Scripts/webkitpy/port/driver.py:
2295         (Driver.stop): Reset driver values set in initializer.
2296
2297 2017-04-14  Andy Estes  <aestes@apple.com>
2298
2299         [ios-simulator] API test WebKit2.WKWebProcessPlugInRangeHandle timing out
2300         https://bugs.webkit.org/show_bug.cgi?id=167594
2301
2302         Re-enabled this API test now that webkit.org/b/161967 is fixed.
2303
2304         * TestWebKitAPI/Tests/WebKit2Cocoa/BundleRangeHandle.mm:
2305         (TEST):
2306
2307 2017-04-14  Andy Estes  <aestes@apple.com>
2308
2309         [ios-simulator] API test WebKit2.DataDetectionReferenceDate timing out
2310         https://bugs.webkit.org/show_bug.cgi?id=161967
2311
2312         Reviewed by Alexey Proskuryakov.
2313
2314         * TestWebKitAPI/Tests/WebKit2Cocoa/DataDetection.mm:
2315         (TEST): Re-enabled WebKit2.DataDetectionReferenceDate.
2316
2317 2017-04-14  Ryan Haddad  <ryanhaddad@apple.com>
2318
2319         Unreviewed, rolling out r215363.
2320
2321         This change causes LayoutTests to exit early with crashes.
2322
2323         Reverted changeset:
2324
2325         "webkitpy: Ignore previously launched pid when system is under
2326         stress"
2327         https://bugs.webkit.org/show_bug.cgi?id=170741
2328         http://trac.webkit.org/changeset/215363
2329
2330 2017-04-14  Jonathan Bedard  <jbedard@apple.com>
2331
2332         webkitpy: Ignore previously launched pid when system is under stress
2333         https://bugs.webkit.org/show_bug.cgi?id=170741
2334
2335         Unreviewed infrastructure fix.
2336
2337         Drivers are destroyed between failing layout tests, which is not necessary and
2338         prevents the work-around implemented in https://bugs.webkit.org/show_bug.cgi?id=170741.
2339
2340         * Scripts/webkitpy/layout_tests/controllers/layout_test_runner.py:
2341         (Worker._kill_driver): Do not destroy drivers when they are stopped.
2342
2343 2017-04-14  Jonathan Bedard  <jbedard@apple.com>
2344
2345         webkitpy: Ignore previously launched pid when system is under stress
2346         https://bugs.webkit.org/show_bug.cgi?id=170741
2347
2348         Unreviewed infrastructure fix.
2349
2350         Server processes are destroyed in the driver, which is not necessary and prevents
2351         the work-around implemented in https://bugs.webkit.org/show_bug.cgi?id=170741.
2352
2353         * Scripts/webkitpy/port/driver.py:
2354         (Driver.run_test): Do not destroy server process.
2355         (Driver._start): Only create the server process if it is None.
2356         (Driver.stop): Do not destroy server process.
2357
2358 2017-04-13  Dan Bernstein  <mitz@apple.com>
2359
2360         [Cocoa] Allow clients to specify in _WKProcessPoolConfiguration additional directory sandbox extensions
2361         https://bugs.webkit.org/show_bug.cgi?id=170387
2362
2363         Reviewed by Sam Weinig.
2364
2365         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2366         * TestWebKitAPI/Tests/WebKit2Cocoa/AdditionalReadAccessAllowedURLs.mm: Added.
2367         (TEST):
2368         * TestWebKitAPI/Tests/WebKit2Cocoa/AdditionalReadAccessAllowedURLsPlugin.mm: Added.
2369         (-[AdditionalReadAccessAllowedURLsPlugIn webProcessPlugIn:didCreateBrowserContextController:]):
2370         (-[AdditionalReadAccessAllowedURLsPlugIn dealloc]):
2371         (-[AdditionalReadAccessAllowedURLsPlugIn readStringFromURL:completionHandler:]):
2372         * TestWebKitAPI/Tests/WebKit2Cocoa/AdditionalReadAccessAllowedURLsProtocol.h: Added.
2373
2374 2017-04-13  Jonathan Bedard  <jbedard@apple.com>
2375
2376         webkitpy: Ignore previously launched pid when system is under stress
2377         https://bugs.webkit.org/show_bug.cgi?id=170741
2378
2379         Reviewed by David Kilzer.
2380
2381         We have seen cases where xcrun simctl launch will return a pid of a previous
2382         process and the process will appear to be running even though it is crashing.
2383         Ensure that the PID that simulator_process is receiving is not the pid of the
2384         previously run process.
2385
2386         * Scripts/webkitpy/port/simulator_process.py:
2387         (SimulatorProcess._start): Check to make sure we aren't receiving an old PID.
2388
2389 2017-04-13  Jonathan Bedard  <jbedard@apple.com>
2390
2391         Build ImageDiff with host SDK
2392         https://bugs.webkit.org/show_bug.cgi?id=168531
2393
2394         Reviewed by David Kilzer.
2395
2396         ImageDiff should be built and run with the host SDK, not the target SDK.
2397         Build ImageDiff twice, once for the target SDK and once for the host
2398         as an intermediate step towards building for only the host SDK.
2399
2400         * ImageDiff/Makefile: Added.
2401         * Makefile: Add ImageDiff to list of targets.
2402         * Scripts/build-imagediff: Build bmalloc and WTF for the host.
2403         * Scripts/build-webkit: Build ImageDiff for host.
2404         * Scripts/webkitdirs.pm: Export extractNonMacOSHostConfiguration.
2405         (extractNonMacOSHostConfiguration): Remove non-host configuration data from the array.
2406         * Scripts/webkitperl/webkitdirs_unittest/extractNonMacOSHostConfiguration.pl: Added.
2407         * Scripts/webkitpy/port/base.py:
2408         (Port.check_build): Attempt to build image diff if not found.
2409         (Port.check_image_diff): Enable logging flag.
2410         (Port._build_image_diff): Allow webkitpy to build image-diff during testing.
2411
2412 2017-04-12  Alex Christensen  <achristensen@webkit.org>
2413
2414         Clean up SharedBuffer public functions
2415         https://bugs.webkit.org/show_bug.cgi?id=170795
2416
2417         Reviewed by Andreas Kling.
2418
2419         * TestWebKitAPI/Tests/WebCore/SharedBuffer.cpp:
2420         (TestWebKitAPI::TEST_F):
2421
2422 2017-04-12  Dan Bernstein  <mitz@apple.com>
2423
2424         [Mac] Future-proof .xcconfig files
2425         https://bugs.webkit.org/show_bug.cgi?id=170802
2426
2427         Reviewed by Tim Horton.
2428
2429         * DumpRenderTree/mac/Configurations/Base.xcconfig:
2430         * DumpRenderTree/mac/Configurations/DebugRelease.xcconfig:
2431         * MiniBrowser/Configurations/Base.xcconfig:
2432         * MiniBrowser/Configurations/DebugRelease.xcconfig:
2433         * TestWebKitAPI/Configurations/Base.xcconfig:
2434         * TestWebKitAPI/Configurations/DebugRelease.xcconfig:
2435         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
2436         * WebKitTestRunner/Configurations/Base.xcconfig:
2437         * WebKitTestRunner/Configurations/DebugRelease.xcconfig:
2438
2439 2017-04-12  Alex Christensen  <achristensen@webkit.org>
2440
2441         Remove unused SharedBuffer::wrapCFDataArray
2442         https://bugs.webkit.org/show_bug.cgi?id=170794
2443
2444         Reviewed by Brady Eidson.
2445
2446         * TestWebKitAPI/Tests/WebCore/cocoa/SharedBuffer.mm:
2447         (TestWebKitAPI::TEST_F):
2448
2449 2017-04-12  Yusuke Suzuki  <utatane.tea@gmail.com>
2450
2451         [WTF] Introduce Thread class and use RefPtr<Thread> and align Windows Threading implementation semantics to Pthread one
2452         https://bugs.webkit.org/show_bug.cgi?id=170502
2453
2454         Reviewed by Mark Lam.
2455
2456         Mechanical change. Use Thread:: APIs.
2457
2458         * DumpRenderTree/JavaScriptThreading.cpp:
2459         (runJavaScriptThread):
2460         (startJavaScriptThreads):
2461         (stopJavaScriptThreads):
2462         * DumpRenderTree/mac/DumpRenderTree.mm:
2463         (testThreadIdentifierMap):
2464         * TestWebKitAPI/Tests/WTF/Condition.cpp:
2465         * TestWebKitAPI/Tests/WTF/Lock.cpp:
2466         (TestWebKitAPI::runLockTest):
2467         * TestWebKitAPI/Tests/WTF/ParkingLot.cpp:
2468
2469 2017-04-12  Alex Christensen  <achristensen@webkit.org>
2470
2471         Modernize vector adoption
2472         https://bugs.webkit.org/show_bug.cgi?id=170758
2473
2474         Reviewed by Geoffrey Garen.
2475
2476         * TestWebKitAPI/Tests/WebCore/SharedBuffer.cpp:
2477         (TestWebKitAPI::TEST_F):
2478
2479 2017-04-11  Dean Jackson  <dino@apple.com>
2480
2481         Disable outdated WritableStream API
2482         https://bugs.webkit.org/show_bug.cgi?id=170749
2483         <rdar://problem/31446233>
2484
2485         Reviewed by Tim Horton.
2486
2487         The API we implement is no longer accurate. Disable it until we
2488         are compatible with the new specification
2489
2490         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
2491
2492 2017-04-11  David Quesada  <david_quesada@apple.com>
2493
2494         Add SPI for handling geolocation authorization requests
2495         https://bugs.webkit.org/show_bug.cgi?id=170362
2496         rdar://problem/17508627
2497
2498         Reviewed by Alex Christensen.
2499
2500         Add API tests for the new WKUIDelegate SPI for allowing or denying websites permission
2501         to use geolocation. Adopt the new WKProcessPool._coreLocationProvider property to
2502         provide a stub object to simulate the various configurations of geolocation permissions:
2503         1. The app doesn't have permission to use geolocation.
2504         2. The app is allowed to use geolocation, but the UI delegate denies the web view permission.
2505         3. The app is allowed to use geolocation, and the UI delegate allows the web view permission.
2506
2507         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2508         * TestWebKitAPI/Tests/WebKit2Cocoa/Geolocation.mm: Added.
2509         (-[TestCoreLocationProvider setListener:]):
2510         (-[TestCoreLocationProvider requestGeolocationAuthorization]):
2511         (-[TestCoreLocationProvider start]):
2512         (-[TestCoreLocationProvider stop]):
2513         (-[TestCoreLocationProvider setEnableHighAccuracy:]):
2514         (expectException):
2515         (-[GeolocationTestUIDelegate _webView:requestGeolocationAuthorizationForURL:frame:decisionHandler:]):
2516         (-[GeolocationTestUIDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
2517         (TestWebKitAPI::TEST):
2518         * TestWebKitAPI/Tests/WebKit2Cocoa/GeolocationGetCurrentPositionResult.html: Added.
2519
2520 2017-04-10  Matt Rajca  <mrajca@apple.com>
2521
2522         Change autoplay state to "prevented" when media is paused due to restrictions.
2523         https://bugs.webkit.org/show_bug.cgi?id=170686
2524
2525         Reviewed by Alex Christensen.
2526
2527         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2528         * TestWebKitAPI/Tests/WebKit2/autoplay-muted-with-controls.html: Added test.
2529         * TestWebKitAPI/Tests/WebKit2Cocoa/WebsitePolicies.mm:
2530         (TEST):
2531
2532 2017-04-11  Yusuke Suzuki  <utatane.tea@gmail.com>
2533
2534         [WebCore][JSC] ResourceUsageData.{timeOfNextEdenCollection,timeOfNextFullCollection} should be MonotonicTime
2535         https://bugs.webkit.org/show_bug.cgi?id=170725
2536
2537         Reviewed by Sam Weinig.
2538
2539         * TestWebKitAPI/Tests/WTF/Time.cpp:
2540         (TestWebKitAPI::TEST):
2541
2542 2017-04-10  Alex Christensen  <achristensen@webkit.org>
2543
2544         Revert r215217
2545         https://bugs.webkit.org/show_bug.cgi?id=170703
2546
2547         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
2548
2549 2017-04-10  Alex Christensen  <achristensen@webkit.org>
2550
2551         Continue enabling WebRTC
2552         https://bugs.webkit.org/show_bug.cgi?id=170703
2553
2554         Reviewed by Youenn Fablet.
2555
2556         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
2557
2558 2017-04-10  Kocsen Chung  <kocsen_chung@apple.com>
2559
2560         Have parseRevisionProperty use default repo name as the Buildbot key.
2561         https://bugs.webkit.org/show_bug.cgi?id=170696
2562
2563         Reviewed by Daniel Bates.
2564
2565         Previously, we needed to set a key and a fallbackKey when addressing
2566         Buildbot data for Internal. That is no longer necessary as we can make a safe assumption
2567         that the repo name maps exactly to that key for every repository other
2568         than WebKit.
2569
2570         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotIteration.js:
2571         Set `key = repositoryName` and only use fallback keys when dealing with WebKit.
2572
2573 2017-04-10  Aakash Jain  <aakash_jain@apple.com>
2574
2575         Add test262 JavaScriptCore tests to dashboard
2576         https://bugs.webkit.org/show_bug.cgi?id=170711
2577
2578         Rubber-stamped by Joseph Pecoraro.
2579
2580         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/WebKitBuildbot.js:
2581         (WebKitBuildbot): Added test262 JSC tests to dashboard.
2582
2583 2017-04-10  Alex Christensen  <achristensen@webkit.org>
2584
2585         REGRESSION(r195479) First main resource load in new WebProcess bypasses content extensions
2586         https://bugs.webkit.org/show_bug.cgi?id=170707
2587         <rdar://problem/27788755>
2588
2589         Reviewed by Tim Horton.
2590
2591         * TestWebKitAPI/Tests/WebKit2Cocoa/WKUserContentExtensionStore.mm:
2592         (-[ContentExtensionDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
2593         (TEST_F):
2594         * TestWebKitAPI/Tests/WebKit2Cocoa/WebsitePolicies.mm:
2595         (-[ContentBlockingWebsitePoliciesDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
2596         (-[ContentBlockingWebsitePoliciesDelegate _webView:decidePolicyForNavigationAction:decisionHandler:]):
2597         (TEST):
2598
2599 2017-04-10  Alex Christensen  <achristensen@webkit.org>
2600
2601         Add API to get available content extension identifiers in a WKContentExtensionStore
2602         https://bugs.webkit.org/show_bug.cgi?id=170093
2603
2604         Reviewed by Geoffrey Garen.
2605
2606         * TestWebKitAPI/Tests/WebKit2Cocoa/WKUserContentExtensionStore.mm:
2607         (TEST_F):
2608
2609 2017-04-10  Wenson Hsieh  <wenson_hsieh@apple.com>
2610
2611         Refactor DataInteractionTests.UnresponsivePageDoesNotHangUI to not check against a fixed time interval
2612         https://bugs.webkit.org/show_bug.cgi?id=170658
2613
2614         Reviewed by Tim Horton.
2615
2616         Uses ignoreSynchronousMessagingTimeoutsForTesting to ensure that this test times out if data interaction
2617         preparation is synchronous, or passes if it is asynchronous.
2618
2619         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
2620         (TestWebKitAPI::TEST):
2621         * TestWebKitAPI/cocoa/TestWKWebView.h:
2622         * TestWebKitAPI/cocoa/TestWKWebView.mm:
2623         (-[TestWKWebView initWithFrame:]):
2624         (-[TestWKWebView initWithFrame:configuration:processPoolConfiguration:]):
2625         (-[TestWKWebView _setUpTestWindow:]):
2626
2627 2017-04-10  Brent Fulgham  <bfulgham@apple.com>
2628
2629         [WK2][macOS] Block access to Apple Events before launch.
2630         https://bugs.webkit.org/show_bug.cgi?id=170626
2631         <rdar://problem/16079334>
2632
2633         Reviewed by Alexey Proskuryakov.
2634
2635         Add a new TestWebKitAPI test that fails if Apple Events are sent.
2636
2637         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj: Add new files.
2638         * TestWebKitAPI/Tests/WebKit2/mac/InjectedBundleAppleEvent.cpp: Added.
2639         (TestWebKitAPI::didReceiveMessageFromInjectedBundle):
2640         (TestWebKitAPI::didFinishLoadForFrame):
2641         (TestWebKitAPI::TEST):
2642         * TestWebKitAPI/Tests/WebKit2/mac/InjectedBundleAppleEvent_Bundle.cpp: Added.
2643         (TestWebKitAPI::InjectedBundleAppleEventTest::InjectedBundleAppleEventTest):
2644         (TestWebKitAPI::InjectedBundleAppleEventTest::didCreatePage):
2645
2646 2017-04-10  Guillaume Emont  <guijemont@igalia.com>
2647
2648         [JSC] Do not run FTL stress tests on MIPS
2649         https://bugs.webkit.org/show_bug.cgi?id=170684
2650
2651         Reviewed by Carlos Alberto Lopez Perez.
2652
2653         run-jsc-stress-tests does not correctly detect MIPS platforms, and its
2654         logic to detect if the platform supports FTL ignores that MIPS does
2655         not support FTL. This adds detection of MIPS (with the magic number
2656         determined empirically) and fixes the determination of whether we
2657         support FTL.
2658
2659         * Scripts/run-jsc-stress-tests:
2660
2661 2017-04-10  Jonathan Bedard  <jbedard@apple.com>
2662
2663         webkitpy: Increase estimate for processes run by iOS Simulators
2664         https://bugs.webkit.org/show_bug.cgi?id=170678
2665         <rdar://problem/31534061>
2666
2667         Reviewed by Aakash Jain.
2668
2669         Previously, it was estimated that each simulated iOS device would run about 100
2670         processes.  With newer versions of iOS, this is closer to 125.
2671
2672         * Scripts/webkitpy/port/ios_simulator.py:
2673         (IOSSimulatorPort): Increase process estimate from 100 to 125.
2674
2675 2017-04-10  Adrian Perez de Castro  <aperez@igalia.com>
2676
2677         [GTK] Misplaced right click menu on web page due to deprecated gtk_menu_popup()
2678         https://bugs.webkit.org/show_bug.cgi?id=170553
2679
2680         Reviewed by Michael Catanzaro.
2681
2682         Use gtk_menu_popup_at_pointer() and gtk_menu_popup_at_rect() when
2683         building with GTK+ 3.22 or newer. This allows the Wayland GTK+ backend
2684         to properly position popup menus, and also avoids using functions
2685         which were deprecated starting at that GTK+ release.
2686
2687         * MiniBrowser/gtk/BrowserSearchBar.c:
2688         (searchEntryMenuIconPressedCallback):
2689         Update MiniBrowser to use gtk_menu_popup_at_pointer().
2690
2691 2017-04-10  Wenson Hsieh  <wenson_hsieh@apple.com>
2692
2693         REGRESSION (r214403): fast/events/drag-to-navigate.html and fast/events/only-valid-drop-targets-receive-file-drop.html failing
2694         https://bugs.webkit.org/show_bug.cgi?id=170677
2695         <rdar://problem/31512633>
2696
2697         Reviewed by Tim Horton.
2698
2699         Fixes two drag and drop LayoutTests by introducing and enabling a TestOptions switch (enableDragDestinationActionLoad)
2700         to allow dropping URLs to trigger page navigation.
2701
2702         * DumpRenderTree/TestOptions.h:
2703         * DumpRenderTree/TestOptions.mm:
2704         (TestOptions::TestOptions):
2705         * DumpRenderTree/mac/DumpRenderTree.mm:
2706         (resetWebViewToConsistentStateBeforeTesting):
2707         * DumpRenderTree/mac/UIDelegate.h:
2708         * DumpRenderTree/mac/UIDelegate.mm:
2709         (-[UIDelegate resetToConsistentStateBeforeTesting:]):
2710         (-[UIDelegate webView:dragDestinationActionMaskForDraggingInfo:]):
2711
2712 2017-04-10  Fujii Hironori  <Hironori.Fujii@sony.com>
2713
2714         update-webkit-dependency should report $response->message for diagnose
2715         https://bugs.webkit.org/show_bug.cgi?id=170666
2716
2717         Reviewed by Alex Christensen.
2718
2719         * Scripts/update-webkit-dependency: Print $response->message to STDERR if an error happens.
2720
2721 2017-04-10  Wenson Hsieh  <wenson_hsieh@apple.com>
2722
2723         Data interaction on an image enclosed by an anchor should vend the anchor's URL
2724         https://bugs.webkit.org/show_bug.cgi?id=170660
2725         <rdar://problem/31043220>
2726
2727         Reviewed by Tim Horton.
2728
2729         Adds two new unit tests covering cases where data interaction is triggered from an image nested underneath an
2730         anchor. In one of the tests, the link has an href, and in the other, its href is missing, in which case we
2731         should fall back to the image URL instead. Also fixes a related unit test that was trying to check selection
2732         rects, but should not be.
2733
2734         See WebCore ChangeLog for more details.
2735
2736         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2737         * TestWebKitAPI/Tests/WebKit2Cocoa/image-in-link-and-input.html: Added.
2738         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
2739         (TestWebKitAPI::TEST):
2740
2741 2017-04-10  Carlos Garcia Campos  <cgarcia@igalia.com>
2742
2743         [GTK] Remove the GDK dependency from ImageDiff
2744         https://bugs.webkit.org/show_bug.cgi?id=85299
2745
2746         Reviewed by Žan Doberšek.
2747
2748         Add a cairo only implementation of ImageDiff. We currently have 3 different implementations of ImageDiff: the
2749         Gdk based one used by GTK+ port, the cairo based one used by WinCairo and the CG based one. Most of the code is
2750         actually common in all of them, but it's duplicated. So, I've taken advantage of this patch to refactor the
2751         ImageDiff code to share the common implementation. This patch adds the cross-platform code, and the cairo
2752         implementation and enables it in the GTK+ port. In follow up patches we can move WinCairo to this implementation
2753         and also add CG implementation.
2754
2755         * ImageDiff/CMakeLists.txt:
2756         * ImageDiff/Cairo.cmake: Added.
2757         * ImageDiff/ImageDiff.cpp: Added.
2758         (main):
2759         * ImageDiff/PlatformGTK.cmake:
2760         * ImageDiff/PlatformImage.cpp: Added.
2761         (ImageDiff::PlatformImage::isCompatible):
2762         (ImageDiff::PlatformImage::difference):
2763         * ImageDiff/PlatformImage.h: Added.
2764         * ImageDiff/cairo/PlatformImageCairo.cpp: Added.
2765         (ImageDiff::PlatformImage::createFromStdin):
2766         (ImageDiff::PlatformImage::createFromDiffData):
2767         (ImageDiff::PlatformImage::PlatformImage):
2768         (ImageDiff::PlatformImage::~PlatformImage):
2769         (ImageDiff::PlatformImage::width):
2770         (ImageDiff::PlatformImage::height):
2771         (ImageDiff::PlatformImage::rowBytes):
2772         (ImageDiff::PlatformImage::hasAlpha):
2773         (ImageDiff::PlatformImage::pixels):
2774         (ImageDiff::PlatformImage::writeAsPNGToStdout):
2775         * ImageDiff/gtk/ImageDiff.cpp: Removed.
2776
2777 2017-04-10  Carlos Garcia Campos  <cgarcia@igalia.com>
2778
2779         REGRESSION(r214426): [GTK] Test media/video-click-dblckick-standalone.html started to fail in the bots after r214426
2780         https://bugs.webkit.org/show_bug.cgi?id=170667
2781
2782         Reviewed by Žan Doberšek.
2783
2784         In r214666 we disabled modern media controls runtime feature for the GTK+ port, but layout tests still override
2785         that value.
2786
2787         * WebKitTestRunner/gtk/TestControllerGtk.cpp:
2788         (WTR::TestController::updatePlatformSpecificTestOptionsForTest): Disable modern media controls.
2789
2790 2017-04-10  Carlos Garcia Campos  <cgarcia@igalia.com>
2791
2792         WTR: Avoid conversion from platform image to WKImage and then to platform image again when dumping pixel results
2793         https://bugs.webkit.org/show_bug.cgi?id=170653
2794
2795         Reviewed by Tim Horton.
2796
2797         When dumping pixels from a web view snapshot, we create a platform image that is then converted to a WKImage,
2798         which is a ShareableBitmap, so the image is rendered into a graphics context. Then we immediately extract the
2799         platform image back from the WKImage to dump the pixels. We could avoid that conversion by taking the web
2800         snapshot from TestInvocation::dumpPixelsAndCompareWithExpected().
2801
2802         * WebKitTestRunner/PlatformWebView.h: Add PlatformImage typedef and use it as return value of windowSnapshotImage().
2803         * WebKitTestRunner/TestInvocation.cpp:
2804         (WTR::TestInvocation::dumpResults): Pass the WKImage to dumpPixelsAndCompareWithExpected() only when pixel
2805         results were created in the web process.
2806         * WebKitTestRunner/TestInvocation.h: Make WKImage a default paramater of dumpPixelsAndCompareWithExpected().
2807         * WebKitTestRunner/cairo/TestInvocationCairo.cpp:
2808         (WTR::TestInvocation::dumpPixelsAndCompareWithExpected): Create the cairo surface from the given WKimage in case
2809         of web contents snapshot, and use PlatformWebView::windowSnapshotImage() in case of web view snapshot.
2810         * WebKitTestRunner/cg/TestInvocationCG.cpp:
2811         (WTR::createCGContextFromCGImage): Changed to receive a CGImageRef and renamed.
2812         (WTR::createCGContextFromImage): Get the CGImageRef from the WKImage and call createCGContextFromCGImage().
2813         (WTR::paintRepaintRectOverlay): It receives now the image size instead of the WKImage.
2814         (WTR::TestInvocation::dumpPixelsAndCompareWithExpected): Create the CGContextRef from the WKImage in case of web
2815         contents snpashot, and use PlatformWebView::windowSnapshotImage() in case of web view snapshot.
2816         * WebKitTestRunner/gtk/PlatformWebViewGtk.cpp:
2817         (WTR::PlatformWebView::windowSnapshotImage): Return the cairo surface instead of creating a WKImage. Also use
2818         RGB24 format to match what mac does (kCGWindowImageShouldBeOpaque).
2819         * WebKitTestRunner/ios/PlatformWebViewIOS.mm:
2820         (WTR::PlatformWebView::windowSnapshotImage): Return the CGImageRef instead of creating a WKImage.
2821         * WebKitTestRunner/mac/PlatformWebViewMac.mm:
2822         (WTR::PlatformWebView::windowSnapshotImage): Ditto.
2823
2824 2017-04-10  Chris Dumez  <cdumez@apple.com>
2825
2826         Drop Timer::startOneShot() overload taking a double
2827         https://bugs.webkit.org/show_bug.cgi?id=170659
2828
2829         Reviewed by Yusuke Suzuki.
2830
2831         Drop Timer::startOneShot() overload taking a double as people should use Seconds type now.
2832
2833         * TestWebKitAPI/Tests/WTF/RunLoop.cpp:
2834         (TestWebKitAPI::TEST):
2835         * WebKitTestRunner/InjectedBundle/gtk/TestRunnerGtk.cpp:
2836         (WTR::TestRunner::initializeWaitToDumpWatchdogTimerIfNeeded):
2837
2838 2017-04-09  Wenson Hsieh  <wenson_hsieh@apple.com>
2839
2840         [WK2] Add infrastructure to perform actions after an asynchronous position information request finishes
2841         https://bugs.webkit.org/show_bug.cgi?id=170658
2842         <rdar://problem/31431450>
2843
2844         Reviewed by Tim Horton.
2845
2846         Adds a new test verifying that when a web page is unresponsive, the process of preparing for data interaction
2847         does not also cause the UI process to spin. We assume here that the call to prepare must be asynchronous, so it
2848         should complete before the unresponsiveness timeout is triggered.
2849
2850         See WebKit2 ChangeLog for more details.
2851
2852         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
2853         (TestWebKitAPI::TEST):
2854
2855 2017-04-09  Chris Dumez  <cdumez@apple.com>
2856
2857         Drop Timer::startRepeating() overload taking a double
2858         https://bugs.webkit.org/show_bug.cgi?id=170656
2859
2860         Reviewed by Yusuke Suzuki.
2861
2862         Drop Timer::startRepeating() overload taking a double as people should use Seconds type now.
2863
2864         * TestWebKitAPI/Tests/WTF/RunLoop.cpp:
2865         (TestWebKitAPI::TEST):
2866
2867 2017-04-09  Youenn Fablet  <youenn@apple.com>
2868
2869         Resync WPT tests up to 23cd07d4685d81024b7440e042f8bbdb33e7ddec
2870         https://bugs.webkit.org/show_bug.cgi?id=170647
2871
2872         Reviewed by Sam Weinig.
2873
2874         * Scripts/webkitpy/common/checkout/scm/git.py:
2875         (Git.fetch): Fetching origin remote in case there is more than one.
2876
2877 2017-04-08  Simon Fraser  <simon.fraser@apple.com>
2878
2879         Update CSSProperties.json with correct fill-and-stroke status, and other cleanup
2880         https://bugs.webkit.org/show_bug.cgi?id=170643
2881
2882         Reviewed by Chris Dumez.
2883         
2884         Update the CSSProperties.json style checker to allow:
2885             - comments in codegen_properties
2886             - obsolete-category and obsolete-url in specification blocks
2887             - renamed "done" to "supported"
2888             
2889         Fix some references to codegen_properties to be codegen-properties.
2890
2891         * Scripts/webkitpy/style/checkers/jsonchecker.py:
2892         (JSONCSSPropertiesChecker.validate_status_type):
2893         (JSONCSSPropertiesChecker.validate_property_specification):
2894         (JSONCSSPropertiesChecker.check_codegen_properties):
2895
2896 2017-04-08  Youenn Fablet  <youenn@apple.com>
2897
2898         WebRTC tests gardening
2899         https://bugs.webkit.org/show_bug.cgi?id=170508
2900
2901         Reviewed by Eric Carlson.
2902
2903         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
2904
2905 2017-04-07  Keith Miller  <keith_miller@apple.com>
2906
2907         Add a PriorityQueue class
2908         https://bugs.webkit.org/show_bug.cgi?id=170579
2909
2910         Reviewed by Saam Barati.
2911
2912         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2913         * TestWebKitAPI/Tests/WTF/PriorityQueue.cpp: Added.
2914         (operator  _z ):
2915         (enqueue):
2916         (dequeue):
2917         (TEST):
2918         (compareMove):
2919
2920 2017-04-07  Ryosuke Niwa  <rniwa@webkit.org>
2921
2922         Replace ES6SampleBench by ARES-6 in run-benchmark
2923         https://bugs.webkit.org/show_bug.cgi?id=170585
2924
2925         Reviewed by Saam Barati.
2926
2927         Updated the plan file for ES6SampleBench to run ARES-6 instead. Also increased the number of iterations
2928         from 4 to 8 to match teh default, and reduced the number of browser instances to use from 5 to 3.
2929
2930         * Scripts/webkitpy/benchmark_runner/data/patches/ARES-6.patch: Renamed from ES6SampleBench.patch.
2931         * Scripts/webkitpy/benchmark_runner/data/plans/ares6.plan: Renamed from es6bench.plan.
2932
2933 2017-04-07  Myles C. Maxfield  <mmaxfield@apple.com>
2934
2935         REGRESSION(r211382): Complex text with justification erroneously overflows containers
2936         https://bugs.webkit.org/show_bug.cgi?id=170399
2937         <rdar://problem/31442008>
2938
2939         Reviewed by Simon Fraser.
2940
2941         Check for the invariant that the sum of the advances is equal to m_totalWidth.
2942
2943         * TestWebKitAPI/Tests/WebCore/ComplexTextController.cpp:
2944         (TestWebKitAPI::TEST_F):
2945
2946 2017-04-07  Ryan Haddad  <ryanhaddad@apple.com>
2947
2948         [ios-simulator] API test WebKit2.WKWebProcessPlugInRangeHandle timing out
2949         https://bugs.webkit.org/show_bug.cgi?id=167594
2950
2951         Unreviewed test gardening.
2952
2953         Disable this test because it is still timing out on the bots.
2954
2955         * TestWebKitAPI/Tests/WebKit2Cocoa/BundleRangeHandle.mm:
2956         (TEST):
2957
2958 2017-04-07  Jonathan Bedard  <jbedard@apple.com>
2959
2960         REGRESSION (r214553): Allow layout-tests to be run from Xcode without re-directing stdout, stdin and stderr
2961         https://bugs.webkit.org/show_bug.cgi?id=170601
2962         <rdar://problem/31492696>
2963
2964         Reviewed by Simon Fraser.
2965
2966         * TestRunnerShared/IOSLayoutTestCommunication.cpp:
2967         (setUpIOSLayoutTestCommunication): Skip TCP setup if no port is in the environment.
2968         (tearDownIOSLayoutTestCommunication): Only teardown if TCP was used.
2969
2970 2017-04-07  Aakash Jain  <aakash_jain@apple.com>
2971
2972         Add support for test262 JavaScriptCore tests
2973         https://bugs.webkit.org/show_bug.cgi?id=170523
2974
2975         Reviewed by Daniel Bates.
2976
2977         * BuildSlaveSupport/build.webkit.org-config/config.json: Added bot433 and bot434.
2978         * BuildSlaveSupport/build.webkit.org-config/master.cfg:
2979         (RunTest262Tests): Added class to run Test262 tests.
2980         (RunTest262Tests.start): Added.
2981         (RunTest262Tests.countFailures): Method to count the failures.
2982         (Test262Factory): Added Test262 factory class.
2983         * BuildSlaveSupport/build.webkit.org-config/mastercfg_unittest.py:
2984         (RunTest262TestsTest): Added unit tests.
2985         (RunTest262TestsTest.assertResults): Helper method.
2986         (RunTest262TestsTest.test_no_regressions_output): Added test case.
2987         (test_failure_output): Same. 
2988         (test_failures_output): Same.
2989
2990 2017-04-07  Caio Lima  <ticaiolima@gmail.com>
2991
2992         [JSC] Change --debug option to --debugger
2993         https://bugs.webkit.org/show_bug.cgi?id=170587
2994
2995         Reviewed by Keith Miller.
2996
2997         * Scripts/run-jsc:
2998
2999         This patch is changing the new debugger flag for Tools/Scripts/run-jsc
3000         to --debugger to avoid shadowing --debug flag used to run JSC with
3001         Debug build.
3002
3003 2017-04-07  Brent Fulgham  <bfulgham@apple.com>
3004
3005         WebKit should percent encode single quotes in query strings
3006         https://bugs.webkit.org/show_bug.cgi?id=170561
3007         <rdar://problem/7415154>
3008
3009         Reviewed by Alex Christensen.
3010
3011         Add a test case for single-quote in the URL query string.
3012
3013         * TestWebKitAPI/Tests/WebCore/URLParser.cpp:
3014
3015 2017-04-06  Myles C. Maxfield  <mmaxfield@apple.com>
3016
3017         Make FontWithFeatures test font pass OTS
3018         https://bugs.webkit.org/show_bug.cgi?id=169788
3019
3020         Reviewed by Tim Horton.
3021
3022         OTS, or the OpenType Sanitizer, is a check which tells if fonts are properly formed.
3023         Previously, our FontWithFeatures test font did not pass this check. This patch updates
3024         the font to pass the checks. Now, we can use this font on other platforms, and
3025         contribute the font to the W3C for testing the CSS Fonts level 3 spec.
3026
3027         * FontWithFeatures/FontWithFeatures/FontCreator.cpp:
3028         (Generator::appendCFFTable):
3029         (Generator::Feature::operator<):
3030         (Generator::appendGSUBTable):
3031         (Generator::appendOS2Table):
3032         (Generator::appendFormat4CMAPTable):
3033         (Generator::appendHEADTable):
3034         (Generator::appendHHEATable):
3035         (Generator::NameRecord::operator<):
3036         (Generator::appendNameSubtable):
3037         (Generator::appendNAMETable):
3038
3039 2017-04-06  Alexey Proskuryakov  <ap@apple.com>
3040
3041         Disable flaky WebKit2.ResizeWithHiddenContentDoesNotHang
3042         for https://bugs.webkit.org/show_bug.cgi?id=170195
3043
3044         * TestWebKitAPI/Tests/WebKit2Cocoa/AnimatedResize.mm:
3045
3046 2017-04-06  Ryan Haddad  <ryanhaddad@apple.com>
3047
3048         Unreviewed, rolling out r215046.
3049
3050         This change broke internal builds.
3051
3052         Reverted changeset:
3053
3054         "WebRTC tests gardening"
3055         https://bugs.webkit.org/show_bug.cgi?id=170508
3056         http://trac.webkit.org/changeset/215046
3057
3058 2017-04-06  Youenn Fablet  <youenn@apple.com>
3059
3060         WebRTC tests gardening
3061         https://bugs.webkit.org/show_bug.cgi?id=170508
3062
3063         Reviewed by Eric Carlson.
3064
3065         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
3066
3067 2017-04-06  Jonathan Bedard  <jbedard@apple.com>
3068
3069         REGRESSION: Simulators failing to install after launch_app times out
3070         <rdar://problem/31478107>
3071
3072         Unreviewed infrastructure fix.
3073
3074         * Scripts/webkitpy/xcode/simulated_device.py:
3075         (SimulatedDevice.launch_app._install_timeout): Raise RuntimeError, not Exception.
3076
3077 2017-04-05  Joseph Pecoraro  <pecoraro@apple.com>
3078
3079         test262: module test progressions need updated expectations (@@iterator changes)
3080         https://bugs.webkit.org/show_bug.cgi?id=170535
3081
3082         Reviewed by Saam Barati.
3083
3084         * Scripts/run-jsc-stress-tests:
3085         Add :failDueToOutdatedOrBadTest to distinguish between a test failure
3086         in JavaScriptCore or an outdated or incorrect test262 test.
3087
3088 2017-04-05  Joseph Pecoraro  <pecoraro@apple.com>
3089
3090         Remove run-jsc-stress-tests benign warning about otool '-S' switch
3091         https://bugs.webkit.org/show_bug.cgi?id=170527
3092
3093         Reviewed by Aakash Jain.
3094
3095         * Scripts/run-jsc-stress-tests:
3096         The switch is not necessary and produces an error.
3097
3098 2017-04-05  Jonathan Bedard  <jbedard@apple.com>
3099
3100         webkitpy: Add pid logging for simulator processes
3101         https://bugs.webkit.org/show_bug.cgi?id=170505
3102
3103         Reviewed by Alexey Proskuryakov.
3104
3105         * Scripts/webkitpy/port/simulator_process.py:
3106         (SimulatorProcess._start.handler): Add pid to exception.
3107         (SimulatorProcess._start): Ditto.
3108         * Scripts/webkitpy/xcode/simulated_device.py:
3109         (SimulatedDevice.launch_app): Log pid when the process fails to launch and when
3110         a pid is successfully returned.
3111
3112 2017-04-05  Ryan Haddad  <ryanhaddad@apple.com>
3113
3114         Unreviewed, rolling out r214932.
3115
3116         This change broke an internal build.
3117
3118         Reverted changeset:
3119
3120         "[ios-simulator] API test WebKit2.DataDetectionReferenceDate
3121         timing out"
3122         https://bugs.webkit.org/show_bug.cgi?id=161967
3123         http://trac.webkit.org/changeset/214932
3124
3125 2017-04-05  Ryan Haddad  <ryanhaddad@apple.com>
3126
3127         Unreviewed, rolling out r214962.
3128
3129         Roll r214937 back in because it wasn't at fault for the build
3130         breakage.
3131
3132         Reverted changeset:
3133
3134         "Unreviewed, rolling out r214937."
3135         https://bugs.webkit.org/show_bug.cgi?id=170365
3136         http://trac.webkit.org/changeset/214962
3137
3138 2017-04-05  Ryan Haddad  <ryanhaddad@apple.com>
3139
3140         Unreviewed, rolling out r214937.
3141
3142         This change broke an internal build.
3143
3144         Reverted changeset:
3145
3146         "REGRESSION (r202472): Data Detection overwrites existing
3147         links in detected ranges"
3148         https://bugs.webkit.org/show_bug.cgi?id=170365
3149         http://trac.webkit.org/changeset/214937
3150
3151 2017-04-05  Jonathan Bedard  <jbedard@apple.com>
3152
3153         Increase timeouts for simulator testing
3154         Unreviewed infrastructure fix.
3155
3156         r214895 was not sufficient, increasing timeouts again.
3157
3158         * Scripts/webkitpy/xcode/simulated_device.py:
3159         (SimulatedDevice.install_app): Increase timeout from 3 to 10 seconds.
3160
3161 2017-04-05  Aakash Jain  <aakash_jain@apple.com>
3162
3163         Formatting fix to remove extra space.
3164
3165         Unreviewed formatting fix.
3166
3167         * Scripts/webkitdirs.pm:
3168         (isEmbeddedWebKit): Remove extra space.
3169
3170 2017-04-05  Aakash Jain  <aakash_jain@apple.com>
3171
3172         Rename isIOSLikeWebKit to isEmbeddedWebKit.
3173
3174         Rubber-stamped by Alexey Proskuryakov. 
3175
3176         * Scripts/webkitdirs.pm:
3177         (isEmbeddedWebKit): Added
3178         (isIOSLikeWebKit): Deleted.
3179
3180 2017-04-05  Alex Christensen  <achristensen@webkit.org>
3181
3182         Fix CMake build.
3183
3184         * TestRunnerShared/EventSerialization/mac/EventSerializerMac.mm:
3185         * TestRunnerShared/spi/CoreGraphicsSPI.h: Removed.
3186         * TestRunnerShared/spi/CoreGraphicsTestSPI.h: Copied from Tools/TestRunnerShared/spi/CoreGraphicsSPI.h.
3187         There is a CoreGraphicsSPI.h in WebCore and the CMake build was finding the wrong one.
3188         Since we just inherit the include paths from WebCore in the CMake build and since this SPI is only used for testing,
3189         I just renamed CoreGraphicsSPI.h to CoreGraphicsTestSPI.h to avoid any name collisions.
3190         * WebKitTestRunner/PlatformMac.cmake:
3191         Add some missing files.
3192         * WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:
3193
3194 2017-04-05  Keith Miller  <keith_miller@apple.com>
3195
3196         Add debug option to run-jsc script
3197         https://bugs.webkit.org/show_bug.cgi?id=170503
3198
3199         Reviewed by Yusuke Suzuki.
3200
3201         Adds a new option to the run-jsc script so that when passed
3202         "--debug" it will wrap the jsc call with an lldb invocation. If
3203         someone wishes to use a different debugger they can set the
3204         DEBUGGER environment variable. Additionally, run-jsc now exits
3205         with the exit status of the jsc call.
3206
3207         * Scripts/run-jsc:
3208
3209 2017-04-05  Andy Estes  <aestes@apple.com>
3210
3211         REGRESSION (r202472): Data Detection overwrites existing links in detected ranges
3212         https://bugs.webkit.org/show_bug.cgi?id=170365
3213         <rdar://problem/29205721>
3214
3215         Reviewed by Tim Horton.
3216
3217         * TestWebKitAPI/Tests/WebKit2Cocoa/DataDetection.mm:
3218         (expectLinkCount): Changed to only query links with the x-apple-data-detectors attribute.
3219         (TEST): Re-enabled the test, which now passes.
3220
3221 2017-04-05  Andy Estes  <aestes@apple.com>
3222
3223         [ios-simulator] API test WebKit2.WKWebProcessPlugInRangeHandle timing out
3224         https://bugs.webkit.org/show_bug.cgi?id=167594
3225
3226         Re-enabled this API test now that webkit.org/b/161967 is fixed.
3227
3228         * TestWebKitAPI/Tests/WebKit2Cocoa/BundleRangeHandle.mm:
3229         (TEST):
3230
3231 2017-04-05  Andy Estes  <aestes@apple.com>
3232
3233         [ios-simulator] API test WebKit2.DataDetectionReferenceDate timing out
3234         https://bugs.webkit.org/show_bug.cgi?id=161967
3235
3236         Reviewed by Alexey Proskuryakov.
3237
3238         * TestWebKitAPI/Tests/WebKit2Cocoa/DataDetection.mm:
3239         (TEST): Re-enabled WebKit2.DataDetectionReferenceDate.
3240
3241 2017-04-04  Simon Fraser  <simon.fraser@apple.com>
3242
3243         Various settings in Minibrowser are off by default, and should be on
3244         https://bugs.webkit.org/show_bug.cgi?id=170465
3245         rdar://problem/31421543
3246
3247         Reviewed by Tim Horton.
3248
3249         Explicitly set preferences that should be on by default to enabled, if they have not been
3250         set previously.
3251
3252         * MiniBrowser/mac/SettingsController.m:
3253         (-[SettingsController init]):
3254
3255 2017-04-04  JF Bastien  <jfbastien@apple.com>
3256
3257         Add JF Bastien as reviewer
3258         https://bugs.webkit.org/show_bug.cgi?id=170481
3259
3260         Reviewed by Mark Lam.
3261
3262         * Scripts/webkitpy/common/config/contributors.json:
3263
3264 2017-04-04  Jonathan Bedard  <jbedard@apple.com>
3265
3266         Increase timeouts for simulator testing
3267
3268         Unreviewed infrastructure fix.
3269
3270         * Scripts/webkitpy/port/simulator_process.py:
3271         (SimulatorProcess._start): Increase timeout from 3 to 6 seconds.
3272         * Scripts/webkitpy/xcode/simulated_device.py:
3273         (SimulatedDevice.install_app): Increase timeout from 1 to 3 seconds.
3274
3275 2017-04-04  Tim Horton  <timothy_horton@apple.com>
3276
3277         [Mac] -[WKWebView findMatchesForString:relativeToMatch:findOptions:maxResults:resultCollector:] invokes the resultCollector with didWrap = NO even when it wraps
3278         https://bugs.webkit.org/show_bug.cgi?id=165801
3279         <rdar://problem/29649535>
3280
3281         Reviewed by Wenson Hsieh.
3282
3283         * TestWebKitAPI/Tests/WebKit2Cocoa/FindInPage.mm:
3284         (TEST):
3285         Add some tests for wrapping finds.
3286
3287 2017-04-03  Joseph Pecoraro  <pecoraro@apple.com>
3288
3289         Add some new patterns to filter-build-webkit
3290         https://bugs.webkit.org/show_bug.cgi?id=170429
3291
3292         Reviewed by Alexey Proskuryakov.
3293
3294         * Scripts/filter-build-webkit:
3295         (setOutputFormatOption):
3296
3297 2017-04-03  Wenson Hsieh  <wenson_hsieh@apple.com>
3298
3299         Data interaction should register type identifiers in order of priority
3300         https://bugs.webkit.org/show_bug.cgi?id=170428
3301         <rdar://problem/30633296>
3302
3303         Reviewed by Tim Horton.
3304
3305         Augments existing unit tests to check for the existence and priority of type identifiers in the UIItemProviders
3306         created upon starting data interaction. Also fixes a race condition in one of the unit tests and adds a new unit
3307         test for data interaction from a textarea to an input.
3308
3309         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
3310         (checkTypeIdentifierPrecedesOtherTypeIdentifier):
3311         (TestWebKitAPI::TEST):
3312         * TestWebKitAPI/ios/DataInteractionSimulator.h:
3313         * TestWebKitAPI/ios/DataInteractionSimulator.mm:
3314         (-[DataInteractionSimulator _advanceProgress]):
3315         (-[DataInteractionSimulator sourceItemProviders]):
3316         (-[DataInteractionSimulator _webView:showCustomSheetForElement:]):
3317
3318 2017-04-03  Carlos Alberto Lopez Perez  <clopez@igalia.com>
3319
3320         [GTK][JHBuild] Update mesa repository url for tarballs
3321         https://bugs.webkit.org/show_bug.cgi?id=170431
3322
3323         Reviewed by Michael Catanzaro.
3324
3325         * gtk/jhbuild.modules:
3326
3327 2017-04-03  Joseph Pecoraro  <pecoraro@apple.com>
3328
3329         TestWebKitAPI: Warning: Multiple build commands for Ahem.ttf
3330         https://bugs.webkit.org/show_bug.cgi?id=170430
3331
3332         Reviewed by Alexey Proskuryakov.
3333
3334         * TestWebKitAPI/Tests/mac/Ahem.ttf: Removed.
3335         Eliminate one of the copies of Ahem.ttf.
3336
3337         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3338         Once eliminated, there is now only one Ahem.ttf that is copied
3339         to the Resources bundle. Drive-by sort the project file.
3340
3341 2017-04-03  Simon Fraser  <simon.fraser@apple.com>
3342
3343         Allow MiniBrowser windows to receive local file drags again
3344         https://bugs.webkit.org/show_bug.cgi?id=170422
3345
3346         Reviewed by Wenson Hsieh.
3347
3348         Adopt the new UIDelegate SPI to allow drops.
3349
3350         * MiniBrowser/mac/WK2BrowserWindowController.m:
3351         (-[WK2BrowserWindowController _webView:dragDestinationActionMaskForDraggingInfo:]):
3352
3353 2017-04-03  Carlos Alberto Lopez Perez  <clopez@igalia.com>
3354
3355         [GTK][JHBuild] Fetch libvpx from a release tarball instead of git
3356         https://bugs.webkit.org/show_bug.cgi?id=170426
3357
3358         Reviewed by Michael Catanzaro.
3359
3360         * gtk/jhbuild.modules:
3361
3362 2017-04-03  Nan Wang  <n_wang@apple.com>
3363
3364         AX: Expose link children when doing search predication on iOS
3365         https://bugs.webkit.org/show_bug.cgi?id=170424
3366         <rdar://problem/31413335>
3367
3368         Reviewed by Chris Fleizach.
3369
3370         * DumpRenderTree/ios/AccessibilityUIElementIOS.mm:
3371         (AccessibilityUIElement::uiElementForSearchPredicate):
3372         * WebKitTestRunner/InjectedBundle/ios/AccessibilityUIElementIOS.mm:
3373         (WTR::AccessibilityUIElement::uiElementForSearchPredicate):
3374
3375 2017-04-03  Brian Burg  <bburg@apple.com>
3376
3377         run-safari should support launching with custom language and locale
3378         https://bugs.webkit.org/show_bug.cgi?id=170397
3379
3380         Reviewed by Alexey Proskuryakov.
3381
3382         Hook up -AppleLanguages and -AppleLocale to command line options.
3383
3384         * Scripts/webkitdirs.pm:
3385         (printHelpAndExitForRunAndDebugWebKitAppIfNeeded):
3386         (argumentsForRunAndDebugMacWebKitApp):
3387
3388 2017-04-03  Jonathan Bedard  <jbedard@apple.com>
3389
3390         webkitpy: Provide option to skip install
3391         https://bugs.webkit.org/show_bug.cgi?id=170344
3392
3393         Reviewed by Alexey Proskuryakov.
3394
3395         Installing can take time for on device testing.  Provide an option to skip install
3396         and use whatever driver is currently installed on the device or simulator.
3397
3398         * Scripts/webkitpy/port/base.py:
3399         (Port.check_build): Do not check driver if skipping install.
3400         * Scripts/webkitpy/port/factory.py:
3401         (platform_options): Add '--no-install' option.
3402         * Scripts/webkitpy/port/ios.py:
3403         (IOSPort.setup_test_run): Check install option before installing.
3404
3405 2017-04-03  Keith Miller  <keith_miller@apple.com>
3406
3407         WebAssembly: Update spec tests
3408         https://bugs.webkit.org/show_bug.cgi?id=170361
3409
3410         Rubber-stamped by Saam Barati.
3411
3412         Update the runner to know the new wasm spec test harness code.
3413
3414         * Scripts/run-jsc-stress-tests:
3415
3416 2017-04-01  Alexey Proskuryakov  <ap@apple.com>
3417
3418         Rolling back <https://trac.webkit.org/r214697>, as it made WebKit2.DataDetectionReferenceDate time out.
3419
3420         Was REGRESSION (r202472): Data Detection overwrites existing links in detected ranges
3421         https://bugs.webkit.org/show_bug.cgi?id=170365
3422
3423         * TestWebKitAPI/Tests/WebKit2Cocoa/DataDetection.mm:
3424
3425 2017-04-01  Csaba Osztrogonác  <ossy@webkit.org>
3426
3427         Mac cmake buildfix after 214586.
3428         https://bugs.webkit.org/show_bug.cgi?id=170381
3429
3430         Unreviewed speculative buildfix.
3431
3432         * WebKitTestRunner/PlatformMac.cmake:
3433
3434 2017-04-01  Csaba Osztrogonác  <ossy@webkit.org>
3435
3436         Unreviewed speculative Mac cmake buildfix after r214586, just for fun.
3437         https://bugs.webkit.org/show_bug.cgi?id=161675
3438
3439         * WebKitTestRunner/PlatformMac.cmake:
3440
3441 2017-03-31  Jonathan Bedard  <jbedard@apple.com>
3442
3443         webkitpy: Add target host concept
3444         https://bugs.webkit.org/show_bug.cgi?id=170186
3445         <rdar://problem/31301797>
3446
3447         Reviewed by Alexey Proskuryakov.
3448
3449         Adding the idea of a target host. Target hosts are objects conforming to the
3450         structure of the SystemHost object in Scripts/webkitpy/common/system/systemhost.py
3451         Target hosts are the hosts associated with a worker process.
3452
3453         * Scripts/webkitpy/common/system/filesystem.py:
3454         (FileSystem.map_base_host_path): Convert a path from an absolute path on the base
3455         host to an absolute path on this host.
3456         (FileSystem.move_to_base_host): Move file from this host to the base host.
3457         (FileSystem.move_from_base_host): Move file from the base host to this host.
3458         (FileSystem.copy_to_base_host): Copy file from this host to the base host.
3459         (FileSystem.copy_from_base_host): Copy file from the base host to this host.
3460         * Scripts/webkitpy/common/system/filesystem_mock.py:
3461         (MockFileSystem.map_base_host_path): Convert a path from an absolute path on the base
3462         host to an absolute path on this host.
3463         (MockFileSystem.move_to_base_host): Move file from this host to the base host.
3464         (MockFileSystem.move_from_base_host): Move file from the base host to this host.
3465         (MockFileSystem.copy_to_base_host): Copy file from this host to the base host.
3466         (MockFileSystem.copy_from_base_host): Copy file from the base host to this host.
3467         * Scripts/webkitpy/port/base.py:
3468         (Port.target_host): Return host determined by worker number.
3469         (Port.abspath_for_test): Accept optional target_host argument to return location
3470         of test on a target host.
3471         (Port._driver_tempdir): Accept optional target_host argument to return a temporary
3472         directory on a target host.
3473         (Port.sample_process): Accept optional target_host argument to sample process on
3474         a target host.
3475         * Scripts/webkitpy/port/darwin.py:
3476         (DarwinPort.sample_process): Run sample process on target host.
3477         (DarwinPort.sample_file_path): Accept directory for file.
3478         (DarwinPort.spindump_file_path): Ditto.
3479         * Scripts/webkitpy/port/darwin_testcase.py:
3480         (DarwinTest.test_spindump): Check file movement.
3481         (DarwinTest.test_sample_process): Ditto.
3482         (DarwinTest.test_sample_process_exception):
3483         * Scripts/webkitpy/port/driver.py:
3484         (Driver.__init__): Add and set self._target_host variable.
3485         (Driver._start): Pass target host to _driver_tempdir().
3486         (Driver.stop): Call the target host's rmtree.
3487         (Driver._check_for_driver_timeout): Pass target host to sample_process.
3488         (Driver._check_for_driver_crash_or_unresponsiveness): Ditto.
3489         (Driver._command_from_driver_input): Pass target host to abspath_for_test and map
3490         layout test directory to target host.
3491         * Scripts/webkitpy/port/ios.py:
3492         (IOSPort):
3493         (IOSPort.target_host): Replaced device_for_worker_number.
3494         (IOSPort.setup_test_run): Replace device_for_worker_number with target_host.
3495         (IOSPort.device_for_worker_number): Replaced with target_host.
3496         * Scripts/webkitpy/port/server_process.py:
3497         (ServerProcess.__init__): Accept target_host instead of worker_number.
3498         (ServerProcess._start): Replace _host with _target_host.
3499         (ServerProcess._handle_timeout): Ditto.
3500         (ServerProcess._kill): Ditto.
3501         * Scripts/webkitpy/port/simulator_process.py:
3502         (SimulatorProcess.__init__): Accept target_host instead of worker_number.
3503         (SimulatorProcess._start): Replace _device with _target_host.
3504         (SimulatorProcess.stop): Ditto.
3505         (SimulatorProcess._kill): Deleted.
3506
3507 2017-03-31  Jonathan Bedard  <jbedard@apple.com>
3508
3509         Unreviewed fix after r214569
3510         https://bugs.webkit.org/show_bug.cgi?id=170255
3511
3512         Unreviewed infrastructure fix.
3513
3514         * Scripts/webkitpy/port/ios.py:
3515         (IOSPort.clean_up_test_run): Check if the device is defined before teardown.
3516
3517 2017-03-31  Andy Estes  <aestes@apple.com>
3518
3519         REGRESSION (r202472): Data Detection overwrites existing links in detected ranges
3520         https://bugs.webkit.org/show_bug.cgi?id=170365
3521         <rdar://problem/29205721>
3522
3523         Reviewed by Tim Horton.
3524
3525         * TestWebKitAPI/Tests/WebKit2Cocoa/DataDetection.mm:
3526         (expectLinkCount): Changed to only query links with the x-apple-data-detectors attribute.
3527         (TEST): Re-enabled the test, which now passes.
3528
3529 2017-03-31  Tim Horton  <timothy_horton@apple.com>
3530
3531         Mail can get stuck underneath FindController::findStringMatches after searching in a long message
3532         https://bugs.webkit.org/show_bug.cgi?id=170326
3533         <rdar://problem/30330395>
3534
3535         Reviewed by Simon Fraser.
3536
3537         * TestWebKitAPI/Tests/WebKit2Cocoa/FindInPage.mm:
3538         (TEST):
3539
3540 2017-03-31  Carlos Garcia Campos  <cgarcia@igalia.com>
3541
3542         Unreviewed. Fix WTR crashes in GTK+ port after r214413.
3543
3544         Fixes: http/tests/ssl/upgrade-origin-usage.html
3545                http/tests/websocket/tests/hybi/network-process-crash-error.html
3546                http/tests/websocket/tests/hybi/simple-wss.html
3547
3548         * WebKitTestRunner/gtk/TestControllerGtk.cpp:
3549         (WTR::TestController::platformContext): Return the context.
3550
3551 2017-03-30  Sam Weinig  <sam@webkit.org>
3552
3553         Expose the WKView SPI, _prepareForMoveToWindow:withCompletionHandler as WKWebView SPI
3554         https://bugs.webkit.org/show_bug.cgi?id=170315
3555
3556         Reviewed by Simon Fraser.
3557
3558         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3559         * TestWebKitAPI/Tests/WebKit2Cocoa/PrepareForMoveToWindow.mm: Added.
3560         Add test showing the completion handler is called.
3561
3562 2017-03-30  Filip Pizlo  <fpizlo@apple.com>
3563
3564         Air should support linear scan for optLevel<2
3565         https://bugs.webkit.org/show_bug.cgi?id=170161
3566
3567         Reviewed by Saam Barati.
3568         
3569         This makes us run a bunch of JS tests at optLevel=1 to force testing of this new compiler
3570         pipeline.
3571
3572         * Scripts/run-jsc-stress-tests:
3573
3574 2017-03-30  Aakash Jain  <aakash_jain@apple.com>
3575
3576         Support tvOS and watchOS in webkitdirs.pm
3577         https://bugs.webkit.org/show_bug.cgi?id=170267
3578
3579         Reviewed by Alexey Proskuryakov.
3580
3581         * Scripts/webkitdirs.pm:
3582         (determineXcodeSDK): Evaluate sdk for tvos and watchos.
3583         (xcodeSDKPlatformName): Added support for tvos and watchos.
3584         (determinePortName): Same.
3585         (isAppleCocoaWebKit): Same.
3586         (willUseAppleTVDeviceSDK): Added.
3587         (willUseAppleTVSimulatorSDK): Added.
3588         (willUseWatchDeviceSDK): Added.
3589         (willUseWatchSimulatorSDK): Added.
3590         (isTVOSWebKit): Added.
3591         (isWATCHOSWebKit): Added.
3592         (isIOSLikeWebKit): Added.
3593
3594 2017-03-30  Wenson Hsieh  <wenson_hsieh@apple.com>
3595
3596         [WK2] Touches should not cancel when showing a custom action sheet while data interaction is active
3597         https://bugs.webkit.org/show_bug.cgi?id=170291
3598         <rdar://problem/31301388>
3599
3600         Reviewed by Tim Horton.
3601
3602         Adds support for testing how the custom action sheet presentation codepath interacts with data interaction, as
3603         well as a new unit test. In this case, we force data interaction to fail if touches are canceled on the
3604         shared UIApplication, and verify that data interaction completes successfully.
3605
3606         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
3607         (TestWebKitAPI::TEST):
3608         * TestWebKitAPI/ios/DataInteractionSimulator.h:
3609         * TestWebKitAPI/ios/DataInteractionSimulator.mm:
3610         (-[DataInteractionSimulatorApplication _cancelAllTouches]):
3611         (-[DataInteractionSimulator initWithWebView:]):
3612         (-[DataInteractionSimulator simulateAllTouchesCanceled:]):
3613         (-[DataInteractionSimulator runFrom:to:]):
3614         (-[DataInteractionSimulator _advanceProgress]):
3615         (-[DataInteractionSimulator _webView:showCustomSheetForElement:]):
3616
3617 2017-03-30  Per Arne Vollan  <pvollan@apple.com>
3618
3619         [Win] Pass close_fds = True in Python popen call.
3620         https://bugs.webkit.org/show_bug.cgi?id=170172
3621
3622         Reviewed by Brent Fulgham.
3623
3624         This was previously not supported on Windows, but in Python 2.7.10 it is.
3625
3626         * Scripts/webkitpy/common/system/executive.py:
3627         (Executive._should_close_fds):
3628         * Scripts/webkitpy/port/server_process.py:
3629         (ServerProcess._start):
3630
3631 2017-03-30  Aakash Jain  <aakash_jain@apple.com>
3632
3633         Change my status to be a WebKit reviewer.
3634
3635         Unreviewed status update edit.
3636
3637         * Scripts/webkitpy/common/config/contributors.json:
3638
3639 2017-03-30  Carlos Alberto Lopez Perez  <clopez@igalia.com>
3640
3641         Change my status to be a WebKit reviewer.
3642
3643         Unreviewed status update edit.
3644
3645         * Scripts/webkitpy/common/config/contributors.json:
3646
3647 2017-03-29  Tim Horton  <timothy_horton@apple.com>
3648
3649         Swipe gesture tests don't work on macOS Sierra
3650         https://bugs.webkit.org/show_bug.cgi?id=161675
3651         <rdar://problem/23379930>
3652
3653         Reviewed by Darin Adler.
3654
3655         * DumpRenderTree/mac/UIScriptControllerMac.mm:
3656         (WTR::UIScriptController::platformPlayBackEventStream):
3657         (WTR::UIScriptController::beginBackSwipe):
3658         (WTR::UIScriptController::completeBackSwipe):
3659         * TestRunnerShared/EventSerialization/mac/EventSerializerMac.h: Copied from Tools/DumpRenderTree/mac/UIScriptControllerMac.mm.
3660         * TestRunnerShared/EventSerialization/mac/EventSerializerMac.mm: Added.
3661         (eventIsOfType):
3662         (eventIsOfTypes):
3663         (eventIsOfGestureType):
3664         (eventIsOfGestureTypes):
3665         (+[EventSerializer dictionaryForEvent:relativeToTime:]):
3666         (+[EventSerializer createEventForDictionary:inWindow:relativeToTime:]):
3667         (+[EventSerializer playEventStream:inWindow:completionHandler:]):
3668         * TestRunnerShared/EventSerialization/mac/SharedEventStreamsMac.h: Copied from Tools/WebKitTestRunner/mac/UIScriptControllerMac.mm.
3669         * TestRunnerShared/EventSerialization/mac/SharedEventStreamsMac.mm: Added.
3670         (beginSwipeBackEventStream):
3671         (completeSwipeBackEventStream):
3672         * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
3673         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
3674         (WTR::UIScriptController::playBackEventStream):
3675         (WTR::UIScriptController::beginBackSwipe):
3676         (WTR::UIScriptController::completeBackSwipe):
3677         (WTR::UIScriptController::platformPlayBackEventStream):
3678         (WTR::UIScriptController::platformClearAllCallbacks): Deleted.
3679         * TestRunnerShared/UIScriptContext/UIScriptController.h:
3680         * TestRunnerShared/spi/CoreGraphicsSPI.h: Added.
3681         * TestRunnerShared/spi/IOKitSPI.h: Renamed from Tools/WebKitTestRunner/ios/IOKitSPI.h.
3682         * WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:
3683         * WebKitTestRunner/mac/UIScriptControllerMac.mm:
3684         (WTR::playBackEvents):
3685         (WTR::UIScriptController::beginBackSwipe):
3686         (WTR::UIScriptController::completeBackSwipe):
3687         (WTR::UIScriptController::platformPlayBackEventStream):
3688
3689 2017-03-29  Jonathan Bedard  <jbedard@apple.com>
3690
3691         webkitpy: Robust test clean-up
3692         https://bugs.webkit.org/show_bug.cgi?id=170255
3693
3694         Reviewed by Alexey Proskuryakov.
3695
3696         On-device testing is the motivation for this change.  Failure to run clean-up functions can
3697         result in zombie processes, residual NFS mounts and other undesirable remnants from a failed
3698         test run.  Make an effort to clean-up even if exceptions are thrown during set-up or clean-up.
3699
3700         * Scripts/webkitpy/layout_tests/controllers/manager.py:
3701         (Manager._set_up_run): Clean up test run if set-up fails.
3702         * Scripts/webkitpy/port/ios.py:
3703         (IOSPort.clean_up_test_run): Continue cleaning up devices even after an exception is thrown.
3704
3705 2017-03-29  Jonathan Bedard  <jbedard@apple.com>
3706
3707         Simulator testing stops after the first crash
3708         <rdar://problem/31325362>
3709
3710         Unreviewed infrastructure fix.
3711
3712         * Scripts/webkitpy/xcode/simulated_device.py:
3713         (SimulatedDevice):
3714         (SimulatedDevice.launch_app): Increase timeout when attempting to launch app.
3715
3716 2017-03-29  Jonathan Bedard  <jbedard@apple.com>
3717
3718         webkitpy: Standardize web-server port definitions
3719         https://bugs.webkit.org/show_bug.cgi?id=170144
3720         <rdar://problem/31284026>
3721
3722         Reviewed by Daniel Bates.
3723
3724         Default web-server ports should be declared in global variables.
3725         Add functions to web-servers which return the ports these servers
3726         are using so that other tools can forward them.
3727
3728         * Scripts/webkitpy/layout_tests/servers/apache_http_server.py:
3729         (LayoutTestApacheHttpd.__init__): Use shared constants in http_server_base.py.
3730         * Scripts/webkitpy/layout_tests/servers/apache_http_server_unittest.py:
3731         (TestLayoutTestApacheHttpd.test_start_cmd): Check port_to_forward for expected values.
3732         * Scripts/webkitpy/layout_tests/servers/http_server.py:
3733         (Lighttpd.__init__): Use shared constants in http_server_base.py.
3734         (Lighttpd._prepare_config): Ditto.
3735         * Scripts/webkitpy/layout_tests/servers/http_server_base.py:
3736         (HttpServerBase): Add default port constants.
3737         (HttpServerBase.ports_to_forward): Add function to return ports used for http server.
3738         * Scripts/webkitpy/layout_tests/servers/http_server_unittest.py:
3739         (TestHttpServer.test_start_cmd): Check port_to_forward for expected values.
3740         * Scripts/webkitpy/layout_tests/servers/web_platform_test_server.py:
3741          (WebPlatformTestServer.ports_to_forward): Add function to return ports used for web-platform tests.
3742         * Scripts/webkitpy/layout_tests/servers/websocket_server.py:
3743         (PyWebSocket): Make default port values public.
3744         (PyWebSocket.__init__): Use public default port.
3745         (PyWebSocket.ports_to_forward): Return port used in an array.
3746         * Scripts/webkitpy/port/base.py:
3747         (Port.to.ports_to_forward): Return all ports used the various web-servers managed by the port object.
3748         (Port.to.start_websocket_server): Use PyWebSocket port constants.
3749
3750 2017-03-29  Wenson Hsieh  <wenson_hsieh@apple.com>
3751
3752         Links with empty hrefs should not be drag sources
3753         https://bugs.webkit.org/show_bug.cgi?id=170241
3754         <rdar://problem/31305505>
3755
3756         Reviewed by Tim Horton.
3757
3758         Adds a new API test: DataInteractionTests.LinkWithEmptyHREF.
3759
3760         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
3761         (TestWebKitAPI::TEST):
3762         * TestWebKitAPI/ios/DataInteractionSimulator.h:
3763
3764         Expose the current phase of the data interaction simulator for verifying behaviors in unit tests.
3765
3766         * TestWebKitAPI/ios/DataInteractionSimulator.mm:
3767         (-[DataInteractionSimulator phase]):
3768
3769 2017-03-29  Jonathan Bedard  <jbedard@apple.com>
3770
3771         Use TCP instead of FIFOs for Simulator/Device communication
3772         https://bugs.webkit.org/show_bug.cgi?id=169419
3773         <rdar://problem/30949615>
3774
3775         Reviewed by Alexey Proskuryakov.
3776
3777         Using TCP instead of FIFOs when communicating with devices allows the device being tested
3778         to be on a different machine then the one handling the management of the test run.
3779
3780         * DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
3781         * DumpRenderTree/mac/DumpRenderTree.mm:
3782         (dumpRenderTree): Call setUp/tearDownIOSLayoutTestCommunication() instead of using FIFOs.
3783         * Scripts/webkitpy/port/device.py:
3784         (Device.__init__): Initialize the listening_socket.
3785         (Device.listening_port): Return port of listening socket.
3786         (Device.prepare_for_testing): Open listening socket on an open port, prepare platform device
3787         fro testing.
3788         (Device.finished_testing): Close listening socket associated with this device, call the
3789         platform device's finished_testing function if it exists.
3790         * Scripts/webkitpy/port/ios.py:
3791         (IOSPort.setup_test_run): Prepare each device for testing.
3792         (IOSPort.clean_up_test_run): Notify each device that testing has completed.
3793         * Scripts/webkitpy/port/ios_simulator.py:
3794         (IOSSimulatorPort): Work around device persistence bug.
3795         (IOSSimulatorPort.__init__): Ditto.
3796         * Scripts/webkitpy/port/simulator_process.py:
3797         (SimulatorProcess):
3798         (SimulatorProcess.NonBlockingFileFromSocket): Add to work around shortcomings in
3799         Python 2’s makefile.
3800         (SimulatorProcess.NonBlockingFileFromSocket.__init__): Initialize file with socket.
3801         (SimulatorProcess.ReadFileSocket.close): Close file and then socket;
3802         (SimulatorProcess.__init__): Pass TCP port over environment, remove FIFO names.
3803         (SimulatorProcess.__getattr__): Expose all file attributes.
3804         (SimulatorProcess._accept_connection_create_file): Wait for connection from server and
3805         create and return a file-like object from the incoming connection.
3806         (SimulatorProcess._start): Use TCP connections instead of FIFOs.
3807         (SimulatorProcess._start.handler): Output server port in timeout exception.
3808         (SimulatorProcess._reset): Deleted.
3809         * TestRunnerShared/IOSLayoutTestCommunication.cpp: Added.
3810         (connectToServer): Return socket connected to the provided server address.
3811         (setupiOSLayoutTestCommunication): Connect stdin, stdout and stderr as socket to a
3812         TCP server running on localhost.
3813         (tearDownIOSLayoutTestCommunication): Close stdin, stdout and stderr TCP sockets.
3814         * TestRunnerShared/IOSLayoutTestCommunication.h: Added.
3815         * WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:
3816         * WebKitTestRunner/ios/TestControllerIOS.mm:
3817         (WTR::TestController::platformInitialize): Call setUpIOSLayoutTestCommunication()
3818         instead of using FIFOs.
3819         (WTR::TestController::platformDestroy): Call tearDownIOSLayoutTestCommunication().
3820
3821 2017-03-29  Jonathan Bedard  <jbedard@apple.com>
3822
3823         webkitpy: Add IOSDevicePort and IOSPort tests
3824         https://bugs.webkit.org/show_bug.cgi?id=170206
3825         <rdar://problem/31308364>
3826
3827         Reviewed by Alexey Proskuryakov.
3828
3829         * Scripts/webkitpy/port/darwin_testcase.py: Removed unused import.
3830         * Scripts/webkitpy/port/ios_device_unittest.py: Added.
3831         (iosDeviceTest): Contains tests for the IOSDevicePort.
3832         (iosDeviceTest.make_port): Creates an IOSDevicePort with arguments.
3833         (iosDeviceTest.test_operating_system): Check for the correct operating system.
3834         * Scripts/webkitpy/port/ios_simulator_unittest.py: Moved from Tools/Scripts/webkitpy/port/ios_unittest.py.
3835         (iosSimulatorTest): Inherit from ios_testcase.
3836         (iosSimulatorTest.make_port): Ditto.
3837         (iosSimulatorTest.test_get_crash_log): Ditto.
3838         * Scripts/webkitpy/port/ios_testcase.py: Added.
3839         (iOSTest): Contains shared tests for the IOSDevicePort and IOSSimulatorPort.
3840         (iOSTest.test_driver_name): Tests for iOS app driver.
3841         (iOSTest.test_baseline_searchpath): Check that ios and ios-wk1 are in the baseline search path.
3842         * Scripts/webkitpy/port/ios_unittest.py: Moved to ios_simulator_unittest.py.
3843         * Scripts/webkitpy/port/port_testcase.py:
3844         (PortTestCase): Rename is_simulator to disable_setup to more accurately describe it's meaning.
3845         (PortTestCase.test_diff_image): Use disable_setup instead of is_simulator.
3846         (PortTestCase.test_diff_image_crashed): Ditto.
3847
3848 2017-03-28  Jason Marcell  <jmarcell@apple.com>
3849
3850         Fix `index-expected.txt` for dashboard test results.
3851         https://bugs.webkit.org/show_bug.cgi?id=170214
3852
3853         Reviewed by Alexey Proskuryakov.
3854
3855         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/tests/index-expected.txt:
3856
3857 2017-03-28  Alexey Proskuryakov  <ap@apple.com>
3858
3859         Bot watcher's dashboard has separate settings for "mac" and "macos"
3860         https://bugs.webkit.org/show_bug.cgi?id=170164
3861
3862         Reviewed by Tim Horton.
3863
3864         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Settings.js:
3865         (Settings.prototype.parsePlatformFamily): Aded a special case for "macos".
3866
3867 2017-03-28  Alexey Proskuryakov  <ap@apple.com>
3868
3869         Fix dashboard test results on the dashboard
3870         https://bugs.webkit.org/show_bug.cgi?id=170158
3871
3872         Reviewed by Tim Horton.
3873
3874         Link to result diff instead of stdio. Looking at the diff, I wonder if it can be
3875         further improved, as it's not super readable, but stdio is entirely useless in this context.
3876
3877         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Buildbot.js:
3878         (Buildbot.prototype.dashboardTestResultsURLForIteration): Generate formatted diff link.
3879
3880         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotIteration.js:
3881         Fixed a typo in step name, so that it's actually treated as productive.
3882
3883         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotTesterQueueView.js:
3884         (BuildbotTesterQueueView.prototype.appendBuilderQueueStatus):
3885         (BuildbotTesterQueueView.prototype.update):
3886         (BuildbotTesterQueueView.prototype._presentPopoverForGenericTestFailures):
3887         Added special handling for dashboard test results.
3888
3889 2017-03-28  Aakash Jain  <aakash_jain@apple.com>
3890
3891         Fix Dashboard test _presentPopoverForJavaScriptCoreTestRegressions
3892         https://bugs.webkit.org/show_bug.cgi?id=170193
3893
3894         Reviewed by Alexey Proskuryakov.
3895
3896         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/tests/resources/tests.js:
3897         Fixed the order of arguments.
3898
3899 2017-03-28  Aakash Jain  <aakash_jain@apple.com>
3900
3901         Dashboard tests fails to fetch the revision from commits
3902         https://bugs.webkit.org/show_bug.cgi?id=170191
3903
3904         Reviewed by Alexey Proskuryakov.
3905
3906         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/tests/resources/MockTrac.js:
3907         Added recordedCommitIndicesByRevisionNumber.
3908         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/tests/resources/tests.js:
3909         (setup): Populated trac.recordedCommitIndicesByRevisionNumber since the dashboard code uses this variable.
3910
3911 2017-03-28  Timothy Horton  <timothy_horton@apple.com>
3912
3913         Safari crashes when attempting to close tab that is displaying PDF
3914         https://bugs.webkit.org/show_bug.cgi?id=170201
3915         <rdar://problem/31242019>
3916
3917         Reviewed by Wenson Hsieh.
3918
3919         * TestWebKitAPI/Tests/WebKit2Cocoa/DoAfterNextPresentationUpdateAfterCrash.mm:
3920         (TEST):
3921         Add a test for doAfterNextStablePresentationUpdate just like the existing
3922         non-stable one.
3923
3924 2017-03-28  Jonathan Bedard  <jbedard@apple.com>
3925
3926         webkitpy: Use host pattern for devices
3927         https://bugs.webkit.org/show_bug.cgi?id=170121
3928
3929         Reviewed by Daniel Bates.
3930
3931         Devices should be treated like hosts throughout webkitpy
3932         so that more code can be re-used.  Add the needed properties
3933         and use executive over custom implemented polling/killing
3934         functions.
3935
3936         * Scripts/webkitpy/port/device.py:
3937         (Device):
3938         (Device.executive): Add optional executive property.
3939         (Device.filesystem): Add optional filesystem property.
3940         (Device.user): Add optional user property.
3941         (Device.platform): Add optional platform property.
3942         (Device.workspace): Add optional workspace property.
3943         (Device.poll): Deleted.
3944         * Scripts/webkitpy/port/simulator_process.py:
3945         (SimulatorProcess.Popen.poll): Use the devices executive.
3946         (SimulatorProcess.stop): Ditto.
3947         (SimulatorProcess._kill): Ditto.
3948         * Scripts/webkitpy/xcode/simulated_device.py:
3949         (SimulatedDevice.__init__): Add executive, filesystem, user, platform
3950         and workspace to the platform device.
3951         (SimulatedDevice.poll): Deleted.
3952
3953 2017-03-28  Aakash Jain  <aakash_jain@apple.com>
3954
3955         Dashboard test fails with error: latestIterationGetter is not a function
3956         https://bugs.webkit.org/show_bug.cgi?id=170167
3957
3958         Reviewed by Alexey Proskuryakov.
3959
3960         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/tests/resources/tests.js:
3961         (this.view._latestProductiveIteration): Configure _latestProductiveIteration in setup.
3962
3963 2017-03-27  Lucas Forschler  <lforschler@apple.com>
3964
3965         Another test v8.
3966
3967 2017-03-27  Lucas Forschler  <lforschler@apple.com>
3968
3969         Another test v7.
3970
3971 2017-03-27  Lucas Forschler  <lforschler@apple.com>
3972
3973         Another test v6.
3974
3975 2017-03-27  Lucas Forschler  <lforschler@apple.com>
3976
3977         Another test v5.
3978
3979 2017-03-27  Lucas Forschler  <lforschler@apple.com>
3980
3981         Another test v4.
3982
3983 2017-03-27  Lucas Forschler  <lforschler@apple.com>
3984
3985         Another test v3.
3986
3987 2017-03-27  Lucas Forschler  <lforschler@apple.com>
3988
3989         Another test v2.
3990
3991 2017-03-27  Lucas Forschler  <lforschler@apple.com>
3992
3993         Another test.
3994
3995 2017-03-27  Lucas Forschler  <lforschler@apple.com>
3996
3997         <rdar://problem/30949128>
3998         Update build.webkit.org to use port 16000 for PBChangeSource.
3999         
4000         Reviewed by Alexey Proskuryakov.
4001
4002         * BuildSlaveSupport/build.webkit.org-config/master.cfg:
4003
4004 2017-03-27  Jason Marcell  <jmarcell@apple.com>
4005
4006         Bots should run the dashboard tests
4007         https://bugs.webkit.org/show_bug.cgi?id=168994
4008
4009         Reviewed by Daniel Bates and David Kilzer.
4010
4011         We pull the `--results-directory` argument value out so that `RunDashboardTests` can override it so that we can separately run the dashboard layout tests.
4012
4013         * BuildSlaveSupport/build.webkit.org-config/master.cfg:
4014         (RunWebKitTests): Define a class variable called resultDirectory for the `--results-directory` argument so that subclasses can override this if needed.
4015         (RunWebKitTests.start): Set the `--results-directory` argument value to the value of self.resultDirectory.
4016         (RunDashboardTests): Subclass of RunWebKitTests in which we run the layout tests for the Bot Watcher's Dashboard.
4017         (RunDashboardTests.start): Override the `--layout-tests-directory` to point to the dashboard layout tests.
4018         (ExtractTestResults.addCustomURLs): Update the current results URL label to indicate that it links to layout tests results and add a new link to link to dashboard layout test results.
4019         (TestFactory.__init__): Update unit tests to account for new RunDashboardTests step.
4020         * BuildSlaveSupport/build.webkit.org-config/mastercfg_unittest.py:
4021         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotIteration.js:
4022
4023 2017-03-27  Jonathan Bedard  <jbedard@apple.com>
4024
4025         webkitpy: Look for 'ios' test expectations for IOSPorts
4026         https://bugs.webkit.org/show_bug.cgi?id=169413
4027
4028         Reviewed by Alexey Proskuryakov.
4029
4030         Test expectations for iOS tests should include the 'ios' folder.  Modify
4031         default_baseline_search_path to include 'ios' folder and derivatives for
4032         IOSPort.
4033
4034         * Scripts/webkitpy/port/ios.py:
4035         (IOSPort._generate_all_test_configurations): Moved from IOSSimulatorPort.
4036         (IOSPort.default_baseline_search_path): Add ios expectations along with port specific expectations.
4037         (IOSPort.test_expectations_file_position): Added for testing.
4038         * Scripts/webkitpy/port/ios_simulator.py:
4039         (IOSSimulatorPort._generate_all_test_configurations): Moved to IOSPort.
4040         (IOSSimulatorPort.default_baseline_search_path): Moved to IOSPort.
4041
4042 2017-03-27  Jonathan Bedard  <jbedard@apple.com>
4043
4044         REGRESSION: Reseting _device_map on each child process
4045         <rdar://problem/31274476>
4046
4047         Unreviewed infrastructure fix.
4048
4049         * Scripts/webkitpy/port/ios_simulator.py:
4050         (IOSSimulatorPort): Add _DEVICE_MAP class variable.
4051         (IOSSimulatorPort.__init__): Use shared class variable
4052         (IOSSimulatorPort._device_for_worker_number_map): Use _DEVICE_MAP class variable
4053         (IOSSimulatorPort._create_devices): Ditto.
4054         (IOSSimulatorPort._quit_ios_simulator): Ditto.
4055         (IOSSimulatorPort.clean_up_test_run): Ditto.
4056
4057 2017-03-27  Jonathan Bedard  <jbedard@apple.com>
4058
4059         REGRESSION: Failing to iterate over Simulator.managed_devices map
4060         <rdar://problem/31274476>
4061
4062         Unreviewed infrastructure fix.
4063
4064         * Scripts/webkitpy/port/ios_simulator.py:
4065         (IOSSimulatorPort._create_devices): Iterate through managed_devices by worker number.
4066
4067 2017-03-27  Alex Christensen  <achristensen@webkit.org>
4068
4069         Make WebSockets work in network process
4070         https://bugs.webkit.org/show_bug.cgi?id=169930
4071
4072         Reviewed by Youenn Fablet.
4073
4074         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
4075         Add terminateNetworkProcess for the new test
4076         http/tests/websocket/tests/hybi/network-process-crash-error.html
4077         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
4078         (WTR::TestRunner::setAllowsAnySSLCertificate):
4079         (WTR::TestRunner::terminateNetworkProcess):
4080         * WebKitTestRunner/InjectedBundle/TestRunner.h:
4081         * WebKitTestRunner/TestController.cpp:
4082         (WTR::TestController::setAllowsAnySSLCertificate):
4083         (WTR::TestController::terminateNetworkProcess):
4084         * WebKitTestRunner/TestController.h:
4085         * WebKitTestRunner/TestInvocation.cpp:
4086         (WTR::TestInvocation::didReceiveMessageFromInjectedBundle):
4087         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
4088         * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
4089         (WTR::TestController::platformContext):
4090         * WebKitTestRunner/gtk/TestControllerGtk.cpp:
4091         (WTR::TestController::platformContext):
4092         (WTR::TestController::platformLibraryPathForTesting):
4093         Add some infrastructure for http/tests/websocket/tests/hybi/simple-wss.html
4094         which calls testRunner.setAllowsAnySSLCertificate.  It used to only be effective
4095         for the WebProcess, but SocketStreamHandleImpl::createStreams is now in the NetworkProcess,
4096         and we need its call to Settings::allowsAnySSLCertificate to be loosened for this test,
4097         which tests that wss works, but our test certificate has an invalid certificate chain.
4098         We want production software to not have the ability to have its security weakened, so this
4099         is a test code path that is only implemented in WebKitTestRunner.
4100
4101 2017-03-25  Jonathan Bedard  <jbedard@apple.com>
4102
4103         webkitpy: Use generalized device instead of platform specific one
4104         https://bugs.webkit.org/show_bug.cgi?id=170078
4105
4106         Reviewed by Daniel Bates.
4107
4108         SimulatedDevice is re-created each time 'xcrun simctl list' is called.  Device
4109         should remain persistent.  Changing Device to a more explicit interface.
4110         SimulatedDevice no longer inherits from Device and IOSSimulator returns Devices
4111         wrapping SimulatedDevices.
4112
4113         * Scripts/webkitpy/port/device.py: Added.
4114         (Device):
4115         (Device.__init__): Construct with platform device.
4116         (Device.install_app): Install app at app path on platform device.
4117         (Device.launch_app): Launch app with bundle ID on platform device.
4118         (Device.poll): Poll platform device.
4119         (Device.udid): Access platform device UDID.
4120         (Device.__nonzero__): Check if instantiated with a valid platform device.
4121         (Device.__eq__): Compare by udid.
4122         (Device.__ne__): Ditto.
4123         (Device.__repr__): Print out platform_device representation.
4124         * Scripts/webkitpy/port/ios_simulator.py:
4125         (IOSSimulatorPort.__init__): Initialize the _device_map to an empty dictionary.
4126         (IOSSimulatorPort._device_for_worker_number_map):  Return self._device_map.
4127         (IOSSimulatorPort._create_simulators): Call Simulator.managed_devices directly.
4128         (IOSSimulatorPort._create_devices): Place Simulator.managed_devices into the
4129         device map.
4130         (IOSSimulatorPort._quit_ios_simulator): Reset self._device_map.
4131         * Scripts/webkitpy/xcode/device.py: Removed.
4132         * Scripts/webkitpy/xcode/simulated_device.py:
4133         (SimulatedDevice):
4134         (SimulatedDevice.__init__): Move host, name and did to SimulatedDevice.
4135         (SimulatedDevice.__eq__): Compare two simulated devices.
4136         (SimulatedDevice.__ne__): Ditto.
4137         (SimulatedDevice.__repr__): Print name and udid.
4138
4139 2017-03-25  Adrian Perez de Castro  <aperez@igalia.com>
4140
4141         [GTK] No value returned from PrintCustomWidgetTest::createWebKitPrintOperation() in TestPrinting.cpp
4142         https://bugs.webkit.org/show_bug.cgi?id=170059
4143
4144         Reviewed by Carlos Garcia Campos.
4145
4146         * TestWebKitAPI/Tests/WebKit2Gtk/TestPrinting.cpp: Use "void" as return type in the declaration,
4147         the only use of the method in this same file ignores the returned value anyway.
4148
4149 2017-03-24  Srinivasan Vijayaraghavan  <svijayaraghavan@apple.com>
4150
4151         webkitpy should be able to run API tests
4152         https://bugs.webkit.org/show_bug.cgi?id=170028
4153
4154         Reviewed by Alexey Proskuryakov.
4155
4156         * Scripts/webkitpy/common/config/ports.py:
4157         (DeprecatedPort.run_api_tests_command): Added.
4158         * Scripts/webkitpy/port/base.py:
4159         (Port.api_results_directory): Added.
4160         * Scripts/webkitpy/tool/steps/runtests.py:
4161         (RunTests.run): Check if we should be running API tests.
4162         (RunTests._run_api_tests): Generate script to run API tests with json output.
4163         * Scripts/webkitpy/tool/steps/steps_unittest.py: Unit tests.
4164
4165 2017-03-24  Srinivasan Vijayaraghavan  <svijayaraghavan@apple.com>
4166
4167         Add JSON results for API tests
4168         https://bugs.webkit.org/show_bug.cgi?id=170021
4169
4170         Reviewed by Alexey Proskuryakov.
4171
4172         * Scripts/run-api-tests:
4173         (runTestsBySuite): Appends failures and timeouts to JSON data.
4174         (writeJsonDataIfApplicable): Writes JSON data to a file.
4175
4176 2017-03-24  Lucas Forschler  <lforschler@apple.com>
4177
4178         update committer_auth.py to be python 2.7 compliant
4179         https://bugs.webkit.org/show_bug.cgi?id=170063
4180         
4181         Reviewed by Alexey Proskuryakov.
4182
4183         * BuildSlaveSupport/build.webkit.org-config/committer_auth.py:
4184         (CommitterAuth.authenticate):
4185             convert e.message to e.args[0]
4186
4187 2017-03-24  Srinivasan Vijayaraghavan  <svijayaraghavan@apple.com>
4188
4189         webkitpy: Parse JSON results from run-api-tests
4190         https://bugs.webkit.org/show_bug.cgi?id=170062
4191
4192         Reviewed by Alexey Proskuryakov.
4193
4194         * Scripts/webkitpy/common/net/apitestresults.py: Added.
4195         (APITestResults): Structure to represent API test results.
4196         (APITestResults.__init__):
4197         (APITestResults.intersection): Return the failures common to both sets of results.
4198         (APITestResults.results_from_string): Create an APITestResults object from a JSON results string.
4199         (APITestResults.equals): Return True if both results were the same.
4200         (APITestResults.is_subset): Return True if failing tests are a subset of the other failing tests.
4201         (APITestResults.all_passed): Return True if everything passed.
4202         (APITestResults.failing_tests): List of tests that didn't pass.
4203         (APITestResults.did_exceed_test_failure_limit): Always False.
4204         * Scripts/webkitpy/common/net/apitestresults_unittest.py: Added.
4205         (APITestResultsTest): Unit tests.
4206         * Scripts/webkitpy/tool/bot/apitestresultsreader.py: Added.
4207         (APITestResultsReader): Read contents of JSON results file.
4208
4209 2017-03-24  Alex Christensen  <achristensen@webkit.org>
4210
4211         REGRESSION: Content Blocker: Blocking "a[href*=randomString]" doesn't work
4212         https://bugs.webkit.org/show_bug.cgi?id=169167
4213
4214         Reviewed by Simon Fraser.
4215
4216         * TestWebKitAPI/Tests/WebCore/ContentExtensions.cpp:
4217         (TestWebKitAPI::TEST_F):
4218         Test an example of a selector that was incorrectly determined to be invalid.
4219
4220 2017-03-24  Jonathan Bedard  <jbedard@apple.com>
4221
4222         Increase timeout for booting simulators.
4223         <rdar://problem/31080009>
4224
4225         Unreviewed infrastructure fix.
4226
4227         * Scripts/webkitpy/xcode/simulator.py:
4228         (Simulator.wait_until_device_is_booted): Increase timeout.
4229         (Simulator.wait_until_device_is_in_state): Increase timeout.
4230
4231 2017-03-24  Carlos Garcia Campos  <cgarcia@igalia.com>
4232
4233         Unreviewed. Fix GTK+ test /webkit2/WebKitWebView/javascript-dialogs after r214277.
4234
4235         Since r214277 beforeunload events are not fired unless there's some user interaction, so we need to simulate it
4236         in our unit tests to work.
4237
4238         * TestWebKitAPI/Tests/WebKit2Gtk/TestUIClient.cpp:
4239         (testWebViewJavaScriptDialogs):
4240
4241 2017-03-24  Carlos Garcia Campos  <cgarcia@igalia.com>
4242
4243         [GTK] Add MIMETypeRegistry implementation using xdgmime and remove the GTK+ one
4244         https://bugs.webkit.org/show_bug.cgi?id=170001
4245
4246         Reviewed by Michael Catanzaro.
4247
4248         Ignore style of xdgmime sources.
4249
4250         * Scripts/webkitpy/tool/steps/checkstyle.py:
4251
4252 2017-03-23  Wenson Hsieh  <wenson_hsieh@apple.com>
4253
4254         Dragging on a large image should not revert to a file icon if data interaction is enabled
4255         https://bugs.webkit.org/show_bug.cgi?id=170018
4256         <rdar://problem/31184508>
4257
4258         Reviewed by Tim Horton.
4259
4260         Add new tests for data interaction. LargeImageToTargetDiv verifies the change made in this patch, while
4261         AttachmentElementItemProviders was a test that was previously removed due to <rdar://problem/31038797>.
4262
4263         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
4264         * TestWebKitAPI/Tests/WebKit2Cocoa/large-red-square.png: Added.
4265         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
4266         (TestWebKitAPI::TEST):
4267
4268 2017-03-23  Fujii Hironori  <Hironori.Fujii@sony.com>
4269
4270         Update WinCairoRequirements.zip
4271         https://bugs.webkit.org/show_bug.cgi?id=169950
4272
4273         Reviewed by Alex Christensen.
4274
4275         * Scripts/update-webkit-wincairo-libs: Replace $winCairoLibsURL.
4276
4277 == Rolled over to ChangeLog-2017-03-23 ==